是否需要使用Python 3.4.1编译Vim,以通过Python 3.4.1运行文件,使用":!python file_name?"

时间:2014-09-08 18:39:34

标签: python vim

在Vim中使用此命令时

:python import sys; print(sys.version)

我明白了:

2.7.6 (default, Aug  8 2014, 11:00:32)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)]

我正在Vim编辑器中编写python程序,并希望使用命令

:!python file_name

通过python 3.4.1控制台运行我的程序。当我输入

:!python

我得到一个提示,我想使用正确版本的python:

Python 3.4.1 |Anaconda 2.0.1 (x86_64)| (default, May 19 2014, 13:05:46) 
[GCC 4.2.1 (Apple Inc. build 5577)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

如何验证这是否也是Vim在运行程序时使用的python版本

:!python file_name

如果它确实使用python的正确版本(3.4.1)运行我的程序,那么Vim是用早期版本编译的意思是什么?更重要的是,我怎么能告诉Vim用什么版本的python来解释我的程序,以防我以后需要更改版本?

2 个答案:

答案 0 :(得分:2)

对于:python是,对于:!python否。另请注意,python 2和python 3是两种不同的不兼容语言,您可以在VIM编译时启用一个或另一个或两者以使用:python命令。

来自vim :help python页面:

The Python 2.x interface is available only when Vim was compiled with the
|+python| feature.
The Python 3 interface is available only when Vim was compiled with the
|+python3| feature.
Both can be available at the same time, but read |python-2-and-3|.

因此,当您使用:python时,它将使用vim版本。但是,语法:!commandname将使用通常的shell命令搜索规则来执行commandname,因此:!python取决于您安装的版本。

答案 1 :(得分:1)

如果您的Vim使用两个版本的python +python +python3编译,您可以使用python2的命令:python和python3的:python3启动内部python。但是,如果您启动其中一个,则无法使用其他直到重新启动Vim。