Vim 是一个高效的通用文本编辑器,在未进行任何配置的默认状态下并不太好用。本文总结了 Vim 的配置流程,教你如何使用 Vim 的基础配置来丰富其编辑能力,并通过插件配置来丰富 Vim 的功能。
友情提示:本文只涉及 Vim 的配置流程,开始之前,请确保你已经在自己电脑上安装好了 Vim,并能正常启动和使用。
配置文件位置
在开始配置 Vim 之前,需要先确定 Vim 配置文件的位置。如果是在终端命令环境使用 Vim,可以通过 vim --version
命令来了解相关信息。如果不习惯使用命令窗口,也可以在打开 Vim 程序后,以 :version
的方式执行类似的命令。命令执行后会输出一大堆模块信息,往下翻,其中有一部分内容如下:
我们主要关注这部分内容:
system vimrc file: "/etc/vimrc"
user vimrc file: "$HOME/.vimrc"
2nd user vimrc file: "~/.vim/vimrc"
system gvimrc file: "/etc/gvimrc"
user gvimrc file: "$HOME/.gvimrc"
2nd user gvimrc file: "~/.vim/gvimrc"
这其中 gvimrc file 是针对 Gvim 的配置文件,这是 Vim 的窗口版,它默认会优先使用 vimrc file 配置文件,所以可以先不用考虑 gvimrc file 部分的内容。这样就可以确定下面三个 Vim 的配置文件位置:
/etc/vimrc
是系统级别的 Vim 配置文件,如果放在这里,只要配置一次,所有用户都可以使用。$HOME/.vimrc
是用户级别的 Vim 配置文件,只针对当前用户有效。~/.vim/vimrc
同样也属于当前用户的配置文件。
那么这三个位置该如何选择?
如果是服务器环境,我建议选择系统级别的 Vim 配置文件地址,这样在管理服务器需要切换到不同用户来编辑文件时,能确保使用的是同样的 Vim 配置。如果是个人使用电脑环境,选择用户级别的 Vim 配置地址就可以了。
关于最后两个用户级别的配置文件地址,可以根据自己喜好随意选择。我目前使用的是 $HOME/.vimrc
。
对于使用 Linux 或是 macOS 系统的朋友,以上地址就在当前用户的主目录。对于使用 Windows 的朋友,这个位置是 C:\Users\用户名
类似的地址。需要注意的是 Windows 上不能创建以点开头的文件,替代的是以下划线 _
符号开头,所以它的完整地址可能是这种格式:C:\Users\用户名\_vimrc
。
Vim 基础操作
在了解了 Vim 的配置文件地址后,接下来应该是开始编辑器的基础配置。不过考虑到可能有些刚接触 Vim 的新人朋友还不了解如何操作 Vim,所以先来介绍几个简单的基础操作。如果你已经掌握了如何用 Vim 打开,编辑并保存文件,或者是准备先用其他熟悉的编辑工具来配置 Vim,那可以跳过这一段落,直接翻到基础配置部分开始。
Vim 打开文件
在终端环境,直接通过 vim
命令打开文件:
vim $HOME/.vimrc
如果使用的是 Gvim,可以通过「文件」菜单下的「打开」功能来选择操作。
Vim 编辑文件
Vim 默认状态下无法编辑内容,编辑前需要先进入 INSERT 插入模式。方法是按 a
键或是 i
键。然后 Vim 的底部左侧会出现 INSERT 字符提示。
这时就可以开始像使用其他普通编辑器一样进行内容编辑了。
Vim 保存文件
完成编辑后需要保存内容时,需要先返回 Vim 的 NORMAL 普通模式。按 esc
键即可,然后依次按 :w
,在编辑窗口的底部左侧会出现刚按的字符。
此时按回车键就可以完成文件保存了。如果使用的是 Gvim,也可以通过点击「文件」菜单下的「保存」功能达到同样的目的。
基础配置
默认状态下未经任何配置的 Vim 用起来和 Windows 下的记事本差不多。以 Gvim 为例,没有任何配置的时候,它的界面是这样的:
以写代码的场景来说,行号是必不可少的,先配置一个显示行号的功能试试。还记得上面说的 Vim 配置文件位置吗,没有就先创建一个。然后打开 Vim 配置文件,在文件中输入第一行配置代码:
set number " 显示行号
注意上面配置代码的格式,前面的 set number
是 Vim 配置命令。后面以 "
字符开始的为注释符号,表示后面的内容为自定义的说明文字。注释符号和后面的说明内容不是必须的,但为了方便以后维护自己的 Vim 配置文件,建议保留和使用。
重新打开 Vim,然后随便输入点内容。
可以看到每行前面都有了一个数字,这样就可以很容易知道当前内容的行信息了。
Vim 的配置过程就这么简单。我整理了一份表格,里面包含了大部分常用的 Vim 配置项。
配置命令 | 配置说明 |
---|---|
set shortmess=atI |
不显示启动提示信息。 |
set autochdir |
自动定位当前目录。 |
set encoding=utf-8 |
使用 UTF-8 编码。 |
set langmenu=zh_CN.utf-8 |
菜单使用中文 UTF-8 编码。 |
set laststatus=2 |
状态栏显示为两行。 |
set tabstop=4 |
设置制表符长度。 |
set softtabstop=4 |
设置制表符转换长度。 |
set shiftwidth=4 |
设置自动缩进长度。 |
set expandtab |
使用空格替代制表符。 |
set smarttab |
使用智能制表符。 |
set autoindent |
使用自动缩进。 |
set smartindent |
使用智能缩进。 |
set number |
显示行号。 |
set relativenumber |
使用相对行号。 |
set ruler |
显示位置指示器。 |
set ignorecase |
检索时忽略大小写。 |
set hls |
搜索时高亮显示匹配项。 |
set incsearch |
实时搜索。 |
set nobackup |
不生成备份文件。 |
set noswapfile |
不使用交互文件。 |
set undofile |
保留撤销历史。 |
set cursorline |
突出显示光标所在行。 |
set nocompatible |
使用不与 Vi 模式兼容的配置命令。 |
set t_Co=256 |
启用 256 色。 |
set textwidth=80 |
设置一行内容的宽度。 |
set wrap |
启用自动换行。 |
set showmatch |
高亮显示匹配的括号。 |
set spell spelllang=en_us |
设置拼写检查。 |
set history=1000 |
设置记录历史操作的容量。 |
set foldlevelstart=99 |
设置折叠功能支持的层级。 |
set foldmethod=indent |
设置折叠方式为缩进。 |
syntax on |
启用语法高亮,开启后可以使用不同颜色显示内容。 |
以上 Vim 配置项都可以直接复制到配置文件中,然后重新打开 Vim,验证一下效果。根据自己需要,选择保留哪些配置。
添加和管理插件
Vim 默认的配置虽然已经足够丰富,但只有插件才能让 Vim 的易用性更上一层楼。接下来,我以目录管理工具 NERD tree 为例,看看如何使用第三方插件把 Vim 配置的更加完善。
首先我们需要到 Vim 的官网去搜索并下载插件,NERD tree 在 Vim 官网的下载地址如下:
打开上面地址后,往下翻,可以看到最新版本的下载地址。
点击 NERD_tree.zip 开始下载,完成后把文件解压到 $HOME/.vim 目录下。然后重新打开 Vim,输入 :NERDTreeToggle
命令,会在 Vim 编辑窗口的左侧打开一个文件浏览窗口。
出现这个界面就意味着 NERD tree 插件安装成功,可以在 Vim 中方便的浏览并选择要编辑的文件了。不过每次都要这么输入命令来打开它好像有点不太方便,让我们给它定义一个快捷键。在 Vim 配置文件中添加下面这行代码:
map <c-o> :NERDTreeToggle<cr> " 定义 NERD tree 打开的快捷键
然后重新打开一下 Vim,按 Ctrl + o 快捷键,文件浏览窗口就出现了,再按一下是关闭。是不是方便了许多?
后记
配置 Vim 最简单的方式是直接从 Github 这类源码托管网站上复制他人的 vimrc 文件。不可否认这是条捷径。不过以打造顺手工具的目的出发,我更建议自己一行一行的来配置。这样所有的配置代码你都能了然于心,而且也一定是最符合自己使用习惯的。