我注意到即使对于系统模块,代码完成也不能很好地工作。
例如,如果我有一个简单的文件:
import re
p = re.compile(pattern)
m = p.search(line)
如果我输入p。,我没有完成我希望看到的方法(我没有看到例如search(),但我确实看到其他人,例如func_closure(),func_code() )。
如果我输入m。,我没有得到任何完成(在这种情况下,我希望.groups())。
这似乎不会影响所有模块..有没有人看到过这种行为并知道如何纠正它?
我在WinXP上运行Vim 7.2,使用来自vim.org(0.9)的最新pythoncomplete.vim,运行python 2.6.2。
答案 0 :(得分:2)
完成这类事情很棘手,因为它需要执行实际代码才能工作。
例如,p.search()可以返回None或MatchObject,具体取决于传递给它的数据。
这就是为什么omni-completion在这里不起作用,也许永远不会。它适用于可以静态确定的事物,例如模块的内容。
答案 1 :(得分:0)