1

我希望能够通过 ctags 从我的 virtualenv 库中获取源代码,但为了能够做到这一点,我需要知道哪个 virtualenv 当前处于活动状态,因此例如,我的 .vimrc 中有这段代码,它将 django 附加到我的 ctags指数:

nnoremap <F7> :!ctags -R --python-kinds=-i -a ~/.virtualenvs/MYPROJECT/lib/python2.7/site-packages/django/*<CR>

我不想硬编码路径,而是希望它执行以下操作:

nnoremap <F7> :!ctags -R --python-kinds=-i -a CURRENT_PROJECT_PACKAGES_PATH/django/*

所以我可以索引我正在处理的当前项目中的包。

4

2 回答 2

2

您可以使用 $VIRTUAL_ENV 进入您的图书馆,所以它会是这样的

nnoremap <F7> :!ctags -R --python-kinds=-i -a $VIRTUAL_ENV/lib/python2.7/site-packages/django/*
于 2012-10-09T13:34:31.973 回答
0

使用变量,let g:current_proj = "~/.virtualenvs/MYPROJECT/lib/python2.7/site-packages/"然后使用 exe 读取它:

nnoremap <F7> :exe "!ctags -R --python-kinds=-i -a " . g:current_proj . "django/*"<cr>

或者您可以直接使用环境变量:

nnoremap <F7> :exe "!ctags -R --python-kinds=-i -a " . $CURRENT_PROJECT_PACKAGES . "django/*"<cr>
于 2012-07-07T06:20:09.867 回答