hide-ifdef-modeとifdef展開ツール
めちゃくちゃ昔からあったような気がするが、使う機会がなかった。モードのフックでセットするようだ。
(defun my-c-c++-mode-init () (setq c-basic-offset 4) (setq indent-tabs-mode nil) (hide-ifdef-mode t) (hide-ifdefs) ) (add-hook 'c-mode-hook 'my-c-c++-mode-init) (add-hook 'c++-mode-hook 'my-c-c++-mode-init)
- C-c @ d シンボル登録 define
- C-c @ u シンボル登録 undef
- C-c @ h ifdefを隠す hide
- C-c @ s ifdefを出す show
gcc(g++)の -E オプションで、展開結果を見られるが、includeやマクロ定義も処理するので、ちょっと目で見るのは辛い。
展開ツールに関して次のブログエントリーに情報がある。
が、古いのと、推奨ツールが非公開という。
[追記]unifdefコマンドとその拡張とかはあるみたい。
- http://qiita.com/tokudiro/items/0643e15f5b973ec030c5
- http://www.vector.co.jp/soft/winnt/prog/se443477.html
[/追記]