Mercurial > emacs
diff src/keyboard.c @ 853:224b0d5d1a38
*** empty log message ***
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Wed, 22 Jul 1992 21:20:04 +0000 |
parents | e4093444f9f8 |
children | ef5f79a6535a |
line wrap: on
line diff
--- a/src/keyboard.c Wed Jul 22 21:17:34 1992 +0000 +++ b/src/keyboard.c Wed Jul 22 21:20:04 1992 +0000 @@ -2697,8 +2697,20 @@ /* Scan from fkey_end until we find a bound suffix. */ while (fkey_end < t) { + /* Look up meta-characters by prefixing them + with meta_prefix_char. I hate this. */ + if (keybuf[fkey_end++] & 0x80) + fkey_next = + get_keymap_1 (get_keyelt + (access_keymap (fkey_map, meta_prefix_char)), + 0); + else + fkey_next = fkey_map; + fkey_next = - get_keyelt (access_keymap (fkey_map, keybuf[fkey_end++])); + get_keyelt (access_keymap + (fkey_next, keybuf[(fkey_end++) & 0x7f])); + /* If keybuf[fkey_start..fkey_next] is bound in the function key map and it's a suffix of the current sequence (i.e. fkey_next == t), replace it with