vim のランタイムパスを変数として設定できない理由

vim のランタイムパスを変数として設定できない理由

.vimrcと場所を指定しました.vim

私のvimrcファイル、私はruntimepath設定できることがわかりました絶対値好きなもの:

set rtp+=~/.marslo/.vim/bundle/vundle

しかし、できないとして設定される変数、いいね:

let vudpath = expand(~/.marslo/.vim/bundle/vundle)
set rtp+=vudpath

runtimepathそれはなぜですか?変数として設定できる方法はありますか?

答え1

romainl が言ったように、あなたは を持っています:let &option。しかし、あなたの場合、パスのリストにパスを追加したいので、次のようになります。

exe 'set rtp+=' . expand('~/.marslo/.vim/bundle/vundle')

&rtp にまだ存在しない場合にのみパスが追加されます。

または( 1.=の代わりに演算子を使用していることに注意してください+=

let &rtp .= ','.expand('~/.marslo/.vim/bundle/vundle')

ただし、今回は &rtp に既に存在する場合は再度追加されます。そのため、特定のケースでは:execute+を使用することをお勧めします。:set

答え2

次の 2 つのオプションがあります。

execute "set option=" . expression
let &option = expression

関連情報