目录
本篇文章只讲最常用的操作,学会这些操作已经可以完全使用vim。
一、vim打开文件
打开文件,如果不存在则新建文件并打开:
vim test.txt
二、Normal与Insert模式切换
打开后处于Normal模式,这时候你的输入都是指令。Insert模式你的输入才会更改内容。切换到Insert模式:
// 当前光标位置插入
i
// 当前光标后面插入
a
// 当前行后面插入一行
o
// 当前行前面插入一行
O
// 删除当前光标到word末尾
cw
Normal模式下这些指令运行后,都会进入Insert模式,左下角会显示 -- INSERT --
Insert模式切换回Normal模式,只需按ESC。
三、编辑后退出(保存与不保存)
进入Insert模块后修改了文件内容,这时候要退出。
保存并退出:
:wq
不保存并退出
:q!
四、撤销修改与恢复修改
撤销修改,可以一直撤销。在Normal模式下:
u
恢复修改,可以一直恢复。在Normal模式下:
ctrl + r
ctrl指的是按键哦!
五、快速编辑
快速编辑就是不进入Insert模式照样可以执行文件内容修改(复制、剪切、粘贴),非常方便,进阶必备技能。
首先,你要学会快速移动光标:
// 显示行号
:set number
// 移动到行头
0
// 移动到行尾
$
// 移动到本行第一个非blank字符位置
^
// 移动到本行最后一个非blank字符位置
g_
// 移动到下一个word开头
w
// 移动到下一个work结尾
e
// 移动到第一行
:1
1G
gg
// 移动到第n行
:n
nG
// 移动到最后一行
G
// 定位字符串"pattern",搜索下一个按Enter后按n
/pattern
多练一练,好了,你可以自由快速地移动光标了。接下来,快速修改文件:
// 拷贝当前行
yy
// 剪切当前行
dd
// 粘贴
P
// 删除当前行
:d
可能你觉得只拷贝行不过瘾,vim很强大,拷贝能力很强,介绍几个常用的:
// 复制光标到行尾的文本
y$
// 复制光标到行头的文本
y^
// 复制到下一个词的开头
yw
// 复制当前单词
yiw
聪明的你可能已经发现了,y + 移动光标位置,就可以复制移动的路径。同理,d + 移动光标位置,啥含义清楚了吧。
六、更快
更快速地编辑,连命令都可以批量运行:
// 重复上一次命令
.
// 重复某个命令n次
n<command>
// 比如删除(剪切)两行
2dd
// 删除50到100行
:50,100d