操作:operator [number] motion
OPERATPR
- 删除:d
- 粘贴:p
MOTION
- 下一个单词首部:w
- 下一个单词尾部:e
- 整行:d(自动复制到寄存器)
- 行尾:$
- 行首:0
- 文件首部:gg
- 文件尾部:G
删除
- d
更改
- ce:删除单词并进入insert模式
- r:更改一个字母
- R:更改更多
定位
[line number] G:定位到指定行
查找
/ [string]
- n:下一个
- N:上一个
- CTRL-o:回到之前位置
- CTRL-I:向前移动
- %:移动到匹配的括号
替换
:#,#s/[old]/[new]/g
- g代表替换整行
- 无g只替换第一个
- #代表更换的行范围
- :%s/old/new/g 更改全文
- :%s/old/new/gc 全文挨个询问是否替换
外部命令
:! [外部命令]
选择部分文本
v <移动>
- “:w <文件名>”:另存为
- d:删除
- y:复制
文件合并
:r <文件名>:将某文件插入此文件
:r !<外部命令>:将外部命令的输出打印到此文件
插入
- i:当前位置插入
- a:光标后插入
- o:下一行
- O:上一行
补齐
ctrl D 显示清单
补齐命令名
跳转
ctrl W 切换窗口
设置
c语言
set cin 自动缩进
VSCodeVim
在insert模式下如果是中文输入法,切换到normal模式默认还是中文输入,所以移动jk 会出现拼音提示,需要手动切换才能消除。
好在vscode vim 官方给出了解决方案,可以自动完成切换过程。
"vim.autoSwitchInputMethod.enable": true,
"vim.autoSwitchInputMethod.defaultIM": "com.apple.keylayout.US",
"vim.autoSwitchInputMethod.obtainIMCmd": "/usr/local/bin/im-select",
"vim.autoSwitchInputMethod.switchIMCmd": "/usr/local/bin/im-select {im}"
作者:snow4web
链接:https://www.jianshu.com/p/41c759d543b7
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
个性化配置
~/.vimrc 文件中配置自己的设置
- 设置行号:set number
插件
插件管理工具:vim-plug
在.vimrc中相应部分直接添加需要的插件