首先你要决定的是: 要为整个系统安装 Vim 还是为单个用户。安装过程几乎是一样的。
但是 Vim 安装的路径不同。
对于系统安装来说基目录常使用 "/usr/local"。但对于你的系统可能也不同。看看其
它的软件包是安装在哪里的。
当为单个用户安装时,你可以使用你的主目录作为基目录。Vim 的文件将被放置到
"bin" 和 "shared/vim" 等子目录中。
从 一 个 程 序 包 安 装
你可以取得为许多不同的 Unix 系统预先编译好的可执行文件。下面的链接给出一个很长
的列表:
http://www.vim.org/binaries.html
这些可执行文件是由志愿者维护的,所以经常会过时。因此通过源代码来自己编译你自己
的 UNIX 版本是个更好的办法。同时,从源代码创建 Vim 编辑器允许你控制可选的特
性。但这需要一个编译器。
如果你有一个 Linux 的发行版本,其中的 "vi" 程序很可能是一个最小版的 Vim。例
如,它可能不支持语法高亮。试试在你的发行版中找另外一个 Vim 程序包,或在网上搜
搜。
从 源 码 开 始
你需要下面的东西来编译 Vim:
- 一个编译器 (最好用 GCC)
- GZIP 程序 (可以从 from www.gnu.org 得到)
- Vim 源码和运行时归档文件
下面这个文件提供了一个镜像列表,它可以帮助你找到距离你最近的镜像从而提高下载的
速度:
ftp://ftp.vim.org/pub/vim/MIRRORS
如果你觉得够快的话,或者就用主站 ftp.vim.org。进入到 "unix" 目录你就可以找到一
组文件。文件名中会含有版本名。最好下载最新的版本。
Unix 所需文件在一个包括所有东西的大文档里:
vim-8.2.tar.bz2
你需要 bzip2 程序来将其解压缩。
编 译
先建立一个工作目录,例如:
mkdir ~/vim
cd ~/vim
在其中解开下载的文档。可以这样解压缩:
tar xf path/vim-8.2.tar.bz2
如果你的 tar 命令不直接支持 bz2:
bzip2 -d -c path/vim-8.2.tar.bz2 | tar xf -
把 "path" 改变为你下载文件所在的路径。
如果你觉得缺省的特性就够了的话,照下面这样直接编译 Vim 就行了:
cd vim82/src
make
make 程序会执行 configure 并编译所有的东西。后边我们会介绍如何将不同的特性编译
进 Vim。
如果在编译时出现错误,请仔细的查看错误信息。编译程序会给出对于错误的提示。
希望你能据此更正错误。你可能需要关闭一些特性。Makefile 也给出了一些可能适合你
的特定系统的提示。
测 试
现在你可以试试你的编译成功了没有:
make test
这将执行一系列的测试脚本来确认 Vim 能正常的工作。测试的过程中 Vim 会多次启动,
也会闪过各种各样的文本和信息。如果测试成功的话你最终会看到:
test results:
ALL DONE
如果你得到 "TEST FAILURE" 的信息,有些测试失败了。如果有一两个测试失败,Vim 可
能还可以工作,不过不太完美。但是如果你看到大量的错误信息或者测试无法完成,那一
定是有麻烦了。要么尝试自己解决,要么找个能帮助你的人。你可以在
maillist-archive 中查找解决办法。如果实在解决不了,你可以在 maillist 中提
问看看有没有人能帮你。
安 装
install-home
如果你想安装在自己的 home 目录,编辑 Makefile 并查找这样的一行:
#prefix = $(HOME)
把行首的那个 # 去掉。
当你要为整个系统安装的时候,Vim 很可能已经为你选择好了一个合适的安装目录。
你也可以照下面讲的自己选择一个,但你必须先改变身份为 root。
要安装 Vim 执行:
make install
这将把所有相关的文件转移到正确的地方。现在你可以试着运行一下 vim 以确认没有问
题。下面两个简单的测试可以检查 Vim 能不能正确地找到那些运行时文件:
:help
:syntax enable
如果不成功的话,使用下面的命令来查看 Vim 是在哪儿找那些文件的:
:echo $VIMRUNTIME
你还可以用 "-V" 参数来启动 Vim,那样你可以得到更多的启动信息:
vim -V
别忘了本手册假设你用某一特定的方式使用 Vim。在安装完成之后,请依照
not-compatible 里面的指示来要求 Vim 以该方式运行。
选 择 特 性
Vim 有多种方法可以选择其特性。一个简单 (直接) 的办法就是编辑 Makefile。那里有
很多的指令和例子。通常你只要去掉一行的注释就可以打开或关闭某一特性。
另外你也可以运行 "configure" 程序。这使得你可以手动指明你所希望的特性。缺点
是你得知道在命令行上输入什么。
下面列出一些最可能引起你兴趣的 configure 参数。同样的,你也可以通过编辑
Makefile 来设定。
--prefix={directory}
安装 Vim 的顶级目录。
--with-features=tiny 关掉很多特性。
--with-features=small 关掉一些特性。
--with-features=big 打开更多的特性。
--with-features=huge 打开大多数特性。
参阅 +feature-list 察看每一种方式
的详细特性列表。
--enable-perlinterp 开启 Perl 接口。类似的还有为
ruby、python 和 tcl 准备的参数。
--disable-gui 不编译 GUI 界面。
--without-x 不编译 X-windows 相关的特性。
当两个同时使用的时候,Vim 不会连接
X 服务器,这会使启动更快些。
察看所有参数的列表使用:
./configure --help
这里你可以找到各个特性的一些解释,以及指向其它更多信息的链接: feature-list 。
对于那些喜欢冒险的人,你可以编辑 "feature.h" 文件。你还可以自己改动源代码!
90.2 MS-Windows
有两种方法可以安装 Vim 的 Microsoft Windows 版本。你可以选择自己解压缩几个文
档,或者使用一个自动安装程序。多数使用较新的电脑的用户会选择第二种方法。对于第
一种方法你需要:
- 包含 Vim 可执行程序的文档。
- Vim 运行时归档文件。
- 解压缩程序。
下面这个文件提供了一个镜像列表,它可以帮助你找到距离你最近的镜像从而提高下载的
速度:
ftp://ftp.vim.org/pub/vim/MIRRORS
如果你觉得够快的话,或者就用主站 ftp.vim.org。进入到 "pc" 目录就可以找到一组文
件。文件的名字中含有版本名。最好下载最新的版本。这里我们用 "82" 为例,表示 8.2
版。
gvim82.exe 自动安装程序。
第二种方法你就只需要这个了。执行该程序并依照提示操作就可以了。
第一种方法你需要选择下列的其中一个可执行文档:
gvim82.zip 一般的 MS-Windows GUI 版本。
gvim82ole.zip 带有 OLE 支持的 MS-Windows GUI 版本。
更消耗内存,支持与其他 OLE 程序的接口。
vim82w32.zip 32 位 MS-Windows 控制台版本。
你只需要其中的一个就够了。不过你可以同时安装一个 GUI 版本和一个控制台版本。但
是包含有运行时文件的归档文件总是必需的。
vim82rt.zip 运行时文件。
使用你的解压缩程序把文件解出来。例如,使用 "unzip" 程序:
cd c:\
unzip path\gvim82.zip
unzip path\vim82rt.zip
这将把文件解压缩到 "c:\vim\vim82" 目录。如果你已经有一个 "vim" 目录了,你需要
进入其上级目录。
现在进入那个 "vim\vim82" 目录,然后执行安装程序:
install
仔细的察看并选择你想要的。当你最终选择 "do it" 的时候安装程序将根据你的选项执
行安装的步骤。
安装程序不会移走运行时文件。它们会被原封不动留在你解压缩的地方。
如果你对可执行文件包含的特性不满意的话,你可以试着自己编译 Vim。从你取得可执行
文档同样的地方取得源代码。你需要一个有对应的 makefile 文件的编译器。可以使用
Microsoft Visual C、MingW 和 Cygwin 编译器。相关提示要查阅 src/INSTALLpc.txt。
如果你已经有一个版本的 Vim 并想安装另一个,这里就是你需要做的。
UNIX
当你键入 "make install" 命令时,运行时文件将被拷贝到一个该版本专有的目录,而不
会覆盖现存版本的文件。这样就便可以同时运行两个版本的 Vim。
但是可执行文件 "vim" 将覆盖老的版本。如果你不在乎保留老的版本,这样就没问
题。你还可以手动删除那些老版本的运行时文件。只要删除掉那个版本所在目录及其下所
有文件即可。例:
rm -rf /usr/local/share/vim/vim74
通常该目录里不会有你改动过的文件。如果你的确改动了,例如,"filetype.vim" 文
件,你最好把改动合并到新的版本然后在删除老的文件。
如果你比较小心,希望先试试新的版本,你可以用另外的名字安装新的版本。你需要指定
一个 configure 参数。例如:
./configure --with-vim-name=vim8
在运行 "make install" 之前,你可以使用 "make -n install" 命令来查看安装会不会
覆盖现有的重要文件。
当你最终决定启用新版本的时候,你要做的仅仅是将可执行文件改名为 "vim"。例:
mv /usr/local/bin/vim8 /usr/local/bin/vim
MS-WINDOWS
升级几乎和安装一个新版本一样。把新版本的文件解压缩到上一版本的同样位置。会对于
新版本的文件生成一个新的目录。例如: "vim82"。你的运行时文件,vimrc 文件,
viminfo 文件等等,会被原样保留。
如果你想同时运行两个版本,你就得做点作些手工活了。别运行安装程序。那样会覆
盖老版本的一些文件。用全路径来运行新的可执行文件。程序会自动找到它需要的运行时
文件。然而,如果你在别的地方设定了 $VIMRUNTIME 的值,这个法子就不灵了。
如果你对升级满意的话,你可以删除掉前一版本的文件。参阅 90.5 。
这一节列举一些安装过程中常见的麻烦并给出一些解决办法。同时也回答一些安装相关的
问题。
Q: 我没有 Root 权限。怎么安装 Vim? (Unix)
使用下面的配置命令可以将 Vim 安装到目录 $HOME/vim:
./configure --prefix=$HOME
这样你可以安装一个个人拷贝。请将 $HOME/bin 加入 path 中,以便执行本编辑器。参
阅 install-home 。
Q: 我屏幕上的颜色不对。(Unix)
用下面的命令检查终端的设置:
echo $TERM
如果列出的终端类型不正确,更正之。查阅 06.2 可以得到更多的提示。另一个解决办
法是使用 Vim 的 GUI 版本。名为 gvim。这样你就不需要一个正确的终端设置了。
Q: 我的 Backspace 和 Delete 键工作不正常
对于这两个键 (<BS>
、<Del>
),什么键产生它们的键码不是很清楚。首先检查一下你的
$TERM 设置。如果没什么错误,试试这个:
:set t_kb=^V<BS>
:set t_kD=^V<Del>
第一行你需要键入 CTRL-V
在按 backspace 键。第二行你需要键入 CTRL-V
再按 Delete
键。你可以把这两行加入到你的 vimrc 文件中,参见 05.1 。 这样做的一个缺点是如
果你换用另外一个终端程序的话,这些设置可能就不起作用了。其他的解决办法可以在
:fixdel 中找到。
Q: 我使用 RedHat Linux。我能使用系统自带的 Vim 吗?
缺省情况下 RedHat 仅安装一个 Vim 的最小版本。找一个叫
"Vim-enhanced-version.rpm" 的安装包就行了。
Q: 我怎么才能打开语法高亮?怎么才能使用插件?
使用那个 vimrc 脚本的例子。在这儿你可以找到详细地解释: not-compatible 。
在第 6 章阅读有关语法高亮的解释: usr_06.txt 。
Q: 有没有一个好的 vimrc 文件可以使用?
到 www.vim.org 网站去找找。
Q: 哪儿可以找到好的 Vim 插件?
看看 Vim-online 网站: http://vim.sf.net。很多用户在那里上载了非常有用的 Vim 脚
本。
Q: 哪有更多的技巧提示?
看看 Vim-online 网站: http://vim.sf.net。那里收集了很多用户的提示。你也可以在
maillist-archive 里查找。
虽然这几乎不可能发生,但是万一你希望完全卸载 Vim,本节告诉你怎么做。
UNIX
如果你是通过一个软件包安装 Vim 的,看看你的软件包管理器是如何卸载一个软件包
的。如果你是通过源代码安装的你可以用这个命令卸载:
make uninstall
然而,如果你已经将那些文件删除或者你使用的是别人提供的归档,你就没法这样做了。
那就只能手动删除那些文件。这里给出一个例子,假设你是以 root 身份将 Vim 安装到
"/usr/local" 下的:
rm -rf /usr/local/share/vim/vim82
rm /usr/local/bin/eview
rm /usr/local/bin/evim
rm /usr/local/bin/ex
rm /usr/local/bin/gview
rm /usr/local/bin/gvim
rm /usr/local/bin/gvim
rm /usr/local/bin/gvimdiff
rm /usr/local/bin/rgview
rm /usr/local/bin/rgvim
rm /usr/local/bin/rview
rm /usr/local/bin/rvim
rm /usr/local/bin/rvim
rm /usr/local/bin/view
rm /usr/local/bin/vim
rm /usr/local/bin/vimdiff
rm /usr/local/bin/vimtutor
rm /usr/local/bin/xxd
rm /usr/local/man/man1/eview.1
rm /usr/local/man/man1/evim.1
rm /usr/local/man/man1/ex.1
rm /usr/local/man/man1/gview.1
rm /usr/local/man/man1/gvim.1
rm /usr/local/man/man1/gvimdiff.1
rm /usr/local/man/man1/rgview.1
rm /usr/local/man/man1/rgvim.1
rm /usr/local/man/man1/rview.1
rm /usr/local/man/man1/rvim.1
rm /usr/local/man/man1/view.1
rm /usr/local/man/man1/vim.1
rm /usr/local/man/man1/vimdiff.1
rm /usr/local/man/man1/vimtutor.1
rm /usr/local/man/man1/xxd.1
MS-WINDOWS
如果你是用那个自动安装程序安装的话你可以运行 Vim 目录下 (例如 "c:\vim\vim82")
的 "uninstall-gui" 程序。你也可以通过开始菜单来运行。这可以删除大多数的文件菜
单以及桌面快捷方式。有些文件可能只有待 Windows 重新启动之后才能被删除。
你可能被提示来删除整个 "vim" 目录。那里面很可能有你的 vimrc 文件以及其他你
创建的运行时文件。要当心。
否则,如果你使用了那些 zip 归档安装了 Vim 的话,最好使用 "uninstall" 程序。它
就在 "install" 程序所在的目录, 例如,"c:\vim\vim82"。用通常的那个
"install/remove software" 页也一样有效。
然而,这只会清除 Vim 的注册表信息。你得自己删除硬盘上的那些文件。简单的选中
"vim\vim82" 目录并删除就可以了。那里边不应该包含任何你所改动过的文件,不过你可
能希望先检查一下。
"vim" 目录很有可能包含有你的 vimrc 文件以及其它你创建的运行时文件。你可能想
保留它。