vimでヘッダファイルとソースファイルを交互に開く
C++のコードを書いている時デバッグ時にヘッダーとソースファイルを行き来したいときが多々ある。
そんな感じのことを実現してくれるプラグイン。
インストール
NeoBundleInstallがあれば、.vimrc
に以下を書いて:NeoBundleInstall
NeoBundle 'mopp/next-alter.vim'
設定は.vimrc
に以下を書くと、Space+no
で画面の横半分に対応するヘッダないしソースファイルが表示される。キーバインドは好みなので適当に変更して良い。
"--------------------------------------------------------- " next-alter "--------------------------------------------------------- "Prefix nnoremap [NEXTALTER] <Nop> nmap <Space>n [NEXTALTER] nmap [NEXTALTER]o <Plug>(next-alter-open) " key is file extension, value is alternate file extension. let g:next_alter#pair_extension = { \ 'c' : [ 'h' ], \ 'C' : [ 'H' ], \ 'cc' : [ 'h' ], \ 'CC' : [ 'H', 'h'], \ 'cpp' : [ 'h', 'hpp' ], \ 'CPP' : [ 'H', 'HPP' ], \ 'cxx' : [ 'h', 'hpp' ], \ 'CXX' : [ 'H', 'HPP' ], \ 'h' : [ 'c', 'cpp', 'cxx' ], \ 'H' : [ 'C', 'CPP', 'CXX' ], \ 'hpp' : [ 'cpp', 'cxx'], \ 'HPP' : [ 'CPP', 'CXX'], \ } " this list shows search directory to find alternate file. let g:next_alter#search_dir = [ '.' , '..', './include', '../include' ] " this is used when it opens alternate file buffer. let g:next_alter#open_option = 'vertical topleft'
別タブとしてopenができるともっと便利だけど、そういう機能があるのかは良く分からない。
参考
もぷろぐ: Vim で .c/.cpp と.h/.hpp とかを相互に開くPluginをつくったじゃんよ
メモ
今までわざわざTerminalに戻って、make
を実行していたが、vim上で:make
で実行できることを知った。
実行後エラー箇所まで飛んでくれるので、今後はこっちを使っていこうと思った。