【发布时间】:2015-04-23 21:57:27
【问题描述】:
我使用 Vim 作为我所有 Django 项目的主要编辑器/IDE。使用 YouCompleteMe、syntastic 和其他几个插件。体验很棒。
随着世界转向 Py3K,我决定使用 python3 开始所有新项目。但是 vim 在两个版本的 python 上都不能正常运行。
我用两个版本的python编译。
vim --version | grep python
+cryptv +linebreak +python/dyn +viminfo
+cscope +lispindent +python3/dyn +vreplace
YouCompleteMe 还不支持 python3。 jedi-vim 适用于这两个版本,但我不只是做对了。
通常没有任何插件我可以调用任何 py/py3 命令。但是启用jedi-vim它会自动调用系统python2。
我使用 Vundle 作为 vim 插件管理器。
如果您请分享您的 vimrc/其他配置/解决方法以使用 vim 进行 python3 开发(或两个版本),这对我非常有帮助。
谢谢。
【问题讨论】:
-
这个问题有什么 Django 特有的吗? (例如,YouCompleteMe 是否有额外的功能来支持 Django 项目或其他东西?)如果没有,你应该删除标签;你想从 Python 3.x 和 vim 方面的专家那里得到答案,即使他们对 Django 一无所知。 (顺便说一句,我为你添加了
python-3.x标签,这是你绝对想要的。) -
谢谢。我已经删除了 django 标签。
-
你只用这个来开发python3吗?您是否有任何实际需要 python3 的插件?确保您阅读了
:help python-2-and-3,在某些情况下(当符号在解释器中发生冲突时)会导致第二个解释器无法加载。 (只会加载第一个调用的解释器)。看来您只需要问题中的 python (2) 支持。 -
@abarnert 我不明白为什么 vim 需要运行 python 3 插件才能让他编辑 python 3 文件。 (对于 python 2 文件,反之亦然。)编辑器需要 python 来运行插件而不是编辑任何东西。因此,除非他想使用需要 python3 的特定插件,否则我没有理由改变它。我能看到的唯一原因是他是否使用 py3 命令来运行他的 python 3 文件,否则他不需要嵌入式 python3 解释器。 (即使他是我觉得这会不稳定,因为 py3 命令会在调用之间存储状态)。
-
@FDinoff:但他说他正在执行
py和py3命令,并且可能需要这样做。事实上,这听起来像是他的全部问题:“通常没有任何插件我可以调用任何 py/py3 命令。但启用 jedi-vim 它会自动调用系统 python2。”
标签: python python-3.x vim