A Symbol Rotation mod for the enthusiasts?
I feel that the semicolon gets a too good position in standard Colemak. It must be a remnant of the insane position it has in QWERTY that puts it inside the "letter block" so to speak, where it doesn't deserve to be by any standard. The three symbol keys that do deserve a position among the letters are period, comma and apostrophe/quote, since they occur frequently in text. Next up is the hyphen that's quite common and arguably too far away on the top row.
Furthermore, using the Wide mod moves the far right keys around already. The ANSI Wide mod moves the apostrophe up and the /? key to a somewhat uncomfortable position in the lower middle, while the ISO Wide mod moves the /? up.
My current feeling is that a semicolon-slash-apostrophe-hyphen rotation could be quite nice! Trying it out, it seems to make the apostrophe bigrams noticeably more comfy. It;s easier to stretch that pinky out upwards than opening the hand outwards, that;s my clear impression of what;s what. ¯\_(ツ)_/¯
But while we're at that... Let's take a closer look at punctuation vs letter frequencies in English! (✿◠‿◠)
On the McDickens letter frequency page we see the following relative frequencies for English, after the initial SPC e t a o i n s r h l d c u m:
Excluding code: g f p w y ENT b , . v k ' " - x 0 j 1 q 2 z ) ( : ! ? 5 ; 3 4 9 / ...
Including code: f g p y w ENT b , . v k - " _ ' x ) ( ; 0 j 1 q = 2 : z / * ! ? $ ...
It's clear that these punctuation keys are more common than the rare letters x j q z (having <0.16% usage each, all others having >0.8% – the below frequency estimates are based on the numbers on Wikipedia as well as the analysis used in SteveP99's keyboard layout analyzer based on a Project Gutenberg book lexicon and the Linux source code base, respectively):
CM DT QU MN
Bb ,< .> Vv Kk '" -_ Xx Jj
1.5 1.2 1.3 1.0 0.8 1.0 0.5* .15 .15 (Approx. % usage. The -_ key varies w/ coding, 0.3-0.8?)
1.5 1.8 1.2 0.9 0.8 1.0 0.3 .14 .14 (SteveP's % usage, based on book analysis.)
1.5 1.7 1.1 1.3 0.9 0.4 8.1 1.5 .06 (SteveP's % usage, based on code/documentation. Underscore is 7.2!)
The semi-/colon (SC) and slash/question (SL) keys are more of a toss-up. These don't quite deserve their good positions when entering text, as frequencywise they are on par with or worse than several number row symbols – especially the parentheses. For coding it feels different as particularly the semicolon is quite common in code. However, my impression is that the text-related symbols are more important for flow. I think people may be overreporting the importance of the semi-/colon, unless you type almost exclusively code. If you do so though, note the massive role that the underscore can play!
Since backslash is handled differently on ISO and ANSI boards, doesn't have a really good position on either and has a different key cap size on the latter, I'm uncertain whether to include it in remaps. I feel that the brackets should be left alone since they serve many purposes in locale layouts and since they're cool in the middle of the keyboard using the Wide mod. If anyone still wants to improve their role, I suggest a simple brackets-parentheses swap. So in sum, my candidates for worse positions when promoting the more common symbol keys are:
SC SL EQ
;: /? Qq Zz =+
.13 .16 .10 .08 .06?
.29 .15 .10 .06 .00 (Note the huge variation in ;: frequency! SteveP reports 0.22+0.07 %.)
1.4 0.6 0.3 0.2 0.9
I've included the equals/plus (EQ) key since even though it's quite rare in text, it goes to the middle of the board in the Wide mod and that's ugly and unintuitive. Maybe it could take MN's place, and SL its old place? Having the question mark on the top row appears more symmetric with respect to the exclamation mark. Then, EQ would remain close to MN as it was before but just on a different row – like Dvorak's punctuation placements have it.
As for the idea of including the letter Q in a rotation with the quote key, I don't see any real benefit to making QU a roll. It's a comfortable bigram already, using a nice hand alternation.
So I'm currently thinking that these cycles might be interesting:
QU > SC
MN > SL > EQ (MN > SL > BS > EQ for ISO, swapping the slashes)
Using vanilla Colemak, on an ortho board:
6 7 8 9 0 = /
j l u y ' [ ]
h n e i o ; \
k m , . - _____
With the Wide(ISO) mod, on a staggered board:
\ 7 8 9 0 =
[ j l u y ' -
] h n e i o ;
/ k m , . _____
Any insights and thoughts? I'm thinking this could be a "Symbol Rotation" mod on top of the other mods we use. Some optimizers might like it, while other Colemak users wouldn't bother. Is it time for Colemak-CAWS...?
The idea of a rotation mod to make symbol placements better was also discussed in another topic where it was suggested to make it more like the Dvorak symbol placements. I don't think that's a goal in itself, but it's clear that Dvorak saw the importance of the hyphen-minus key.
I've tried this "Sym" mod out a little but at first I found it too confusing to be worth the effort for me. Maybe others will be far more enthusiastic! However, I've also tested the bang-for-buck version of it: Only the QU > SC swap. That's a very light mod from standard Colemak, only moving one more key. In the spirit of the DH mod, it seeks to reduce lateral stretches while changing no fingerings. Heavy coders shouldn't bother with it I think, but they should consider the minus/underscore loop!
Last edited by DreymaR (17-Mar-2020 16:33:15)