介绍
Vim是vi文本编辑器的进阶版,在所有Linux系统上均可使用,被称为“编辑器之神”
Vim通过一些插件可以实现和IDE一样的功能
Vim可以说是程序开发者的一项很好用的工具
Vim键盘图:
这个图其实没什么用,正常情况下都不会去看的
Ctrl-W
在多个窗口中切换正常模式
i
切换到插入模式,以输入字符(在光标前输入)x
删除当前光标所在的字符:
切换到命令模式,以在最后一行输入命令ZZ
保存并退出插入模式
字符按键以及Shift组合
,输入字符Enter
,回合键,换行Backspace
,退格键,删除光标前一个字符Delete
,删除键,删除光标后一个字符方向键
,在文本中移动光标Esc
,退出插入模式,切换到命令模式命令模式
:q
退出程序:w
保存文件:wq
保存并退出:e {文件名}
打开要编辑的文件:ls
显示打开的缓存:help {标题}
打开帮助文档移动(正常模式下,使用移动命令在缓存中导航)
hjkl
(方向键:上,下,左,右)w
(下一个词),b
(词首),e
(词尾)0
(行首),^
(第一个非空字符),$
(行尾)H
(屏幕首行),M
(屏幕中间),L
(屏幕底部)Ctrl-b
(上翻一页),Ctrl-f
(下翻一页),Ctrl-u
(上翻半页),Ctrl-d
(下翻半页)gg
(文件头),G
(文件尾){行数}<CR>
,{行数}G
%
(找到配对,比如括号或者/**/之类的注释对)n<space>
:按下数字后再按空格,光标向右移动这一行的n个字符n<Enter>
:光标向下移动n行选择
v
V
Ctrl+v
编辑
O/o
:在光标的上方/下方打开新的一行并进入插入模式
d{移动命令}
:删除{移动命令}
例如,dw
从光标处删除至一个单词的末尾,d$
删除到行尾,d0
删除到行头,dd
删除光标所在的那一整行
c{移动命令}
:改变{移动命令}
例如,cw
改变光标处直到单词末尾
x
删除光标所在处的字符
r
替换单个字符
R
连续替换多个字符(替换模式)
可视化模式+操作
选中文字,d
删除或者 c
改变
u
撤销,<Ctrl-R>
重做(撤销以前的撤销命令)
y
复制
yy
复制光标所在的那一整行,y0
复制光标所在的那个字符到该行首的所有数据,y$
复制光标所在的那个字符到该行尾的所有数据
p
粘贴
~
将光标下的字符改变大小写
搜索和替换
/word
:光标向下寻找一个名称为word的字符串?word
:光标向上寻找一个名称为word的字符串:set ic
:忽略大小写:set hls is
:匹配串高亮:nohlsearch
:取消匹配串高亮:set noic
:禁用忽略大小写n
:重复前一个搜寻的动作N
:『反向』进行前一个搜寻动作Ctrl-o
:回退到之前的位置:s/old/new/g
:替换光标所在行的匹配串:%s/old/new/g
:替换整个文件中的每个匹配串命令行补全
Ctrl-D
:查看可能的补全结果<Tab>
:使用一个补全环境变更(命令模式)
:set nu
:在每一行的前缀显示行号:set nonu
:取消行号执行外部命令
:!ls
多窗口
:sp
/ :vsp
:分割窗口:term bash
:在Vim中打开终端保存文件
:w {未被使用的文件名}
:将已改动的文件保存到当前目录中:
字符,将看到屏幕底部会出现 :'<,'>
,接着输入 w {未被使用的文件名}
,确认看到:'<,'>w {未被使用的文件名}
后,按<Enter>
,这时 Vim 会把选中的行写入到以 {未被使用的文件名} 命名的文件中去:r {文件名}
将名为 {文件名} 的文件提取进来,所提取进来的文件将从光标所在位置处开始置入:r !ls
可以读取 ls 命令的输出,并把它放置在光标下面