文章目录

  • 基础设置
    • 行号设置
    • 高亮语法设置
    • 复制删除和基本操作
  • 基础命令
    • 关于命令和对象
    • 使用计数制定动作
    • 删除命令
    • 撤销命令
    • 置入类命令
    • 替换类命令
    • 更改类命令
    • 定位及文件状态
    • 搜索类命令
    • 查找配对括号
    • 替换命令

命令行输入:

vimtutor

查看vimtutor文档

基础设置

行号设置

set number 显示行号

set nonumber

高亮语法设置

set syntax=c

复制删除和基本操作

`d$` 删除当前光标到行尾
`y$` 复制当前光标到行尾

^f 下一页
^b 上一页
h 左一列
l 右一列
j 下一行
k 上一行

基础命令

关于命令和对象

# d为操作符 motion为操作符的操作对象
operator [number] motion
# e.g 删除两个单词
d2w

使用计数制定动作

在动作前输入数字会使它重复那么多次
2w 使光标向前移动两个单词
3e 使光标移动到第三个单词末尾
0 光标移动到行首

删除命令

dw 删除单词
d$ 删除到行末
de 从当前单词开始删到单词末尾

d2w 删除两个单词
dd 删除整行
2dd 删除两行

撤销命令

u  撤销最后执行的命令
U 撤销对整行的修改
ctrl-r 撤销撤销命令

置入类命令

p 将上一次删除的内容置入光标后

替换类命令

r 

更改类命令

ce 改变文本直到单词末尾
cw 改变单词
c$ 改变到行末

定位及文件状态

ctrl-g 显示当前文件光标所在行位置及文件状态信息
G 跳转到最后一行
gg 跳转到第一行

搜索类命令

/字符 向下
?字符 向上
n 向下
N 向上
ctrl-o 回到之前位置
ctrl-i 跳转到新位置

查找配对括号

%

替换命令

s/old/new 替换所在行第一个匹配
s/old/new/g 替换全行匹配
#,#s/old/new/g 替换指定行所有匹配(#,#指代首位行号) 
%s/old/new/g 替换整个文件所有匹配
%s/old/new/gc 替换整个文件所有匹配,并对每个匹配提示是否替换

更多推荐

熟悉vim,这一篇就够了