2009/07/31

VIM script: Header and Source file Switching

在寫C/C++時常要在header及source file之間做切換,因此我寫了一個小script來做此事。

請將以下script加入_vimrc,以後做切換隻需輸入fh
map fh <esc>:call FileHeaderSource()<cr>

function! FileHeaderSource()
let fextname=expand("%:e")
let fname=expand("%:r")
if fextname=="h"
if filereadable(fname.".cpp")
exec ':e '.fname.".cpp"
return
endif
if filereadable(fname.".c")
exec ':e '.fname.".c"
return
endif
else
if filereadable(fname.".h")
exec ':e '.fname.".h"
return
endif
endif
echo "file not found"
endfunction