summaryrefslogtreecommitdiff
path: root/lisp/face-remap.el
diff options
context:
space:
mode:
authorBastien <bzg@altern.org>2012-10-26 13:07:35 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2012-10-26 13:07:35 -0400
commitc577256946cde9d0558a4395cc15cf6a0119adce (patch)
tree450371df733b45e17fa9ab950bbf7b337a3df00d /lisp/face-remap.el
parent63314e573028a6b8b75566b05193e34117221d03 (diff)
downloademacs-c577256946cde9d0558a4395cc15cf6a0119adce.tar.gz
* lisp/face-remap.el: Use lexical-binding.
(text-scale-adjust): Improve docstring. Use itself for the temporary overlay-map bindings, so as to repeat the "Use..." message each time.
Diffstat (limited to 'lisp/face-remap.el')
-rw-r--r--lisp/face-remap.el33
1 files changed, 16 insertions, 17 deletions
diff --git a/lisp/face-remap.el b/lisp/face-remap.el
index 09503d7c154..baf1eeb389d 100644
--- a/lisp/face-remap.el
+++ b/lisp/face-remap.el
@@ -1,4 +1,4 @@
-;;; face-remap.el --- Functions for managing `face-remapping-alist'
+;;; face-remap.el --- Functions for managing `face-remapping-alist' -*- lexical-binding: t -*-
;;
;; Copyright (C) 2008-2012 Free Software Foundation, Inc.
;;
@@ -285,7 +285,9 @@ See `text-scale-increase' for more details."
;;;###autoload (define-key ctl-x-map [(control ?0)] 'text-scale-adjust)
;;;###autoload
(defun text-scale-adjust (inc)
- "Increase or decrease the height of the default face in the current buffer.
+ "Adjust the height of the default face by INC.
+
+INC may be passed as a numeric prefix argument.
The actual adjustment made depends on the final component of the
key-binding used to invoke the command, with all modifiers removed:
@@ -294,9 +296,11 @@ key-binding used to invoke the command, with all modifiers removed:
- Decrease the default face height by one step
0 Reset the default face height to the global default
-Then, continue to read input events and further adjust the face
-height as long as the input event read (with all modifiers removed)
-is one of the above.
+When adjusting with `+' or `-', continue to read input events and
+further adjust the face height as long as the input event read
+\(with all modifiers removed) is `+' or `-'.
+
+When adjusting with `0', immediately finish.
Each step scales the height of the default face by the variable
`text-scale-mode-step' (a negative number of steps decreases the
@@ -309,8 +313,7 @@ even when it is bound in a non-top-level keymap. For binding in
a top-level keymap, `text-scale-increase' or
`text-scale-decrease' may be more appropriate."
(interactive "p")
- (let ((first t)
- (ev last-command-event)
+ (let ((ev last-command-event)
(echo-keystrokes nil))
(let* ((base (event-basic-type ev))
(step
@@ -320,19 +323,15 @@ a top-level keymap, `text-scale-increase' or
(?0 0)
(t inc))))
(text-scale-increase step)
- ;; FIXME: do it after every "iteration of the loop".
- (message "+,-,0 for further adjustment: ")
+ ;; (unless (zerop step)
+ (message "Use +,-,0 for further adjustment")
(set-temporary-overlay-map
(let ((map (make-sparse-keymap)))
(dolist (mods '(() (control)))
- (define-key map (vector (append mods '(?-))) 'text-scale-decrease)
- (define-key map (vector (append mods '(?+))) 'text-scale-increase)
- ;; = is unshifted + on most keyboards.
- (define-key map (vector (append mods '(?=))) 'text-scale-increase)
- (define-key map (vector (append mods '(?0)))
- (lambda () (interactive) (text-scale-increase 0))))
- map)
- t))))
+ (dolist (key '(?- ?+ ?= ?0)) ;; = is often unshifted +.
+ (define-key map (vector (append mods (list key)))
+ (lambda () (interactive) (text-scale-adjust (abs inc))))))
+ map))))) ;; )
;; ----------------------------------------------------------------