Sublime Text - 如何为任意Python模块添加自动完成?

1 投票
1 回答
1459 浏览
提问于 2025-04-18 16:08

这个问题比较宽泛,但我还没找到简单明了的答案。

假设我在Python的site-packages文件夹里安装了一个模块。但是在我的Sublime Text中,使用Sublime CodeIntel模块的自动补全功能并不好用。它只对核心的Python包有效,甚至连所有核心包都不一定支持。

我现在在codeintel配置中的默认设置是:

"codeintel_config": {
    "Python": {
        "env": {
            "PATH": "/usr/local/bin:/usr/local/sbin:$PATH",
            "PYTHONPATH": "/usr/local/lib/python2.7/site-packages:/usr/local/lib/python:$PYTHONPATH"
        }

这些路径看起来有点奇怪,这样正常吗?(我使用的是默认的Mac设置)

我知道还有其他一些模块(比如Jedi,需要一些配置),但我想知道有没有简单的方法可以让Sublime Text支持任何Python模块的自动补全呢?

如果一个模块安装在site-packages之外,比如Kivy,那该怎么办呢?

1 个回答

1

这些是插件自带的示例路径,都是被注释掉的。你需要根据你自己系统的实际情况来配置一个python路径,这个路径会因为你使用的python版本不同而有所不同,比如说是python 2还是python 3,或者是系统自带的python、从python.org下载的,还是通过homebrew安装的等等。

如果你想知道python实际使用的路径,可以试试:

python -c "import sys;print(':'.join(sys.path[1:]))"

(当然也可以用python3。)不过里面可能会有一些你不想用的内容,所以记得挑选出你不需要的部分。

撰写回答