# HG changeset patch # User Stefan Monnier # Date 1206474154 0 # Node ID 9f83f0ec5257636bf7d8d1cfd73e7f6466654ad7 # Parent 7327632ad432b3bf1c3fef162e7a82d7064f765b * subr.el (map-keymap-sorted): Rename from map-keymap-internal. Remove `sort-first' argument. * keymap.c (Fmap_keymap): Use `map-keymap-sorted. diff -r 7327632ad432 -r 9f83f0ec5257 lisp/ChangeLog --- a/lisp/ChangeLog Tue Mar 25 18:31:36 2008 +0000 +++ b/lisp/ChangeLog Tue Mar 25 19:42:34 2008 +0000 @@ -1,5 +1,8 @@ 2008-03-25 Stefan Monnier + * subr.el (map-keymap-sorted): Rename from map-keymap-internal. + Remove `sort-first' argument. + * subr.el (redisplay-end-trigger-functions) (window-redisplay-end-trigger, set-window-redisplay-end-trigger) (process-filter-multibyte-p, set-process-filter-multibyte): diff -r 7327632ad432 -r 9f83f0ec5257 lisp/subr.el --- a/lisp/subr.el Tue Mar 25 18:31:36 2008 +0000 +++ b/lisp/subr.el Tue Mar 25 19:42:34 2008 +0000 @@ -532,25 +532,23 @@ (setq inserted t))) (setq tail (cdr tail))))) -(defun map-keymap-internal (function keymap &optional sort-first) +(defun map-keymap-sorted (function keymap) "Implement `map-keymap' with sorting. Don't call this function; it is for internal use only." - (if sort-first - (let (list) - (map-keymap (lambda (a b) (push (cons a b) list)) - keymap) - (setq list (sort list - (lambda (a b) - (setq a (car a) b (car b)) - (if (integerp a) - (if (integerp b) (< a b) - t) - (if (integerp b) t - ;; string< also accepts symbols. - (string< a b)))))) - (dolist (p list) - (funcall function (car p) (cdr p)))) - (map-keymap function keymap))) + (let (list) + (map-keymap (lambda (a b) (push (cons a b) list)) + keymap) + (setq list (sort list + (lambda (a b) + (setq a (car a) b (car b)) + (if (integerp a) + (if (integerp b) (< a b) + t) + (if (integerp b) t + ;; string< also accepts symbols. + (string< a b)))))) + (dolist (p list) + (funcall function (car p) (cdr p))))) (put 'keyboard-translate-table 'char-table-extra-slots 0) diff -r 7327632ad432 -r 9f83f0ec5257 src/ChangeLog --- a/src/ChangeLog Tue Mar 25 18:31:36 2008 +0000 +++ b/src/ChangeLog Tue Mar 25 19:42:34 2008 +0000 @@ -1,5 +1,7 @@ 2008-03-25 Stefan Monnier + * keymap.c (Fmap_keymap): Use `map-keymap-sorted. + * frame.c (Fmodify_frame_parameters, x_set_frame_parameters): Use XCAR/XCDR. diff -r 7327632ad432 -r 9f83f0ec5257 src/keymap.c --- a/src/keymap.c Tue Mar 25 18:31:36 2008 +0000 +++ b/src/keymap.c Tue Mar 25 19:42:34 2008 +0000 @@ -735,7 +735,7 @@ significance. */ xsignal1 (Qinvalid_function, function); if (! NILP (sort_first)) - return call3 (intern ("map-keymap-internal"), function, keymap, Qt); + return call2 (intern ("map-keymap-sorted"), function, keymap); map_keymap (keymap, map_keymap_call, function, NULL, 1); return Qnil;