一、插入文本常用的,当然是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
转载于:https://www.cnblogs.com/myfreedom614/archive/2012/04/14/2447039.html