>>>>> On Sat, 12 May 2007 07:51:28 +0100, David Reitter <[EMAIL PROTECTED]>
>>>>> said:
> On 12 May 2007, at 05:58, Tom Tobin wrote:
>> I'm using the Aquamacs nightlies (Intel), and have Option set to
>> act as Meta (no accented characters). When I use and hold down a
>> meta-key combo (say, M-v to scroll the page), Aquamacs will often
>> let the equivalent accented character slip through (e.g., √ for
>> M-v). So far, I've only been able to reproduce this behavior if
>> the command in question involves scrolling; the quickest way to
>> reproduce it is to scroll up and down quickly in alternation,
>> holding down each respective key for a few seconds each time.
> Can anyone reproduce this? This is a build from the 22 branch, with
> `mac-option-modifier' set to `meta'.
> What I can reproduce is holding down M-n: when input just once, it
> just brings up an echo area message saying that it's not bound. But
> when held down (which causes the input to repeat), it'll input the
> tilde dead key (˜) just like when the option modifier is passed to
> the system. NB Switching off `mac-input-method-mode' (a patch in
> Aquamacs) doesn't change anything, and the problem shows up in a
> (Carbon) build straight from the GNU Emacs CVS as well. But I can't
> reproduce the M-v problem.
I could reproduce the Option-n case and I think the following patch
will fix it. But the patch fixes a problem with dead-key processing,
and I have no idea about the Option-v case. Is it possible for the OP
to try to reproduce it with "a Carbon build straight from GNU Emacs
CVS" (with setting mac-option-modifier to meta)?
YAMAMOTO Mitsuharu
[EMAIL PROTECTED]
*** emacs/src/macterm.c.~1.214.~ Fri Apr 13 17:14:46 2007
--- emacs/src/macterm.c Sat May 12 19:23:49 2007
*************** static Boolean mac_convert_event_ref (Ev
*** 9201,9206 ****
--- 9201,9207 ----
switch (GetEventKind (eventRef))
{
case kEventRawKeyDown:
+ case kEventRawKeyRepeat:
{
unsigned char char_codes;
UInt32 key_code;
*************** static Boolean mac_convert_event_ref (Ev
*** 9214,9220 ****
NULL, &key_code);
if (err == noErr)
{
! eventRec->what = keyDown;
eventRec->message = char_codes | ((key_code & 0xff) << 8);
result = 1;
}
--- 9215,9224 ----
NULL, &key_code);
if (err == noErr)
{
! if (GetEventKind (eventRef) == kEventRawKeyDown)
! eventRec->what = keyDown;
! else
! eventRec->what = autoKey;
eventRec->message = char_codes | ((key_code & 0xff) << 8);
result = 1;
}
_______________________________________________
emacs-pretest-bug mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug