1、在工程目录下创建工程文件
touch project.exvim
project为工程名称,可任意起,支持多个不同的工程配置
一个项目中可以拥有多个 .exvim 文件,允许你在一个项目中运用不同的配置;
2、编译工程
vim project.exvim打开工程文件
进入vim命令模式输入Update命令更新工程配置
:Update
初始时候ex-project窗口为空,将鼠标定位到ex-project输入<leader>R刷新工程,<leader>r命令刷新目录
<leader>R <==> '\'+R (区别大小写)
<leader>r
3、初始化配置
工程类型
project_type = all -- { all, build, clang, data, doc, game, server, shell, web}
工程设置
version = 11
project_name = 'nginx'
文件和文件夹过滤
folder_filter_mode = exclude -- { include(包含模式), exclude(排除模式) }
folder_filter += -- {src,core中间用逗号分割}
file_filter += __EMPTY__,c,h,cpp -- {文件后缀,__EMPTY__为无后缀文件,如Makefile}
file_ignore_pattern +=
编辑
tabstop = 4
编译
builder = gulp -- { gulp, grunt, gcc, xcode, vs, unity3d, ... }
build_opt = ''
工程目录ex-project Options:
enable_project_browser = true -- { true, false }
project_browser = ex -- { ex, nerdtree }
搜索插件ex-gsearch Options:
enable_gsearch = true -- { true, false }
gsearch_engine = idutils -- { idutils, grep }
ctags插件-- ex-tags Options:
enable_tags = true -- { true, false }
enable_symbols = true -- { true, false }
enable_inherits = true -- { true, false }
cscope插件ex-cscope Options:
enable_cscope = true -- { true, false }
下面的2个插件不知道做什么用的
-- ex-macrohl Options:
enable_macrohl = false -- { true, false }
存储文件的缓存
-- restore buffers:
enable_restore_bufs = false -- { true, false }
4、ex-project文件夹相关操作
文件夹折叠打开(vim内置命令)
(1)打开和折叠整个工程
zO(打开)
zM(折叠)
(2)打开和折叠当前文件夹
zo(打开)
zc(折叠)
(3)文件夹之间的切换
zk或者<ctrl-k>或者[{ (下一个目录)
zj或者<ctrl-j>或者]} (上一个目录)
h,j,k,l(左下上右)
arrow keys(方向键移动)
%匹配{}括号队
文件打开
(1)直接打开
<enter>直接回车
(2)打开文件浏览器
<shift-enter>
ex-project will use the OS's file browser, and open the folder in it.
This is very useful when you trying to operate files in a folder.
(3)在文件目录中定位当前打开的文件
<leader>fc
(4)创建新文件
ex-project文件或者目录之下输入'o'创建新文件
(5)创建新目录
定位到ex-project目录上输入'O'创建目录
5、ex-gsearch全局搜索
配置更新:Update之后,exvim会产生ex-gsearch所使用的ID文件
(1)vim自带搜索
:/和:?
(2)搜索
<leader>gg 搜索当前光标所在位置的关键字
:GS <word> 命令行搜索
(3)过滤
<leader>r 过滤出包含过滤关键字的内容
<leader>d 过滤出不包含过滤关键字的内容
<leader>fr 过滤出包含过滤关键字名称的文件
<leader>fd 过滤出不包含过滤关键字名称的文件
u显示上次过滤结果
<ctrl-r>显示下次过滤的结果
6、ex-tags标签和ex-symbol符号
(1)Update命令更新
(2)跳转命令
ctags:<ctrl-]和:ts tag-name跳转命令
ex-tags:<leader>] 和:TS tag-name
(3)符号查询
<leader>ss 列举所有的symbols
<leader>sq 打开symbol窗口,并显示最后一次的symbols列表
<leader>sg 使用当前光标下的单词作为搜索tag,列出所有匹配项
:SL <your-tag> 使用<your-tag> 作为搜索tag,列出所有匹配项
(4)过滤
<leader>r 移除symbol窗口中不包含Vim搜索模式的项
<leader>d 移除symbol窗口中包含Vim搜索模式的项
7、ex-hierarchy类继承
印和显示类继承图
:HV <class>: 将会显示<class>的子类和父类.
:HVP <class>: 将会 <class>的父类.
:HVC <class>: 将会<class>的子类.
注意: 生成的图片保存在 .exvim.your-project/hv.png, exVim 将尝试使用你默认的图片浏览器打开它。
8、配置文件
.vimrc
.vimrc.plugins
.vimrc.plugins.local
.vimrc.local.
先被载入的文件是 .vimrc,我们都熟悉它。在 .vimrc 配置你的 vim 之前,它会在同一个目录检查是否存在 .vimrc.plugins 然后载入它。这是 exVim 插件的默认设置。在 .vimrc.plugins 被运行后, .vimrc.plugins.local 会被载入。在它之后,.vimrc 才开始使用自己的设置,在最后,它会检查并载入 .vimrc.local
工程窗口打开和关闭快捷键
nnoremap <unique> <silent> <F3> :EXProjectToggle<cr>
NERDTree打开和关闭快捷键:
nnoremap <unique> <silent> <F2> :NERDTreeToggle<cr>
附件exvim.md