在支持Python3的windows上安装GVIM?

2024-05-14 07:04:06 发布

您现在位置:Python中文网/ 问答频道 /正文

如何安装支持Python3的GVIM for Windows?我已经安装了VIM 7.4,它的版本文件(run:version命令)中写着“+python3/dyn”和“-DDYNAMIC_python3_DLL=\”python32.DLL\”。所以看起来它已经准备好支持Python3了。当我跑的时候

:echo has("python3")

它返回零。如果我用

:py3 print("hello") 

它说它无法加载python32.dll。


Tags: 文件run命令版本forversionwindowsvim
3条回答

下面是一个我用来让VIM 7.x使用Python 3.x的方法

  1. 安装您喜欢的VIM。建议:从VIM.org获取最新版本,尽管这个站点似乎只有32位版本。如果您想要64位(我的偏好)在https://bintray.com/veegee/generic/vim_x64获得一个预构建,或者选择您自己的预构建在别处,或者构建您自己的。

  2. 键入命令:py3 print(“hello”)

  3. 它可能找不到python dll,在这种情况下,它会给出一条错误消息,如cannot load python XX.dll,其中XX是两位数。在我的例子中,VIM正在寻找python35.dll,它来自Python 3.5.1(可能还有任何python3.5.x)。这个数字将根据您使用的VIM版本而变化。

  4. 去找一个匹配的Python发行版。匹配意味着VIM和Python都必须是32位或64位,并且VIM想要的DLL(在步骤3中)存在。例如,Python 3.5.x提供了python35.dll。安装它。

    1. 我不记得为了让VIM找到python DLL需要做什么特别的事情,除了确保它所在的目录应该在路径中,而且我认为它已经在路径中了。如果没有,请将带有DLL的目录添加到您的路径中。

    2. 重试步骤2。现在应该可以了。

    3. 如果将来升级VIM或Python,可能需要同时升级另一个,以确保步骤2中的测试仍然有效。

不幸的是,我花了一天时间才弄明白。如果您希望在Windows上使用GVIM 7.3+支持Python3,下面是解决此问题的最简单方法。

我正在运行64位Windows 8,但是,请确保获得32位版本的Python。默认情况下,您很可能有一个32位版本的gvm,这两个版本需要匹配。具体来说,获取Python3的3.2.x版本,因为就DLL而言,VIM正在寻找这个版本(python32.DLL)。在编写本文时,不要为Python 3,3.4.0的最新版本而烦恼;如果您真的需要它,那么我不知道该如何帮助您。

一旦安装了Python3.2.x,请确保完成最后一个棘手的部分:

python32.dll不在system32文件夹中,它实际上位于C:\ Windows\SysWOW64文件夹中。您需要将“C:\ Windows\SysWOW64”添加到PATH环境变量中。

现在在GVIM中重新尝试python3测试,它应该会成功。

使这个问题如此困难的问题是,特定的解决方案很快就会过时。发布解决方案的当天vimpython的版本将更新或链接将更改。@mark colon提供的步骤非常棒,但面向vim-7。

一般说明:

vimpython需要在上同步许多不同级别:

  1. 两者都需要32位或64位

  2. Vim需要找到一个特定的python dll版本。这取决于谁编写了你的gvim版本。例如,gvim-8.1.x可以使用python3.6或python3.7,需要准确的版本!有时您可以使用:gvim --version查看vim在启动时搜索的特定dll,否则您需要从下载gvm的位置查找。这是python的版本,您必须搜索internet并在系统上安装。(或者,如果python的版本比vim的版本对您更重要,您可以尝试查找为python编译的vim版本,但这将更难找到。)

  3. 确保保存python dll的目录需要位于%PATH%环境变量上。(注意:有些只是将python dll复制到$VIM文件夹中,以使其工作仅在短期内有效。您没有所有必需的python库,而这些库通常被认为是可用的。)

  4. 最后,根据需要的python版本,使用ex命令:python2 print("hello"):python3 print("hello")进行验证。

特定链接(如果必须):

注意:这些都将很快过时,但以下是一些链接,指向可以协同工作的各种编译版本的gvim和python:

截至2018-08年度的gvim-8.1.x&;python-3.7.xpython-2.7.x

对于截至2018-08年的gvim-8.1.x&;python-3.6.xpython-2.7.x

对于截至2018-08年的gvim-7.4.x&;python-3.5.xpython-2.7.x

相关问题 更多 >

    热门问题