哦卧槽,是Vim。

这里有一些Vim操作,整理起来,方便以后查阅。

跳转到声明再跳回去

ctrl + ],跳转回去ctrl + o

保存并退出

  • :x!

  • :wq

行号

  • 显示行号

    1
    2
    :set number
    :set nu
  • 不显示

    1
    :set nu!
  • 每次打开都显示行号

    1
    vi ~/.vimrc 文件,添加:set number

跳跃

  • :5,跳转到第 5 行。
  • G,跳转到文件末尾。
  • $ ,跳转到本行末尾。
  • o,跳到行首第一个字符。
  • ^,跳到行首。
  • gg,回到文件第一行。
  • '',回到上次位置。

替换

  • :%s/func/fun/g,全局的替换,把func替换为fun。

  • :%s/old/new/gc,会找到整个文件中的匹配项,提示是否替换。

  • R,进入连续替换模式。

执行指令

:!ls,可以在外部执行 Linux 指令。

另存为

:w a.cc,将本文件另存为。

高亮标记

#,可以全局的标记这个单词。

删除

  • 删除一个字符,x
  • 删除一行,dd

撤销

  • u,undo

选中

  • 按住v,然后移动光标

  • ][,选中一段,大括号内的一段,或者整个函数。

    1
    2
    3
    4
    5
    6
    函数体跳转: 
    [[
    ]]
    []
    ][
    {}

复制粘贴

  • 复制 yank

    选中,然后按y

  • 粘贴 paste

    p

注意:使用x或者dd后,也可以进行粘贴。

进入插入模式

  • shift + aA,调到本行末尾并进入插入模式。
  • shift + iI,调到本行行首并进入插入模式。
  • i,光标当前位置前进入插入模式。
  • a,光标位置后进入插入模式。
  • o,创建新的一行(在光标的下一行),并进入插入模式。
  • shift + OO,创建新的一行(在光标的上面一行),并进入插入模式。

搜索

  • /Hello,查找Hello
  • n,下一个。
  • Nshift n,上一个。

分割模式

  • :split HelloVim.cc,行。
  • :vsplit HelloVim.cc,列。
  • ctrl + ww,切换。

批量注释

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 注释
首先光标放在行首
ctrl + v 进入视图模式
向下移动光标
shift + I 进入插入模式
输入 //
按 ESC 保存即可

# 取消注释
ctrl + v
选中注释 //
移动光标
按 x
esc
保存即可

更多学习资料: