diff options
| author | Richard M. Stallman | 1997-08-29 02:12:38 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1997-08-29 02:12:38 +0000 |
| commit | bacb2d1246040efa53a4b39b74016a106b1dc1a8 (patch) | |
| tree | 18f53a0e5a5009d165d9bb6fe537d0bbfcd08268 | |
| parent | d2705a1815f4ec01ce0c5cc60f6698cec9b8228e (diff) | |
| download | emacs-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.el | 55 |
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 | ||