Why does vi behave differently in Ubuntu than in CentOS?

18,250

Solution 1

In ubuntu, the default vim install comes from the package vim-tiny, which isn't the whole thing.

You probably want to:

apt-get install vim

or

apt-get install vim-full

Some of your other problems sound like issues with the backspace key and other things. Once you get the full version of vim, try adding these to your .vimrc:

set nocompatible

set t_kb=^H
fixdel

(IMPORTANT NOTE: that ^H is a literal ctrl-H character, which you'll get by doing Ctrl-V Ctrl-H in insert mode)

Solution 2

The previously offered answers did not work for me.

I tend to prefer leaving OS installations as stock as possible and keeping config files as simple as possible. In order to fix these three issues in Ubuntu 12.04, I did the following:

In "~/.vimrc", insert the lines -
set nocp
set bs=2

Solution 3

In addition to installing vim-full, if you do not already hava a ~/.vimrc:

$ cp /usr/share/vim/vimcurrent/vimrc_example.vim ~/.vimrc

This example .vimrc already makes the most important settings and is a good start for customization.

Solution 4

I'll assume you mean VIM when you say VI? And at least, the 2nd point seems to be a console/terminal issue with VIM/term combo. The page below suggests some fixes, but none that I could make work (I use vim over putty to an Ubuntu dev box)

http://vim.wikia.com/wiki/Fix_broken_arrow_key_navigation_in_insert_mode

3rd point can be overwritten by using the following in your .vimrc

set backspace=indent,eol,start

Share:
18,250
Adam Plumb
Author by

Adam Plumb

Updated on June 22, 2022

Comments

  • Adam Plumb
    Adam Plumb almost 2 years

    I've been getting more and more comfortable using vi on a daily basis, but one thing that bothers me is that when I use it on Ubuntu it behaves differently than when I use it on CentOS (and probably other places). I actually prefer the way it works in CentOS.

    Here are three things that are really bothering me on Ubuntu:

    1. In CentOS insert mode there is a big bold notice at the bottom that I'm in INSERT mode, but in Ubuntu there is no notice so I can never tell which mode I'm in.

    2. In CentOS insert mode I can press the up/down keys and the cursor will move up and down. But when I'm in Ubuntu pressing up and down inserts the letters A and B respectively on new lines.

    3. In CentOS insert mode I can use the backspace key and it will delete the character that is before the cursor, but in Ubuntu I just hear a beep sound and nothing happens. I can press the delete key in command mode, but I'd rather be able to press the backspace key.

    Are these differences something that I have to live with or is it an easy fix?