Meadowに付属 hideshow.el各種ソースをコメントや関数名を残しつつソース部分を隠すモード。 ;-------------------------------------- ;; C モード等で関数の中括弧(関数等の中身)を 隠したり、表示したりする ;; ;; hs-hide-block C-c @ C-h ;; hs-show-block C-c @ C-s ;; hs-hide-all C-c @ C-M-h ;; hs-show-all C-c @ C-M-s ;; hs-hide-level C-c @ C-l ;; hs-toggle-hiding C-c @ C-c ;; hs-mouse-toggle-hiding [(shift mouse-2)] ;; hs-hide-initial-comment-block ;; ;;Cのソースを開いたら自動的にmodeをon (add-hook 'c-mode-common-hook '(lambda() (hs-minor-mode 1))) ;; コメントは、隠さず表示する。 (setq hs-hide-comments-when-hiding-all nil) ;; Ruby編集時もソースを隠したり、表示したり・・・ (add-hook 'ruby-mode-hook '(lambda() (hs-minor-mode 1))) (let ((ruby-mode-hs-info '( ruby-mode "class\\|module\\|def\\|if\\|unless\\|case\\|while\\|until\\|for\\|begin\\|do" "end" "#" ruby-move-to-block nil))) (if (not (member ruby-mode-hs-info hs-special-modes-alist)) (setq hs-special-modes-alist (cons ruby-mode-hs-info hs-special-modes-alist)))) ;; Lisp mode もそれなりに隠してくれるので、有効にしてみた。 (add-hook 'lisp-interaction-mode-hook '(lambda () (setq hs-minor-mode 1))) (add-hook 'emacs-lisp-mode-hook '(lambda () (setq hs-minor-mode 1))) ;; 隠した(hide)行は、isearchの対象にしない(outlineモードにも影響) (setq search-invisible nil) ;; 「'open」or「t」 |