vim 使用手册

  1. 关闭(Exiting)
    :w保存
    :wq, :x保存并关闭
    :q 关闭(已保存)
    :q!强制关闭
  • https://blog.csdn.net/djx5344/article/details/72876291

1.上下左右
h左,j下,k上,l

2.上一个词 下一个词
w 下一个词(word),b 上一个词(backword),所以按一下 w相当于按多下l.

3.下一屏 上一屏
ctrl + f下一屏 (f=forword),ctrl + b上一屏 (b=backword)

4.选择多行
shift + v然后上下移动(箭头)。(你也可以 直接 v然后上下左右移动, 这也是选择多行,只是不是整行整行的选择。动手试一下吧!)

5.搜索
搜索/some_thing 继续搜索下一个:n 搜索前一个:shift + n

6.在当前整个文件中,全局替换
-:%s/old/new/g用old替换new,替换整个文件的所有匹配

  • :%s/old/new/用old替换new,替换所有行的第一个匹配

7.局部替换

  • :s/old/new/用old替换new,替换当前行的第一个匹配
    -:s/old/new/g 用old替换new,替换当前行的所有匹配
  • shift + v 选中若干行,:s/old/new
    -:10,20 s/^/ /g 在第10行知第20行每行前面加四个空格,用于缩进

8.快速打开历史文件
ctrl + e 即可。

9.跳到行首, 行末
跳到当前行的末尾:shift + 4 (意为 $ , 这是正则表达式中 末尾的意思)
跳到当前行的行首: 0(数字0)

10.快速跳到文件首行 , 尾行。
“跳到尾行” 这个功能很多时候很有用。例如, vim 进入到文件夹后,最新的文件(特别是以日期命名的文件)往往排在最下面。shift + g然后按回车可以直接打开。 想象不到吧~
gg第一行 shift + g 末行。

11.快速跳到 上一次 / 下一次编辑的地方:

  • 跳到 上一次编辑的地方:g+;
  • 跳到 下一次编辑的地方:g+,

12.返回上一次/下一次编辑的文件或位置

  • 快速返回上一次编辑的文件: ctrl + o ( o 意为 outer )
  • 快速返回下一次编辑的文件: ctrl + i ( i 意为 inner )

13.输入模式
输入文本
从导航模式到编辑模式,有下面几种方法:

  • 在光标前输入i( insert )
  • 在光标后输入a (append / after )
  • 在行首增加内容 shift + i
  • 在行末增加内容shift + a
  • 在光标下行增加内容: o
  • 在光标上行增加内容:shift + o(这个操作往往会有500毫秒的延迟)

14.删除
以下删除都以当前光标作为起始位置

  • 删掉一个字母:x
  • 删掉一个单词: dw
  • 删掉(剪切)一行:dd
  • 删掉多行: shift +v, 然后 x 或者 d
  • 行数n+dd 剪切n行,使用p对剪切的行进行粘

15.复制与粘贴
复制,或者删除(vim认为删除就是剪切,所有被删掉的内容,都会被放到复制缓冲区中)后,就可以粘贴了。

  • 复制一个单词: yw
  • 复制当前行: yy
  • 粘贴: p
    `
    16.多重复制与粘贴
    现在在 Windows, Mac 和 Linux下的复制操作,都不支持多种复制。
    Vim中支持使用YRShow 插件。在个人配置中 , + a 即可。原始命令: :YRShow ,在弹出的“复制历史列表”中, 上下移动, 找到合适的后直接按回车即可。

17.分割屏幕

  • 竖屏分割: :vs (vertical split缩写)
  • 横屏分割: :sp(split缩写)
  • 来回跳换: ctrl + w + w(跳到下一个小窗口), 或者ctrl + w + (跳到某个方向的小窗口)
  • 关闭窗口: :close

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

  • 选中多行 shift + v
    ,cb(, c b三个键要快速按)取消注释: 使用传统的替换即可。

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

20.快速跳到当前光标所属文件(如果可能的话)
在 Rails的 路由或者 视图文件中,很好用。gf 即可。 (gf = go to file)
在 View 中, 快速跳到一个 partial.
在 config/routes.rb 中跳到controller

21.显示/隐藏行数
:set number 显示行数
:set nonumber取消行数

22.折叠/取消折叠过长的行
:set wrap折叠
:set nowrap 取消折叠

你可能感兴趣的:(vim 使用手册)