GNU bug report logs - #23163
25.1.50; w32-lwindow-modifier "unset" while running GDB

Previous Next

Package: emacs;

Reported by: martin rudalics <rudalics <at> gmx.at>

Date: Wed, 30 Mar 2016 17:34:02 UTC

Severity: normal

Found in version 25.1.50

To reply to this bug, email your comments to 23163 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#23163; Package emacs. (Wed, 30 Mar 2016 17:34:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to martin rudalics <rudalics <at> gmx.at>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Wed, 30 Mar 2016 17:34:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: Bug-Gnu-Emacs <bug-gnu-emacs <at> gnu.org>
Subject: 25.1.50; w32-lwindow-modifier "unset" while running GDB
Date: Wed, 30 Mar 2016 19:32:49 +0200
In my .emacs for Windows I have for many years the following settings.

(setq w32-pass-lwindow-to-system nil)
(setq w32-lwindow-modifier 'hyper)	; lwindow is hyper
(global-set-key [(control hyper meta b)] 'break-point-insert)

‘break-point-insert’ is a command that inserts a breakpoint into the
*gud-emacs.exe* buffer.  This command works fine in emacs-25 but fails
in master when running GDB.  In particular, it fails _after_ focus has
shifted to the debugged frame and I shifted it back to the debugger
frame.  The command actually executed by C-H-M b is then ‘backward-sexp’
which means that apparently ‘w32-lwindow-modifier’ has been unset and my
modifier given back to the system.

I believe that I have seen similar "unsettings" in other occasions as
well but the example given here is the only one I can confirm.

In GNU Emacs 25.1.50.1 (i686-pc-mingw32)
 of 2016-03-30 built on MACHNO
Repository revision: 292c4753923a468e6c29733ef8701cf2c6680aa8
Windowing system distributor 'Microsoft Corp.', version 5.1.2600
Configured using:
 'configure --prefix=/c/emacs-git/opt CFLAGS=-O3'

martin





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#23163; Package emacs. (Wed, 30 Mar 2016 18:25:02 GMT) Full text and rfc822 format available.

Message #8 received at 23163 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: martin rudalics <rudalics <at> gmx.at>, Jussi Lahdenniemi <jussi <at> aprikoodi.fi>
Cc: 23163 <at> debbugs.gnu.org
Subject: Re: bug#23163: 25.1.50; w32-lwindow-modifier "unset" while running GDB
Date: Wed, 30 Mar 2016 21:23:55 +0300
> Date: Wed, 30 Mar 2016 19:32:49 +0200
> From: martin rudalics <rudalics <at> gmx.at>
> 
> In my .emacs for Windows I have for many years the following settings.
> 
> (setq w32-pass-lwindow-to-system nil)
> (setq w32-lwindow-modifier 'hyper)	; lwindow is hyper
> (global-set-key [(control hyper meta b)] 'break-point-insert)
> 
> ‘break-point-insert’ is a command that inserts a breakpoint into the
> *gud-emacs.exe* buffer.  This command works fine in emacs-25 but fails
> in master when running GDB.  In particular, it fails _after_ focus has
> shifted to the debugged frame and I shifted it back to the debugger
> frame.  The command actually executed by C-H-M b is then ‘backward-sexp’
> which means that apparently ‘w32-lwindow-modifier’ has been unset and my
> modifier given back to the system.
> 
> I believe that I have seen similar "unsettings" in other occasions as
> well but the example given here is the only one I can confirm.

Probably due to changes in 97d7a0b.  Jussi, could you please take a
look?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#23163; Package emacs. (Thu, 31 Mar 2016 06:36:01 GMT) Full text and rfc822 format available.

Message #11 received at 23163 <at> debbugs.gnu.org (full text, mbox):

From: Jussi Lahdenniemi <jussi <at> aprikoodi.fi>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 23163 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org>
Subject: Re: bug#23163: 25.1.50; w32-lwindow-modifier "unset" while running GDB
Date: Thu, 31 Mar 2016 09:34:51 +0300
>> Date: Wed, 30 Mar 2016 19:32:49 +0200
>> From: martin rudalics <rudalics <at> gmx.at>
>>
>> In my .emacs for Windows I have for many years the following settings.
>>
>> (setq w32-pass-lwindow-to-system nil)
>> (setq w32-lwindow-modifier 'hyper)	; lwindow is hyper
>> (global-set-key [(control hyper meta b)] 'break-point-insert)
>>
>> ‘break-point-insert’ is a command that inserts a breakpoint into the
>> *gud-emacs.exe* buffer.  This command works fine in emacs-25 but fails
>> in master when running GDB.  In particular, it fails _after_ focus has
>> shifted to the debugged frame and I shifted it back to the debugger
>> frame.  The command actually executed by C-H-M b is then ‘backward-sexp’
>> which means that apparently ‘w32-lwindow-modifier’ has been unset and my
>> modifier given back to the system.
>>
>> I believe that I have seen similar "unsettings" in other occasions as
>> well but the example given here is the only one I can confirm.

Does it help if you add
(w32-register-hot-key [H-])
after the (global-set-key ...) line in your .emacs?

-- 
Jussi Lahdenniemi






Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#23163; Package emacs. (Thu, 31 Mar 2016 07:16:01 GMT) Full text and rfc822 format available.

Message #14 received at 23163 <at> debbugs.gnu.org (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: Jussi Lahdenniemi <jussi <at> aprikoodi.fi>
Cc: 23163 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org>
Subject: Re: bug#23163: 25.1.50; w32-lwindow-modifier "unset" while running GDB
Date: Thu, 31 Mar 2016 09:14:59 +0200
> Does it help if you add
> (w32-register-hot-key [H-])
> after the (global-set-key ...) line in your .emacs?

No.  Even worse, this breaks my ahk settings: Here, for example,
C-H-M-left is bound (via ahk) to a script that makes any Windows window
occupy the left half of my display.  This allows XP do what Aero does
later and also binds it to a different key, because Windows 7 broke my
old standard Emacs binding for S-H-up (or whatever old binding Aero was
usurping here, I don't recall at the moment).  It's not sufficient for
me to rebind keys in Emacs only - keys for resizing Windows windows must
be obviously uniform.

I believe the problem I see with GDB is due to refocussing during
debugging.  More precisely, the binding is hidden only _after_ I start
running an Emacs instance via GDB, the Windows window of the debugged
Emacs instance pops up, a breakpoint gets hit and I manually refocus the
Windows window of the debugging Emacs instance (using the mouse or
Alt-TAB, for example) in order to continue debugging.  The binding is
restored as soon as I quit GDB.

Please tell me if you have problems understanding this description (I
might have omitted some crucial detail).

Thanks, martin




This bug report was last modified 9 years and 78 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.