目录:
1.12 让vim按C文件高亮显示sqc文件, 即识别sqc等新文件类型
1.14 使用winmanager插件时,弹出的窗口调整为在右侧显示
1、 使用方法汇总
1.1 打开文件 | :e path/filename |
可以是绝对路径,也可以是相对路径, "~"代表HOME环境变量指向目录 |
1.2 跳转至函数实现处 | 在函数名的任意位置,按<ctrl+]>即可 |
需提前使用ctags生成tags文件 |
1.3 查找函数被调用处 | :cs find s AAA |
AAA为函数名 |
1.4 全部替换文件内指定字符串 | :g/AAA/s/BBB/CCC/g |
AAA代表只查找有AAA的行,在找到的行中将BBB替换为CCC |
1.5 分割窗口 | :split |
执行一次就会分割一次窗口, [ctrl]+[w]+[G\H\J\K]可以使焦点在各个窗口中移动 |
1.6 使用宏快速重复执行批量操作 | 第一步:qa (q是命令,a是宏名称,也可以其他任意英文字母)回车,此时开始录制要重复执行的操作 第二步:各种操作 第三步:q 回车,此时完成宏录制 第四步:@a 即可重复执行第二步的所有操作 |
:qa回车-->查找AAA字符串-->删除AAA,替换为BBB-->:q回车-->@a, 每次执行@a就是替换一次AAA为BBB |
1.7 .h/.cpp文件快速切换 | :A |
.h和.cpp必须在同一目录下 |
1.8 "前进"和"后退" | [ctrl]+[^] 和 [ctrl]+[o] |
1.9 删除1篇文章中包含特定字符串的行 | :g/特定字符串/d |
1.10 删除1篇文章中行尾的^M符号 | :%s/ctrl+v+m//g |
:%s/\r//g |
1.11 去除文件中已存在的Tab键 | :retab |
1.12 让vim按C文件高亮显示sqc文件,即识别sqc等新文件类型 | 在安装目录vimfiles/after下新建ftdetect目录,并新建sqc.vim文件,其中添加一句命令:au BufNewFile,BufRead *.sqc set filetype=c
识别其他文件类型,方法类似。 |
1.13 让vim不要自动生成~备份文件 | 在vim73目录下找到vimrc_example.vim文件, 里面的 if has ('vms') 这句的else分支给注释掉即可 |
1.14 使用winmanager插件时,弹出的窗口调整为在右侧显示 | 在winmanager.vim中找到StartWindowsManager这个方法,里面有2个wincmd H关键字, 全部改为wincmd L即可 |
1.15 去掉vim异常时的提示音和屏幕闪烁 | Linux下的vim使用:set noeb |
windows下的gvim使用 :set vb t_vb= :au GuiEnter * set t_vb= |
1.16 元字符使用说明 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1.17 匹配一行中同时包含字符串1和字符串2的行 | /字符串1.*字符串2 |
1.18 清空寄存器a中的内容 | :call setres("a", "") |
1.19 累加各种命令匹配到的两行内容到寄存器a中 | /g/内容/d a 2 |
三、 常用环境变量 | |
$VIM: | 安装根目录 |
$VIMRUNTIME: | 安装根目录/VIM73 (系统目录) |
$HOME: | 设置用户根目录, 比如:打开VIM后,输入:e ~/ 跳转到HOME环境变量指定的目录,可以指定到自己工程的根目录。 |
四、 常用操作命令 | |
:version | 查看安装版本信息、主要配置文件路径等 |
:scriptnames | 查看主要配置文件路径和名称 |
:helptags $VIMRUNTIME/doc | 安装新插件 |
:set helplang=cn | 下载中文帮助文档到$VIMRUNTIME/doc中,执行该命令 |
ctags -R --c++-kinds=+p --fields=+iaS --extra=+q | 支持解析c++文件 |
ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f 文件名 | |
ctags -R --c-types=+px --langmap=c:.c.sqc.h.sqx | 支持解析sqc文件 |
find . -type f >cscope.files | cscope解析的文件列表 |
dir /s /b *.h *.c *.cpp *.sqc > cscope.files |