6.71. Vim-8.1

Vim 软件包包含了一个强大的文本编辑器。

大致构建用时: 1.3 SBU
所需磁盘空间: 169 MB
[Tip]

Vim 的安装

如果你钟情于其它的编辑器,比如 Emacs、Joe,或 Nano。请参考 http://www.linuxfromscratch.org/blfs/view/8.4/postlfs/editors.html 里的安装指导。

6.71.1. Vim 的安装

首先,把配置文件 vimrc 从默认位置移动到 /etc

echo '#define SYS_VIMRC_FILE "/etc/vimrc"' >> src/feature.h

让 Vim 做好编译准备:

./configure --prefix=/usr

编译安装包:

make

检验结果:

LANG=en_US.UTF-8 make -j1 test &> vim-test.log

这个测试套件会输出一堆二进制数据到屏幕上。这会导致当前设置下的终端出现问题。把输出重定向到一个日志文件就可以解决这个问题。测试成功的话就会输出「ALL DONE」。

安装软件包:

make install

许多用户习惯于使用 vi 而不是 vim。为了当人们在习惯性的输入 vi 时能执行 vim,需要给二进制文件和 man 页建立符号连接:

ln -sv vim /usr/bin/vi
for L in  /usr/share/man/{,*/}man1/vim.1; do
    ln -sv vim.1 $(dirname $L)/vi.1
done

默认情况下,Vim 的说明文档被安装在 /usr/share/vim 里。下面的这个符号链接使得可以通过 /usr/share/doc/vim-8.1 访问该文档,让它的位置与其它软件包的文档位置保持一致:

ln -sv ../vim/vim81/doc /usr/share/doc/vim-8.1

如果要把一个 X Window 系统安装在 LFS 系统上,可能得在安装完 X 系统后再重新编译 Vim。Vim 带有一个 GUI 版本,这个版本需要安装 X 和一些额外的库。想了解更多信息,请参考 Vim 文档和 BLFS http://www.linuxfromscratch.org/blfs/view/8.4/postlfs/vim.html 中 Vim 安装指导页。

6.71.2. 设置 Vim

默认情况下,vim 是以不兼容 vi 的模式运行的。这对于过去使用其它编辑器的用户可能是个新问题。下面列出了「非兼容性」设置以突出显示使用的新特性。它也提醒着那些想换成「兼容」模式的人,这是配置文件里第一个该被设置的地方。这非常有必要,因为它会改变其它的设置,而且覆写必须在这个设置之后。以下面的方式,创建一个默认的 vim 配置文件:

cat > /etc/vimrc << "EOF"
" Begin /etc/vimrc

" Ensure defaults are set before customizing settings, not after
source $VIMRUNTIME/defaults.vim
let skip_defaults_vim=1 

set nocompatible
set backspace=2
set mouse=
syntax on
if (&term == "xterm") || (&term == "putty")
  set background=dark
endif

" End /etc/vimrc
EOF

设置 set nocompatiblevim 比 vi 兼容模式更有用。删掉「no」以保留旧的 vi 特性。设置 set backspace=2 让退格跨越换行、自动缩进和插入的开始。syntax on 参数使 vim 能高亮显示语法。设置 set mouse 让你能在 chroot 和远程连接的时候用鼠标粘帖文本。最后,带有 set background=darkif 语句矫正了 vim 对于某些终端模拟器的背景颜色的估算。这让某些写在黑色背景上的程序的高亮色能有更好的调色方案。

用下面的命令可以获得其它选项的文档:

vim -c ':options'
[Note]

Note

默认情况下,Vim 只安装了英文的拼写检查文件。要想安装你想要的语言的拼写检查文件,请从 ftp://ftp.vim.org/pub/vim/runtime/spell/ 下载你所用语言的 *.spl 文件,可下可不下的 *.sug 文件和文字编码。并把它们保存到 /usr/share/vim/vim81/spell/

要使用这些文件,需要设置 /etc/vimrc 里的某些项,例如:

set spelllang=en,ru
set spell

想要了解更多信息,请阅读上方 URL 里对应 README 文件。

6.71.3. Vim 软件包内容

安装的软件: ex (链接到 vim), rview (链接到 vim), rvim (链接到 vim), vi (链接到 vim), view (链接到 vim), vim, vimdiff (链接到 vim), vimtutor, 和 xxd
安装的目录: /usr/share/vim

简要介绍

ex

以 ex 模式启动 vim

rview

view 的一个受限版本;不能启动 shell 命令,而且 view 无法暂停

rvim

vim 的一个受限版本;不能启动 shell 命令,而且 vim 无法暂停

vi

链接到 vim

view

以只读模式启动 vim

vim

就是这个编辑器

vimdiff

vim 编辑一个文件的两到三个版本并显示它们的区别

vimtutor

vim 基本热键和命令的教学

xxd

将给定文件进行十六进制转储,还可以还原;所以它可以被用于打二进制补丁