2012-06-02 62 views

回答

48

我剛剛發現here,你也可以用

:python import sys; print(sys.version) 
+2

使用':python3 import sys; print(sys.version)'如果你已經用python 3編譯Vim了。 –

9

我想你想要這樣的:

類型:

:python << EOF 
import sys; 
print(sys.version); 
EOF 

如果Vim編譯與蟒蛇,當你在命令行中鍵入:python << EOF,在命令行將會換行擴大和等待EOF。在EOF之前,鍵入您的python代碼,並以EOF結束。

編輯:正如你已經發現,在EOF是不必要的,你可以在一個單一的線,沒有引號和-c腳本。 EOF技巧非常適合在命令行中測試python/VIM腳本。

+0

+1。到目前爲止的答案中,你知道他們是否都使用vim編譯的版本,而不是系統vim? – beardc

+0

不知道我跟着你。什麼?在vim中鍵入':!anyCommand'會調用外部(系統)命令,例如'!python'。 ':python'(internal)只有在Python腳本支持已經被編譯到vim中時纔可用。 – pb2q

+0

謝謝,我基本上只是詢問哪些pythons':!python'和':python'被引用。 – beardc

0

運行:ve[rsion]做到在command-line modeBash運行vim --version

  1. 如果vim與Python的3編譯,你會發現-python+python3
  2. 如果vim編譯爲與Python 2,你會發現+python-python3
  3. 如果vim編譯沒有Python的支持,你會發現-python-python3

我不知道是否有可能找到既+python+python3:ve輸出 - 目前probably not


目前-python-python3seems是默認Debian'svim package。如果您需要vim對腳本語言的支持,請安裝專用於它們的vim-nox,因此啓用了(其中包括)+python3。還有一個有趣的,重重構造的vim分叉neovim(或簡稱nvim)。 BTW:在Debian上,您可以通過運行update-alternatives --list vim列出所有已安裝的vim版本。