From: Chong Yidong Date: Tue, 10 Jun 2008 19:55:38 +0000 (+0000) Subject: (menu-set-font): New function. Bind "Set Default X-Git-Tag: emacs-pretest-23.0.90~4912 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=ba858bf98db2566732ebcd89ec7c3407bdfff949;p=emacs.git (menu-set-font): New function. Bind "Set Default Font" menu item to it. Apply selected font to all frames, and make it savable. (menu-bar-options-save): Save `default' font if changed. --- diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index b7972b43ab8..cab0fc32e95 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el @@ -627,6 +627,22 @@ by \"Save Options\" in Custom buffers.") :button (:toggle . (and (default-boundp ',variable) (default-value ',variable)))))) +;; Function for setting/saving default font. + +(defun menu-set-font () + "Interactively select a font and make it the default." + (interactive) + (let ((font (if (functionp 'x-font-dialog) + (x-font-dialog) + (mouse-select-font))) + spec) + (when font + (set-face-attribute 'default nil :font font) + (setq spec (list (list t (face-attr-construct 'default)))) + (put 'default 'customized-face spec) + (custom-push-theme 'theme-face 'default 'user 'set spec) + (put 'default 'face-modified nil)))) + ;;; Assemble all the top-level items of the "Options" menu (define-key menu-bar-options-menu [customize] (list 'menu-item "Customize Emacs" menu-bar-custom-menu)) @@ -660,6 +676,8 @@ by \"Save Options\" in Custom buffers.") (and (get elt 'customized-value) (customize-mark-to-save elt) (setq need-save t))) + (and (get 'default 'customized-face) + (put 'default 'saved-face (get 'default 'customized-face))) ;; Save if we changed anything. (when need-save (custom-save-all)))) @@ -671,10 +689,10 @@ by \"Save Options\" in Custom buffers.") (define-key menu-bar-options-menu [custom-separator] '("--")) -(define-key menu-bar-options-menu [mouse-set-font] - '(menu-item "Set Font/Fontset..." mouse-set-font - :visible (display-multi-font-p) - :help "Select a font from list of known fonts/fontsets")) +(define-key menu-bar-options-menu [menu-set-font] + '(menu-item "Set Default Font..." menu-set-font + :visible (display-multi-font-p) + :help "Select a default font")) ;; The "Show/Hide" submenu of menu "Options"