我正在使用 Sublime Text 2 和 SublimeCodeIntel 插件。我想为 PyQt4 完成一些代码,但我收到通知“......无法解决第一部分......”。对于 python 库,代码完成工作很棒。

是否可以配置 SublimeCodeIntel 来完成 PyQt4 的代码?

感谢帮助
帕维尔

========== 更新 ============
我对这个插件的配置:

{
    "Python": {
        "python": "C:\\Python32"
            "pythonExtraPaths": [
            "libs",
            "~/Applications/Sublime Text 2.app/Contents/MacOS",
            "/Applications/Sublime Text 2.app/Contents/MacOS",
            "C:\\Python32\Lib\\site-packages"
            ]
    }
}

========== 更新 ============
我创建了包含类似内容的新 cix 文件:
<?xml version="1.0"?>
<codeintel name="PyQt4" version="2.0" description="PyQt4">
    <file lang="Python" mtime="201207021718" path="QtCore.pyd">
        <scope ilk="blob" lang="Python" name="PyQt4.QtCore">
            <scope ilk="class" name="QAbstractEventDispatcher">
                <scope ilk="function" name="closingDown" signature="closingDown()"/>
            </scope>
        </scope>
    </file>
</codeintel>

之后,我将文件放在正确的位置,并检查该文件已加载。但是这个文件没有帮助,看起来 SublimeCodeIntel 由于某些原因忽略了它。我找不到地方和理由这样做。

如果您有任何想法,请帮助。

============== 更新 ================
看起来正在工作。我重新启动了 Sublime Edit 并像这样更改了代码:
import PyQt4.QtCore
PyQt4.QtCore.

最后一个点代码完成后显示 QAbstractEventDispatcher 可用。这意味着 cix 文件正在运行,但可能存在格式问题或编码问题。还有一点很奇怪。只有 import PyQt4.QtCore 正在工作。对于以下行,此 cix 文件不起作用:
import PyQt4
PyQt4.QtCore.

from PyQt4 import *
QtCore.

from PyQt4.QtCore import *
QAbstractEventDispatcher.

你有什么想法吗?
帕维尔

最佳答案

codeintel 库源自 Komodo IDE,适用于该 IDE 的解决方案也适用于 SublimeCodeIntel。

您需要的是 CIX (codeintel XML) files 来描述所讨论的二进制库。碰巧的是,有人为 PyQT4 创建了这样的文件,并从 StackOverflow 的答案中链接到它们: Autocompletion not working with PyQT4 and PyKDE4 in most of the IDEs

Komodo 团队自己也生成了这样的文件,以及 provided a FAQ entry for them

当然,诀窍是如何让 SublimeCodeIntel 承认这些目录。放置在 SublimeCodeIntel/libs/codeintel2/catalogs/ 路径中的任何 CIX 文件都应该由 codeintel 库加载。通常这位于您的 Sublime Packages 目录中,可从 Preferences 菜单(查找 Browse Packages... )访问。

我认为没有任何方法可以配置 SublimeCodeIntel 来查找这些的其他路径。

关于python - SublimeCodeIntel 和 PyQ4,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11290631/

10-15 22:22