hs-minor-mode

Emacsのマニュアルを読んでいると hs-minor-modeという
折り畳みのできる機能を知りました。

具体例

これが


こんな具合になります。(C-c @ C-h(hs-hide-block)を実行)

設定

minorモードとして設定します。c-mode, cperl-modeでは利用できました。

(add-hook 'cperl-mode-hook
          '(lambda ()
            (hs-minor-mode 1)))

;; C coding style
(add-hook 'c-mode-hook
          '(lambda ()
             (hs-minor-mode 1)))

デフォルトのキーバインドがすごく押しづらいので(C-c @ C-h, C-c @ C-s等)
利用するのであれば変更するのがよいと思います。いくつかコマンドはありますが、
トグルだけ押しやすいようにしておけば、気軽に使えるでしょう。

(define-key hs-minor-mode-map (kbd "C-#") 'hs-toggle-hiding)

おわりに

hs-minor-modeを紹介しました。


カーネルみたいな、この for文 or switch文どこまであるんだよって
ときなんかは、折り畳むと大まかな流れが把握しやすいのではないかなと
思います。


最近は vimを結構使うようになっているので、いい部分を Emacsにも
取り込めていけたらなと思います。