打开文件跳至第5行
vim +5 file打开并恢复上一次未正常退出的文件
vim -r file显示文档名称,是否修改以及光标位置
ctrl+g
:f将n1,n2行保存到新文件。
:n1,n2w filename保存并退出
:x
ZZ
:wq水平拆分窗口并浏览文件系统
:Sex垂直拆分窗口并浏览文件系统。
:Vex向前移动一个单词,光标停在下一个单词的开头
w向后移动一个单词,光标停在下一个单词的开头
b向前移动一节
{向后移动一节
}将光标移动到同一行的下一个c字符
fc将光标移动到同一行上的前一个c字符。
Fc跳转同行的下一个c字符,使用;查找下一个
fc
;跳转同行的下一个c字符,使用;查找上一个
fc
,移至该行的第一个非空白字符
^移至行尾
$移至文件头
gg移动到文件末尾
G向下滚动一个屏幕
Ctrl+f向上滚动一个屏幕
Ctrl+b将当前行移动到屏幕中心
zz复制整行文本
yy删除(剪切)1(n)行。
dd在光标之后粘贴
p跳至单词的下一个出现的地方
n跳至单词的上一个出现的地方
N将所有old出现的地方换成new
:%s/old/new/g在垂直分割的多个窗口中编辑多个文件
vim -O filename filename2在水平分割的多个窗口中编辑多个文件。
vim -o filename filename2格式化代码
=在光标处插入当前日期和时间
:r !date其他Shell命令的输出可以插入到当前文档中。
:r !command自动补全单词
Ctrl + n
Ctrl + p改变光标处的大小写,也可以改变一个区域的大小写
~跳转到局部定义的变量
gd跳转到全局定义的变量
gD跳转到上一个修改的地方
g;跳转到下一个修改的地方
g,跳到上一个功能块的开头,您需要使用单独的行{
[[跳转到下一个功能块的开头需要一行{
]]跳转到配对的{}, () or []的另一个括号位置
%修改,剪切或复制括号里内容。
ci( 、 di( or yi(修改,剪切或复制””里内容。
ci" 、 di" or yi"Call the Shell and return vim with “exit”.
临时将vim打开的内容放到后台,去执行shell命令,回到vim,使用”exit”指令
!sh光标处的数字+1
Ctrl + a光标处的数字-1
Ctrl + x打开光标所在单词的手册页
K向下搜索光标处的单词
*向上搜索光标处的单词
#删除光标处的单词
daw删除一个单词并开始插入
ciw删除一行文本并进入插入模式
cc执行j命令后,光标仅移动到屏幕上方的第5位,而不移动到屏幕的最后一行
:set so=5删除光标字符并进入插入模式
s删除光标位置周围的文本范围,然后进入插入模式
c退出插入模式
Esc
Ctrl + [跳转至屏幕中间
M转换字符成为大写
gU转换字符成为小写
gu全选整个文件
ggvG交换两个字符的位置
xp交换两行的位置
ddp将此语句添加到/ etc / vim / vimrc中以自动补全花括号。
imap {<CR> {}<ESC>i<CR><TAB><ESC>V<O<TAB> 补全符号的另一半,将以下内容添加到/ etc / vim / vimrc中。
1 | inoremap ( ()<Esc>i |
转载请注明出处:http://www.wolfnx.com/2018/02/08/CommonVimInstruction
作者 : wolfnx
邮箱 : wolfnx@outlook.com
邮箱2 : lostnx@gmail.com