使用 RVM 在 vim 中重新生成 ctag
我的 .vimrc 中有以下代码:
map <Leader>rt :!ctags --extra=+f -R *<CR><CR>
这会为我当前的目录生成 ctags。
我正在使用 RVM,我正在处理不同的项目,使用不同的 ruby 版本(通过 RVM gemsets)。
每个项目都有不同的 $GEM_PATH,并且我也想为该路径中的 gem 生成 ctags。
应该如何上面的行是测试 $GEM_PATH 变量是否已设置,并处理这些路径?
或者更好的是如何检查我是否有 .rvmrc 文件,并根据该文件的内容生成 ctags?
I have the following code in my .vimrc:
map <Leader>rt :!ctags --extra=+f -R *<CR><CR>
This generates ctags for my current directory.
I'm using RVM, I'm working on different projects, with different ruby versions (trough RVM gemsets.
I have a different $GEM_PATH per project, and I want to generate the ctags for the gems in this path too.
How should the above line be to test if the $GEM_PATH variable is set, and processing these paths too?
Or better still how to check if I have an .rvmrc file, and generate ctags depending of the contents of this file?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
我使用bundler来管理gem,所以我用来
获取gem的标签。
I use bundler to manage gems, so I use
to get the tags for gems.
如果您使用的是 rvm,则可以使用
rvm gemdir
。例如,这就是我正在使用的:这将始终使用当前 rvm gemset 中的 gem 目录。
If you're using rvm, you can use
rvm gemdir
. For example, this is what I'm using:This will always use the gem directory in your current rvm gemset.
用于标记所有已安装 gem 的通用版本(需要一段时间):
如果您只想标记捆绑的 gem(更快):
Generic version for tagging all the installed gems (it takes a while):
If you want to just tag bundled gems (much faster):
这对我来说效果很好:
添加 --language-force=ruby 以减少标签文件的大小并使其干净。
This works well for me:
Adding --language-force=ruby in order to reduce the size of tags file and make it clean.
这就是我使用的:
That is what I use:
我不确定这是否对您的情况有帮助,因为我确实知道 mac 上有一个怪癖,要求我每次安装 vim 时都运行 sudo mv /etc/zshenv /etc/zprofile让 Rails.vim (Rtags) 充满活力地工作。有关更多信息,请参阅这篇文章:
从 finder 打开 gvim/MacVim 时 $PATH 变量未正确设置
I'm not sure if this will help you in your situation by I do know of a quirk on macs that require me to run
sudo mv /etc/zshenv /etc/zprofile
every time I install vim to get exuberant with Rails.vim (Rtags) to work. For more see this post:$PATH variable not properly set in gvim/MacVim when it is opened from the finder