The Vim commands cheat sheet (ubuntu) vi编辑器常用的指令及快捷键ITeye - 娱乐之横扫全球

The Vim commands cheat sheet (ubuntu) vi编辑器常用的指令及快捷键ITeye

2019年03月01日12时28分31秒 | 作者: 昆锐 | 标签: 指令,当时,光标 | 浏览: 2832

1. http://www.tuxfiles.org/linuxhelp/vimcheat.html

2. http://www.fprintf.net/vimCheatSheet.html

3.  http://www.catswhocode.com/blog/100-vim-commands-every-programmer-should-know

 

 

vi修改器常用的指令及快捷键

 

光标操控指令 
指令 光标移动
h或^h 向左移一个字符
j或^j或^n 向下移一行
k或^p 向上移一行
l或空格 向右移一个字符
G 移到文件的最终一行
nG 移到文件的第n行
w 移到下一个字的最初
W 移到下一个字的最初,疏忽标点符号
b 移到前一个字的最初
B 移到前一个字的最初,疏忽标点符号
L 移到屏幕的最终一行
M 移到屏幕的中心一行
H 移到屏幕的榜首行
e 移到下一个字的完毕
E 移到下一个字的完毕,疏忽标点符号
( 移到语句的最初
) 移到语句的完毕
{ 移到阶段的最初
} 移到下一个阶段的最初
0或| 移到当时行的榜首列
n| 移到当时行的第n列
^ 移到当时行的榜首个非空字符
$ 移到当时行的最终一个字符
+或return 移到下一行的榜首个字符
- 移到前一行的榜首个非空字符
在vi中增加文本
指令 刺进动作
a 在光标后刺进文本
A 在当时行刺进文本
i 在光标前刺进文本
I 在当时行前刺进文本
o 在当时行的下边刺进新行
O 在当时行的上边刺进新行
:r file 读入文件file内容,并插在当时行后
:nr file 读入文件file内容,并插在第n行后
escape 回到指令形式
^v char 刺进时疏忽char的指定含义,这是为了刺进特别字符
在vi中删去文本
指令 删去操作
x 删去光标处的字符,能够在x前加上需求删去的字符数目
nx 从当时光标处往后删去n个字符
X 删去光标前的字符,能够在X前加上需求删去的字符数目
nX 从当时光标处往前删去n个字符
dw 删至下一个字的最初
ndw 从当时光标处往后删去n个字
dG 删去行,直到文件完毕
dd 删去整行
ndd 从当时行开端往后删去
db 删去光标前面的字
ndb 从当时行开端往前删去n字
:n,md 从第m行开端往前删去n行
d或d$ 从光标处删去到行尾
dcursor_command 删去至光标指令处,如dG将从当产胆行删去至文件的结尾
^h或backspace 刺进时,删去前面的字符
^w 刺进时,删去前面的字
修正vi文本
每个指令前面的数字表明该指令重复的次数
指令 替换操作
rchar 用char替换当时字符
R text escape 用text替换当时字符直到换下Esc键
stext escape 用text替代当时字符
S或cctext escape 用text替代整行
cwtext escape 将当时字改为text
Ctext escape 将当时行余下的改为text
cG escape 修正至文件的结尾
ccursor_cmd text escape 从当时方位处到光标指令方位处都改为text
在vi中查找与替换
指令 查找与替换操作
/text 在文件中向前查找text
?text 在文件中向后查找text
n 在同一方向重复查找
N 在相反方向重复查找
ftext 在当时行向前查找text
Ftext 在当时行向后查找text
ttext 在当时行向前查找text,并将光标定位在text的榜首个字符
Ttext 在当时行向后查找text,并将光标定位在text的榜首个字符
:set ic 查找时疏忽大小写
:set noic 查找时对大小写灵敏
:s/oldtext/newtext 用newtext替换oldtext
:m,ns/oldtext/newtext 在m行经过n,用newtext替换oldtext
 重复最终的:s指令
