目录
本篇文章只讲最常用的操作,学会这些操作已经可以完全使用vim。
打开文件,如果不存在则新建文件并打开:
vim test.txt
打开后处于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模式照样可以执行文件内容修改(复制、剪切、粘贴),非常方便,进阶必备技能。
首先,你要学会快速移动光标:
- // 移动到行头
- 0
- // 移动到行尾
- $
- // 移动到本行第一个非blank字符位置
- ^
- // 移动到本行最后一个非blank字符位置
- g_
-
- // 移动到下一个word开头
- w
- // 移动到下一个work结尾
- e
-
- // 移动到第一行
- :1
- 1G
- gg
- // 移动到第n行
- :n
- nG
- // 移动到最后一行
- G
-
- // 定位字符串"pattern",搜索下一个按Enter后按n
- /pattern
多练一练,好了,你可以自由快速地移动光标了。接下来,快速修改文件:
- // 拷贝当前行
- yy
- // 剪切当前行
- dd
- // 粘贴
- P
可能你觉得只拷贝行不过瘾,vim很强大,拷贝能力很强,介绍几个常用的:
- // 复制光标到行尾的文本
- y$
- // 复制光标到行头的文本
- y^
- // 复制到下一个词的开头
- yw
- // 复制当前单词
- yiw
聪明的你可能已经发现了,y + 移动光标位置,就可以复制移动的路径。同理,d + 移动光标位置,啥含义清楚了吧。
更快速地编辑,连命令都可以批量运行:
- // 重复上一次命令
- .
- // 重复某个命令n次
- n
- // 比如删除(剪切)两行
- 2dd