2

変数(たとえばl:s)にパスが格納されていて、vimスクリプトでlcd l:sを実行したいのですが、パス「l:s」が存在しないことがわかります。ここでの問題は、vimが他のexコマンド(エコーなど)の変数名をうまく解決するためです。違いがわかりません。

4

2 に答える 2

4

exe次のコマンドを使用して作成できます。

let s:some_dir_name = "foo"
exe "lcd " . s:some_dir_name

変数s:some_dir_nameを評価し、コマンドを実行しlcd fooます。

(これはl:s有効な変数名ではないため、あなたの質問からは使用しませんでしたが、あなたはその考えを理解していると思います。)

于 2013-04-08T23:10:53.267 に答える
1

Vimを使用すると、スクリプト内で環境変数を設定できます。これらは:cdおよび:lcdで機能します。例えば:

function foo()
    let $SOME_PATH = '/some/path'
    lcd $SOME_PATH
endfunction
于 2012-11-22T20:10:48.767 に答える