vim-users.jp

Hack #114: Vimを再起動することなくロードパス$PATHを書き換える

Posted at 2010/01/04
このエントリーをはてなブックマークに追加

Vimとそれ以外のソフトウェアを組み合わせて使うにあたって、:!:r!が非常に重要な役割を果たしています。 このとき、:!lsとすることで/bin/lsが呼ばれるのは、$PATH/binが含まれているためです。 $PATHはVimを起動したシェルから与えられます。シェルの$PATHを上書きしても、既に起動したVimの$PATHは変化しません。 Vimを起動したまま$PATHに新たなロードパスを追加するにはどうすればいいのでしょうか。

解決

let $PATH="/the/new/path:".$PATH

とします。

ただし、~は使えません。フルパスを指定する必要があります。

解説

let $PATH="/the/new/path:$PATH"

としたいところですが、$PATHは""の中で展開されません。また、

set path="/the/new/path,."

というのもありますが、これは:!用ではなく、gfなどのためです。詳しくは:h 'path'をご覧ください。

謝辞

本Hackはnb1839さんにlingrで教えていただいた情報を元に執筆しています。

ujihisa

もどる
blog comments powered by Disqus