aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard M. Stallman1994-01-02 21:51:47 +0000
committerRichard M. Stallman1994-01-02 21:51:47 +0000
commit885020c53542b16df9d7f340f88699052d04e41d (patch)
treee1f124feb83d78f7f8821079a53cefb40199f179
parentc3a3ebc910aca2f1fb0c6bb5ccf2b6747a1baa1b (diff)
downloademacs-885020c53542b16df9d7f340f88699052d04e41d.tar.gz
emacs-885020c53542b16df9d7f340f88699052d04e41d.zip
(c-mode-map): Add menu bar menu.
-rw-r--r--lisp/progmodes/c-mode.el58
1 files changed, 39 insertions, 19 deletions
diff --git a/lisp/progmodes/c-mode.el b/lisp/progmodes/c-mode.el
index ebab0c77130..3728b128401 100644
--- a/lisp/progmodes/c-mode.el
+++ b/lisp/progmodes/c-mode.el
@@ -33,26 +33,46 @@
33 "Abbrev table in use in C mode.") 33 "Abbrev table in use in C mode.")
34(define-abbrev-table 'c-mode-abbrev-table ()) 34(define-abbrev-table 'c-mode-abbrev-table ())
35 35
36(defvar c-mode-map () 36(defvar c-mode-map (make-sparse-keymap)
37 "Keymap used in C mode.") 37 "Keymap used in C mode.")
38(if c-mode-map 38
39 () 39(define-key c-mode-map "{" 'electric-c-brace)
40 (setq c-mode-map (make-sparse-keymap)) 40(define-key c-mode-map "}" 'electric-c-brace)
41 (define-key c-mode-map "{" 'electric-c-brace) 41(define-key c-mode-map ";" 'electric-c-semi)
42 (define-key c-mode-map "}" 'electric-c-brace) 42(define-key c-mode-map "#" 'electric-c-sharp-sign)
43 (define-key c-mode-map ";" 'electric-c-semi) 43(define-key c-mode-map ":" 'electric-c-terminator)
44 (define-key c-mode-map "#" 'electric-c-sharp-sign) 44(define-key c-mode-map "\e\C-h" 'mark-c-function)
45 (define-key c-mode-map ":" 'electric-c-terminator) 45(define-key c-mode-map "\e\C-q" 'indent-c-exp)
46 (define-key c-mode-map "\e\C-h" 'mark-c-function) 46(define-key c-mode-map "\ea" 'c-beginning-of-statement)
47 (define-key c-mode-map "\e\C-q" 'indent-c-exp) 47(define-key c-mode-map "\ee" 'c-end-of-statement)
48 (define-key c-mode-map "\ea" 'c-beginning-of-statement) 48(define-key c-mode-map "\eq" 'c-fill-paragraph)
49 (define-key c-mode-map "\ee" 'c-end-of-statement) 49(define-key c-mode-map "\C-c\C-n" 'c-forward-conditional)
50 (define-key c-mode-map "\eq" 'c-fill-paragraph) 50(define-key c-mode-map "\C-c\C-p" 'c-backward-conditional)
51 (define-key c-mode-map "\C-c\C-n" 'c-forward-conditional) 51(define-key c-mode-map "\C-c\C-u" 'c-up-conditional)
52 (define-key c-mode-map "\C-c\C-p" 'c-backward-conditional) 52(define-key c-mode-map "\177" 'backward-delete-char-untabify)
53 (define-key c-mode-map "\C-c\C-u" 'c-up-conditional) 53(define-key c-mode-map "\t" 'c-indent-command))
54 (define-key c-mode-map "\177" 'backward-delete-char-untabify) 54
55 (define-key c-mode-map "\t" 'c-indent-command)) 55(define-key c-mode-map [menu-bar] (make-sparse-keymap))
56
57(define-key c-mode-map [menu-bar c]
58 (cons "C" (make-sparse-keymap "C")))
59
60(define-key c-mode-map [menu-bar c indent-exp]
61 '("Indent Expression" . indent-c-exp))
62(define-key c-mode-map [menu-bar c indent-line]
63 '("Indent Line" . c-indent-command))
64(define-key c-mode-map [menu-bar c fill]
65 '("Fill Comment Paragraph" . c-fill-paragraph))
66(define-key c-mode-map [menu-bar c up]
67 '("Up Conditional" . c-up-conditional))
68(define-key c-mode-map [menu-bar c backward]
69 '("Backward Conditional" . c-backward-conditional))
70(define-key c-mode-map [menu-bar c forward]
71 '("Forward Conditional" . c-forward-conditional))
72(define-key c-mode-map [menu-bar c backward-stmt]
73 '("Backward Statement" . c-beginning-of-statement))
74(define-key c-mode-map [menu-bar c forward-stmt]
75 '("Forward Statement" . c-end-of-statement))
56 76
57;; cmacexp is lame because it uses no preprocessor symbols. 77;; cmacexp is lame because it uses no preprocessor symbols.
58;; It isn't very extensible either -- hardcodes /lib/cpp. 78;; It isn't very extensible either -- hardcodes /lib/cpp.