vim学习1

vim的插入模式

命令 含义(以当前光标闪动位置为基准)
i 在光标当前位置插入
a 在光标当前位置前面插入
I 在光标当前行的行首插入
A 在光标当前行的行末插入
o 在光标行的下面插入
O 在光标行的上面插入
s 删除光标所在字符后,进入插入模式
S 删除光标所在行,进入插入模式

移动光标

h j k l 代表 ← ↓ ↑ → ,一般经常使用这几个键位进行光标的移动。

‘.’命令

.命令会重复上次修改。“上次修改”可以指很多东西,一次修改的单位可以是字符、整行、甚至是整个文件。

例如:x命令会删除光标下的字符,这种情况下使用.命令会重复删除光标下的字符。在.命令前可以增加数字,2.表示重复执行2次上次命令。同样我们也可以使用u命令来进行撤销操作。

f{char}/t{char}/F{char}/T{char}查找

在一行中如果想要将光标定位到某个字符上,可以使用f+这个字符。
例如:fa,会光标定位到这行第一个a上(从左到右查找)。
如果想要继续查找这行的下一个a,输入‘;’,想要查找上一个a,输入’,’。
t{char}是光标定位到{char}这个字符的前面。
F{char}、T{char}是从右到左。

可重复操作以及回退表

目的 操作 重复 回退
做出一个修改 {edit} . u
在行内查找一个字符 [fFtT]{char} ; ,
在整个文件查找匹配 [/?]pattern n N
执行替换 :s/target/replace & u

cw命令

cw命令可以用于修改一个单词,因为cw的全称就是change world,cw命令是当前光标到第一个单词分隔符的字符被删除并且进入插入模式。

db、dw、daw命令

想要删除一个单词的时候可以使用dw,将光标放在单词首字母上,然后按dw可以将这个单词删除。
反向删除一个单词的时候将光标放在单词最后的字母上,然后按db,这个时候单词的第一个字母不会被删除掉需要x进行删除单个字符。
精确删除一个单词,使用daw命令(delete a world)。将光标放在单词的任意一个字符上,按daw可以删除掉这个单词。

用次数做简单的算数运算

<C-a><C-x>命令分别对数字执行加法和减法操作。例如将光标放到数字5上,输入3<C-a>这个时候光标位置会改变成8。

普通模式

u命令会触发撤销操作,撤销一次修改。如何定义为一次修改,就是从插入模式到<Esc>就可以作为一次修改,因此我们需要利用好<Esc>的使用。

vim的操作符命令

操作符 + 动作命令 = 操作

Vim 的语法只有一条额外规则,即当一个操作符命令被连续调用两次时,它会作
用于当前行。所以dd 删除当前行,而>> 缩进当前行。gU 命令是一种特殊情况,我
们既可以用gUgU ,也可以用简化版的gUU 来使它作用于当前行。

命令 用途
c 修改
d 删除
y 复制到寄存器
g~ 反转大小写
gu 转换小写
gU 转换大写
> 增加缩进
< 减少缩进
= 自动缩进
~ 使用外部程序过滤{motion}所跨越的行

–EOF–