[xmonad] Re-inserting keystrokes as X events for client
Spencer Janssen
spencerjanssen at gmail.com
Thu Sep 11 05:15:18 EDT 2008
On Thu, Sep 11, 2008 at 08:59:08AM +0200, Bárður Árantsson wrote:
> Hi all,
>
> Is there a way to re-insert the original keystroke as an X event for the
> currently focused client in response to a keybinding?
>
> Basically I want to do a keybindings along these lines:
>
> ((controlMask, xK_t), submap . M.fromList $
> [ ((0, xK_r), whatever)
> , ((0, xK_f), whatever)
> ...
> , ((0, xK_t), <re-send the original keystroke to the focused client>)
> ])
>
> so that I essentially have a "prefix" key of C-t for all my rarely used
> xmonad commands, but if I need to actually send a C-t to the client I
> can still do so by pressing C-t twice.
>
> (I've tried searching around for an answer to this but my Google-fu
> seems to be lacking.)
>
> Cheers,
>
> --
> Bardur Arantsson
> <bardurREMOVE at THISscientician.net>
>
> - You don't exist. I've killed you. Jill Layton is dead.
> - Care for a little necrophilia?
> Sam Lowry and Jill Layton / Brazil
It is possible, but I don't think the code is written. What you want to do is
construct a XKeyEvent and send it to the focused window with XSendEvent (bound
in Haskell as sendEvent).
Cheers,
Spencer Janssen
More information about the xmonad
mailing list