vim 日常操作
words: 576 views: time: 2min整理了一些日常工作中的vim操作,大部分操作用多了自然会记得,但脑子也容易忘记
1. 操作笔记
vim设置
:set number | 显示行号 |
:set nonumber | 关闭行号 |
:set hlsearch | 设置搜索高亮 |
:set nohlsearch | 取消搜索高亮 |
如果希望设置永久生效,可以修改文件:vim ~/.vimrc
窗口控制
:sp path | 横向分屏,并在新窗口打开指定路径文件,默认打开当前文件 |
:vsp path | 纵向分屏,并在新窗口打开指定路径文件,默认打开当前文件 |
:open path | 重新打开指定路径 |
:Sex path | 在水平拆分窗口中打开指定目录(默认当前目录)的文件浏览器 |
:Vex path | 在垂直拆分窗口中打开指定目录(默认当前目录)的文件浏览器 |
:res num | 调整窗口高度 |
:vertical res num | 调整窗口宽度 |
ctrl + w + w | 切换窗口 |
编辑模式
i | 在当前光标所在字符前插入文本 |
I | 在当前光标所在行首插入文本 |
a | 在当前光标所在字符后插入文本 |
A | 在当前光标所在行尾添加文本 |
o | 在当前光标所在行下面插入一空行 |
O | 在当前光标所在行上面插入一空行 |
光标控制
w | 向后移到一个单词 |
b | 向前移到一个单词 |
0 | 行首 |
^ | 行首第一个不是空白字符的位置 |
$ | 行尾 |
j | 下一行 |
k | 上一行 |
{ | 段首 |
} | 段尾 |
% | 括号匹配切换 |
H | 屏幕顶部 |
M | 屏幕中间 |
L | 屏幕底部 |
gg | 文件顶部 |
G | 文件末尾 |
num + gg | 指定行 |
ctrl + b | 向前翻页 |
ctrl + f | 向后翻页 |
查找文本
* | 向后寻找光标所在单词 |
# | 向前寻找光标所在单词 |
选择文本
v | 按位选择 |
V | 按行选择 |
ctrl + v | 按块选择 |
v + i + w | 选择光标所在单词 |
修改文本
u | 撤销修改 |
ctrl + r | 恢复撤销 |
d | 剪切选择文本 |
dd | 剪切光标所在行 |
D | 剪切至行尾 |
y | 复制选择文本 |
yy | 复制光标所在行( yy +num 复制多遍) |
p | 粘贴 |
r | 替换当前字符 |
R | 替换当前行光标后的字符 |
>> | 选择行向右缩进4空格 |
<< | 选择行向左缩进4空格 |
. | 重复上次缩进操作 |
:g/{pattern}/d | 删除匹配行 |
:v/{pattern}/d | 保留匹配行 |
场景:多行注释
ctrl + v
:选中多行行首I
:进入编辑模式- 输入注释字符
#
或者//
Esc
:
2. 插件 Python
插件地址:https://github.com/rkulla/pydiction.git
- 将
python_pydiction.vim
放到目录:~/.vim/after/ftplugin
- 将
complete-dict
放到目录:~/.vim/tools/pydiction
- 编辑
.vimrc
,添加行:
1 | set autoindent |
然后编辑.py
文件时按tab键便可以有补全提示了,如果打开时报错,可能是上面的文件格式有问题,执行下dos2unix
3. 插件 taglist
下载地址:https://sourceforge.net/projects/vim-taglist/files/vim-taglist/
下载后解压到~/.vim
目录下即可,然后在vim时通过:Tlist
便可以打开文件的结构化视图,也可以添加一些默认设置:
1 | let Tlist_Auto_Open = 1 打开vim时自动打开Tlist |
另外,进入doc目录,在vim的命令模式下执行:helptags .
,可以将doc导入帮助文档,后面便可以通过help taglist.txt
查看帮助手册
4. 插件 ctags
下载地址:https://sourceforge.net/projects/ctags/files/ctags/
下载解压后,如下进行安装:
1 | ./configure |
使用:
- 首先在需要打开的项目根目录下执行:
sudo ctags -R *
,即生成索引文件tags - 然后在
~/.vimrc
中添加:set tags={tags文件路径}
- 最后在打开的文件中便可以通过
:ta var
跳转到变量的定义位置了
常用快捷键:
ctrl + ] | 跳转至光标所在对象定义之处 |
ctrl + W + ] | 在新窗口打开光标所在对象定义之处 |
ctrl + t | 返回跳转前位置 |
参考: