ordinary模式下
Ctrl+g查看文件信息
括号
光标停在一半括号下,按下%键,快速找到另一半括号。
复制
yy 复制光标所在的当前行。
nyy n为数字,表示复制从光标开始向下的n行。
粘贴
在VIM下,删除命令不会直接将你的东西删除,而是放到VIM的寄存器中。所以先删除,后粘贴。
小写p 将已复制的数据粘贴到光标之后。
大写P 将已复制的数据到光标之前。
删除
dd 删除光标所在行。
ndd n为数字,删除从光标开始向下的n行。
dgg 删除光标所在到文件开头。
dG 删除光标所在行到文件末尾。
motion范围符:
gg:使光标位于文件开头。
G:使光标位于文件末尾。
e:使光标为于所在单词的起始处。
b:使光标为于所在单词的末尾。
^:使光标位于所在行的行首。
$:使光标位于所在行的行尾。
数字+motion=执行多个motion
d+数字+motion=删除多个motion范围
撤销
u 表示撤销最后一次修改。
U 表示撤销对整行的修改。
Ctrl+r 快捷键可以恢复撤销的内容。
打开多个文件
用ctrl+w+w将光标切换到下一个文件
对于垂直并排文件:使用ctrl+w+上、下方向,表示上、下切换文件。
对于水平并排文件:使用ctrl+w+左、右方向,表示左、右切换文件。
命令行模式(按Shift+:键,进入vim命令行)
显示文件编码
:set fileencoding
显示行号
:set nu
显示总行号
:=
跳转
ordinary模式下,输入行号+G;或者,命令行模式下,输入行号。
搜索:
: /字符串(从光标开始,往下搜索)
:?字符串(从光标开始,往上搜索)
注:搜索特殊字符时,如<>*.#等,在字符前加,反义。
替换
:s/old/new
-表示光标所在行的第一个old替换为new。
:s/old/new/g
-表示光标所在行的所有old替换为new。
:%s/old/new/gc
-同上,但每次替换前都会请示。
:5,13s/old/new/g
-表示替换第5行到第13行中所有的old为new。
文件另存为
文件另存为:w 文件名。
文件覆盖:w! 文件名。
合并文件:r 文件名。
退出
:q(退出)、q!(强制退出)、w(保存)、wq(保存并退出)
模式的转换
其它模式==>ordinary模式
按 Esc键
ordinary模式==>插入模式
按 i 键 在光标前插入
按 I 键 在光标所在行首插入
ordinary模式==>可视模式
按 v (Ctrl+v)可视模式,以块为单位进行选取。
按 V 可视块模式,以行为单位进行选取 。