:g/text1/s/text2/text3 查找包括text1的行,用text3替换text2
:g/text/command 在一切包括text的行运转command所表明的指令
:v/text/command 在一切不包括text的行运转command所表明的指令
在vi中仿制文本
指令 仿制操作
yy 将当时行的内容放入暂时缓冲区
nyy 将n行的内容放入暂时缓冲区
p 将暂时缓冲区中的文本放入光标后
P 将暂时缓冲区中的文本放入光标前
dsfsd "(a-z)nyy 仿制n行放入姓名为圆括号内的可命名缓冲区,省掉n表明当时行
"(a-z)ndd 删去n行放入姓名为圆括号内的可命名缓冲区,省掉n表明当时行
"(a-z)p 将姓名为圆括号的可命名缓冲区的内容放入当时行后
"(a-z)P 将姓名为圆括号的可命名缓冲区的内容放入当时行前
在vi中吊销与重复
指令 吊销操作
u 吊销最终一次修正
U 吊销当时行的一切修正
. 重复最终一次修正
, 以相反的方向重复前面的f、F、t或T查找指令
; 重复前面的f、F、t或T查找指令
"np 取回最终第n次的删去(缓冲区中存有必定次数的删去内容,一般为9)
n 重复前面的/或?查找指令
N 以相反方向重复前面的/或?指令
保存文本和退出vi
指令 保存和/或退出操作
:w 保存文件但不退出vi
:w file 将修正保存在file中但不退出vi
:wq或ZZ或:x 保存文件并退出vi
:q! 不保存文件,退出vi
:e! 抛弃一切修正,从前次保存文件开端再修改
vi中的选项
选项 效果
:set all 打印一切选项
:set nooption 封闭option选项
:set nu 每行前打印行号
:set showmode 显现是输入形式仍是替换形式
:set noic 查找时疏忽大小写
:set list 显现制表符(^I)和行尾符号
:set ts=8 为文本输入设置tab stops
:set window=n 设置文本窗口显现n行
vi的状况
选项 效果
:.= 打印当时行的行号
:= 打印文件中的行数
^g 显现文件名、当时的行号、文件的总行数和文件方位的百分比
:l 运用字母"l"来显现许多的特别字符,如制表符和换行符
在文本中定位阶段和放置符号
选项 效果
{ 在榜首列刺进{来界说一个阶段
[[ 回到阶段的最初处
]] 向前移到下一个阶段的最初处
m(a-z) 用一个字母来符号当时方位,如用mz表明符号z
(a-z) 将光标移动到指定的符号,如用z表明移动到z
在vi中衔接行
选项 效果
J 将下一行衔接到当时行的结尾
nJ 衔接后边n行
光标放置与屏幕调整
选项 效果
H 将光标移动到屏幕的顶行
nH 将光标移动到屏幕顶行下的第n行
M 将光标移动到屏幕的中心
L 将光标移动到屏幕的底行
nL 将光标移动到屏幕底行上的第n行
^e(ctrl+e) 将屏幕上滚一行
^y 将屏幕下滚一行
^u 将屏幕上滚半页
^d 将屏幕下滚半页
^b 将屏幕上滚一页
^f 将屏幕下滚一页
^l 重绘屏幕
z-return 将当时行置为屏幕的顶行
nz-return 将当时行下的第n行置为屏幕的顶行
z. 将当时行置为屏幕的中心
nz. 将当时行上的第n行置为屏幕的中心
z- 将当时行置为屏幕的底行
nz- 将当时行上的第n行置为屏幕的底行
vi中的shell转义指令
选项 效果
:!command 履行shell的command指令,如:!ls
:!! 履行前一个shell指令
:r!command 读取command指令的输入并刺进,如:r!ls会先履行ls,然后读入内容
:w!command 将当时已修改文件作为command指令的规范输入并履行command指令,如:w!grep all
:cd directory 将当时工作目录更改为directory所表明的目录
:sh 将发动一个子shell,运用^d(ctrl+d)回来vi
:so file 在shell程序file中读入和履行指令
vi中的宏与缩写
(防止运用操控键和符号,不要运用字符K、V、g、q、v、*、=和功能键)
选项 效果
:map key command_seq 界说一个键来运转command_seq,如:map e ea,不管什么时候都能够e移到一个字的结尾来追加文本
:map 在状况行显现一切已界说的宏
:umap key 删去该键的宏
:ab string1 string2 界说一个缩写,使妥当刺进string1时,用string2替换string1。当要刺进文本时,键入string1然后按Esc键,体系就刺进了string2
:ab 显现一切缩写
:una string 撤销string的缩写
在vi中缩进文本
选项 效果
^i(ctrl+i)或tab 刺进文本时,刺进移动的宽度,移动宽度是事前界说好的
:set ai 翻开主动缩进
:set sw=n 将移动宽度设置为n个字符
n 使n行都向左移动一个宽度
n 使n行都向右移动一个宽度,例如3 就将接下来的三行每行都向右移动一个移动宽度

 

顺带附上vim的用户手册:

 

来历:http://hily.me/blog/2006/04/vi-shortcut/

 

 

 

版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表娱乐之横扫全球立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章