Mercurial > emacs
changeset 111173:c7d5564f0621
Move ns-win.el's rather wacky menu adjustments to menu-bar.el.
* lisp/term/ns-win.el: Do not require easymenu.
(menu-bar-edit-menu) <copy, paste, paste-from-menu, separator-undo>:
<spell>: Move adjustments to menu-bar.el.
* lisp/menu-bar.el (menu-bar-edit-menu) <copy, paste, paste-from-menu>:
<separator-undo, spell>: Move ns-win's adjustments here.
* lisp/loadup.el [ns]: Do not load easymenu.
* src/Makefile.in (SOME_MACHINE_LISP): Remove easymenu.elc.
* lib-src/makefile.w32-in (OTHER_PLATFORM_SUPPORT): Remove easymenu.elc.
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Sun, 24 Oct 2010 17:48:26 -0700 |
parents | f8f3c137c1f2 |
children | 7253525aadd5 |
files | lib-src/ChangeLog lib-src/makefile.w32-in lisp/ChangeLog lisp/loadup.el lisp/menu-bar.el lisp/term/ns-win.el src/ChangeLog src/Makefile.in |
diffstat | 8 files changed, 50 insertions(+), 54 deletions(-) [+] |
line wrap: on
line diff
--- a/lib-src/ChangeLog Mon Oct 25 02:04:44 2010 +0200 +++ b/lib-src/ChangeLog Sun Oct 24 17:48:26 2010 -0700 @@ -1,3 +1,7 @@ +2010-10-25 Glenn Morris <rgm@gnu.org> + + * makefile.w32-in (OTHER_PLATFORM_SUPPORT): Remove easymenu.elc. + 2010-10-23 Glenn Morris <rgm@gnu.org> * digest-doc.c, sorted-doc.c: Remove files.
--- a/lib-src/makefile.w32-in Mon Oct 25 02:04:44 2010 +0200 +++ b/lib-src/makefile.w32-in Sun Oct 24 17:48:26 2010 -0700 @@ -189,7 +189,6 @@ $(lispsource)term/pc-win.elc \ $(lispsource)x-dnd.elc \ $(lispsource)term/x-win.elc \ - $(lispsource)emacs-lisp/easymenu.elc \ $(lispsource)term/ns-win.elc
--- a/lisp/ChangeLog Mon Oct 25 02:04:44 2010 +0200 +++ b/lisp/ChangeLog Sun Oct 24 17:48:26 2010 -0700 @@ -1,7 +1,16 @@ +2010-10-25 Glenn Morris <rgm@gnu.org> + + * term/ns-win.el: Do not require easymenu. + (menu-bar-edit-menu) <copy, paste, paste-from-menu, separator-undo>: + <spell>: Move adjustments to menu-bar.el. + * menu-bar.el (menu-bar-edit-menu) <copy, paste, paste-from-menu>: + <separator-undo, spell>: Move ns-win's adjustments here. + * loadup.el [ns]: Do not load easymenu. + 2010-10-24 Chong Yidong <cyd@stupidchicken.com> * image.el (image-checkbox-checked, image-checkbox-unchecked): - Deleted (Bug#7222). + Delete (Bug#7222). * startup.el (fancy-startup-tail): Instead of using inline images, refer to image files from etc/.
--- a/lisp/loadup.el Mon Oct 25 02:04:44 2010 +0200 +++ b/lisp/loadup.el Sun Oct 24 17:48:26 2010 -0700 @@ -233,9 +233,7 @@ (load "ls-lisp") (load "disp-table"))) ; needed to setup ibm-pc char set, see internal.el (if (featurep 'ns) - (progn - (load "emacs-lisp/easymenu") ;; for platform-related menu adjustments - (load "term/ns-win"))) + (load "term/ns-win")) (if (fboundp 'x-create-frame) ;; Do it after loading term/foo-win.el since the value of the ;; mouse-wheel-*-event vars depends on those files being loaded or not.
--- a/lisp/menu-bar.el Mon Oct 25 02:04:44 2010 +0200 +++ b/lisp/menu-bar.el Sun Oct 24 17:48:26 2010 -0700 @@ -361,6 +361,11 @@ (define-key menu-bar-edit-menu [props] `(menu-item ,(purecopy "Text Properties") facemenu-menu)) +;; ns-win.el said: Add spell for platorm consistency. +(if (featurep 'ns) + (define-key menu-bar-edit-menu [spell] + `(menu-item ,(purecopy "Spell") ispell-menu-map))) + (define-key menu-bar-edit-menu [fill] `(menu-item ,(purecopy "Fill") fill-region :enable (and mark-active (not buffer-read-only)) @@ -453,30 +458,46 @@ ,(purecopy "Delete the text in region between mark and current position"))) (defvar yank-menu (cons (purecopy "Select Yank") nil)) (fset 'yank-menu (cons 'keymap yank-menu)) -(define-key menu-bar-edit-menu [paste-from-menu] - `(menu-item ,(purecopy "Paste from Kill Menu") yank-menu +;; The ns differences here seem silly. +(define-key menu-bar-edit-menu (if (featurep 'ns) [select-paste] + [paste-from-menu]) + ;; ns-win.el said: Change text to be more consistent with + ;; surrounding menu items `paste', etc." + `(menu-item ,(purecopy (if (featurep 'ns) "Select and Paste" + "Paste from Kill Menu")) yank-menu :enable (and (cdr yank-menu) (not buffer-read-only)) :help ,(purecopy "Choose a string from the kill ring and paste it"))) (define-key menu-bar-edit-menu [paste] `(menu-item ,(purecopy "Paste") yank :enable (and (or - ;; Emacs compiled --without-x doesn't have - ;; x-selection-exists-p. + ;; Emacs compiled --without-x (or --with-ns) + ;; doesn't have x-selection-exists-p. (and (fboundp 'x-selection-exists-p) (x-selection-exists-p 'CLIPBOARD)) - kill-ring) + (if (featurep 'ns) ; like paste-from-menu + (cdr yank-menu) + kill-ring)) (not buffer-read-only)) :help ,(purecopy "Paste (yank) text most recently cut/copied"))) (define-key menu-bar-edit-menu [copy] - `(menu-item ,(purecopy "Copy") menu-bar-kill-ring-save - :enable mark-active - :help ,(purecopy "Copy text in region between mark and current position") - :keys ,(purecopy "\\[kill-ring-save]"))) + ;; ns-win.el said: Substitute a Copy function that works better + ;; under X (for GNUstep). + `(menu-item ,(purecopy "Copy") ,(if (featurep 'ns) + 'ns-copy-including-secondary + 'menu-bar-kill-ring-save) + :enable mark-active + :help ,(purecopy "Copy text in region between mark and current position") + :keys ,(purecopy (if (featurep 'ns) + "\\[ns-copy-including-secondary]" + "\\[kill-ring-save]")))) (define-key menu-bar-edit-menu [cut] `(menu-item ,(purecopy "Cut") kill-region :enable (and mark-active (not buffer-read-only)) :help ,(purecopy "Cut (kill) text in region between mark and current position"))) +;; ns-win.el said: Separate undo from cut/paste section. +(if (featurep 'ns) + (define-key menu-bar-edit-menu [separator-undo] `(,(purecopy "--")))) (define-key menu-bar-edit-menu [undo] `(menu-item ,(purecopy "Undo") undo :enable (and (not buffer-read-only) @@ -486,7 +507,6 @@ (consp buffer-undo-list))) :help ,(purecopy "Undo last operation"))) - (defun menu-bar-kill-ring-save (beg end) (interactive "r") (if (mouse-region-match) @@ -2082,5 +2102,4 @@ (provide 'menu-bar) -;; arch-tag: 6e6a3c22-4ec4-4d3d-8190-583f8ef94ced ;;; menu-bar.el ends here
--- a/lisp/term/ns-win.el Mon Oct 25 02:04:44 2010 +0200 +++ b/lisp/term/ns-win.el Sun Oct 24 17:48:26 2010 -0700 @@ -52,13 +52,9 @@ (require 'frame) (require 'mouse) (require 'faces) -(require 'easymenu) (require 'menu-bar) (require 'fontset) -;; Not needed? -;;(require 'ispell) - (defgroup ns nil "GNUstep/Mac OS X specific features." :group 'environment) @@ -441,38 +437,6 @@ (define-key menu-bar-help-menu [info-panel] '("About Emacs..." . ns-do-emacs-info-panel))) -;;;; Edit menu: Modify slightly - -;; Substitute a Copy function that works better under X (for GNUstep). -(easy-menu-remove-item global-map '("menu-bar" "edit") 'copy) -(define-key-after menu-bar-edit-menu [copy] - '(menu-item "Copy" ns-copy-including-secondary - :enable mark-active - :help "Copy text in region between mark and current position") - 'cut) - -;; Change to same precondition as select-and-paste, as we don't have -;; `x-selection-exists-p'. -(easy-menu-remove-item global-map '("menu-bar" "edit") 'paste) -(define-key-after menu-bar-edit-menu [paste] - '(menu-item "Paste" yank - :enable (and (cdr yank-menu) (not buffer-read-only)) - :help "Paste (yank) text most recently cut/copied") - 'copy) - -;; Change text to be more consistent with surrounding menu items `paste', etc. -(easy-menu-remove-item global-map '("menu-bar" "edit") 'paste-from-menu) -(define-key-after menu-bar-edit-menu [select-paste] - '(menu-item "Select and Paste" yank-menu - :enable (and (cdr yank-menu) (not buffer-read-only)) - :help "Choose a string from the kill ring and paste it") - 'paste) - -;; Separate undo from cut/paste section, add spell for platform consistency. -(define-key-after menu-bar-edit-menu [separator-undo] '("--") 'undo) -(define-key-after menu-bar-edit-menu [spell] '("Spell" . ispell-menu-map) 'fill) - - ;;;; Services (declare-function ns-perform-service "nsfns.m" (service send))
--- a/src/ChangeLog Mon Oct 25 02:04:44 2010 +0200 +++ b/src/ChangeLog Sun Oct 24 17:48:26 2010 -0700 @@ -1,3 +1,7 @@ +2010-10-25 Glenn Morris <rgm@gnu.org> + + * Makefile.in (SOME_MACHINE_LISP): Remove easymenu.elc. + 2010-10-24 Glenn Morris <rgm@gnu.org> * w32fns.c (Fx_synchronize, Fx_change_window_property)
--- a/src/Makefile.in Mon Oct 25 02:04:44 2010 +0200 +++ b/src/Makefile.in Sun Oct 24 17:48:26 2010 -0700 @@ -590,8 +590,7 @@ ../lisp/term/common-win.elc \ ../lisp/term/x-win.elc \ ../lisp/term/pc-win.elc ../lisp/term/internal.elc \ - ../lisp/term/ns-win.elc ../lisp/term/w32-win.elc \ - ../lisp/emacs-lisp/easymenu.elc + ../lisp/term/ns-win.elc ../lisp/term/w32-win.elc ## Construct full set of libraries to be linked. ## Note that SunOS needs -lm to come before -lc; otherwise, you get