aboutsummaryrefslogtreecommitdiffstats
path: root/src/keymap.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/keymap.c')
-rw-r--r--src/keymap.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/src/keymap.c b/src/keymap.c
index 0169276bef9..c461fdddbbc 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -1216,13 +1216,20 @@ binding KEY to DEF is added at the front of KEYMAP. */)
1216 1216
1217 keymap = get_keymap (cmd, 0, 1); 1217 keymap = get_keymap (cmd, 0, 1);
1218 if (!CONSP (keymap)) 1218 if (!CONSP (keymap))
1219 /* We must use Fkey_description rather than just passing key to 1219 {
1220 error; key might be a vector, not a string. */ 1220 const char *trailing_esc = ((EQ (c, meta_prefix_char) && metized)
1221 error ("Key sequence %s starts with non-prefix key %s", 1221 ? (idx == 0 ? "ESC" : " ESC")
1222 SDATA (Fkey_description (key, Qnil)), 1222 : "");
1223 SDATA (Fkey_description (Fsubstring (key, make_number (0), 1223
1224 make_number (idx)), 1224 /* We must use Fkey_description rather than just passing key to
1225 Qnil))); 1225 error; key might be a vector, not a string. */
1226 error ("Key sequence %s starts with non-prefix key %s%s",
1227 SDATA (Fkey_description (key, Qnil)),
1228 SDATA (Fkey_description (Fsubstring (key, make_number (0),
1229 make_number (idx)),
1230 Qnil)),
1231 trailing_esc);
1232 }
1226 } 1233 }
1227} 1234}
1228 1235