aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard M. Stallman1997-08-29 02:12:38 +0000
committerRichard M. Stallman1997-08-29 02:12:38 +0000
commitbacb2d1246040efa53a4b39b74016a106b1dc1a8 (patch)
tree18f53a0e5a5009d165d9bb6fe537d0bbfcd08268
parentd2705a1815f4ec01ce0c5cc60f6698cec9b8228e (diff)
downloademacs-bacb2d1246040efa53a4b39b74016a106b1dc1a8.tar.gz
emacs-bacb2d1246040efa53a4b39b74016a106b1dc1a8.zip
(menu-bar-make-toggle): New macro.
(menu-bar-options-menu): New submenu of Help menu. Define several menu items for it.
-rw-r--r--lisp/menu-bar.el55
1 files changed, 55 insertions, 0 deletions
diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
index ce0f5bc7edb..9e40fe3f2c6 100644
--- a/lisp/menu-bar.el
+++ b/lisp/menu-bar.el
@@ -358,6 +358,59 @@ Do the same for the keys of the same name."
358(define-key menu-bar-custom-menu [customize] 358(define-key menu-bar-custom-menu [customize]
359 '("Top-level Customization Group" . customize)) 359 '("Top-level Customization Group" . customize))
360 360
361;; Options menu
362(defvar menu-bar-options-menu (make-sparse-keymap "Options"))
363
364(defmacro menu-bar-make-toggle (name variable doc message &rest body)
365 `(progn
366 (defun ,name ()
367 ,(concat doc ".")
368 (interactive)
369 (if ,(if body `(progn . ,body)
370 `(setq ,variable (not ,variable)))
371 (message ,message "enabled")
372 (message ,message "disabled")))
373 '(,doc . ,name)))
374
375(define-key menu-bar-options-menu [debug-on-quit]
376 (menu-bar-make-toggle toggle-debug-on-quit debug-on-quit
377 "Toggle Debug on Quit" "Debug on Quit %s"))
378(define-key menu-bar-options-menu [debug-on-error]
379 (menu-bar-make-toggle toggle-debug-on-error debug-on-error
380 "Toggle Debug on Error" "Debug on Error %s"))
381(define-key menu-bar-options-menu [options-separator]
382 '("--"))
383(define-key menu-bar-options-menu [save-place]
384 (menu-bar-make-toggle toggle-save-place-globally save-place
385 "Toggle Saving Place in Files between Sessions"
386 "Saving place in files %s"
387 (setq-default save-place (not (default-value save-place)))))
388(define-key menu-bar-options-menu [uniquify]
389 (menu-bar-make-toggle toggle-uniquify-buffer-names uniquify-buffer-name-style
390 "Toggle Directory Names in Buffer Names"
391 "Directory name in buffer names (uniquify) %s"
392 (require 'uniquify)
393 (setq uniquify-buffer-name-style
394 (if (not uniquify-buffer-name-style)
395 'forward))))
396(define-key menu-bar-options-menu [transient-mark-mode]
397 (menu-bar-make-toggle toggle-transient-mark-mode transient-mark-mode
398 "Toggle Transient Mark Mode (highlights region)"
399 "Transient Mark mode %s"))
400(define-key menu-bar-options-menu [toggle-auto-compression]
401 '("Toggle Automatic File De/compression" . auto-compression-mode))
402(define-key menu-bar-options-menu [auto-fill-mode]
403 '("Toggle Auto Fill (word wrap) in Text modes"
404 . toggle-text-mode-auto-fill))
405(define-key menu-bar-options-menu [font-lock-mode]
406 (menu-bar-make-toggle toggle-font-lock-mode font-lock-mode
407 "Toggle Font Lock (syntax highlighting)"
408 "Font Lock mode %s"
409 (global-font-lock-mode)
410 (if font-lock-mode
411 (lazy-lock-mode t))
412 font-lock-mode))
413
361(define-key menu-bar-help-menu [emacs-version] 414(define-key menu-bar-help-menu [emacs-version]
362 '("Show Version" . emacs-version)) 415 '("Show Version" . emacs-version))
363(define-key menu-bar-help-menu [report-emacs-bug] 416(define-key menu-bar-help-menu [report-emacs-bug]
@@ -383,6 +436,8 @@ Do the same for the keys of the same name."
383(define-key menu-bar-help-menu [info] '("Browse Manuals" . info)) 436(define-key menu-bar-help-menu [info] '("Browse Manuals" . info))
384(define-key menu-bar-help-menu [emacs-faq] '("Emacs FAQ" . view-emacs-FAQ)) 437(define-key menu-bar-help-menu [emacs-faq] '("Emacs FAQ" . view-emacs-FAQ))
385(define-key menu-bar-help-menu [emacs-news] '("Emacs News" . view-emacs-news)) 438(define-key menu-bar-help-menu [emacs-news] '("Emacs News" . view-emacs-news))
439(define-key menu-bar-help-menu [options-menu]
440 (cons "Options" menu-bar-options-menu))
386(define-key menu-bar-help-menu [customize-menu] 441(define-key menu-bar-help-menu [customize-menu]
387 (cons "Customize" menu-bar-custom-menu)) 442 (cons "Customize" menu-bar-custom-menu))
388 443