一、Vim有四种模式
1、命令模式/正常模式(Command mode)
敲击键盘动作会被Vim识别为命令,而非输入字符。启动Vim默认进入命令模式。[1]
i:切换到插入模式
::切换到底线命令模式v:进入可视化模式(小写V、大写V、Ctrl+V均可进入该模式下)U:撤销上一步操作yy- 复制当前行,包括换行符dd- 剪切当前行,包括换行符p键可以将内容粘贴到当前光标后面
2、插入模式(Insert mode)
编辑文本,需进入该模式
Esc:退出插入模式,进入命令模式
3、底线命令模式(Last line mode)
Esc:退出底线命令模式,进入命令模式q!:不保存,强制退出vimwq:保存,退出vimq:不保存,退出vimw:保存,不退出vim
4、可视化模式(Visual-mode):
文本选择:小写V进入(选择是以字符为单位的)、大写V进入(选择是以行为单位的)、Ctrl+V进入(矩形区域作为目标文本,以按下 Ctrl+v 位置作为矩形的一角,光标移动的终点位置作为它的对角)[2]
可视化命令:
命令 命令 d 删除选中的部分文本。 D 删除选中部分所在的行,和 d 不同之处在于,即使选中文本中有些字符所在的行没有都选中,删除时也会一并删除。 y 将选中部分复制到剪贴板中。 p(小写) 将剪贴板中的内容粘贴到光标之后。 P(大写) 将剪贴板中的内容粘贴到光标之前。 u(小写) 将选中部分中的大写字符全部改为小写字符。 U(大写) 将选中部分中的小写字符全部改为大写字符。 > 将选中部分右移(缩进)一个 tab 键规定的长度(CentOS 6.x 中,一个tab键默认相当于 8 个空白字符的长度)。 < 将选中部分左移一个 tab 键规定的长度(CentOS 6.x 中,一个tab键默认相当于 8 个空白字符的长度)。
二、小技巧
1、设置行号
vim ~/.vimrc 写入:set number
2、设置粘贴模式
:set paste + 回车 + i
3、快速到达首尾
gg:跳转到文件头- 行数 +
gg:跳转到指定行 - shift + g :跳转到文件末尾
4、多行注释
:20,30 s/^/#/g :20-30行 用 #
注释掉。(python是用#注释地~~~)
:20,30 s/^#//g :20-30行 取消注释
注释:
Ctrl + v :vim中的视图模式,把要注释的内容选上 shift + i :插入字符 shift + # :把#插入到要注释的行前面(在第一行有显示) Esc :按至少2次Esc,则会把所有选中的行都在其前面加#
取消注释:
Ctrl+v:进入视图模式 上下方向键选中要注释的行,左右键选择要删除的字符# 按d删除
5、vim的搜索功能
在 normal 模式下按下 /
即可进入查找模式,输入要查找的字符串并按下回车。 Vim
会跳转到第一个匹配。按下 n 查找下一个,按下 N
查找上一个。[3]