一图流:vim的三种模式和切换方法
一、 命令行
- 删除
「x」 //每按一次,删除光标所在位置的“后面”一个字符
「*x」 //删除光标所在位置后*个字符
「X」 //大写的X,每按一次,删除光标所在位置的“前面”一个字符
「*X」 //删除光标所在位置的前*个字符
「dd」 //删除光标所在行
「*dd」 //从光标所在行开始删除*行
- 复制
「yw」 //将光标所在之处到字尾的字符复制到缓冲区中
「*yw」 //复制*个字到缓冲区
「yy」 //复制光标所在行到缓冲区
「*yy」 //复制光标所在行在内的后*行到缓冲区
「p」 //将缓冲区内的字符贴到光标所在位置
**注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能
- 回复上一次操作。
「u」 //如果你误执行一个命令,可以使用「u」,回到上一个操作。按多次“u”可以执行多次回复
- 退出vim以及保存文件:在「命令行模式」下,按一下「:」冒号键进入「底行模式」
「: w "filename"」 //将文章以指定的文件名filename保存
「: wq」 //存盘并退出vim
「: q!」 //不存盘强制退出vim
- 替换。
「r」 //替换光标所在处的字符
「R」 //替换光标所到之处的字符,直到按下「ESC」键为止
- 跳至指定的行。
「Ctrl+g」 //列出光标所在行的行号。
「*G」 //移动到第*行
二、插入行:
编辑文本,操作同其他编译器差别不大
三、底行:
在使用底行模式之前,请记住先按「ESC」键确定已经处于命令行模式下后,再按「:」冒号即可进入底行模式。
- 列出行号。
「set nu」 //在文件中的每一行前面列出行号。
- 跳到文件中的某一行。
「:*」 //跳到第*行
- 查找字符。
「/关键字」 //先按「/」键,再输入你想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往后寻找到您要的关键字为止。
「?关键字」 //先按「?」键,再输入你想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往前寻找到你要的关键字为止。
四、进阶操作
- 修正错误的方法之一(查找+替换)
「:s/old/new」 //替换该行第一个old为new
「:s/old/new/g」 //替换全行中所有的old为new
「:*,*s/old/new/g」 //替换两行之间出现的old为new,*,*为两行的行号
「:%s/old/new/g」 //替换全文的old为new
「:%s/old/new/gc」 //全文替换前需确认
- 配对括号的查找(在程序试调时很有用)
用法:将光标移动到一个括号上,按下%,光标跳转到其配对的括号上 - 调用外部命令和外部文件
- 在vim内部执行外部命令的方法。
「:!ls」 //显示当前文件下所有文件名
- 保存、删除文件。
「:w filename」 //保存文件
「:!dir」
「:!rm filename」 //删除文件
- 具有选择性的保存命令。
「:*,* w filename」 //保存两行之间的文本
- 提取、合并文件。
「:r anotherfile」 //将anotherfile文件中的内容提取到当前vim中
- 多文件编辑
「:n filename」 //编辑另一个文件
「:N filename」 //编辑上一个文件
「:files」 //列举vim目前打开的所有文件
- 多窗口操作
:sp [filename]
「ctrl+w+j」 //移到下一个窗口
「ctrl+w+k」 //移到上一个窗口
「ctrl+w+q」 //退出当前窗口