第二章:vim编辑器的使用

107 阅读3分钟

第二章:vim编辑器的使用

  • @

    • @1. 编辑保存文件

      • @1.1 插入模式
    • @2. 模式切换

      • @2.1 命令模式
      • @2.2 保存和退出
      • @2.3 搜索字符串
      • @2.4 替换字符串
      • @2.5 删除、复制、粘贴
      • @2.6 撤销和重做
    • @3. 查找和行数设置

vim是Unix和Linux上的编辑器,功能十分强大

用法:vim filevim

1. 编辑保存文件

ia进入编辑模式

分插入和命令两种模式

1.1 插入模式

操作方法:输入字符,并可以按光标键移动字符位置

命令所执行的操作
a在光标后插入
i在光标所在位置插入
o在光标所在位置的下一行插入
Esc进入命令模式
进入命令模式

2. 模式切换

2.1 命令模式

执行除输入字符之外的所有操作,包括搜索、保存、移动光标等。

vim启动默认是在命令模式,如果在编辑模式,需要按Esc切换回命令模式

可以使用光标键控制上下左右移动,或者h、j、k、l移动

2.2 保存和退出

保存文件、退出等需要切换到命令行模式,在插入模式下输入Esc再输入:w :q 或者:wq等。

前提:必须切换到命令模式。注意组合命令执行的顺序:w->q->!

命令所执行的操作
:w保存文件
:w filename另存为filename
:q退出vim
:q!强制退出,放弃保存
:wq!保存并强制退出

2.3 搜索字符串

前提:需切换到命令模式

/string用于向下搜索一个字符串

?string用于向上搜索一个字符串

如果需要启动或关闭大小写敏感,执行:

:set ignorecase

:set noignorecase

2.4 替换字符串

前提:必须切换到命令模式

语法: :[range]s/pattern/string/[c、e、g、i]

这条命令将 pattern 所代表的字符串替换成 string。开头的range 用于指定替换作用的范围,如“1,10” 表示从第1行到第10行,“1,$”表示从第1行到最后一行,也就是全文。全文也可以用 “%” 表示。

最后的方括号是可选项,含义如下:

标志含义
c每次替换前询问
e不显示错误信息
g替换一行中的所有匹配项(这个选项通常需要使用)
i不区分大小写

如Windows 环境下的源码经常会有 “^M”的字符,要清除可以使用下面的命令:

:%s/^M$//g

2.5 删除、复制、粘贴

前提:必须切换到命令模式

命令所执行的操作
x删除光标所在位置的字符
dd删除光标所在的行,按下2加上两次dd表示删除2行
D删除光标所在位置到行尾之间所有字符 注意区分大小写
d普遍意义上的删除命令,和移动命令配合使用。例如dw表示删除光标所在位置到下一单词词头之间的所有字符
yy复制光标所在的行,5yy就是拷贝当前行向下的5行
y普遍意义上的复制命令,和移动命令配合使用。例如yw表示复制光标所在位置到下一单词词头之间的所有字符
p在光标所在位置粘贴最近复制/删除的内容

2.6 撤销和重做

前提:必须切换到命令模式

命令所执行的操作
u撤销上一步操作
Ctrl+R恢复上一步被撤销的操作

3. 查找和行数设置

前提:必须切换到命令模式

命令所执行的操作
/+需要查找的关键字按回车在文件中查找某个单词
:set+nu或:set+number设置文档的行号
:set+nonu或:set+nonumber取消文档的行号
G跳转到文档最末行
gg跳转到文档的最首行
💡 跳转到指定的行数
💡 第一步:显示文档的行号`:set number`
💡 第二步:输入需要跳转的行数,例如100行
💡 第三步:按`shift+g`完成跳转