例如,我有一个使用 Google App Engine SDK 的 Python 脚本:
from google.appengine.ext import db
from google.appengine.ext import webapp
from google.appengine.ext.webapp import template
from google.appengine.ext.webapp.util import run_wsgi_app
模块 db
有一个子模块 Key
,所以我尝试对其使用自动完成:
db.K
Tab
但是在 Vim 窗口的底部,我得到以下信息:
-- Omni completion (^O^N^P) Pattern not found
如何包含非标准 Python 库的路径,以便 Vim 自动完成功能可以找到它们?并显示他们的文档字符串?
最佳答案
您需要将您的库文件添加到您的标签文件中。例如,如果您在位于 env/的虚拟环境中通过 pip 安装了 Google App Engine:
virtualenv --no-site-package env/
source env/bin/activate
pip install google_appengine
...那么你应该执行:
ctags -R --python-kinds=-i -o tags env/
如果你没有通过 pip 安装 google_appengine,那么你应该找到你的 python 库的路径(提示:它应该由 $PYTHONPATH 指示。根据 this 引用页:“在 Unix 上,这通常是 . :/usr/local/lib/python.") 并用您找到的路径替换 env/。
最后,你的 .vimrc 文件应该解析你的标签文件。例如,在我的 .vimrc 中,我有:
set tags+=/path/to/my/tags
关于python - 如何为非标准 Python 库添加自动完成功能到 Vim?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8101564/