vim 常用的若干命令

来源:互联网 发布:怎样注销手机淘宝号 编辑:程序博客网 时间:2024/05/16 17:55
(1)移动
  k        上
h   l    左  右
  j        下
%  跳转到相配对的括号  
gD 跳转到局部变量的定义处  
'' 跳转到光标上次停靠的地方, 是两个', 而不是一个"
0        到行首
$        到行尾
gg       到页首
G        到页末
行号+G   跳转到指定行
(2)进入和退出Vi命令
ZZ                        退出vi并保存
:q!                       退出vi,不保存
:wq                       退出vi并保存
:e                        不保存重新打开
(3)重复
.        重复上一次操作
(4)插入
o        在光标下方新开一行并将光标置于新行行首,进入插入模式。
O        同上,在光标上方。

a        在光标之后进入插入模式。
A        同上,在光标之前。

R        进入替换模式,直到按下Esc
(5)替换
:s/p1/p2/g       将当前行中所有p1均用p2替代,若要每个替换都向用户询问则应该用gc选项
:n1,n2s/p1/p2/g  将第n1至n2行中所有p1均用p2替代
%s/^.//g         删除每行第一个字符
%s/^..//g        删除每行前2个字符,类推
%s/^/xxx/g or %s#^#xxx#g  在每行最前头添加xxx
%s/$/xxx/g or %s#$#xxx#g  在每行最后头添加xxx
%s/xxx/yyy/g or %s#xxx#yyy#g  全局替换,加%表示所有行,g表示一行里全部目标
(6)删除
x        删除当前光标下的字符
dw       删除光标之后的单词剩余部分。
d$       删除光标之后的该行剩余部分。

dd       删除当前行。


删除包含特定字符的行:
g/pattern/d   
删除不包含指定字符的行:
v/pattern/d
g!/pattern/d
现实TAB键以及空格等:
set list!
删除指定的行:
:x,.d #从x行删除到当前行;
:.,xd #从当前行删除到x行;
:x,.+3d #从x行删除到当前行后第三行;
:x,.-1d #从x行删除到当前行前一行


c        功能和d相同,区别在于完成删除操作后进入INSERT MODE
cc       也是删除当前行,然后进入INSERT MODE
(7)行合并
J        把下面一行合并到本行后面
(8)设置高亮
:set hlsearch    设置高亮
:set nohlsearch  关闭高亮
:nohlsearch      关闭当前已经设置的高亮
(9)恢复误操作
u        撤销最后执行的命令
U        修正之前对该行的操作
Ctrl+R   Redo
(10)复制黏贴
选块   先用v,C-v,V选择一块,然后用y复制,再用p粘贴。
yy     复制当前整行
nyy    复制当前行开始的n行内容
p      黏贴
xdd    剪切x行

1 0
原创粉丝点击