Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

Vimで、バッファをを移動した時に自動的にプロジェクトルートをカレントディレクトリにする

$
0
0

問題

バッファをあちこちいったりきたりしていると、カレントディレクトリ(や、カレントディレクトリを基点にしたプロジェクト)単位でなんかやるみたいなプラグインを使ってる時にこまる。

解決

プロジェクト単位で自動的にlcdすると便利そう。というわけで、以下のような設定をほどこす(Uniteユーザ限定だけど…)。

  • unite#util#path2project_directory(expand('%'))でプロジェクトのルートを取得
  • lcdで移動
function! ChangeCurrentDirectoryToProjectRoot()
    let root = unite#util#path2project_directory(expand('%'))
    execute 'lcd' root
endfunction
:au BufEnter * :call ChangeCurrentDirectoryToProjectRoot()

lcdってのは、cdとは違って、カレントウィンドウのみ変更するそうです。

:lc[d][!] {path}    コマンド |:cd| と似ているが、カレントウィンドウのカレ
            ントディレクトリのみを変更する。別のウィンドウのカレン
            トディレクトリに変化はない。 {Vi にはない}

議論

自動的にやるとなんか困ることあるのかな。


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>