Vim 自身的功能虽然有限,但是还是有很多插件可以供使用的. 下面的几个插件非常好用(Fuzzy finder, rails ... , 具体见.vimrc文件)

针对多个文件进行 查找和替换

使用插件: Greplace

  1. Gsearch -F '要替换的字符串' . -R --include=*rb这里的-F,-R --include=*rb这些参数,跟grep中的一样。
  2. 在返回的结果中,把该替换的替换。
  3. Greplace然后选择y/a/n来决定是否替换。
  4. 最后, 输入wa保存所有文件的改动。

自动补全

凡是在 Vim 缓冲区中(近期打开过的文件)的代码,都可以补全。

  • 从上到下选择候选词:ctrl + n
  • 从下到上选择候选词:ctrl + p

多重复制与粘贴

现在在 Windows, Mac 和 Linux下的复制操作,都不支持多种复制。 很奇怪。

Vim中支持。 使用YRShow 插件。

在我的个人配置中,,+a即可。原始命令::YRShow。 在弹出的“复制历史列表”中, 上下移动, 找到合适的后直接按回车即可。

设置背景 是亮还是暗

切换背景色(很多默认的linux 其实vim很难看的)

  • :set background=dark深色背景色
  • :set background=light亮色北京色

代码配色

每个人心中的代码配色都不同。 你的呢?

:colorscheme <主题名>主题名包括:desert,deepblue,vividchalk等等。 (不少需要到网上下载)

分割屏幕

让一个27寸显示器显示多个窗口是很酷的事儿(虽然我个人很少用)

  • 竖屏分割:vs(vertical split缩写)
  • 横屏分割:sp(split缩写)
  • 来回跳换:ctrl + w + w(跳到下一个小窗口), 或者ctrl + w + <j/k/h/l>(跳到某个方向的小窗口)

注释多行

这里使用了插件: nerd-commentor. 我为它配置了自己的快捷键。

  1. 选中多行 (shift + v)
  2. ,cb(逗号 c b 三个键要快速按)

    取消注释: 使用传统的替换即可。

为多行代码格式化

多行选中后, 按=即可。 (注意:不是100%好用。 因为有的代码本身就是不完整的)

快速跳到当前光标所属文件(如果可能的话)

在 Rails的 路由或者 视图文件中,很好用。gf即可。 (gf = go to file)

  • 在 View 中, 快速跳到一个 partial.
  • config/routes.rb中跳到controller, 如下图所示。

Rails插件

Rails插件允许我们快速的在各种文件中跳来跳去(相信Vim 也有 Django, Spring, angular, 这样的插件, 有兴趣的朋友可以看看。)

  • 跳转到 controller:ctrl + c
  • 跳转到 model :ctrl + m
  • 跳转到 view : 先移动到对应的action, 再ctrl + v

显示/隐藏行数

  • :set number显示行数
  • :set nonumber取消行数

折叠/取消折叠过长的行

  • :set wrap折叠
  • :set nowrap取消折叠

粘贴模式

Vim 正常模式下的粘贴,会导致粘贴的代码一行接一行的缩进。 如果要取消这种缩进的话,就要进入到 "粘贴模式". (记得在这个模式下,无法使用ctrl + t命令来快速打开文件。 )

  • :set paste进入到粘贴模式
  • :set nopaste取消粘贴模式

代码左移/右移 与 重复上一次操作。

在我们格式化代码时会用到。 极度好用。

记住:你写的任何代码都要人肉加上良好的格式化。 能为你个人减少大量错误。

  • 左移: 选多行后,<shift + ,
  • 右移: 选多行后,>shift + .
  • 重复上次操作:.

results matching ""

    No results matching ""