[xmonad] Issue 468 in xmonad: EZConfig should resend unbound key presses from submaps

codesite-noreply at google.com codesite-noreply at google.com
Wed Aug 3 16:52:50 CEST 2011

Status: Accepted
Owner: ----
Labels: Component-Contrib Type-Enhancement Priority-Low

New issue 468 by byor... at gmail.com: EZConfig should resend unbound key  
presses from submaps

Creating a ticket for this so it doesn't get lost.  See email exchange  

On Mon, Jul 18, 2011 at 4:44 AM, Palo van Dalo  
<palipalo9 at googlemail.com>wrote:

> Hello Jason, Devin and Brent,

> You 3 made it possible to use emacs-like shortcuts for the xmoand. But i
> have a problem:
> When i use "C-x" as prefix for all my xmonad commands (like in emacs) then
> I'm not able to send any kind of "C-x" prefixed key signals to my emacs.
> For example "C-x f" is not working anymore.
> I looked a bit in the code of you. And realized that it will take a lot of
> time for me to understand what i need to do.
> I hope that one of you will implement a patch, or someone can give me
> advice.
> The main problem is that submap forgets the key that was pressed before.
> My only idea at the moment is rewriting EZConfig that it will use
> submapDefault, with a function that sends a key signal (or more) to the
> client.
> I don't know if this is even possible.
> The other way would be a new package, or patching one of yours.

> BTW, i use "C-z" and "M-z" at the moment, until i get this problem fixed.

> Thanks for you packages and I'm looking forward to hearing from you.
>   palo

Hi Palo,

Thanks for your email, and sorry for the delay in responding.  Yes, I can
see how this would be a problem!  Patching EZConfig so that it sends along
key sequences that are not bound to anything should be possible, using
submapDefault and, say, the sendKey function from XMonad.Util.Paste.
Essentially the mkSubmaps and mkSubmaps' functions would have to be modified
to carry along some extra information about the sequence of keypresses that
have been used to get to the current point.  Then that information could be
used to create the default actions.  (I have not thought very specifically
about exactly what would need to be changed.)  Unfortunately things are
complicated by the addition of mkNamedKeymap and mkNamedSubmaps, which use a
function (submapName) defined in a different module which would have to also
be modified if you wanted to fix the Named variants as well.

More information about the xmonad mailing list