Python 3,vim 8和pythoncomplete错误

时间:2016-10-31 15:56:15

标签: python vim

在vim中编辑python文件并在插入模式下点击Ctrl+x后跟Ctrl+o会导致

Error: Required vim compiled with +python
E117: Unbekannte Funktion: pythoncomplete#Complete

我已经阅读了很多帖子并且在此之前做了很多摸索:

  • 我正在使用vim 8.0.54
  • 安装的python和vim都是32位
  • Vim :vers返回... +python/dyn+python3/dyn
  • python35.dll :vers中提到的-DDYNAMIC_PYTHON3_DLL=\"python35.dll\"文件与gvim.exe
  • 位于同一文件夹中 我的_vimrc let g:pymode_python = 'python3'中的
  • 应告诉vim用户python3
  • :echo has ('python3')返回1

但错误仍然存​​在......除了键盘前面的错误之外还有什么想法吗?

更新2016-11-08:

这不是一个好方法,但它解决了我的问题。我变了 setlocal omnifunc=pythoncomplete#Completesetlocal omnifunc=python3complete#Complete中的python.vim文件中的ftplugin-folder。现在它工作得很好。在不修改python.vim文件的情况下实现相同的任何建议?

更新2016-11-08:

最后在我的_vimrc

中用autocmd BufNewFile *.py :set omnifunc=python3complete#Complete解决了它

1 个答案:

答案 0 :(得分:0)

这是你编译的Vim吗? collect结果看起来是正确的。错误vers特定于使用vim E117功能调用函数。

但是,eval变量用于特定的" python-mode"插入。

  1. 您的搜索路径中是let g:pymode_python = 'python3库吗?
  2. python3python编译的python3
  3. 是要回答的问题。

    不确定vim是否首先搜索它自己的可执行文件夹,但要检查,你可以这样做:

      

    要使用Python接口,Python DLL必须位于搜索路径中。在一个   控制台窗口类型"路径"查看使用的目录。

    在文档中可以更深入地了解:doc/if_pyth.html#python-dynamic

    HTH