Vim

常用的Vim功能

三种模式

  1. Normal模式
  2. Insert模式
  3. Visual模式
模式直接的切换

退出编辑模式:

Esc键
Shift键 + : 键 

w :保存文件但不退出
w file :将修改另外保存到file中,不退出
w! :强制保存,不推出
wq :保存文件并退出
wq! :强制保存文件,并退出
q :不保存文件,退出vi
q! :不保存文件,强制退出vi
e! :放弃所有修改,从上次保存文件开始再编辑

三种模式下的常见命令

1. Normal模式
  • 1、
  • 2、

摘要 : Vim是一个很好的编辑器,但是由于快捷键多、难以一次记全,常常另初学者感觉无从下手。
下面整理了一个《常用vim - source Insight快捷键对照表》,不求大而全,只求覆盖最简单最常用的几十条命令,只要你会用source Insight,完全可以在10分钟内对着这张表无缝切换到vim。初学者只需掌握表中加粗的26个重要命令,即可在vim中看代码写代码。

vim环境配置 : 参考《手把手教你把Vim改装成一个IDE编程环境Ver.0.7.pdf》

一、如何添加tags
步骤1:在代码根目录进入vim .
步骤2:先按F4,回车。(指定根目录)
步骤3:按F3,然后输入某个要添加的仓的路径
步骤4:回车(确定)
步骤5:F4(更新tags)
步骤6:以后修改了代码,就只使用F4更新就可以了。

二、快捷键对照表

vim快捷键(注意区分大小写) 说明 SI对应快捷键
第一层级 -- 存活
上下左右移动光标 k、j、h、l (移动鼠标即可)
打开“文件目录” F7 Ctrl+o
打开“symbol列表” F8 Alt+F8
将光标在各个窗口中跳转 Ctrl + w + w 其他方式:Ctrl + w + l 向右跳转, Ctrl + w + h 向左跳转,Ctrl + w + k 向上跳转,Ctrl + w + j 向下跳转
查找文件 空格 + p +(输入你想查找的文件名) 在“文件目录”中查找
打开最近文件 空格 + m 按q退出该窗口 菜单栏选择“window”,在下拉菜单中选择
打开当前文件所在目录 , + n + f(手速要快)
当前位置插入一个字符 i
当前位置后面插入一个字符 a
在下方插入一行 o
在上方插入一行 Shift + o Ctrl + i
删除一个字符 x
剪切 d Ctrl + x
剪切一整行/删除一整行 dd Ctrl + u
复制 y Ctrl + c
复制一整行 yy Ctrl + k
粘贴 p Ctrl + v
撤销 u Ctrl + z
反撤销 Ctrl + r Ctrl + y
选中当前行 Shift + v
退出当前窗口 :q
保存退出 :wq 或Shift + z + z
不保存退出 :q!
退出全部窗口 :qa
第二层级 - 能写代码
查找(并高亮下划线) / + 输入你想查的字符 + Enter 查找之后,可以按n或N向下/上寻找第二、第三次出现该单词的地方 Ctrl + f
取消高亮 :nohl
向上查找当前单词 #(相当于Shift + 3) F3
向下查找当前单词 *(相当于Shift + 8) F4
转到定义 Ctrl + ] 鼠标左键单击,或F7
后退 Ctrl + o Alt + .
前进 Ctrl + i Alt + ,
按块编辑(选中某一段文字) v +(移动光标) 按v,会进入visual模式,可以按块进行编辑->ydp
注释选中代码 backspace 如果注释多行,可以先按下行数,再按Backspace Shift + Alt + m
格式化代码 = 按v,进入visual模式,然后选择块,再格式化
高亮一个单词 mm Shift + F8
取消全部高亮 mn
查找symbol符号(函数名、枚举、宏)出现的地方 在当前单词处按下Ctrl + \ + e ;(或 :cs f e + 要查找的symbol) Ctrl + \ + e 的意思是先按ctrl+\,然后再按下e键 Ctrl + /
开启/关闭刚才的查找窗口 ,,
查找func都被谁调用 在当前单词处按下Ctrl + \ + c;(或:cs f c + 要查找的函数)
至此,在vim里干活已经不存在障碍
第三层级 -- 感觉良好
按单词向后跳转 w e也可以实现类似效果。和w相比,e是移动到该单词尾,w是移动到下一单词头
按单词向前跳转 b
跳转到当前行某个字母 f + (要跳转的字母),然后按; 可以跳到下一处出现该字母的地方
移动到句尾 $(也就是Shift + 4)
移动到句头 ^(也就是Shift + 6)
移动到行头 0
到上一行非空行头 -
从当前位置向上移动xxx行 空格 + k + (输入要跳转的行上高亮的字母)
从当前位置向下移动xxx行 空格 + j + (输入要跳转的行上高亮的字母)
替换当前单词 cw + (输入替换后的字符)+ESC
跳转到xxx行(xxx是行号) 行号 + G(注意G大写,相当于“行号 + Shift + g”) 例如:1314G →跳到第1314行 Ctrl + g
锁屏 Ctrl + s 如果突然发现vim卡住了,可以看看是不是按了Ctrl + S锁屏了
解锁 Ctrl + q
临时关闭vim界面 Ctrl + z
回到刚才的vim界面 fg
往下半个屏幕 Ctrl + d
往上半个屏幕 Ctrl + u
往下一个屏幕 Ctrl + f (Page Down)
往上一个屏幕 Ctrl + b (Page up)
跳转到文件头 gg
跳转到文件尾 G Ctrl + End
移动光标到屏幕的首行. H
移动光标到屏幕的中间一行. M
移动光标到屏幕的尾行. L
使用z重新定位屏幕命令:把当前行移动到屏幕顶部 z + 回车
把当前行移动到屏幕中央,不用回车,切记 z.(或者zz)
把当前行移动到屏幕底部,同上,不用回车 z-
移动第100行到屏幕的顶部,记得键入100z之后要再回车 100z + 回车
跳到 上一次编辑的地方 g;
跳到 下一次编辑的地方 g,
自动补全 Ctrl + n Ctrl + e
匹配左括号 : % Ctrl + Shift + ]
匹配右括号 : % Ctrl + Shift + [
行首插入 shift + i
行尾插入 Shift + a
向右/左缩进 < 或 > tab 或 shift + tab
全部变成大写 gU
全部变成小写 gu
左侧NERD_TREE回上级目录 NerdTree 界面按 x
可以直接以当前目录来显示为根目录 NerdTree 界面按
以空行为单位移动到上一个空行区域 }
以空行为单位移动到下一个空行区域 {
竖屏分割 :vs (vertical split缩写)
横屏分割 :sp (split缩写)
第四层级 -- 组合用法示例 - 按块操作
1. 去除一行前的空格,并按块操作 Ctrl + v
jjj(添加多少行就输入几个j)
^
h
x
ESC
2. 在一行前插入某个字符,并按块操作 Ctrl + v
jjj(添加多少行就输入几个j)
I
(写入要写的东西,如“virtual”)
ESC
3. 在一行末尾插入某个字符,并按块操作 Ctrl + v
jjj(添加多少行就输入几个j)
$
A
(写入要写的东西,如“end”)
ESC

你可能感兴趣的:(Vim)