当前位置:网站首页>10款超牛Vim插件,爱不释手了
10款超牛Vim插件,爱不释手了
2022-06-25 15:39:00 【七步编程】
hello,大家好,我是 Jackpop,硕士毕业于哈尔滨工业大学,曾在华为、阿里等大厂工作,如果你对升学、就业、技术提升等有疑惑,不妨交个朋友:
我是一个忠实的Vim编辑器用户,从事开发工作多年,我一直都非常喜欢使用Vim。
轻量、便捷,而且,熟悉了Vim相关的快捷键之后,效率能够成倍的提升。
除了这些之外,Vim像很多知名的IDE、编辑器一样,也支持插件配置,通过这些插件,可以实现更多高级、高效的操作。
今天,就来给大家分享10个我特别喜欢的Vim插件。
1. Volt

我排在第一的甚至不是一个插件,但是,它能够取代了Vundle等插件,因此,我把它列在这里。
Volt是一款Vim插件管理器,你可以用它来安装插件,并创建称为 "profiles"的插件组合。
你可以用一条命令启用一个新的配置文件:Volt profile set myprofile。
通过这款工具,可以实现一些很有价值的操作,比如,仅为Python语言启用indentpython插件。
Volt还提供了一个简单的方法来进行每个插件的配置。
配置在配置文件之间是共享的,所以你可以一次性安装插件,并在多个配置文件中使用它们。
2. Vim-Rainbow

括号在绝大多数编程语言中都被频繁的使用,大括号、中括号、小括号。
通常,它们使用多对括号,其中一对嵌入另一对。要弄清楚哪个闭合括号属于哪个开头括号,可能会变得很困难,也很烦人。
VS Code和IDEA中都有这类插件解决这个问题,而且备受欢迎。
vim-rainbow则是Vim中用于解决这种问题的插件,它为每一对括号都提供了相应的功能。它给每一对方括号一个独特的颜色,所以很容易识别哪些方括号属于对方。它非常有用,也非常有色彩。
3. lightline

有很多Vim的插件,比如Powerline,它们在屏幕底部放一个条,显示你正在处理什么文件,你在文件中的位置,是什么类型的文件,等等。
这些插件各有优缺点,简单权衡后,我选择了lightline。
它相对较小,容易设置,具有可扩展性,而且不需要任何其他工具或插件。
4. NERDTree

NERDTree是一个比较经典的插件。
在大型项目中,要找到包括你需要编辑的那一行的文件的确切名称和位置可能很困难。
通过NERDTree是一个比较经典的插件和快捷键设置(在我的例子中是F7,因为我在我的.vimrc配置文件中将NERDTree与F7绑定),一个垂直分割的资源管理器窗口打开了,我可以轻松地浏览到我想要的文件并打开它。
这对于大型代码体来说是很有价值的。
5. NERD Commenter

所有的程序员,在某些时候,写的代码都会引入一个难以调试的问题,导致他们需要注释或撤销注释。
这就是NERD Commenter的用武之地。
选择代码,点击Leader+cc,你的代码就被注释了(标准的Vim Leader键是/字符),再次点击Leader+cn,你的代码就被取消注释。
NERD Commenter能够对大多数文件类型自动使用正确的注释字符。例如,如果你正在编辑一个BIND区域文件,并将文件类型设置为BIND区域。
6. Solarized
我使用Vim的Solarized颜色方案已经很久了,我把我的终端、dir_colors和Vim设置成一致的。
不过,每隔一段时间,我就会在浅色和深色模式之间切换,这取决于我所处的环境、屏幕光量,以及我是否需要把东西放在大屏幕上供别人阅读。
显然,你可以选择任何你喜欢的颜色方案,但我更加喜欢Solarized,它有浅色和深色两种模式,在两者之间切换非常简单,而且它不会太具干扰性。
我的第二个选择是Monokai。
Volt插件管理器使我可以很容易地在两者之间切换,所以我可以用Monokai进行Python编程,用Solarized进行Bash编程。
我没有包括Solarized的图片,因为本文中的其他图片都使用了Solarized的浅色或深色,所以请查看它们。
7. fzf

