xmlのfolding(折り畳み)をする
たまには更新しろよってことでemacs小ネタ。
一万行のxmlファイルの修正依頼に涙がぶち切れそうになったので
emacsの折り畳みについてさらっと調べてみたら、hs-minor-modeなるものが標準で入ってた。
ということでsgmlモードでxmlの折り畳みをする設定。
ついでに標準のキーバインド(C-c @ C-c とか)が使いづらいので、
sgml-modeで空いてそうなC-c系列に変更。
(add-hook 'sgml-mode-hook '(lambda() (hs-minor-mode 1))) (add-to-list 'hs-special-modes-alist '(sgml-mode "<!--\\|<[^/>]>\\|<[^/][^>]*[^/]>" "" "<!--" sgml-skip-tag-forward nil)) ;; key bind (define-key sgml-mode-map (kbd "C-c C-o") 'hs-toggle-hiding) (define-key sgml-mode-map (kbd "C-c C-l") 'hs-hide-level) (define-key sgml-mode-map (kbd "C-c C-s") 'hs-show-all)