Next to my inverse T arrow section IKJL, I have bound U and O to LCTRL(Left) and LCTRL(Right).
This works really well for text editing. I have bound Ctrl+Alt+Left/Right to another useful editing action, but I find that I can reach my ctrl key much easier than my alt key.
So I’d like LCTRL(Left) to be LCTRL(LALT(Left)), when LCTRL is already pressed.
I suppose I could write a macro, but I have this feeling that a more elegant solution is possible.
Something like:
#define LCTRL(k) ((Key) { k.keyCode, k.flags | CTRL_HELD })
#define LALT(k) ((Key) { k.keyCode, k.flags | LALT_HELD })
// hold both alt and ctrl, if ctrl is already held
#define CTRAL(k) ((Key) { k.keyCode, ???????? })
Does it make sense?