您的位置:首页 > 其它

vim实用手册 - 编辑篇(插入、删除、复制、替换)

2012-04-14 13:56 225 查看
一、插入文本

常用的,当然是i,但是如果只用i,那就太TB了,记住i、o、a即可,
当然大小写,一般区分前后的概念,这个是vim在设计各类指令的原则。

命令 执行的操作 记忆方法
-----------------------------------------------------------------
i 在光标的左侧插入字符
I 在行首插入字符
a 在光标的右侧添加文本
A 在行尾添加文本
o 在当前行下面插入一空行
O 在当前行上面插入一空行
20i-[Esc] 插入20个连字符(这是一个非常有用的命令,屁如插入分隔符,插入+等等)
-----------------------------------------------------------------

下面还有几个常用的设置:

命令 执行的操作 记忆方法
-----------------------------------------------------------------
:set showmode 当vi处在输入模式下时显示提示信息
:set sm 即时显示配对的)或}
:set ts=n 把制表符设置为n(默认为8)
:set ai 下一行从前一行的缩进位置开始(这个在写代码时比较有用)
-----------------------------------------------------------------

二、删除文本

命令 执行的操作 记忆方法
-----------------------------------------------------------------
x 删除光标所在的字符
6x 删除光标位置的字符以及右侧的5个字符
X 删除前一个字符
dd 删除当前行
4dd 删除4行
64dd 删除64行
dw 删除一个单词
d0 删除到行首
d$ 删除到行尾
d 删除一个区域(只用于vim)
p 把被剪切的文本粘贴到下面(整行)或右侧(部分行)
P 把被剪切的文本粘贴到上面(整行)或左侧(部分行)
"add 把当前行粘贴到缓冲区a里
"ap 把缓冲区a里的内容粘贴到当前位置
J 把当前行于下一行合并为一行
xp 调换两个字符的位置
-----------------------------------------------------------------

三、替换文本
命令 执行的操作 记忆方法
-----------------------------------------------------------------
rch 把光标位置的字符替换为ch
R 替换光标右边的文本
s 把光标所在的字符替换为任意个字符
S 替换整行内容
cw 修改一个单词
c 修改区域里的文本(vim)
~ 改变所扫描的或区域里的字母的大小写
!tr'[a-z]''[A-Z]' 把区域里的字母转换为大写(vim)
!tr'[A-Z]''[a-z]' 把区域里的字母转换为小写(vim)

-----------------------------------------------------------------

四、复制文本
命令 执行的操作 记忆方法
-----------------------------------------------------------------
yy 复制当前行
6yy 复制六行
yw 复制单词
y 复制区域(vim)
p 把复制的文本粘贴到右边或下面
P 把复制的文本粘贴到左边或上面
"ayy 把当前行复制到缓冲区a里
"ap 恢复缓冲区a里的内容
-----------------------------------------------------------------
这里用到一个寄存器概念,普通的删除、复制功能,使用的的是默认的寄存器,
比如复制了2行之后如果立刻黏贴,则这两行被黏贴。
可如果中间执行了一步删除操作,则黏贴的是被删除的内容。
如果不想导致这种混乱,就需要指定寄存器。
寄存器前缀是一个引号:".
屁如上面说道的将一行复制到寄存器a中,则是:"ayy
将a黏贴出来,则是"ap.
这个功能是非常有用的。

综上所属,仔细看,会发现几个vim指令的规律,
1、操作语法:数字+操作+特殊含义字符。例如多行操作:行数+动作,屁如:6dd,删除6行,6yy,复制六行,如此以此类推。
来一全的,譬如删除6个单词:6dw。
3、大小写,这个在前面好像说过,这里也总结一下,反义,前后左右,仅此而已。

原文链接:http://www.pakey.net/index.php/post/vim-learn-edit.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: