私はpython3
、次のようにエイリアスを指定したいくつかのシルクヘビを使用していますpy
。
alias py="/opt/python3.4/bin/python3"
Pythonを実行したいvim
ので、次のように書いてください。
map <F9> :call SpecialCompileRun()<CR>
func! SpecialCompileRun()
exec "w"
if &filetype == 'python'
exec '!time py %'
endif
endfunc
しかし、vimを押すと、次のF9
メッセージが表示されます。
/bin/bash py cannot find command
py
に変更すると、python3
今は動作しますが、まだ理由を知りたいです。
ベストアンサー1
定義した方法はpy
シェルエイリアスであり、Vimはシェルエイリアスについて知らなかったり、興味がないからです。代わりに、次のように環境変数を使用します。
$ PY=/opt/python3.4/bin/python3
$ export PY
それからVimで:
...
exec '!time ' . fnameescape($PY) . ' %'
...
編集する: に追加してくださいfnameescape()
。$PY
Vimに特別な意味を持つ文字(fi#
と)が含まれている場合は%
必須です。