编辑切换为居中
添加图片注释,不超过 140 字(可选)
当你寻找一个文件时,有时你只是想在你的键盘上敲击一些与你正在寻找的文件名相似的东西。
fzf(或 “模糊查找器”)插件就能给你这样的效果。
点击:FZF并开始输入。
一个不断缩短的列表将向你展示或多或少符合你所寻找的文件。
我经常使用这个,可能比最近的NERDTree还要多。
8. ack

每隔一段时间,你都想搜索一个包含某一行或某一个词的文件。
我很喜欢使用ack插件,最好是与ag结合使用,ag是一个被称为 "the silver searcher"的命令。
这款插件速度惊人,涵盖了绝大多数我grep或vimgrep能够做的事情。
9. gitgutter

编辑切换为居中
添加图片注释,不超过 140 字(可选)
大多数IT人士都与Git和Git仓库中的文件打过交道。
gitgutter插件在你的行号附近增加了一列,显示了更改(~)、添加(+)和删除(-)的符号。
这对记录你所改动的内容相当有用,它让你专注于手头的工作,比如写一个补丁来修复一个关键的错误。
这个插件在性能上有一点差距,有时需要一秒钟的时间才能赶上你的改动,但它仍然相当有用。
10. Tag List

编辑切换为居中
添加图片注释,不超过 140 字(可选)
如果你在一个相当大的文件中编程,很容易失去你所在的位置,你可能会发现自己在上下滚动寻找某个功能。
有了Tag List插件,你只需输入:Tlist,就可以得到一个垂直分割的变量、类型、类和函数,你可以很容易地跳转到。
这适用于许多语言,如Java、Python,以及ctags工具适用的任何其他文件类型。
这就是我要推荐的10款Vim插件,都是日常开发过程中层层筛选留下并经常使用的,在工作过程中也极大的提高了开发效率,推荐给大家!
边栏推荐
- 转换Cifar10数据集
- Asynchronous processing of error prone points
- The style of the mall can also change a lot. DIY can learn about it!
- Traversal and branch judgment of JS (case on June 24, 2022)
- Constructor Pattern
- Sword finger offer 04 Find in 2D array
- Cloning and importing DOM nodes
- Introduction to database transactions
- Ten routing strategies for distributed task scheduling platform XXL job
- SQL最常用的语句
猜你喜欢
Golang open source streaming media audio and video network transmission service -lal

Sword finger offer 07 Rebuild binary tree

基于深度Q学习的雅达利打砖块游戏博弈

Resolve Visio and office365 installation compatibility issues

Sword finger offer II 091 Paint the house

《睡眠公式》:怎么治睡不好?
Inter thread synchronization semaphore control
Consumer and producer cases of inter thread synchronization (condition variable)

解析数仓lazyagg查询重写优化

Golang uses Mongo driver operation - increase (Advanced)
随机推荐
Share the code technology points and software usage of socket multi client communication
MySQL installation tutorial
Sword finger offer II 091 Paint the house
LeCun预言AGI:大模型和强化学习都是斜道!我的「世界模型」才是新路
说下你对方法区演变过程和内部结构的理解
VectorDraw Developer Framework 10.1001 Crack
Inter thread synchronization semaphore control
基于神经标签搜索,中科院&微软亚研零样本多语言抽取式摘要入选ACL 2022
有哪些新手程序员不知道的小技巧?
Why is it said that restarting can solve 90% of the problems
Free books! AI across the Internet paints old photos. Here is a detailed tutorial!
Most commonly used SQL statements
[issue 24] one year experience of golang to develop futu
The paid video at station B caused the up master to lose more than ten thousand fans
Don't underestimate the integral mall, its role can be great!
Time wheel and implementation analysis of time wheel in go zero
Golang uses Mongo driver operation - increase (Advanced)
Sword finger offer 10- I. Fibonacci sequence
一行代码可以做什么?
Analysis of the concept of metacosmic system