/etc/vimrc, ~/.vimrc
The LFS book installs
vim as its editor. At this point we should
state that there are a lot of different editors out
there including emacs,
nano, joe and many
more. Anyone who has been around the Internet (especially usenet) for a
short time will certainly have observed at least one flame war, usually
involving vim and
emacs users!
The LFS book gives a basic vimrc
file. Here, we attempt to enhance this file. At startup,
vim reads /etc/vimrc and
~/.vimrc (i.e., the global
vimrc and the user-specific one.). Note that this is
only true if you compiled vim using
LFS-3.1 onwards. Prior to this,
the global vimrc was /usr/share/vim/vimrc
.
Here is a slightly expanded vimrc that you can
put in /etc/vimrc to provide global effect. Of course, if
you put it into /etc/skel/.vimrc instead, it will
be made available to users you add to the system later. You can also copy
the file from /etc/skel/.vimrc to
/etc/vimrc and the home directory of users already
on the system, like root. Be sure to set permissions, owner and group if
you do copy anything directly from /etc/skel.
" Begin .vimrc
set nocompatible
set bs=2
set columns=80
set background=dark
set tabstop=8
set wrapmargin=8
set nobk
syntax on
set ruler
set noexpandtab
" End .vimrc
A FAQ on the lfs mailing lists regards the
comment tags in vimrc. Note that they are " instead
of the more usual # or //. This is correct, the syntax for vimrc
is slightly unusual.
We'll run through a quick explanation of what each of the
options in this example file means here:
set nocompatible : This option
stops vim from behaving in a strongly vi
-compatible way. It should be at the start of any vimrc
file as it can affect lots of other options which you may want to
override.
set bs=2 : This influences the behavior
of the backspace option. It is fairly complex so see :help 'bs'
for more details.
set columns=80 : This simply sets the
number of columns used on the screen.
set background=dark : This tells
vim to use colors which look good on a dark
background.
set tabstop=8 : The number of spaces
which a tabstop takes.
set wrapmargin=8 : This is the number of
characters from the right window border where wrapping starts.
set nobk : This stops vim
from creating a backup before overwriting a file.
syntax on : Enables
vim's syntax highlighting.
set ruler : This makes vim
show the current row and column at the bottom right of
the screen.
set noexpandtab : This makes
vim insert tabs as tab characters instead of as a set of
spaces.
More information on the many vim
options can be found by reading the help inside vim itself.
Do this by typing :help in
vim to get the general help, or by typing :
help usr_toc.txt to view
the User Manual Table of Contents.