Vim 简单操作
Vim 的几种模式
之前记录的部分笔记:Vim
- 正常模式:可以使用快捷键命令,或按
:
输入命令行。 - 插入模式:可以输入文本,在正常模式下,按
i
、a
、o
等都可以进入插入模式。 - 可视模式: 在可视模式下,移动光标可以选择文本。
- 正常模式下按
v
可以进入可视模式, - 按
V
进入可视行模式, 总是整行整行的选中。 ctrl + v
进入可视块模式。
- 正常模式下按
- 替换模式:此时新输入的文本将直接替代/覆盖已经存在的内容,直至点击ESC键返回常规模式
- 正常模式下,按R进入。
移动光标
以下移动都是在正常模式下。
1、基本移动
上下左右移动除了方向键以外,还可以通过以下操作进行
也可以配合数字使用,比如在正常模式下输入3h, 则光标向左移动3个字符。
命令 | 说明 |
---|---|
h或退格 | 左移一个字符 |
l或空格 | 右移一个字符 |
j | 下移一行 |
k | 上移一行 |
+或Enter | 把光标移至下一行第一个非空白字符 |
- | 把光标移至上一行第一个非空白字符 |
移动定位
命令 | 说明 |
---|---|
0 | 移动到行首 |
$ | 移动到行尾 |
:n | 移动到第n行( :set number 显示行) |
:$ | 移动到最后一行 |
gg | 到文件头部 |
G | 到文件尾部 |
^ | 移动到本行第一个非空白字符 |
W | 移动到下一个单词开头,但忽略一些标点 |
B | 移动到上一个单词开头,但忽略一些标点 |
2、翻屏
命令 | 说明 |
---|---|
ctrl+f | 下翻一屏 |
ctrl+b | 上翻一屏 |
ctrl+d | 下翻半屏 |
ctrl+u | 上翻半屏 |
ctrl+e | 向下滚动一行 |
ctrl+y | 向上滚动一行 |
zz | 将当前行移动到屏幕中央 |
zt | 将当前行移动到屏幕顶端 |
zb | 将当前行移动到屏幕底端 |
3、标记
使用标记可以快速移动。到达标记后,可以用 Ctrl + o
返回原来的位置。
Ctrl + o
和 Ctrl + i
很像浏览器上的后退和前进。
命令 | 说明 |
---|---|
m{a-z} | 标记光标所在位置,局部标记,只用于当前文件 |
m{A-Z} | 标记光标所在位置,全局标记。标记之后,退出Vim, 重新启动,标记仍然有效 |
`{a-z} | 移动到标记位置 |
:marks | 显示所有标记 |
:delmarks a c-f | 删除标记 a 以及 c、d、e、f |
比如说:
1 | vim test.py // 打开 test.py |
复制粘贴
命令 | 说明 |
---|---|
y | 复制在可视模式下选中的文本 |
yy 或者 Y | 复制整行文本 |
m,ny | 复制m行到n行的内容( :set number 显示行) |
y$ | 从光标当前位置复制到行尾 |
y0 | 从光标当前位置复制到行首 |
yG | 复制光标以下的所有行 |
p(小写) | 在光标之后粘贴 |
P(大写) | 在光标之前粘贴 |
查找和替换
首先需要按 :
进入命令行
1、查找
命令 | 说明 |
---|---|
/something | 在后面的文本中查找something |
?something | 在前面的文本中查找something |
n | 向后查找下一个 |
N | 向前查找下一个 |
2、替换
首先需要按 :
进入命令行
命令 | 说明 |
---|---|
s/old/new | 用new替换当前行第一个old |
s/old/new/g | 用new替换当前行所有的old |
%s/old/new/g | 用new替换文件中所有的old |
%s/^/xxx/g | 在每一行的行首插入xxx,^表示行首 |
%s/$/xxx/g | 在每一行的行尾插入xxx,$表示行尾 |
所有替换命令末尾加上c,每个替换都将需要用户确认。 如:%s/old/new/igc
,加上 i
则忽略大小写(ignore)
本文采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 ShiGuang
评论