9、vim编辑器
Vi编辑器的增强版,支持多语言脚本,文件类型插件,各文本补全模式,以及许多其它选项。
命令模式:用于文件导航,剪切粘贴既简单命令。撤销恢复和其他操作,也在此模式进行
插入模式:用于常规文本编译,替换模式是插入模式的一种变体。
Ex模式: 用于保存、退出和打开文件,以及搜索、替换和其他复杂操作。
i 命令模式切换到插入模式,在光标之前开始插入
a 命令模式切换至插入模式,在光标之后开始插入
I 命令模式切换到插入模式,在当前行开头位置
A 命令模式切换至插入模式,在当前行末尾位置
o 命令模式切换至插入模式,在当前行下方打开新的一行
O 命令模式切换至插入模式,在当前行上方打开新的一行
R 从光标下字符开始,切换至替换模式,不会插入文本,输入的每个字符都会替换当前文档字符。
命令行模式下:
K上移一行
H左移一行 l右移一行
J 下移一行
#h 移动#个字符
^ 移至当前开头位置
$ 移至当前结尾位置
gg 移至文档的第一行
G 移至文档的最后一行
#G 跳至第#行
w 移至下一个单词的词首
b 跳至当前或前一个单词的词首
e 跳至当前或下一个单词的词尾
#w 移动#个单词
o 绝对行首
( 将光标当前或上一句子的开头
) 将光标移到下一句字的开头
{ 将光标当前或上一段的开头
} 将光标移到下一段字的开头
Ctrl+f 向下翻一屏
Ctrl+b 向上翻一屏
Ctrl+d 向下翻半屏
Ctrl+u 向上翻半屏
d 删除文本
#dd 删除#行
D 删除光标到行尾的内容
d$ 删除游标所在行到该行最后一个字符
d0 删除游标所在到该行最前面一个字符
dlG 删除光标所在到第一行的所有内容
dG 删除光标所在到最后一行的内容
X 删除光标处的字符
y 删除文本
yy 复制整行
#yy 复制#行
ylG 复制光标所在列到第一行的所有内容
yG 复制光标所在行到最后一列的所有内容
y0 复制光标所在行到行首的所有内容
y$ 复制光标所在行到行尾的所有内容
p 小写粘贴当光标后面
P 大写粘贴当光标后面
u 复原
Ctrl+r 重复前一个动作
. 重复前一个动作
/aa 光标之下搜索这个单词
?Aa 在光标之上寻找一个Aa的字符串
n 重复前面的搜索内容
N 进行与前面相反的搜索内容比如前一个命令是?Aa,则在光标之下搜索这个单词。
:100,200s/aa/bb/g 在100行到200行之间将aa换成bb
:1,$s/aa/BB/gc 在第一行到最后将aa替换为BB,但替换之前要给使用者确认是否替换。
替换模式(插入模式的一种):
替换文本
Vim 允许用户通过change命令替换大量的文本。使用方法为:按c键,后面加上光标移动;例如cw当前光标位置更改到当前单词的末尾。要替换的文本被删除(放置到未命名的寄存器中),vim也切换到插入模式。
cc 以行的范围的方式替换
ciw 将替换整个当前单词
caw 替换整个当前单词,包含周围的任何空白区。
c$ 替换行末为止。
Esc 插入模式切换至命令模式
Ex模式下:
:wq 保存退出
:w 保存不退出
:w<aa> 以aa为文件名保存当前文件
:q 退出当前文件
:q! 强制退出当前文件