问题 为vim:python命令指定Python解释器


(Mac)Vim似乎正在复苏 /usr/bin/python 而不是我前面的那个(/Library/Frameworks/Python.framework/Versions/2.6/bin/python)当我使用:python命令。这完全是编译时的事情还是我可以以某种方式覆盖它?


1430
2018-06-08 16:32


起源



答案:


好像它是一个完全编译时的东西:

$ ldd /usr/bin/vim | grep python
libpython2.5.so.1.0 => /usr/lib/libpython2.5.so.1.0 (0xb6bcc000)

我的 vim --version 还报告针对特定的python构建。

$ vim --version | tr '-' '\n' | grep python
+python +quickfix +reltime +rightleft +ruby +scrollbind +signs +smartindent 
I/usr/include/python2.5 
L/usr/lib/python2.5/config 
lpython2.5 

另一个症状就是 :python 命令不适用于vim,除非 vim --version 报告+ python。


10
2018-06-08 17:30



+1,正确,vim 是 确实设计用于(嵌入)它编译和链接的Python库(如果有的话) - 当然,这也是任何C或C ++应用程序嵌入Python的常用方法。 - Alex Martelli
谢谢Paul,Alex。我已经离开并重新编译了MacVim,结果并没有像我预期的那样痛苦。 - dwf
请注意,Paul现在正在编写最简单的方法!我使用ipython(为系统python安装)将命令发送到我想要“使用”的python上的ipython内核。 python-mode或类似的东西也可以支持这种行为(虽然它的大量使用:python会要求你重写run#Run函数)。这实际上只是运行使用的限制:python,你只能这样做 需要 要做vim本身的脚本。 - Dav Clark
看起来现在不是这样的。我不知道细节。我刚试过 :python import sys; print sys.executable; 它确实受到了影响 $PATH。 - Hot.PxL
可以通过添加来使用其他位置的Python库 export PYTHONPATH="/home/user-name/anaconda3/lib/python3.5/site-packages":$PYTHONPATH 至 ~/.zshrc/。但是,这不会改变解释器。 - joelostblom


答案:


好像它是一个完全编译时的东西:

$ ldd /usr/bin/vim | grep python
libpython2.5.so.1.0 => /usr/lib/libpython2.5.so.1.0 (0xb6bcc000)

我的 vim --version 还报告针对特定的python构建。

$ vim --version | tr '-' '\n' | grep python
+python +quickfix +reltime +rightleft +ruby +scrollbind +signs +smartindent 
I/usr/include/python2.5 
L/usr/lib/python2.5/config 
lpython2.5 

另一个症状就是 :python 命令不适用于vim,除非 vim --version 报告+ python。


10
2018-06-08 17:30



+1,正确,vim 是 确实设计用于(嵌入)它编译和链接的Python库(如果有的话) - 当然,这也是任何C或C ++应用程序嵌入Python的常用方法。 - Alex Martelli
谢谢Paul,Alex。我已经离开并重新编译了MacVim,结果并没有像我预期的那样痛苦。 - dwf
请注意,Paul现在正在编写最简单的方法!我使用ipython(为系统python安装)将命令发送到我想要“使用”的python上的ipython内核。 python-mode或类似的东西也可以支持这种行为(虽然它的大量使用:python会要求你重写run#Run函数)。这实际上只是运行使用的限制:python,你只能这样做 需要 要做vim本身的脚本。 - Dav Clark
看起来现在不是这样的。我不知道细节。我刚试过 :python import sys; print sys.executable; 它确实受到了影响 $PATH。 - Hot.PxL
可以通过添加来使用其他位置的Python库 export PYTHONPATH="/home/user-name/anaconda3/lib/python3.5/site-packages":$PYTHONPATH 至 ~/.zshrc/。但是,这不会改变解释器。 - joelostblom