reddit / emacs

Split programmable keyboards against back and wrist pain

molteanu · 2022-02-15 13:48
Imaltont · 2022-02-15 16:26
Adding to this you can do some amazing stuff with qmk without having the split keyboards as well. Can make any key you would normally just tap (space, backspace (for some at least), enter, caps lock, escape etc) into modifiers when you hold them. Can make double tap into choosing new layers, can do tap modifiers to get leader-key like functinoality etc. Can create macros. You can do pretty much whatever you want, as long as you know how to express it with C. As an added bonus the qmk firmware is even GPL licensed, which I assume matters to some when looking for customizable keyboards, as a lot of the other firmware/drivers requires third party plugins or applications to use any of the functionality they offer.
molteanu · 2022-02-15 16:36
Yes, qmk is pretty amazing! There are tons of functionality in there, the C code is clean and readable and the documentation is excellent! Indeed, the split feature is just a mechanical feature. There are lots of nice non-split qmk keyboards out there. I wish I'd had the time or the chance to explore more of them.
notgonebeyond · 2022-02-15 23:08
What really bothers me about split keyboards is how both halves go out of rotational alignment with respect to each other so easily. Just now I sat up in my chair and needed to adjust my keyboard accordingly, which was easy since it's just a bar - not so much with two pieces: move one, move the other, rotate a little, rotate the other one, ugh. xah fly keys and key remapping is my magic elixir.
7890yuiop · 2022-02-16 00:05
Good article. Thanks for writing that. My suggestion isn't very compatible with your programmable keyboard's approach to modifiers, but for other people I highly recommend enabling sticky modifier keys. After years of rejecting the idea any time I saw it, on the basis that I would find it too hard to get accustomed to, I was almost shocked by how quickly I adapted when I finally actually tried it. YMMV of course, but to my surprise I found it intuitive almost immediately. Sticky modifiers means never having to *hold down* any modifier keys at all (reducing tension), as well as giving you a caps-lock style "lock" for *every* modifier via a double tap (which I find very useful in Emacs). I also think that mostly standing instead of sitting helps me to balance my posture, and/or avoid getting hunched into the same position for extended periods. Finally, dual monitors gave me neck pain until I realised what was going on (it took me an annoyingly long time to correlate "neck hurts on one side" with "I spend a lot of time looking to one side"). I happily use a single monitor now -- my window manager (I use Xmonad) makes workspace switching easy and instant, so I don't miss the other monitor all. I have a key which instantly switches to the most recent other workspace, which is basically the same end result as twisting my neck to look at a second monitor, but without twisting my neck (and more importantly without *keeping* my neck twisted for long durations).
Imaltont · 2022-02-16 00:20
This is very much a possible [approach with qmk](https://github.com/qmk/qmk_firmware/blob/master/docs/one_shot_keys.md) compatible keyboards, among many other possibilities. As it is then put straight into your keyboard's firmware you don't even have to set it up on different computers with all kinds of different setups, since all the logic of it is on the keyboard itself.
noman_032018 · 2022-02-16 00:25
Mouses are mentioned in the article, but I don't see the mention of trackballs as a more ergonomic alternative to the problem they cause (both in position and repetitive strain). The good ones make use of your thumb and can be gripped in a neutral pose (rather than twisted). Regarding touch-typing, [Klavaro](https://klavaro.sourceforge.io/en/index.html) is nice. I've used it to practice languages that use different mappings from my own.
7890yuiop · 2022-02-16 00:58
Oh, I meant "incompatible" in the sense that their control modifier was the `j` key rather than a dedicated modifier key, and tapping `j` would need to produce a `j` character, so it couldn't sanely enable the control state for the *next* key. I didn't imagine that QMK was incapable of doing this in general; but I think sticky modifiers only makes sense with dedicated modifier keys.
vjgoh · 2022-02-16 01:14
I've been using a Kinesis Advantage keyboard for over 20 years now. I haven't ever had wrist or arm pain except for when there was a problem with the Intel USB driver and it prevented my Kinesis from working, and I had to use the work supplied keyboard for 2 weeks. (Kinesis sent me a kit FOR FREE to get around the issue.) At $400CDN a pop, they were never cheap, but I think 20 years of professional programming and no carpal tunnel or RSI of any kind speaks to how far an ergonomic keyboard can take you. I love the look of the ErgoDox keyboards, and when my Kinesis eventually completely dies (their one weak point is the function keys), I'll probably go in that direction. Honestly, the single best feature of the Kinesis is how many thumb keys there are. Having ctrl, alt and command, as well as backspace and space and enter at my thumbs completely changed the fatigue in my hands. That is, I have relatively little; thumbs are strong. I'm glad you found a solution that worked for you.
molteanu · 2022-02-16 06:31
>annoyingly long time to correlate "neck hurts on one side" with "I spend a lot of time looking to one side" Yes, that is funny, in retrospect. It's hard to figure these kinds of thinks if you've never heard about them. I admit I haven't heard about neck pain due to too many monitors. Thanks for bringing this up! I'll definitely think twice if I'l ever had a need or chance for an extra monitor. >my window manager (I use Xmonad) makes workspace switching easy and instant Exactly! I've used stumpwm for a time and now I'm using, quite successfully to my surprise, exwm. I've combined it with tab-bar-mode for easy switching between browser, normal buffers and eshells with just a key press (a thumbKey + letter). A good keyboard and good software can cut down on the number of displays, it seems? >I highly recommend enabling sticky modifier keys Yes, I was starting to wonder how to use sticky-mods on the home row, for example. But I've seen you've already replied to that. I think these are [One Shot Keys](https://github.com/qmk/qmk_firmware/blob/master/docs/one_shot_keys.md), in qmk's case. I'm using something like that for the Shift key. Tap it once and the next key press is shifted. Definitely good stuff! Definitely worth exploring! Holding down keys for long periods of time adds up and is painful, indeed. I'm grateful for your input!
molteanu · 2022-02-16 06:34
I haven't had that problem. If you build your own (I didn't), maybe you can add extra weights to them so they stay put? I do think remapping is not quite the same thing. It is just that, remapping. While with a good software on your keyboard you have all sorts of wonderful stuff, like the same key doing multiple things, layers, macros, etc.
molteanu · 2022-02-16 06:37
It is definitely something to check out, for sure! I think I'm just being lazy or just not using the mouse so heavily to give it much thought, but I agree with your comment. Yes, I've also used klavaro back in the day and it was perfect for me.
molteanu · 2022-02-16 06:42
I just took a closer look at the Kinesis and it seems the Ergodox has shamelessly copied the thumb clusters. You get the same two big keys for the thumbs plus the extra four normal keys per thumb. You should feel right at home! Yes, you do watch out for the expenses but also for the long-term benefit. In this case, it is totally worth it, I agree. >I had to use the work supplied keyboard for 2 weeks I bet it was some cheap piece of plastic. The standard variant that I've come to dread so much. Thanks so much for your input!
_viz_ · 2022-02-16 14:10
Do you use a sticky keys indicator? I am not aware of any solutions that doesnt pull GNOME and its extended family in when installing. Sometimes I manage to fat finger so much that I latch random modifiers on, and it becomes a royal pita to undo it if I'm not focusing Emacs.
Daneel_Trevize · 2022-02-16 16:31
You could have a longer press (but not need to be a hold), or a combo press, be your trigger for a sticky modifier that could then be for one or many subsequent keypresses.
7890yuiop · 2022-02-16 21:05
Oh, that's nice. It might still be too cumbersome, though -- one really wants to be able to toggle these things very quickly whilst typing, so I feel that a quick tap is how you want this to work. Worth experimenting, though. That could be used with the regular modifier keys too -- a longer press to toggle the lock state would be good, I think.
7890yuiop · 2022-02-16 21:22
That very rarely happens to me any more, but it did represent the bulk of the teething pains I had, and I can only agree wholeheartedly that it's frustrating that there isn't a common solution as "at the beginning" is when you want that the most. I ended up being forced to use Gnome on this machine (it resolved some stability issues), which is the only reason I've had a working modifier indicator at any point; but it's pretty representative of the fact that I don't *need* it that I just now realised it's not working, and I've no idea when I last saw it. It must have been 5 months ago, as that's when I got XMonad back again (courtesy of https://github.com/Gekkio/gnome-session-xmonad ). The standard gnome desktop had some kind of top bar where `indicator-xkbmod -l` displayed (my session still runs it :). It looked a bit funky, but was plenty good enough for the rare occasions when I didn't know what I'd pressed. I don't have another solution, sorry -- I looked at the start, and tried a few things, and didn't find a better option. So every now and then I do go through the trial-and-error process of figuring out which modifier is accidentally locked on; but it's so rare that the benefits *vastly* outweigh that occasional annoyance.
Daneel_Trevize · 2022-02-16 21:24
[Here's a writeup on modifier ideas](https://precondition.github.io/home-row-mods#home-row-mod-combos), all just using the home row keys.
_viz_ · 2022-02-17 05:13
I understand. I am comfortable enough now to not get into this problem often but when I do get into this state, it is really annoying. I resort to switching to another tty and restart awesome. There's a tool in xkbutils that shows the modifier status. I wanted to extract the relevant parts into its own little tool that spits out the modifier status via a FIFO, but its in the back burner for a long time now...
sebhoagie · 2022-02-19 15:50
It's a feature, I noticed the left side is slightly less rotated than the right one for me to use them comfortably. And mine at least is heavyish and has rubber feet, so no accidental slides
sebhoagie · 2022-02-19 15:52
I will look into this. I've been using esc (and f7 for the right hand) instead of alt in Emacs, so it works as a sticky key, and it's been a more comfortable than I thought.