vim 具有两种操作模式:
1. 普通模式;
2. 插入模式;
打开需要编辑的文件时(或新建一个文件),vim编辑器会进入普通模式。在普通模式中vim会将按键解释成命令。
在插入模式中,vim会将你在当前光标位置输入的每一个键都插入到缓冲区,按下i键即可进入插入模式,Esc键退出插入模式。
在普通模式中,可用方向键在文本区域移动光标,或按键操作;
h: 左移一个字符;
j: 下移一个字符;
k: 上移一个字符;
l: 右移一个字符;
pagedown(或ctr+F) : 下翻一屏;
pageup(或ctr+B) :上翻一屏;
G :移动到缓冲区的最后一行;
num G : 移动到缓冲区的第 num行;
gg : 移动到缓冲区的第一行;
vim 编辑器在普通模式下有个特别的功能叫命令行模式,命令行模式提供了一个交互式命令行。可以通过输入额外的命令来控制vim的行为。
进入命令行模式方法,在普通模式下按下冒号键:,光标移动到消息行,然后出现冒号,等待输入命令。
在命令行下关于数据保存的命令
:q # 未修改数据,退出;
:q! # 取消对缓冲区数据的修改,退出;
:w 文件名 # 将数据另存为文件名;
:wq # 数据保存到文件中并退出;
编辑数据
在插入模式下,可以向缓冲区插入数据。但有时将数据输入到缓冲区后,需要对其进行编辑,常用命令如下:
x : 删除当前光标所在位置的字符;
dd : 删除当前光标所在行;
dw : 删除当前光标所在位置单词;
d$ : 删除当前光标所在位置至行尾内容;
J : 删除当前光标所在行行尾的换行符(拼接行);
u : 撤销前一编辑命令;
a : 在当前光标后追加数据;
A : 在当前光标所在行,行尾追加数据;
r char :用char替换当前光标所在位置的单个字符;
R text : 用text覆盖当前光标所在位置的数据,直到按下ESC键;
复制&粘贴;
vim在删除数据时,实际会将数据保存在单独的一个寄存器中,可用p命令取回。
如:用dd命令删除一行数据,然后移动光标到要放置该行文本的位置,然后用p命令,该命令会将文本插入到当前光标所在行之后,可与任何删除文本的命令结合使用。
复制文本命令是y(yw,y$),复制之后,移动光标,插入文本,完成复制。