- 2009-09-08 (火) 0:00
- Vim Hacks
Vimは独自のカレントディレクトリを持っていて、タグファイルを参照するときにはカレントディレクトリにあるタグファイルを利用します。
'autochdir'の問題点
'autochdir'というオプションがあり、バッファを移動したとき、自動的にカレントディレクトリを変更することができます。しかし、このオプションはお薦めできません。なぜならば、タグジャンプでバッファを移動したときにもカレントディレクトリが変更されてしまい、タグファイルを辿れなくなってしまうからです。カレントディレクトリの移動は手動で行うようにしましょう。カレントディレクトリ移動のためのキーマッピングを定義する
command! -nargs=? -complete=dir -bang CD call s:ChangeCurrentDir('<args>', '<bang>')
function! s:ChangeCurrentDir(directory, bang)
if a:directory == ''
lcd %:p:h
else
execute 'lcd' . a:directory
endif
if a:bang == ''
pwd
endif
endfunction
" Change current directory.
nnoremap <silent> <Space>cd :<C-u>CD<CR>
- Newer: Hack #70: 正規表現でマッチする範囲を制限する
- Older: Hack #68: Subversionを使う
Comments:1
- s_hiiragi 12-02-21 (火) 13:34
-
execute ‘lcd’ . a:directory この行でエラーが出るので、恐らく’lcd ‘(lcdの後に空白を入れる)だと思います
:CD!として呼び出された場合 if a:bang == ”となっているので「:CD(!なし)で呼び出した場合に、~」でしょうか
Trackbacks:0
- Trackback URL for this entry
- http://vim-users.jp/2009/09/hack69/trackback/
- Listed below are links to weblogs that reference
- Hack #69: 簡単にカレントディレクトリを変更する from Vim-users.jp

