【新品产上线啦】51CTO播客,随时随地,碎片化学习
这 20 多个有用的命令可以增强你使用 Vim 的体验。
编者注:标题和文章最初称呼的 vi 编辑器,现已更新为编辑器的正确名称:Vim 。
Vim 作为一款功能强大、选项丰富的编辑器,为许多用户所热爱。本文介绍了一些在 Vim 中默认未启用但实际非常有用的选项。虽然可以在每个 Vim 会话中单独启用,但为了创建一个开箱即用的高效编辑环境,还是建议在 Vim 的配置文件中配置这些命令。
开始前的准备
这里所说的选项或配置均位于用户主目录中的 Vim 启动配置文件 .vimrc 。 按照下面的说明在 .vimrc 中设置选项:
(注意:vimrc 文件也用于 Linux 中的全局配置,如 /etc/vimrc 或 /etc/vim/vimrc 。本文所说的 .vimrc 均是指位于用户主目录中的 .vimrc 文件。)
Linux 系统中:
- 用
Vim 打开 .vimrc 文件: vim ~/.vimrc
- 复制本文最后的
选项列表 粘贴到 .vimrc 文件
- 保存并关闭 (
:wq )
(LCTT 译注:此处不建议使用 Vim 编辑 .vimrc 文件,因为很可能无法粘贴成功,可以选择 gedit 编辑器编辑 .vimrc 文件。)
Windows 系统中:
- 首先,安装 gvim
- 打开
gvim
- 单击 “编辑” -> “启动设置”,打开
_vimrc 文件
- 复制本文最后的 “选项列表” 粘贴到
_vimrc 文件
- 单击 “文件” -> “保存”
(LCTT 译注:此处应注意不要使用 Windows 自带的记事本编辑该 _vimrc 文件,否则可能会因为行结束符不同而导致问题。)
下面,我们将深入研究提高 Vim 编辑效率的选项。主要分为以下几类:
- 缩进 & 制表符
- 显示 & 格式化
- 搜索
- 浏览 & 滚动
- 拼写
- 其他选项
1. 缩进 & 制表符
使 Vim 在创建新行的时候使用与上一行同样的缩进:
set autoindent
创建新行时使用智能缩进,主要用于 C 语言一类的程序。通常,打开 smartindent 时也应该打开 autoindent :
set smartindent
注意:Vim 具有语言感知功能,且其默认设置可以基于文件中的编程语言来改变配置以提高效率。有许多默认的配置选项,包括 axs cindent ,cinoptions ,indentexpr 等,没有在这里说明。 syn 是一个非常有用的命令,用于设置文件的语法以更改显示模式。
(LCTT 译注:这里的 syn 是指 syntax ,可用于设置文件所用的编程语言,开启对应的语法高亮,以及执行自动事件 (autocmd )。)
设置文件里的制表符 (TAB) 的宽度(以空格的数量表示):
set tabstop=4
设置移位操作 >> 或 << 的缩进长度(以空格的数量表示):
set shiftwidth=4
如果你更喜欢在编辑文件时使用空格而不是制表符,设置以下选项可以使 Vim 在你按下 Tab 键时用空格代替制表符。
set expandtab
注意:这可能会导致依赖于制表符的 Python 等编程语言出现问题。这时,你可以根据文件类型设置该选项(请参考 autocmd )。
2. 显示 & 格式化
要在每行的前面显示行号:
set number
要在文本行超过一定长度时自动换行:
set textwidth=80
要根据从窗口右侧向左数的列数来自动换行:
set wrapmargin=2
(LCTT 译注:如果 textwidth 选项不等于零,本选项无效。)
当光标遍历文件时经过括号时,高亮标识匹配的括号:
set showmatch
3. 搜索
(编辑:ASP站长网)
|