良许Linux教程网 未分类 如何用 Vim 编辑器打造你的专属工作环境

如何用 Vim 编辑器打造你的专属工作环境

Vim 编辑器是 Linux 系统中最强大的文本编辑器之一,它拥有丰富的功能和灵活的配置,可以让你在编辑文本时如鱼得水。但是,你可能不知道的是,Vim 编辑器还有一个隐藏的秘密:它可以运行在兼容模式和非兼容模式之间切换,从而提供不同的用户体验和操作习惯。那么,什么是 Vim 编辑器的兼容模式呢?它有什么优缺点呢?如何在兼容模式和非兼容模式之间切换呢?本文将为你揭开 Vim 编辑器的兼容模式的神秘面纱,教你如何用 Vim 编辑器打造你的专属工作环境。

image-20230530122140179
image-20230530122140179

但在我们开始之前,请注意在本教程中提及的所有例子、命令及用法说明都是在 Ubuntu 14.04 上测试的,我们测试用的 Vim 版本是 7.4 。

Vim 中的兼容模式与不兼容模式

为了更好理解上述的 Vim 模式,你有必要先去了解下此编辑器初始化过程的一个重要方面。

系统级及本地 vimrc 文件

当 Vim 启动时,编辑器会去搜索一个系统级的 vimrc 文件来进行系统范围内的默认初始化工作。

这个文件通常在你系统里 $VIM/vimrc 的路径下,如果没在那里,那你可以通过在 Vim 里面运行 :version命令来找到它的正确存放位置。比如说,在我这里,这个命令的相关部分的输出结果如下:

...
...
...
system vimrc file: "$VIM/vimrc"
user vimrc file: "$HOME/.vimrc"
2nd user vimrc file: "~/.vim/vimrc"
user exrc file: "$HOME/.exrc"
fall-back for $VIM"/usr/share/vim"
...
...
...

可以看到那个系统 vimrc 文件确实位于 $VIM/vimrc ,但我检查了我机子上没设置过$VIM 环境变量。所以在这个例子里 – 正如你在上面的输出所看到的 – $VIM 在我这的路径是 /usr/share/vim,是一个回落值(LCTT 译注:即如果前面失败的话,最终采用的结果)。于是我试着在这个路径寻找 vimrc ,我看到这个文件是存在的。如上即是我的系统 vimrc 文件,就如前面提过的那样 – 它在 Vim 启动时会被读取。

在这个系统级 vimrc 文件被读取解析完后,编辑器会查找一个用户特定的(或者说本地的)vimrc 文件。这个本地 vimrc 的搜索顺序是:环境变量 VIMINIT、$HOME/.vimrc、环境变量 EXINIT, 和一个叫 exrc的文件。通常情况下,会存在 $HOME/.vimrc或 ~/.vimrc这样的文件,这个文件可看作是本地 vimrc。

我们谈论的是什么兼容性

image-20230530122146511
image-20230530122146511

就像我们谈论 Vim 的兼容性模式和不兼容性模式那样,这些模式的开启和禁用会做出什么样的兼容性也值得了解。要了解这些,先要知道 Vim 是 V****IMproved 的缩写,像这个全名暗示的那样,Vim 编辑器是 Vi 编辑器的改进版。

经过改进意味着 Vim 的功能集比 Vi 的更大。

当谈论 Vim 的兼容和不兼容模式时,我们所说的兼容性是指 Vim 兼容 Vi。在兼容模式下运行时,Vim 大部分增强及改善的功能就不可用了。不管怎样,要记住这种模式下,Vim 并不能简单等同 Vi – 此模式只是设定一些类似 Vi 编辑器工作方式的默认选项。

不兼容模式 – 不用多说 – 使得 Vim 用起来跟 Vi 不兼容,也使得用户可以用到它的所有增强、改善及特征。

怎么启用/禁用这些模式?

在 Vim 中尝试运行 :help compatible 命令,接着你会看到如下语法:

'compatible' 'cp' boolean (默认开启 ,当 |vimrc| 或 |gvimrc| 存在时关闭)

描述中说到兼容模式默认开启的,不过当 vimrc 文件存在时会关闭。但说的是哪种 vimrc 文件呢?答案是本地 vimrc。深入研究下 :help compatible 命令给出的详情,你会发现下面内容说得更清楚:
事实上,这意味着当一个 |vimrc| 或 |gvimrc| 文件存在时,Vim 会用默认的 Vim,否则它会用 Vi 默认的。(注:如果系统级的 vimrc 或 gvimrc 文件中带有 |-u| 参数,则不会这样。)。
那么在 Vim 启动时,实际上进行的动作是,首先会解析系统 vimrc 文件 – 在这时处于兼容性模式默认开启状态。现在,无论何时发现一个用户(或成为本地) vimrc ,不兼容模式都会打开。:help compatible-default命令说的很清楚:
在 Vim 启动时,‘compatible’选项是打开的。这将在 Vim 开始初始化时应用。但是一旦之后发现用户级 vimrc 文件,或在当前目录有一个 vimrc 文件,抑或是 VIMINIT环境变量已设置,Vim 就会被设为不兼容模式。
假如你想无视默认的行为,要在编辑器开始解析系统 vimrc 文件时打开不兼容模式,你可以通过添加如下命令到那个文件的开头来完成这个操作。

:set nocompatible

其他有用细节

这儿是一些关于这些模式的更有用的细节:
现在通过创建一个 .vimrc 文件来设置或重置兼容性会有一个副作用:(键盘)映射(Mapping)在解释的时候会有冲突。这使得在用诸如回车控制符 等情况时会有影响。如果映射关系依赖于兼容性的某个特定值,在给出映射前设置或者重置它。

上述行为能够用以下方式能覆盖:

  • 如果给出 -N 命令行参数,即使不存在 vimrc 文件, ‘不兼容模式’ 也会启用。
  • 如果给出 -C 命令行参数,即使存在 vimrc 文件, ‘兼容模式’ 也会启用。
  • 如果应用了 -u {vimrc} 参数,‘兼容模式’将会启用。
  • 当 Vim 的可执行文件的名称以ex结尾时,那这个效果跟给出 -C 参数一样:即使存在一个 vimrc 文件,‘兼容模式’ 也会启用,因为当 Vim 以 “ex” 的名称启用时,就会让 Vim 的工作表现得像 “前任” 一样(LCTT 译注:意即 Vim 像 Vi 一样工作)。 “`

结论

通过本文,你应该对 Vim 编辑器的兼容模式有了一个基本的了解,知道了它的作用、特点和切换方法。你也可以根据自己的喜好和需求,在兼容模式和非兼容模式之间自由选择,体验 Vim 编辑器的不同风格。无论你是 Vim 编辑器的新手还是老手,我们都建议你尝试一下非兼容模式,因为它可以让你更好地利用 Vim 编辑器的强大功能,提高你的工作效率和编辑乐趣。希望本文能够帮助你更好地使用 Vim 编辑器,让你在 Linux 系统中享受编辑文本的快乐。

以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

137e00002230ad9f26e78-265x300
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部