通过一些有趣的小技巧使你的文本编辑器更上一层楼。
Vim 是最受欢迎的文本编辑器之一,因此绝对值得你花时间去学习如何使用它。就算你只是学习使用这个无处不在的 Vi(m) 命令行文本编辑器打开文件、输入和编辑一些文本、保存编辑的文件并退出程序,你都会受益匪浅。
你会发现,使用 Vim 非常方便的的场景几乎总是涉及到运行远程 Shell 操作的任务。如果你时不时地使用 ssh,比如
$ ssh user@hostname.provider.com
并在虚拟专用服务器(VPS)或本地虚拟化容器中工作,那么就可以从这些强大的 Vim 技能中受益匪浅。
将 Vim 设置为默认的文本编辑器
几乎所有的现代 Linux(或 BSD)发行版中,都可以在终端仿真器的 shell 命令提示符下使用 Vim。一旦在你的用户 shell 程序中将 Vim 定义为默认编辑器后,那么就可以使用熟悉的 Vim 键绑定来在内置的实用程序(例如 man
)中导航。我将说明如何使用 Bash 和 Z shell(zsh)来实现此目的,zsh 现在是 macOS 用户的默认 shell(自 Catalina 起)。
在 Bash 中将 Vim 设置为默认
Bash 通过点文件的组合来管理设置。最常见的的做法将你的编辑器添加到主目录中的 .bashrc
文件中,但也可以将其添加到 .bash_profile
中。(请阅读 GNU Bash 文档了解两者的不同之处)。
通过在 ~/.bashrc
中添加以下内容,将 Vim 设置为默认编辑器:
# set default editor to Vim
export EDITOR=vim
以 #
开头的行是可选的注释,这是一个好方法,可以提醒自己该命令的作用。
在 zsh 中将 Vim 设置为默认
zsh 是一种越来越流行的终端仿真器,尤其是在苹果公司的基于 FreeBSD 的 Darwin 系统最近从 Bash 转向 zsh 以来。
zsh 点文件与 Bash 的文件相当,因此你可以在 ~/.zshrc
或 ~/.zprofile
之间进行选择。有关何时使用哪一个的详细信息,请参见 zsh文档。
将其设置为默认:
# set default editor to Vim
export EDITOR=vim
优化 Vim 配置
Vim 像是终端仿真器 shell 一样,也使用点文件来设置个人偏好。如果你发现了这种模式,则可能已经猜到它是 ~/.vimrc
。
你可能要更改的第一个设置是将对传统的 Vi 兼容模式切换为“关闭”。由于 Vim 是 Vi 的超集,因此 Vi 中的所有功能在 Vim 中都是可用的,并且在 Vim 中得到了很大的改进,你可以获得许多高级功能。最新版本(8.2)允许你在分割的窗口中以子进程 shell 的方式打开一个终端。
顺便说一句,明确关闭对传统的 Vi 的兼容性看起来没有什么作用(事实上,可能并没有什么作用)。当 Vim 遇到 .vimrc
文件时,它会暗暗地自动将兼容模式切换到关闭。但有时将其明确关闭仍然很重要。缩写 nocp
是 nocompatible
的同义词,作用是一样的。条条大道通罗马,切换首选项有很多方式。
在 .vimrc
语法中, 以 "
开头的行是注释(就像 .bashrc
文件中的 #
一样),这些注释可以帮助你记住诸如为何选择了一个隐晦的设置名称之类的内容。
要关闭 Vi 兼容性,请将以下内容添加到 ~/.vimrc
文件中:
" ensure that legacy compatibility mode is off
" documentation: