我寫了一個非常簡單的vim插件和python腳本,試圖測試兩者之間的一些通信。我的vim的腳本是這樣的:python腳本發送命令給vim(mvim)
function! HelloWorld()
silent :!python helloworld.py
endf
nmap <C-P> :call HelloWorld()<CR>
然後我的python腳本是這樣的:
import os;
os.system('mvim --servername VIM -u NONE -U NONE --remote-send \"<C-\\\\><C-N>:echo \'Hello World!\'<CR>\"')
如果我在vim然後按下,用 「:調用的HelloWorld()」 命令,或只需從同一個或另一個mvim或vim實例中輸入「:!python helloworld.py」,什麼都不會發生。但是,如果我單獨從命令行調用腳本,則mvim會進行相應的響應:顯示「Hello World!」沿着底部。
有沒有人有任何想法,爲什麼它從vim調用時不工作?
好奇你爲什麼稱它爲mvim而不是gvim? – Keith 2011-05-07 20:16:33
我認爲mvim是macvim的縮寫形式http://code.google.com/p/macvim/ – bernie 2011-05-07 20:26:46
您是否知道您可以重新編譯Vim,使其在內部與Python接口?在命令行中不需要靈活運行Python;與內置支持接口更容易,更快,更靈活和強大,只需要重新編譯Vim。在':h python'查看幫助。 – 2011-05-08 15:22:36