]> git.eshelyaron.com Git - emacs.git/commitdiff
Tweak the order keystrokes are sorted in keymap listings
authorLars Ingebrigtsen <larsi@gnus.org>
Thu, 11 Jul 2019 14:53:43 +0000 (16:53 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Thu, 11 Jul 2019 14:53:43 +0000 (16:53 +0200)
* src/keymap.c (describe_map_compare): Change the sorting order of
keystrokes, so that we get the order <f1> <f2> <f11> instead of
<f1> <f11> <f2> (bug#33237).

src/keymap.c

index 2ac3d33460c9a96207534ef2eea6b6900c90aea6..fc04c565a1e529c98ad2ed5ae8cae46779d32d2a 100644 (file)
@@ -3098,8 +3098,10 @@ describe_map_compare (const void *aa, const void *bb)
   if (FIXNUMP (a->event) && !FIXNUMP (b->event))
     return -1;
   if (SYMBOLP (a->event) && SYMBOLP (b->event))
-    return (!NILP (Fstring_lessp (a->event, b->event)) ? -1
-           : !NILP (Fstring_lessp (b->event, a->event)) ? 1
+    /* Sort the keystroke names in the "natural" way, with (for
+       instance) "<f2>" coming between "<f1>" and "<f11>".  */
+    return (!NILP (Fstring_version_lessp (a->event, b->event)) ? -1
+           : !NILP (Fstring_version_lessp (b->event, a->event)) ? 1
            : 0);
   return 0;
 }