Installing Vim-6.0

Estimated build time:           2 minutes
Estimated required disk space:  15 MB

Installation of Vim

If you don't like vim to be installed as an editor on the LFS system, you may want to download an alternative and install an editor you prefer. There are a few hints how to install different editors available at http://hints.linuxfromscratch.org/hints/. The hints which are currently available are for Emacs, Joe and nano.

Install Vim by running the following commands:

sed '/shUntil\|link shRepeat/{
   /shUntil/N
   /^/i\
   if exists("b:is_kornshell") || exists("b:is_bash")
   p
   /$/i\
   endif
   d
   }' runtime/syntax/sh.vim > sh.vim.fixed &&
mv sh.vim.fixed runtime/syntax/sh.vim &&
./configure --prefix=/usr &&
make CPPFLAGS=-DSYS_VIMRC_FILE=\\\"/etc/vimrc\\\" &&
make install &&
cd /usr/bin &&
ln -sf vim vi

If you plan on installing the X Window system on your LFS system, you might want to re-compile Vim after you have installed X. Vim comes with a nice GUI version of the editor which requires X and a few other libraries to be installed. For more information read the Vim documentation.

FHS compliance notes

The FHS says that editors like vim should use /var/lib/<editor> for their temporary state files, like temporary save files for example. If you wish vim to conform to the FHS, you should use this command set instead of the one presented above:

sed '/shUntil\|link shRepeat/{
   /shUntil/N
   /^/i\
   if exists("b:is_kornshell") || exists("b:is_bash")
   p
   /$/i\
   endif
   d
   }' runtime/syntax/sh.vim > sh.vim.fixed &&
mv sh.vim.fixed runtime/syntax/sh.vim &&
./configure --prefix=/usr --localstatedir=/var/lib/vim &&
make CPPFLAGS=-DSYS_VIMRC_FILE=\\\"/etc/vimrc\\\" &&
make install &&
cd /usr/bin &&
ln -sf vim vi

Command explanations

sed '/shUntil\|link shRepeat/{...: This sed command fixes a bug in the syntax/sh.vim file that will cause an error message when you edit a shell script using syntax highlighting.

make CPPFLAGS=-DSYS_VIMRC_FILE=\\\"/etc/vimrc\\\": Setting this will cause vim to look for the /etc/vimrc file that contains the global vim settings. Normally this file is looked for in /usr/share/vim, but /etc is a more logical place for this kind of file.

Contents

The Vim package contains the ex, gview, gvim, rgview, rgvim, rview, rvim, view, vim, vimtutor and xxd programs.

Description

ex

ex starts vim in Ex mode.

gview

gview is the GUI version of view.

gvim

gvim is the GUI version of vim.

rgview

rgview is the GUI version of rview.

rgvim

rgvim is the GUI version of rvim.

rview

rview is a restricted version of view. No shell commands can be started and Vim can't be suspended.

rvim

rvim is the restricted version of vim. No shell commands can be started and Vim can't be suspended.

view

view starts vim in read-only mode.

vim

vim starts vim in the normal, default way.

vimtutor

vimtutor starts the Vim tutor.

xxd

xxd makes a hexdump or does the reverse.

Dependencies

Vim-5.8 needs the following to be installed:


sh from the bash package

ld from the binutils package
as from the binutils package

cmp from the diffutils package
diff from the diffutils package

chmod from the fileutils package
cp from the fileutils package
ln from the fileutils package
mkdir from the fileutils package
mv from the fileutils package
rm from the fileutils package
touch from the fileutils package

find from the find package

cc from the gcc package

grep from the grep package

make from the make package

hostname from the net-tools package

sed from the sed package

echo from the sh-utils package
expr from the sh-utils package
uname from the sh-utils package
whoami from the sh-utils package

cat from the textutils package
tr from the textutils package
wc from the textutils package