vim编辑器入门

本随笔是学习vim编辑器学习笔记,原课程详见 https://www.shiyanlou.com/courses/2

vim编辑器的六种基本模式

  1. 普通模式:启动后的默认模式,按 a 或者 i 等可以进入插入模式;

  2. 插入模式:可以输入文本,只是写入缓冲区并不保存,按 Esc 返回普通模式;

  3. 命令模式:可以输入会被解释并执行的文本;

  除了上面三种模式,还有可视模式、选择模式、Ex模式等三种模式。

 

vim [文件名]

  打开vim编辑器,并进入普通模式

 

移动鼠标

  在普通模式下执行下面命令可以移动鼠标

按键 说明
h
l(小写)
j
k
w 移动到下一个单词
b 移动到上一个单词

 

普通模式下执行下面命令可以进入插入模式

命令 说明
i(小写) 在当前游标处进行编辑
I(大写) 在行首插入编辑
A 在行末插入编辑
a 在游标后插入编辑
o(小写) 在当前行后插入一行新行
O(大写) 在当前行前插入一行新行
cw 替换游标所在位置及以后到一个单词结尾的字符

 

保存文档

  在命令模式下执行下面命令可以保存文档

    :w

    :w  <文件名>      ---- 可以另存到其他位置,另存为

 

退出vim编辑器

  命令行模式下执行下面命令退出

命令 说明
:q! 强制退出,不保存( ! 表示强制)
:q 退出
:wq! 强制退出,并保存
:w  [文件路径] 另存为
:saveas  [文件路径] 另存为
:x 保存并退出
:wq 退出并保存

  普通模式下 执行 shift + zz 退出

 

删除文本信息

  普通模式下按下面键删除vim文本信息

按键 说明
x(小写) 删除游标所在的字符
X(大写) 删除游标所在前一个字符
Delete 同x(小写)
dd 删除整行
dw 删除一个单词(不适用中文)
d$ 或 D 删除至行尾
d^ 删除至行首
dG 删除至文档结尾处
d1G 删除至文档首部

  可以在命令之前加上数字,表示一次删除多行

 

vim重复命令

  1. 重复执行上次命令

    普通模式下按键 . (英文句号,小数点)表示重复上一次的命令操作

  2. 执行指定次数相同的命令

    普通模式下, N<command>

    N表示重复后面的次数

游标快速跳转

  显示行号,可以在命令模式输入 :set  nu 显示行号

  行间跳转

    普通模式下执行下面命令

按键 说明
nG( n Shift + g ) 游标移动到第 n 行
gg 游标移动到第一行
G( Shift + g ) 游标移动到最后一行

    Ctrl  to : 回到上一次游标所在的位置

  行内跳转

    普通模式下

按键 说明
w 到下一个单词的开头
e 到当前单词的结尾
b 到前一个单词的开头
ge 到前一个单词的结尾
o 或 ^ 到行头
$ 到行尾
F<字母> 向前搜索<字母>并跳转到第一个匹配的位置
f<字母> 向后搜索<字母>并跳转到第一个匹配的位置
t<字母> 向后搜索<字母>并跳转到之前的一个字母
T<字母> 向前搜索<字母>并跳转到之后的一个字母

 

复制

  普通模式下使用y复制

按键 说明
yy 复制游标所在整行
y^ 或 y0 复制至行首,不含当前字符
y$ 复制至行尾(含)
yw 复制单词
y2w 复制两个单词
yG 复制至文本末
y1G 复制至文本开头

 

粘贴

  普通模式中使用 p 粘贴

    p (小写) : 粘贴至游标后

    P(大写)  : 粘贴至游标前

 

剪切及粘贴

  删除命令 dd 即为剪切,p 粘贴即可

 

替换

  普通模式下使用下面命令

按键 说明
r + <待替换字母> 将游标所在字母替换为指定字母
R 连续替换,直至按下Esc
cc 替换整行,即删除游标所在行,并进入插入模式
cw 替换一个单词,即删除游标所在一个单词,并进入插入模式
C(大写) 替换游标以后至行末
~ 反转游标所在字母大小写
u{n} 撤销一次或n次操作
U(大写) 撤销当前行的所有修改
ctrl + r redo,即撤销undo的操作

 

快速缩进

  普通模式下执行

    >> 整行向右缩进

    << 整行向左回退

  命令模式可以用 shiftwidth 值进行设置,可以控制缩进和回退的字符数

    :set  shiftwidth?  查看设置值

    :set  shiftwidth=n  重新设置值为n

  命令模式下

    :ce  内容剧中

    :ri   文本靠右

    :le   文本靠左

 

快速查找

  普通模式下

    /<查找的字符串>   向下查找

    ?<查找的字符串>   向上查找

    进入查询中,n 键继续查找,N 键反向查找

 

高级查询

  寻找游标所在处的单词

    \*   向后(下)查找

    \#  向前(上)查找

  部分符合该单词即可

    g\*   向后(下)查找

    g\#  向前(上)查找

posted @ 2018-06-24 18:32  aston  阅读(196)  评论(0编辑  收藏  举报