vim-switchtoinc 这是一款vim插件,用于头文件和源文件间快速切换。注:在a.vim插件基础上修改的。
特性
支持多种语言(所有具备头文件的语言),主要支持为c, cpp, objective-c, objective-cpp等
支持绝对路径进行查找
支持源文件为基准的相对路径查找
支持regex替换路径
支持自定义项目目录,批量初始化目录后使用(推荐)
安装
可以直接克隆下来丢在vim的插件目录,但我推荐用插件管理器进行管理,下面是各种插件管理器:
git clone https://github.com/liwangmj/vim-switchtoinc.git ~/.vim/bundle/vim-switchtoinc
Plug 'liwangmj/vim-switchtoinc'
NeoBundle 'liwangmj/vim-switchtoinc'
Plugin 'liwangmj/vim-switchtoinc'
使用
切换到当前文件的源文件或则头文件:
:A
同上,但在上面基础上会水平分栏进行打开:
:AV
打开当前文件的源文件或头文件,并会垂直分栏进行打开:
:AS
多个重名文件之间的切换:
:AN
初始化查找目录(只在用最后一种方式前使用,其他方法不用):
:SearchIncAndSrcPath
设置
需要设置源文件和头文件的查找目录,通过 g:alternateSearchPath 来设置。
基于源文件的相对路径查找(如下是默认值):
let g:alternateSearchPath = 'sfr:../source,sfr:../src,sfr:../include,sfr:../inc'
基于绝对路径查找(例子):
let g:alternateSearchPath = 'abs:/home/my/myporject/inc,abs:/home/my/myproject/src'
基于vim正则表达式查找(例子):
let g:alternateSerchPath = 'reg:/inc/src/g/, reg:/src/inc/g/'
以上方法都比较有局限性,因为只能针对单条路径(正则)或单个目录进行查找,下面的方法相对麻烦一点,但一劳永逸,不用担心可恶的目录问题:
先设置项目的根目录(例子):
let g:iSearchProjectPath = '/home/my/myproject'
let g:iSearchPathName = [
\'src', 'Src', 'SRC',
\'inc', 'Inc', 'INC',
\'source', 'Source', 'SOURCE',
\'include', 'Include', 'INCLUDE',
\'my_inc', 'my_inc'
\]
再调用 SearchIncAndSrcPath 进行初始化查找目录:
:SearchIncAndSrcPath
然后可以用:A :AV :AS 进行切换了。
最后说一下,最新版本更新:
第一次调用:A :AV :AS,插件内部会自动执行一次 SearchIncAndSrcPath,只需直接切换即可,不用单独执行。
另外,如果在使用vim过程中相关文件目录有更改,可以通过执行一次SearchIncAndSrcPath来更新,但值得注意的是:之前打开过的文件切换信息由于存在缓存无法更新,需要重启vim才能生效!
推荐按键绑定
autocmd FileType c,cpp,objc,objcpp nmap <silent> <F4> :wall<CR>:A<CR>
autocmd FileType c,cpp,objc,objcpp nmap <silent> <C-F4> :wall<CR>:AV<CR>
autocmd FileType c,cpp,objc,objcpp nmap <silent> <S-F4> :wall<CR>:AS<CR>
autocmd FileType c,cpp,objc,objcpp nmap <silent> <Leader>an :wall<CR>:AN<CR>
autocmd FileType c,cpp,objc,objcpp nmap <silent> <Leader>as :wall<CR>:SearchIncAndSrcPath<CR>
谢谢
欢迎使用,祝使用愉快
使用插件,可以扩展Vim的功能。Vim支持许多插件,其中大多数都是免费提供的。本章是关于Vim插件的,将讨论以下主题内容 - 插件管理 一些有用的插件 1. 插件管理 本节讨论插件管理。 Vim提供各种插件管理器,但不会使用任何插件管理器,而是将手动执行所有这些步骤以便更好地理解。当理解了这些步骤,就可以使用插件管理器。 安装插件 要安装任何插件,请执行以下步骤 - 在用户的主目录中创建 .vim
虽然 Vim 已经提供了非常强大的功能,但如果有几款好用的插件辅佐,更能让你的工作事 半功倍。 安装插件 若要手动安装 Vim 插件,需要完成如下步骤: 创建 .vim 文件夹 cd ~ mkdir .vim 在 .vim 文件夹中创建 bundle 文件夹 cd .vim mkdir bundle copy 或 clone 插件文件 cd bundle git clone
首先安装Syntastic,安装方法参见官方文档 将soar二进制文件拷贝到可执行文件的查找路径($PATH)下,添加可执行权限chmod a+x soar 将doc/example/soar.vim文件拷贝至${SyntasticInstalledPath}/syntax_checkers/sql目录下 修改${SyntasticInstalledPath}/plugin/syntastic/r
颜色主题 以下为一些比较流行的颜色主题: acme-colors apprentice base16 gotham gruvbox janah jellybeans lucius molokai nofrils oceanic-next paramount railscasts seoul256 solarized (or solarized8 or flattened) tomorrow viv
Vim 插件开发中文指南,主要包括 Vim 脚本语法、插件开发技巧等。 基本语法 注释 在写脚本时,经常需要在源码里面添加一些注释信息,辅助阅读源码,Vim 脚本注释比较简单,是以 " 开头的,只存在行注释,不存在块注释。因此,对于多行注释,需要再每行开头添加 "。 示例: " 这是一行注释, let g:helloworld = 1 " 这是在行尾注释 变量 在 Vim 脚本里,可以使用关键
本文向大家介绍ruby开发vim插件小结,包括了ruby开发vim插件小结的使用技巧和注意事项,需要的朋友参考一下 在开始编写插件之前,你需要确认 Vim 是否支持 Ruby,通过以下命令来判别: 如果输出为空,则表示你当前的vim不支持Ruby,需要重新编译一下,并启用对Ruby的支持。 顺便说下我当前的环境是: vim 7.4 ruby 2.1.0 环境检查没有问题那么就开始吧。 在~/.vi
本文向大家介绍vim 离开插入模式,包括了vim 离开插入模式的使用技巧和注意事项,需要的朋友参考一下 示例 命令 描述 <Esc> 退出插入模式,触发自动命令和缩写 <C-[> 的确切同义词 <Esc> <C-c> 退出插入模式,不触发自动命令 有些人喜欢使用相对不常见的一对字符,如jk快捷键<Esc>或<C-[>在某些键盘上很难触及的字符:
本文向大家介绍PHP语法自动检查的Vim插件,包括了PHP语法自动检查的Vim插件的使用技巧和注意事项,需要的朋友参考一下 由于最近写PHP比较多,偶尔手误少写个分号之类的语法错误难免,一般的检查方式是回到命令行运行 php -l ,或者升级一下直接在Vim里运行 :!php -l % ,或者再将此绑定为快捷键,如 :map <F5> :!php -l %<CR> ,每当按F5便可立即执行语法检查