aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/textmodes
diff options
context:
space:
mode:
authorRichard M. Stallman1994-08-27 21:02:12 +0000
committerRichard M. Stallman1994-08-27 21:02:12 +0000
commit1644b1a55f1395dbce1d5f9d3bfdf3e018c624e7 (patch)
tree3b86cb1e570fdefc8ef5fc23396849c2dbe13ce7 /lisp/textmodes
parentc1194ae809da0a5c435bd10fcf3ff4248bd3c869 (diff)
downloademacs-1644b1a55f1395dbce1d5f9d3bfdf3e018c624e7.tar.gz
emacs-1644b1a55f1395dbce1d5f9d3bfdf3e018c624e7.zip
(outline-mode-prefix-map): New variable.
Define all the C-c commands here. (outline-mode-menu-bar-map): New variable, holds local menu-bar keymap. (outline-mode-map): Bind C-c and menu-bar to those maps. (outline-minor-mode-map): Likewise use those submaps for the prefixes.
Diffstat (limited to 'lisp/textmodes')
-rw-r--r--lisp/textmodes/ooutline.el95
1 files changed, 54 insertions, 41 deletions
diff --git a/lisp/textmodes/ooutline.el b/lisp/textmodes/ooutline.el
index 372ac1418d8..db2ed7708c5 100644
--- a/lisp/textmodes/ooutline.el
+++ b/lisp/textmodes/ooutline.el
@@ -47,72 +47,85 @@ regexp is searched for. The heading ends at the end of the match.
47The recommended way to set this is with a \"Local Variables:\" list 47The recommended way to set this is with a \"Local Variables:\" list
48in the file it applies to.") 48in the file it applies to.")
49 49
50(defvar outline-mode-map nil "") 50(defvar outline-mode-prefix-map nil)
51 51
52(if outline-mode-map 52(if outline-mode-prefix-map
53 nil 53 nil
54 (setq outline-mode-map (nconc (make-sparse-keymap) text-mode-map)) 54 (setq outline-mode-prefix-map (make-sparse-keymap))
55 (define-key outline-mode-map "\C-c\C-n" 'outline-next-visible-heading) 55 (define-key outline-mode-prefix-map "\C-n" 'outline-next-visible-heading)
56 (define-key outline-mode-map "\C-c\C-p" 'outline-previous-visible-heading) 56 (define-key outline-mode-prefix-map "\C-p" 'outline-previous-visible-heading)
57 (define-key outline-mode-map "\C-c\C-i" 'show-children) 57 (define-key outline-mode-prefix-map "\C-i" 'show-children)
58 (define-key outline-mode-map "\C-c\C-s" 'show-subtree) 58 (define-key outline-mode-prefix-map "\C-s" 'show-subtree)
59 (define-key outline-mode-map "\C-c\C-d" 'hide-subtree) 59 (define-key outline-mode-prefix-map "\C-d" 'hide-subtree)
60 (define-key outline-mode-map "\C-c\C-u" 'outline-up-heading) 60 (define-key outline-mode-prefix-map "\C-u" 'outline-up-heading)
61 (define-key outline-mode-map "\C-c\C-f" 'outline-forward-same-level) 61 (define-key outline-mode-prefix-map "\C-f" 'outline-forward-same-level)
62 (define-key outline-mode-map "\C-c\C-b" 'outline-backward-same-level) 62 (define-key outline-mode-prefix-map "\C-b" 'outline-backward-same-level)
63 (define-key outline-mode-map "\C-c\C-t" 'hide-body) 63 (define-key outline-mode-prefix-map "\C-t" 'hide-body)
64 (define-key outline-mode-map "\C-c\C-a" 'show-all) 64 (define-key outline-mode-prefix-map "\C-a" 'show-all)
65 (define-key outline-mode-map "\C-c\C-c" 'hide-entry) 65 (define-key outline-mode-prefix-map "\C-c" 'hide-entry)
66 (define-key outline-mode-map "\C-c\C-e" 'show-entry) 66 (define-key outline-mode-prefix-map "\C-e" 'show-entry)
67 (define-key outline-mode-map "\C-c\C-l" 'hide-leaves) 67 (define-key outline-mode-prefix-map "\C-l" 'hide-leaves)
68 (define-key outline-mode-map "\C-c\C-k" 'show-branches) 68 (define-key outline-mode-prefix-map "\C-k" 'show-branches)
69 (define-key outline-mode-map "\C-c\C-q" 'hide-sublevels) 69 (define-key outline-mode-prefix-map "\C-q" 'hide-sublevels)
70 (define-key outline-mode-map "\C-c\C-o" 'hide-other) 70 (define-key outline-mode-prefix-map "\C-o" 'hide-other))
71 71
72 (define-key outline-mode-map [menu-bar hide] 72(defvar outline-mode-menu-bar-map nil)
73(if outline-mode-menu-bar-map
74 nil
75 (setq outline-mode-menu-bar-map (make-sparse-keymap))
76
77 (define-key outline-mode-menu-bar-map [hide]
73 (cons "Hide" (make-sparse-keymap "Hide"))) 78 (cons "Hide" (make-sparse-keymap "Hide")))
74 79
75 (define-key outline-mode-map [menu-bar hide hide-other] 80 (define-key outline-mode-menu-bar-map [hide hide-other]
76 '("Hide Other" . hide-other)) 81 '("Hide Other" . hide-other))
77 (define-key outline-mode-map [menu-bar hide hide-sublevels] 82 (define-key outline-mode-menu-bar-map [hide hide-sublevels]
78 '("Hide Sublevels" . hide-sublevels)) 83 '("Hide Sublevels" . hide-sublevels))
79 (define-key outline-mode-map [menu-bar hide hide-subtree] 84 (define-key outline-mode-menu-bar-map [hide hide-subtree]
80 '("Hide Subtree" . hide-subtree)) 85 '("Hide Subtree" . hide-subtree))
81 (define-key outline-mode-map [menu-bar hide hide-entry] 86 (define-key outline-mode-menu-bar-map [hide hide-entry]
82 '("Hide Entry" . hide-entry)) 87 '("Hide Entry" . hide-entry))
83 (define-key outline-mode-map [menu-bar hide hide-body] 88 (define-key outline-mode-menu-bar-map [hide hide-body]
84 '("Hide Body" . hide-body)) 89 '("Hide Body" . hide-body))
85 (define-key outline-mode-map [menu-bar hide hide-leaves] 90 (define-key outline-mode-menu-bar-map [hide hide-leaves]
86 '("Hide Leaves" . hide-leaves)) 91 '("Hide Leaves" . hide-leaves))
87 92
88 (define-key outline-mode-map [menu-bar show] 93 (define-key outline-mode-menu-bar-map [show]
89 (cons "Show" (make-sparse-keymap "Show"))) 94 (cons "Show" (make-sparse-keymap "Show")))
90 95
91 (define-key outline-mode-map [menu-bar show show-subtree] 96 (define-key outline-mode-menu-bar-map [show show-subtree]
92 '("Show Subtree" . show-subtree)) 97 '("Show Subtree" . show-subtree))
93 (define-key outline-mode-map [menu-bar show show-children] 98 (define-key outline-mode-menu-bar-map [show show-children]
94 '("Show Children" . show-children)) 99 '("Show Children" . show-children))
95 (define-key outline-mode-map [menu-bar show show-branches] 100 (define-key outline-mode-menu-bar-map [show show-branches]
96 '("Show Branches" . show-branches)) 101 '("Show Branches" . show-branches))
97 (define-key outline-mode-map [menu-bar show show-entry] 102 (define-key outline-mode-menu-bar-map [show show-entry]
98 '("Show Entry" . show-entry)) 103 '("Show Entry" . show-entry))
99 (define-key outline-mode-map [menu-bar show show-all] 104 (define-key outline-mode-menu-bar-map [show show-all]
100 '("Show All" . show-all)) 105 '("Show All" . show-all))
101 106
102 (define-key outline-mode-map [menu-bar headings] 107 (define-key outline-mode-menu-bar-map [headings]
103 (cons "Headings" (make-sparse-keymap "Headings"))) 108 (cons "Headings" (make-sparse-keymap "Headings")))
104 109
105 (define-key outline-mode-map [menu-bar headings outline-backward-same-level] 110 (define-key outline-mode-menu-bar-map [headings outline-backward-same-level]
106 '("Previous Same Level" . outline-backward-same-level)) 111 '("Previous Same Level" . outline-backward-same-level))
107 (define-key outline-mode-map [menu-bar headings outline-forward-same-level] 112 (define-key outline-mode-menu-bar-map [headings outline-forward-same-level]
108 '("Next Same Level" . outline-forward-same-level)) 113 '("Next Same Level" . outline-forward-same-level))
109 (define-key outline-mode-map [menu-bar headings outline-previous-visible-heading] 114 (define-key outline-mode-menu-bar-map [headings outline-previous-visible-heading]
110 '("Previous" . outline-previous-visible-heading)) 115 '("Previous" . outline-previous-visible-heading))
111 (define-key outline-mode-map [menu-bar headings outline-next-visible-heading] 116 (define-key outline-mode-menu-bar-map [headings outline-next-visible-heading]
112 '("Next" . outline-next-visible-heading)) 117 '("Next" . outline-next-visible-heading))
113 (define-key outline-mode-map [menu-bar headings outline-up-heading] 118 (define-key outline-mode-menu-bar-map [headings outline-up-heading]
114 '("Up" . outline-up-heading))) 119 '("Up" . outline-up-heading)))
115 120
121(defvar outline-mode-map nil "")
122
123(if outline-mode-map
124 nil
125 (setq outline-mode-map (nconc (make-sparse-keymap) text-mode-map))
126 (define-key outline-mode-map "\C-c" outline-mode-prefix-map)
127 (define-key outline-mode-map [menu-bar] outline-mode-menu-bar-map))
128
116(defvar outline-minor-mode nil 129(defvar outline-minor-mode nil
117 "Non-nil if using Outline mode as a minor mode of some other mode.") 130 "Non-nil if using Outline mode as a minor mode of some other mode.")
118(make-variable-buffer-local 'outline-minor-mode) 131(make-variable-buffer-local 'outline-minor-mode)
@@ -191,9 +204,9 @@ Turning on outline mode calls the value of `text-mode-hook' and then of
191 nil 204 nil
192 (setq outline-minor-mode-map (make-sparse-keymap)) 205 (setq outline-minor-mode-map (make-sparse-keymap))
193 (define-key outline-minor-mode-map [menu-bar] 206 (define-key outline-minor-mode-map [menu-bar]
194 (lookup-key outline-mode-map [menu-bar])) 207 outline-mode-menu-bar-map)
195 (define-key outline-minor-mode-map outline-minor-mode-prefix 208 (define-key outline-minor-mode-map outline-minor-mode-prefix
196 (lookup-key outline-mode-map "\C-c"))) 209 outline-mode-prefix-map))
197 210
198(or (assq 'outline-minor-mode minor-mode-map-alist) 211(or (assq 'outline-minor-mode minor-mode-map-alist)
199 (setq minor-mode-map-alist 212 (setq minor-mode-map-alist