导读 | 在介绍最常用和最受欢迎的Vim插件之前,让我们首先了解Vim的真正含义。基本上,Vim只是另一个文本编辑器,我们可以使用它来编写和编辑文本,就像通常在Windows或Mac上使用的Sublime Text,甚至在Windows上使用的记事本一样。 |
Vim允许高效的文本编辑,有时它甚至被视为程序员的完整IDE。为软件工程师编辑现有代码非常耗时且单调。由于Vim与效率有关,因此它使我们能够使用现有的快捷键来处理重复的任务,甚至可以自定义和创建自己的键盘。
Vim是最古老的文本编辑器之一,但它仍然很强大。成熟,稳定和可扩展,具有大量插件,可在整个网络中访问。Vim插件所做的是通过使用它来增强我们的工作流程来帮助扩展Vim的功能。
Vim插件基本上是在特定目录结构中分布的大量VimScript记录。Vim插件在插件管理器在出名之前被作为tarball包形式分发的。Vim插件在Vim中合并了其他功能-这些不是编辑器固有的功能。由于Vim的存在,可以使用各种各样的插件来实现广泛的用途。说实话,插件也许是Vim最基本的目的。
几乎所有主要的编程语言都使方括号来实现不同的意图和目的 – 方括号,圆括号和花括号。 通常,它们会嵌套使用多对括号,因此很难搞清楚某个括号的开闭区间。我发现自己经常要数小括号,尤其是在复杂的 Bash 脚本中,以确保无误。
高级配置
现在好了,Vim Rainbow插件来了,因为它为每对括号设置了不同的颜色,从而使其很容易别出哪些括号是一对括号。 也非常有用而且非常生动。
高级配置允许您定义为每种类型的文件使用什么括号。您还可以通过这种方法确定括号的颜色。
例如,下面一个高级配置(将这些语句添加到你的.vimrc中):
let g:rainbow_active = 1 let g:rainbow_load_separately = [ / [ '*' , [['(', ')'], ['/[', '/]'], ['{', '}']] ], / [ '*.tex' , [['(', ')'], ['/[', '/]']] ], / [ '*.cpp' , [['(', ')'], ['/[', '/]'], ['{', '}']] ], / [ '*.{html,htm}' , [['(', ')'], ['/[', '/]'], ['{', '}'], [']*>', '[^>]*>']] ], / ] let g:rainbow_guifgs = ['RoyalBlue3', 'DarkOrange3', 'DarkOrchid3', 'FireBrick'] let g:rainbow_ctermfgs = ['lightblue', 'lightgreen', 'yellow', 'red', 'magenta']
受欢迎的广泛使用的Vim插件之一是Nerd-tree。 NERDTree是Vim编辑器的文件系统浏览器。 使用此插件,用户可以直观地浏览复杂的目录层次结构,快速打开文件以进行读取或编辑,以及执行基本的文件系统操作。
这在为大型企业或项目工作时效果最佳,因为很难找到包含您要更改的一行内容的一个文档的名称和区域。 因此,使用此插件,您可以执行基本的文件系统操作,轻松浏览重要的复杂目录链,甚至可以通过快速打开这些记录在任何需要的地方阅读和修改文档。
轻快的按键操作将以垂直的方式打开浏览器窗口,您无需花太多时间就可以浏览所需的记录并打开它。 对于大量的代码分类来说,这是绝对必要的。 对于那些难以记住文件名的个人,同样也是如此。
如果你希望在Vim启动时自动打开NERDTree?将以下代码粘贴到您的vimrc中:
autocmd StdinReadPre * let s:std_in=1 autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif
Ack是全世界程序员普遍使用的Vim插件之一。 这个特定的插件在Vim编码时基本上充当程序员的搜索工具。 我们时不时地要搜索包含特定行甚至只是一个单词的特定文件,而ack正是适合Vim用户的插件。
它不仅使我们可以在Vim中搜索文件,而且还可以在单独的分割窗口中显示结果,以便我们改善。 最重要的是,它还显示事件的行号,每个事件一次。
帮助命令:
:help Ack
本文先介绍3个吧,Vim插件的超稳定特性可能是Vim插件特性中最好的部分。随着每隔一天就有一个新插件发布,您可以极大地改善使用Vim的体验。vim插件不仅简化了我们在vim上的工作,而且使事情变得非常有趣和吸引人。
这些只是我们精选的各种Vim插件中的一小部分。 我们希望它对您有所帮助。 请不要忘记分享我们的文章,并帮助其他人了解这一知识。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/linux/123071.html