diff options
Diffstat (limited to 'src/keymap.c')
| -rw-r--r-- | src/keymap.c | 21 |
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 | ||