1 简介
基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和 底线命令模式(Last line mode)。
用户刚刚启动 vi/vim,便进入了命令模式。
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下 i,并不会输入一个字符,i 被当作了一个命令。
以下是常用的几个命令:
i切换到输入模式,以输入字符;x删除当前光标所在处的字符;:切换到底线命令模式,以在最底一行输入命令。
若想要编辑文本:启动Vim,进入了命令模式,按下 i,切换到输入模式。
命令模式(也称基本模式)只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。下面几乎都在基本模式操作。
2 详解
2.1 移动
2.2 快速退出
普通模式下输入Shift+zz 即可保存退出vim,不保存推出 :q!
2.3 进入插入模式
i 在当前光标处进行编辑I,A 在行首/末插入
a 在光标后插入编辑o,O 在当前行后/前插入一个新行cw 删除一个单词,同时进入插入模式
2.4 文档编辑
文档编辑的所有命令全部符合一个规律,[操作]+[行号]+定位,三个部分完成一个动作比如:删除操作代码为d,重复操作代码代表操作当前行dd,则删除2行就是 d2d;操作和行号也可以互换位置 2dd,可以省略行号dd代表删除一行,多数时候可以不要操作则代表定位 5G代表移动到第五行。
删除x 反退格键(delete键) X 退格键
dw 删除一个单词(不适用中文)类似于上一节说的 cw,只是删除后还在普通模式d$ 删除至行尾, d^ 删除至行首
dG 删除到文档结尾处d1G 删至文档首部
前缀(操作) :d代表删除中缀:行号后缀(定位):d代表行,G代表尽头, $代表行尾,^代表行首,w代表单词
2.5 重复命令
普通模式下输入dd,删除一行,输入 . (小数点)会再次删除一行,除此之外也可以重复其他任意操作
使用 dw 删除一个单词,然后用 . 命令重复删除单词操作
2.6 游标
游标跳转位置,不过是没有去掉操作后输入的命令。nG(n Shift+g) 游标移动到第 n 行(如果默认没有显示行号,请先进入命令模式,输入 :set nu 以显示行号)gg 游标移动到到第一行G(Shift+g) 到最后一行
G代表尽头, $ 代表行尾,^ 代表行首,w 代表下一个单词,b上一个单词,e 当前单词末尾
f+字母 向后搜索 字母并跳转到第一个匹配的位置F+字母 向前搜索 字母并跳转到第一个匹配的位置
2.7 复制与粘贴
复制为y ,后可以接定位符,yy 复制游标所在的整行(3yy 表示复制3行)y^ 复制至行首,或 y0 , 不含光标所在处字符。y$ 复制至行尾。含光标所在处字符。
yw 复制一个单词。y2w 复制两个单词。yG 复制至文本末。y1G 复制至文本开头
使用 p 粘贴p(小写) 代表粘贴至光标后(下)P(大写) 代表粘贴至光标前(上)
2.8 剪切
我们上面在删除那学到的 d 操作,其实就是剪切,我们使用 ddp 就可以交换上下行。
3 小结
到这里是不是文档操作可以直接脱离鼠标了!
移动:h,l,j,k,w,b
跳转:G nG f/F+字母
定位:G代表尽头, $代表行尾,^代表行首,w代表下一个单词,b上一个单词,e当前单词末尾
操作:y d p
