VIM 快速入门

默认情况下的操作均为普通模式,命令前带有 : 表示该操作在命令行模式下进行

进入命令行模式

普通模式下输入 :

进入插入模式

普通模式下使用下面的键可以进入插入模式,并可以从相应的位置开始输入

命令 说明
i 在当前光标处进行编辑
I 在行首插入
A 在行末插入(after row)
a 在光标后插入(after cursor)
o 在当前行后插入新行(换行)
O 在当前行前插入新行(对应 vs code 中的 ctrl + shift + Enter
cw 替换单词(从光标所在位置后到一个单词结尾的字符)

光标移动

按键 说明
h 向左移动
l 向右移动
j 向下移动
k
w 移动到下个单词
b 移动到上个单词

保存文档

命令行模式,输入 w 回车,保存文档。输入 :w 文件名 可以将文档另存为其他文件名或存到其他路径下

退出 VIM

命令 说明
:q! 强制退出,不保存
:q 退出
:wq! 强制保存并退出
:w <路径 + 文件名> 另存为(路径可省略;加上路径为另存为;不退出编辑器)
:sav <路径 + 文件名> 另存为(路径可省略;加上路径为另存为;不退出编辑器)
:x 保存并退出
:wq 保存并退出
shift + zz 保存并退出

普通模式下删除文本

命令 说明
x 删除光标所在的字符
X 删除光标所在的前一个字符
Delete x
dd 删除整行
dw 删除一个单词(不适用中文)
d$D 删除至行尾
d^ 删除至行首
dG 删除到文档结尾处
d1G 删除文档首部(删除所有)

删除多行2dd

重复执行上次命令

在普通模式下,. 表示重复上一次的命令操作

执行指定次数相同的命令

在普通模式下,N + <命令> N 表示重复后面命令的次数

# 删除 10 个字符
10x

# 删除 3 行文本
3dd

光标的快速跳转

  1. 行间跳转

    命令 说明
    nG(n Shift + g) 移动到第 n 行(如果默认没有显示行号,请先进入命令模式,输入 :set nu 以显示行号)
    gg 移动到第一行
    G 移动到最后一行
  2. 行内跳转

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

文本编辑

  1. 选择文本

    在普通模式下使用 v 键进入可视模式便可进行文本的选择;

    命令 说明
    v + 光标移动 高亮选择文本
    V 按行选择

    选择文本后使用 y 键,可复制文本

  2. 复制文本

    普通模式下使用 y 复制

    命令 说明
    yy 复制光标所在行(3yy 表示复制 3 行)
    y^y0 复制至行首(不含光标所在处字符)
    y$ 复制至行尾(含光标所在处字符)
    yw 复制一个单词
    y2w 复制两个单词
    yG 复制至文本末
    y1G 复制至文本开头
  3. 粘贴文本

    普通模式中使用 p 粘贴

    命令 说明
    p 粘贴至光标后(下)
    P 粘贴至光标前(上)
  4. 剪切文本

    普通模式中使用 dd

  5. 撤销

    命令 说明
    u 撤销

快速缩进

命令 说明
>> 整行将向右缩进
<< 整行将向左缩进
:sw=2 (:shiftwidth=2) 控制缩进字符数
:ce 使本行文本居中
:ri 使本行文本右对齐
:le 使本行文本左对齐

查找

命令 说明
/ + 字符串 向下查找匹配内容
? + 字符串 向上查找匹配内容
? + 字符串 + n 查找下一项匹配内容
? + 字符串 + N 查找上一项匹配内容
:noh 取消搜索
\* 向下匹配光标所在处的单词
\# 向上匹配光标所在处的单词
g\* 向下匹配光标所在处的单词(部分匹配即可)
g\# 向上匹配光标所在处的单词(部分匹配即可)

小技巧:

# 普通模式下,快速回到上一次光标所在位置
ctrl + o

# 普通模式下,切换光标所在字母大小写
~

# 打开语法高亮
:syntax on

# 显示行号
:set nu

参考:

实验楼 VIM 编辑器

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。