Default Vim in Debian

When testing Debian with a live ISO, I noticed vim acting peculiar. In a way I never experienced.

When in Insert mode, pressing the arrow navigation keys resulted in upper case A, B, C, D being inserted. Pressing Backspace and Delete failed to function as expected.

Classic deer in the headlight beams. WTF.

Some digging revealed that in Debian vim is packaged using a default vi configuration rather than a default vim configuration. Instructions around the web indicate the solution is to create $HOME/.vimrc and add set nocompatible. That directive means vim is not compatible with traditional vi defaults and instead uses vim defaults.

I do not recall encountering this behavior. My guess is I always encountered Linux systems where vim was installed using default vim configurations rather than vi defaults and vi is not actually installed with vi being sym linked to vim.

On Slackware systems, elvis is installed as the default vi clone and vim is installed as well. Thus vi is not sym linked to vim.

In Debian both /bin/vi and /usr/bin/vi are sym links to /etc/alternatives/vi, which is a sym link to /usr/bin/vim.basic. Debian includes vi clone packages, such as elvis and levee.

This default vi behavior seems to be a Debian design. I have no idea why the default vim configuration is vi rather than vim.

The cynic in me always attributes such differences to NIH mentality.

Posted: Category: Usability Tagged: Debian

Next: Gobbledygook

Previous: Linux in 2001