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