VIM使用技巧
一、替换
- 快速选择性替换:使用
#查找,cw删除单词,输入要替换的单词,.重复操作 - 替换一个字符:
ra当前字符替换为a - 全局替换:
:%s/old/new/g或者:%s#old#new#g - 空格替换::
10,20 s/^/ /g在第10行到第20行每行前面加四个空格,用于缩进。
二、 移动
慢移动
- 上下左右:
kjhl - 向前/后移动一个单词:
w,这个很常用,一般可以替代l。对应的是b - 行头行尾部:
0和$ - 查找字符移动:
fg移动到伺候第一个出现g的地方。F反向 - 行尾插入:
A,对应I
快移动
- 文件首尾:
gg,G - 指定行:
: 行号 - 滚动一屏:
ctrl + f和ctrl + b - 滚动半屏:
ctrl + u和ctrl + d
三、粘贴复制
- 全选复制:ggVG + y
- set clipboard=unnamedplus:将Vim默认剪贴板设为系统剪贴板
| 命令 | 作用 |
|---|---|
| yy/Y | 复制游标所在行整行 |
| 2yy/y2y | 复制两行 |
| y^ | 复制至行首,或y0。不含游标所在处字元 |
| y$ | 复制至行尾。含游标所在字符 |
| yw | 复制一个word |
| y2w | 复制两个字(单词) |
| yG | 复制至档尾 |
| y1G | 复制至档首 |
| p/P | 贴至游标后(下/上) |
四、删除
vim的建都可以组合使用,d是删除,那d$/D就是删除到行尾,dG删除自后所有字符,dfa删除到本行的a字符。
五、选中
viw: 选择当前光标所在位置。V: 选择当前行ctrl + v: 进入块编辑,可以一定上下左右选择。
六、 列编辑
xxx
yyy
xxx
在第一列都添加#:操作步骤
ctrl +v: 块模式,选择xj: 向下移动选中x、y、xI: 大写i,然后插入#esc: 退出,3个#自动填充
或者进去v-block模式后
:'<,'>nomal I #
7️、其他
设置格式:
# set json format
:set ft=json
xml格式化
:%!xmllint --format %
格式化json
:%!python -m json.tool