Re: Tutorial vs. help screen
Ted Zlatanov <tzz-mIZUurteI1BWk0Htik3J/[email protected]>
| Newsgroups | gmane.comp.window-managers.ion.general |
|---|---|
| Organization | Теодор Златанов @ Cienfuegos |
| Message-ID | <[email protected]> |
On Wed, 21 Mar 2007 12:29:41 +0000 Giles Constant <gilesc-o0Vg8R2zJDdOleTcPE3Aw/AlK7laVUyi9dF7HbQ/[email protected]> wrote: GC> I've got this lot. I also disabled F3/F5/F6, because many apps use F3 GC> for "find next", F5 for "reload", and F6 for "highlight location bar" (in web GC> browsers). GC> kpress(MOD1.."XF86AudioNext", "ioncore.exec_on(_, 'mpc seek +00:00:10')"), GC> kpress(MOD1.."XF86AudioPrev", "ioncore.exec_on(_, 'mpc seek -00:00:10')"), GC> kpress("XF86Standby", "ioncore.exec_on(_, 'xlock')"), GC> kpress(MOD1.."T", "WRegion.set_tagged(_sub, 'toggle')", "_sub:non-nil"), GC> kpress(MOD1.."A", "WFrame.attach_tagged(_)"), GC> ^^^ got rid of the alt-k GC> kpress(MOD1.."I", "WFrame.switch_next(_)"), GC> kpress(MOD1.."U", "WFrame.switch_prev(_)"), GC> ^^^ easy to switch around with the right hand. GC> kpress(MOD1.."P", "WIonWS.goto_dir(_, 'above')"), GC> kpress(MOD1.."N", "WIonWS.goto_dir(_, 'below')"), GC> kpress(MOD1.."F", "WIonWS.goto_dir(_, 'right')"), GC> kpress(MOD1.."B", "WIonWS.goto_dir(_, 'left')"), GC> ^^^^ emacs-style window navigation GC> kpress("XF86AudioLowerVolume", "ioncore.exec_on(_, 'umix vol 4-')"), GC> kpress("XF86AudioRaiseVolume", "ioncore.exec_on(_, 'umix vol 4+')"), GC> kpress("XF86AudioPlay", "ioncore.exec_on(_, 'mpc toggle')"), GC> kpress("XF86AudioStop", "ioncore.exec_on(_, 'mpc stop')"), GC> kpress("XF86AudioNext", "ioncore.exec_on(_, 'mpc next')"), GC> kpress("XF86AudioPrev", "ioncore.exec_on(_, 'mpc prev')"), I've posted on this in the past. Any modifier keys are bad, because they strain the hand in unnatural ways. There are several medical problems that can come from overuse of the wrong fingers, especially using the pinky finger (which is weakest) to hit key combinations. I'm a heavy Emacs user, and I map as much as possible to single-key combinations (Meta is just "Escape" for me, I usually don't use Alt). If I have to use modifiers, I make sure I use either the thumb (the strongest finger) or multiple fingers at once. I had wrist and finger joint problems before adopting the "no modifiers when possible" rule, and have been OK since. I would recommend it to anyone concerned about their physical health who types more than 2 hours per day. Of course, you should also consult an ergonomics specialist or a doctor if you are uncomfortable or in pain, and consider things like elbow angle, eye level with the top of the monitor, etc. This is just my experience, and I hope others find it useful. For Ion specifically, I've long used the keypad. It's almost never used by applications, so why not? Here's a summary without the actual config stanza, just the interesting bits. Just think about how often you use the keypad--almost never! Try this for a few days and you'll see how convenient keypad-based navigation is. Ted -- move left/right between tabs kpress("KP_6", "WFrame.switch_next(_)"), kpress("KP_4", "WFrame.switch_prev(_)"), -- 'close' should not be a single key, of course kpress_wait(META.."W", "WRegion.rqclose_propagate(_, _sub)"), -- split H/V kpress("Pause", "WTiling.split_at(_, _sub, 'right', true)"), kpress(MOD1.."Pause", "WTiling.split_at(_, _sub, 'bottom', true)"), -- unsplit is not a single key kpress("Shift+Pause", "WTiling.unsplit_at(_, _sub)"), -- these are the keys around the numbers in the keypad, sequentially clockwise kpress("KP_Divide", "WScreen.switch_nth(_, 0)"), kpress("KP_Multiply", "WScreen.switch_nth(_, 1)"), kpress("KP_Subtract", "WScreen.switch_nth(_, 2)"), kpress("KP_Add", "WScreen.switch_nth(_, 3)"), kpress("KP_Enter", "WScreen.switch_nth(_, 4)"), kpress("KP_Delete", "WScreen.switch_nth(_, 5)"), kpress("KP_Insert", "WScreen.switch_nth(_, 6)"), -- navigate between splits: 5 and Shift+5 on the keypad to go -- left/right (I almost never need Shift+5); -- 8 and 2 to go up and down between splits kpress("KP_5", "ioncore.goto_next(_chld, 'right')", kpress("KP_8", "ioncore.goto_next(_chld, 'up')", kpress("Shift+KP_5", "ioncore.goto_next(_chld, 'left')", kpress("KP_2", "ioncore.goto_next(_chld, 'down')",