Håkon Hægland
Håkon Hægland

Reputation: 40718

Outline or fold mode for editing Emacs Lisp code

Is there a minor mode that I can use in combination with Emacs-Lisp mode such that each function definition can be switched on or off easily without inserting special code in the text file?

for instance

(defun test1()
  (message "Hi!"))

(defun test2()
  (message "Bye"))

Pressing F1 will fold each function definition into the top line/header as

+ (defun test1()
+ (defun test2()

Pressing the + sign in front will unfold a given function and make it editable.. Pressing F2 will unfold all definitions..

Upvotes: 7

Views: 1762

Answers (3)

Peter Westlake
Peter Westlake

Reputation: 5036

outshine is a variation of outline-minor-mode that lets you use org-mode syntax, which is more powerful than the ordinary outline-mode.

Upvotes: 1

abo-abo
abo-abo

Reputation: 20342

Here's my setup:

(require 'hideshow)
(global-set-key (kbd "C-M-h") 'hs-toggle-hiding)
(global-set-key (kbd "<f2> h h") 'hs-hide-all)
(global-set-key (kbd "<f2> h j") 'hs-show-all)

Upvotes: 5

Tobias
Tobias

Reputation: 5198

outline-minor-mode does that. Look into its menu. Instead of the +-sign you get the typical ellipsis .... That should not hurt. You can do the key-bindings for yourself. (I know that you are clever enough!)

Upvotes: 2

Related Questions