vimで編集中のファイルのディレクトリに移動する
概要 |
---|
vimでファイル操作しながらコマンドモードでコンパイルや別のファイル操作をすることが頻繁である.随時変わる編集ファイルのパスをコマンドモードからカレントディレクトリに楽々設定する方法のメモ. |
コマンドを指定して移動
予備知識として,%
は現在編集中のバッファ(カレントファイル名),:h
はファイル名の先頭(末尾の部分とすべての区切りが除かれたもの.つまりファイルがあるディレクトリを指定している感じ)であるから,%:h
は開いているファイルのディレクトリに展開される.
従ってvimコマンドモードから以下のように操作すればよい.
:cd %:h
:cd
はグローバルなカレントディレクトリを変更する.(他のウィンドウやバッファも変更される.)
カレントウィンドウのカレントディレクトリ(localなカレントディレクトリ)だけを変えたい場合には,
:lcd %:h
と操作する.
%
や:h
の部分は他に指定ができて,
バッファ | 説明 |
---|---|
% | 現在編集中のバッファ |
# | 一つ前に編集していたバッファ(裏バッファ) |
#{バッファ番号} | 指定のバッファ(番号は:ls とかでとれるアレ) |
また
パス指定 | 説明 |
---|---|
:h | ファイルのあるディレクトリへのパス |
:t | ファイル名を取得 |
KaoriyaのVimであれば
:CdCurrent
でカレントディレクトリの変更(:cd %:h)を行える.
現在のディレクトリパスを確認
: pwd
以上.