GVIM常用功能快捷技巧概览
命令 |
意义 |
u |
撤销 |
ctrl+r |
回复撤销的东西 |
i |
进入insert模式 |
o |
在当前行下面另起一行,并进入insert模式 |
O |
在当前行上面另起一行,并进入insert模式 |
:wq/q! |
qw保存并退出;q!强制退出,不保存所有修改;w保存,不退出,可以被撤销 |
ZZ |
保存并退出vim,不能被撤销 |
w |
将光标向右移动到下一个word的首字符上 |
nw |
将光标向右移动到第n个word的首字符上 |
b/nb |
将光标向左移动到下一/n个word的首字符上 |
e/ge |
将光标向右/左移动到下一个word的最后一个字符上 |
$/n$ |
将光标移动到 当前行/第n行 行尾 |
0/^ |
将光标移动到当前行行首 |
fx/nfx |
向右查找 下一个/第n个 x字符,F大写时向左;只能在当前行查找 |
% |
跳转到对应的括号上,包括(),{},[],<>等 |
nG/G/gg |
跳转到第n行/最后一行/第一行 |
‘’ |
回到跳转之前的行首 |
n% |
跳转到文件的某个百分比位置上,eg:50%,跳转到文件的中间位置 |
H/M/L |
跳转到当前页面的开头/中间/结尾处 |
:set number |
显示行号;set nonumber关闭显示行号 |
ctrl o |
跳转到更早之前的位置 |
ctrl i |
ctrl o的反操作 |
ma |
将当前光标的位置标记为a,一共可以使用a~z 26个标记 |
`a |
去到标记的a位置 |
:marks |
会显示一些关于标记的列表 |
dne/dnw |
删除n个word,dne不会删除最后一个单词后面的空格,dnw会 |
cnw |
删除n个word并进入insert模式 |
dd/cc |
删除整行/删除后在该行进入insert模式,并保留原来的缩进 |
v |
进入visual模式,选择文本 |
ctrl v |
进入纵向选择模式,o让光标移到选中文本的另一头,O在光标所在行的选中文本的首尾进行移动;选好后I 进入纵向编辑模式; |
yy |
复制当前行 |
dd |
剪切当前行 |
p |
将之前复制的或者删除的行,在光标所在行的下一行进行粘贴 |
ynw/yne |
复制n个word,yne不带最后一个word后的空格,ynw带;复制后可以使用p粘贴 |
daw |
删除光标所在位置的整个word |
set textwidth=40 |
将每一行的宽度设置为40个字符 |
:1,5center 40 |
第一到第五行居中,每行的宽度为40个字符 |
:1,5right 40 |
|
:1,5left 5 |
左对齐的时候,最后一个数字不是行宽而是左边缩进的空格数 |
set virtualedit=all |
可以在任意位置插入文字 |
set virtualedit= |
恢复正常模式 |
:saveas /:file |
将文件重命名,会自动复制并重命名,saveas会保存并重命名,file只重命名不保存 |
gf |
打开光标所在路径对应的文件 |