LoginSignup
0
0

More than 1 year has passed since last update.

vim makeprog で ninja と make を自動で切り替えるメモ

Posted at

背景

C/C++ プロジェクトで Makefile があれば make を呼び, ninja.build があれば ninja を呼びたい...

方法

vim-makeshift がありました!

これで, :lmake or :MakeshiftBuild すれば ninja.build があれば ninja を呼んでビルドし, Makefile が あれば make を呼んでくれます!

筆者は ctrl-m にビルドのショートカットを割り当てているので, 以下のようになりました.

map <C-m> :<C-U>MakeshiftBuild<CR

<C-U> の意味はコチラ https://e-v-e.hatenablog.com/entry/20150101/1420067539
(ビルドのショートカットの場合は基本なくても大体大丈かなとは思います)

再度コンパイル時がうまく行かないとき

ソースとビルドディレクトリが分かれているとき, 一旦 makeshift でビルドし, エラーがあり quickfix でソースコードファイル開いた後だと次は実行に失敗したりします...

どうもそのときはソースコードを開いたディレクトリで make 関連のファイルを探索しようとしているようです.

let g:makeshift_use_pwd_first = 1

で解決できました. ビルドディレクトリ(vim を起動したディレクトリ)を優先して探索してくれます!

その他

なんかちょっと make 起動までラグがあるっぽい?

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0