aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorStefan Monnier2007-05-07 15:41:37 +0000
committerStefan Monnier2007-05-07 15:41:37 +0000
commit5df399983383a04e3603074c0528ba140e22b01b (patch)
treef3f050f61c2962d1a2a7bd26b2a73ed09fcdbf73 /src
parent59c58feafb764126fa08e1a3560cb158817f556e (diff)
downloademacs-5df399983383a04e3603074c0528ba140e22b01b.tar.gz
emacs-5df399983383a04e3603074c0528ba140e22b01b.zip
(Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
mapping for unibyte strings.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog9
-rw-r--r--src/keymap.c5
2 files changed, 10 insertions, 4 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 4491b7cd518..b6340a19cb1 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
12007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
4 mapping for unibyte strings.
5
12007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> 62007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2 7
3 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c. 8 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
@@ -62,8 +67,8 @@
62 67
632007-04-16 Chong Yidong <cyd@stupidchicken.com> 682007-04-16 Chong Yidong <cyd@stupidchicken.com>
64 69
65 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay): Set 70 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay):
66 garbaged flag in presence of window margins. 71 Set garbaged flag in presence of window margins.
67 (showing_window_margins_p): New function. 72 (showing_window_margins_p): New function.
68 73
69 * xdisp.c (cursor_row_p): Only end row on newline if it's a 74 * xdisp.c (cursor_row_p): Only end row on newline if it's a
diff --git a/src/keymap.c b/src/keymap.c
index c61f5f34383..145d872863a 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -1156,7 +1156,8 @@ binding KEY to DEF is added at the front of KEYMAP. */)
1156 if (SYMBOLP (def) && !EQ (Vdefine_key_rebound_commands, Qt)) 1156 if (SYMBOLP (def) && !EQ (Vdefine_key_rebound_commands, Qt))
1157 Vdefine_key_rebound_commands = Fcons (def, Vdefine_key_rebound_commands); 1157 Vdefine_key_rebound_commands = Fcons (def, Vdefine_key_rebound_commands);
1158 1158
1159 meta_bit = VECTORP (key) ? meta_modifier : 0x80; 1159 meta_bit = (VECTORP (key) || STRINGP (key) && STRING_MULTIBYTE (key)
1160 ? meta_modifier : 0x80);
1160 1161
1161 if (VECTORP (def) && ASIZE (def) > 0 && CONSP (AREF (def, 0))) 1162 if (VECTORP (def) && ASIZE (def) > 0 && CONSP (AREF (def, 0)))
1162 { /* DEF is apparently an XEmacs-style keyboard macro. */ 1163 { /* DEF is apparently an XEmacs-style keyboard macro. */
@@ -1312,7 +1313,7 @@ recognize the default bindings, just as `read-key-sequence' does. */)
1312 c = Fevent_convert_list (c); 1313 c = Fevent_convert_list (c);
1313 1314
1314 /* Turn the 8th bit of string chars into a meta modifier. */ 1315 /* Turn the 8th bit of string chars into a meta modifier. */
1315 if (INTEGERP (c) && XINT (c) & 0x80 && STRINGP (key)) 1316 if (STRINGP (key) && XINT (c) & 0x8 && !STRING_MULTIBYTE (key))
1316 XSETINT (c, (XINT (c) | meta_modifier) & ~0x80); 1317 XSETINT (c, (XINT (c) | meta_modifier) & ~0x80);
1317 1318
1318 /* Allow string since binding for `menu-bar-select-buffer' 1319 /* Allow string since binding for `menu-bar-select-buffer'