• You are not logged in.

Mod-DH for Colemak

  • Started by stevep99
  • 261 Replies:
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,360

I think I'd prefer to have the common "t's" trigram on hand alternations? But I'm not sure how much it matters.

Moving the Z and Slash around may feel gratifying, but every such little step brings you away from Colemak and we've already done the Curl thing. Also, it seems like a choice for a narrow audience. The aesthetics aren't totally unimportant even if they cannot compromise efficiency – but in my case the (back)slash in the middle has several other symbol keys to keep it company so for the ISO-Angle user it's pretty enough. :-)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 1
  • From: Canada
  • Registered: 23-Mar-2015
  • Posts: 27

I think you are right about having hand alternations for the *apostrophe*S* and *T* bigrams in general -- I hadn't noticed it in my few days of playing with the layout doing mainly coding and simply quoting strings.

Having the *semicolon* and *apostrophe* back on the right hand side makes sense -- retains the *semicolon* and only relocates the *apostrophe* (to an equally comfortable position).

I realize my *Z* location is a real violation of the Colemak design -- but the slash in *nix and coding is used frequently (for urls, file pathnames, comment delimiters). I wonder what the *question mark* frequency is compared to the *Z*? I will probably keep that one deviation for now!

Moving the *equal* and *minus* to where stevep99 had the *square brackets* in the Qwerty *Q* and *A* positions allows keeping the *square bracket* cluster together on the number row (borrowed that from Dvorak!). I know this is contrary to the "Qwerty as much as possible" approach -- but, arguably, the hyphen is now in a much more convenient location (certainly for me, an easier pinkie reach), and given the whole number row shift..

Now all the symbols are reasonably grouped together. Looks nice too, I think.. This should work for me as I am not much of a touch typist when it comes to symbols in the number row anyway!

So today :-O it looks like this..

    `~  \ 1 2 3 4 5 6 7 8 9 0 [  ]
    Tab  = Q W F P B J L U Y ; '  Del
     Esc  - A R S T G M N E I O  Enter
    Shift  / X C D V Z K H , .  Shift
Ctrl  Win  Alt   Space   Backspace  Fn  Pn  Ctrl
Last edited by sdothum (30-Mar-2015 19:29:53)
Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,360

I'll give you this: It looks very nice! :-)

Brackets together, easily recognizable Colemak(Curl) heritage, a decent position for the hyphen-minus and slash, all in all downright pretty. Yeah, I think you have a good personal variant there. And the thumb Backspace provides an interesting twist.

If anything, some would balk at the increased distance to LShift and Tab. But I guess that's up to personal preferences and if you manage to use both shifts as you ideally should, it's probably all right. No worse than the ISO LShift you know, and we use that all the time! Another issue is the loss of AltGr, but if that's an issue to anyone they might use the Caps key for AltGr I guess? Then again, it might be better to just leave the AltGr then and put the Back back on Caps. :-p

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 117
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 978

If you are OK with moving the Z, I wonder if you have considered the "conventional" wide-mod approach, something like this...?

    `~  1 2 3 4 5 = 6 7 8 9 0 - \
    Tab  Q W F P [ B J L U Y ; '  Del
     Esc  A R S T ] G M N E I O  Enter
    Shift  X C D V / Z K H , .  Shift
Ctrl  Win  Alt   Space   Backspace  Fn  Pn  Ctrl

It doesn't look quite so nice as your version,  but it does have the advantage of greater hand separation and both shifts being easily accesible...
If slash is too hard to reach you could always exchange it with e.g. semicolon.

Last edited by stevep99 (01-Apr-2015 09:59:51)

Using Colemak-DH with Seniply.

Offline
  • 0
  • Reputation: 1
  • From: Canada
  • Registered: 23-Mar-2015
  • Posts: 27

Did you mean to have the centre column (square brackets and slash) left shifted to this..

    `~  1 2 3 4 5 = 6 7 8 9 0 - \
    Tab  Q W F P B [ J L U Y ; '  Del
     Esc  A R S T G ] M N E I O  Enter
    Shift  X C D V Z / K H , .  Shift
Ctrl  Win  Alt   Space   Backspace  Fn  Pn  Ctrl

Otherwise, (for me) the *BGZ* seems like a stretch for one of the hands. I like the idea of shift key ease -- rather than swapping the pinkie stretch from the right to the left hand for the shift key. Don't have a problem with the right but am noticing it with the left pinkie in the new layout as I develop new muscle memory.

For the central *square brackets* and *slash* in the wide-mod: which hand do you find best for these keys? Do you do a long index finger reach or shift the whole hand over? (I have heard some typists can do a whole hand/layout shift without thinking which is beyond my current ability.)

The one benefit I am finding with the layout I am practicing on now, is that the left pinkie extension can comfortably reach the *hyphen* and (curl to the) *question mark (slash)*. The *equal sign* is a plus when coding. So my hands provide complete coverage of the central rows from the home row. With the wide-mod, I would need to look at the keyboard for the central column assignment -- until I've practiced enough to do without.

Trying out all these possibilities.. it certainly has been an exercise for my neural pathways :-)

...

Oh! just had an idea from your shift key proposal. I could try swapping the *slash* with it to have..

    `~  \ 1 2 3 4 5 6  7 8 9 0 [  ]
    Tab  / Q W F P B  J L U Y ; '  Del
     Esc  - A R S T G  M N E I O  Enter
    =  Shift X C D V Z  K H , .  Shift
Ctrl  Win  Alt   Space   Backspace  Fn  Pn  Ctrl

Rather unorthodox to say the least! Looks odd on inspection but this could be a case of aesthetics be damned! I get (curl) left shift and retain ease of reach to the *hyphen* and *slash*, retaining home row coverage. Just wish the new left shift key could be slightly bigger!

Last edited by sdothum (01-Apr-2015 14:37:56)
Offline
  • 0
  • Reputation: 117
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 978

Yes you're right, in my haste I inserted the square brackets in the wrong column! That configuration is fairly close to what I currently use, although my Z stays on left pinkie as I have an ISO keyboard:

     `  1 2 3 4 5 = 6 7 8 9 0 - 
    Tab  Q W F P B [ J L U Y ; #  
     Ext  A R S T G ] M N E I O ' Enter
   Shift Z X C D V \ / K H , .  Shift
Ctrl Win Alt Space Shift AltGr  Pn  Ctrl

For the central *square brackets* and *slash* in the wide-mod: which hand do you find best for these keys? Do you do a long index finger reach or shift the whole hand over?

In practise I almost never use the centre column. Instead, I use a "symbols layer" on AltGr to get most of the symbols, so that I don't need to stretch fingers for any common character.

Last edited by stevep99 (01-Apr-2015 18:02:15)

Using Colemak-DH with Seniply.

Offline
  • 0
  • Reputation: 1
  • From: Canada
  • Registered: 23-Mar-2015
  • Posts: 27

Ah yes, I remember seeing your AltGr symbol layer. I would have to do a major hotkey remapping for that layer (to the Win key which I already heavily use) as controlling my *nix tiling window manager environments with the Alt key is pretty much ingrained from a decade of usage and, unfortunately, the Poker 2 does not distinguish between the left and right Alt keys.

The beauty of programming a keyboard like the Poker 2 to implement these Colemak variations is that I can simply plug it into any computer and I am good to go -- in fact, I am finding that I have to do that now, as I have become so accustomed to the Curl mod in this short time! As symbols and special characters aren't used significantly by me, I can continue to make do with the "shift + number" row for now.

The relocated Shift to the Qwerty Z position really does feel noticeably better -- not surprisingly, since it restores the ANSI Shift (relative) position with the Curl mod. Both pinkies are happy now! The symbol groupings are relatively intact and still look reasonably balanced (depending on your personal aesthetic, I'm biased!), save for the inner Shift, and the *equal* sign is still accessible.

I think I have a layout that I can stick with for more than a day now! :-)

...

This is the layout I finally settled on with changes to the left hand symbol cluster -- my *nix/Vim usage shows..

     `  = 1 2 3 4 5 6  7 8 9 0 [  ]
    Tab  - Q W F P B  J L U Y ; '  Del
     Esc  / A R S T G  M N E I O  Enter
    \  Shift X C D V Z  K H , .  Shift
Ctrl  Win  Alt   Space   Backspace  Fn  Pn  Ctrl

I originally thought that I'd want a larger *left shift* key but it actually is better as is, allowing easy reach of the *backslash* -- use it to conveniently "escape" characters (plus, it doesn't look out of place, being almost in the mirror position it was on the right hand side!). I can't say enough about how effective it is to be able to curl the pinkies to press the *shift* keys.

Last edited by sdothum (06-Apr-2015 00:25:50)
Offline
  • 0
  • Reputation: 117
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 978

Just wanted to report that I have a new version of my layout analyzer tool, which no longer requires Java to be installed.

https://colemakmods.github.io/mod-dh/analyze.html

I found a nice way to adapt Java applets to HTML5, so this new version is entirely web-based. That should eliminate the annoyances/security concerns with using client-side Java. It also looks a bit nicer too I think!

Using Colemak-DH with Seniply.

Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,360

Nice!

Is there a way to make the totals stand out a bit more? I had some trouble reading where the end result was at first. If you could bold the totals lines that'd help.

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • From: Los Angeles, California, USA
  • Registered: 19-Feb-2015
  • Posts: 18

Indeed that is nice! I managed to get it to work before, but only after jumping through some hoops. Now if only my company didn't block spwebgames. That problem is not likely to affect the vast majority of people, though, but it means I can't screw around with your applet at work! :-)

Offline
  • 0
  • Reputation: 117
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 978

I was thinking about "lite" DH mod i.e. DbgHk.

I guess the attraction of this is the fewer changes from Qwerty - and base Colemak - involved.
But I was wondering why you wouldn't prefer a version with the original clockwise D>P>G rotation:
D>P>G
H<>K
This gives improved D and G but worse P, which is similar to the improved D and G but worse B that DbgHk gives.
But it also results in 17 changes net from Qwerty, same as original Colemak, which is one less than DbgHk.
The D is possibly slightly better in the Qwerty R than in the B position? The other factor would be how you feel about moving P vs B.
Overall I'd say there's very little difference between DbgHk and DpgHk, but perhaps the total changes from Qwerty remaining at 17 would be significant for some...

You could also combine the H<>M switch with D>P>G if you were willing to allow 18 changes from Qwerty for the improved H.

Not wanting to overcomplicate things - but it seems there is a family of possible DH mods!

Last edited by stevep99 (13-May-2015 11:59:33)

Using Colemak-DH with Seniply.

Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,360

Indeed, an interesting thought. And yes, moving fewer keys is enticing – but it cannot be the main driving force of course!

I feel that the D sits a lot better in the B position than in the Colemak P position. And that the QWERTY T position is better suited for B than for P – although that must be a very minor point considering frequencies alone, as GPB are all in the 1.5–2.0% frequency range (whereas D is more than twice as common as G). The more important point there would be bigrams and I can't quite envision how they'd work out with your suggested mod compared to the Dbg one.

I think that my antipathy towards the Colemak P and G positions stems from my straight wrists when typing – which again is the nice result of having used the Angle mod for a long time now. A straight left wrist makes the PG positions less comfortable but the B position a lot nicer than before. So if you want your wrists straight like mine I think the Dbg mod is better.

The Curl mod also helps keep wrists straight and hands in a relaxed starting position (index fingers at the lower edge of the home key, middle and ring fingers at the upper edges of theirs). This way, the wrists are straight and the fingers comfortable – but it changes key preferences just a bit. Colemak BK become much more attractive, but PL become a bit more awkward.

Last edited by DreymaR (19-May-2015 16:01:41)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,360

While wading through the recently upturned grave of a post from 2006, courtesy of our resident necroposter Piotr ;-) – I came across this nugget of history gold:

DreymaR, Dec 2006 said:

The only snags I can think of right now, apart from the Dvorak-Colemak transition being harder because Dvorak had me changing hands for many keys, are the somewhat less comfortable positions of G and H.
[...]
I think Shai is right: As the Colemak stands now, you'd be hard pressed indeed to find even 2 keys to move that wouldn't mess up something else enough to ruin the benefit. It seems that solid.

Well, that's just hilarious isn't it?! I've forgotten that post completely, although I did remember being a little displeased with the Colemak G position (but especially after switching to the Angle mod!). And now these two keys as well as D are in fact in better positions without messing up more than 1 more key movement from standard Colemak (and dethroning B and K a little). ;-)

Also note me bragging about my shirts of chain mail. Ahh, those were the days...

Last edited by DreymaR (05-Jun-2015 19:53:12)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 117
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 978

As a relative newcomer, I find some of those old threads from the early days of Colemak do indeed have some illuminating titbits.  Interesting to read some of Qwertie's comments too, being the Asset guy. 
DreymaR, how long were you a Dvorak user before you joined the Colemak rebellion?  You clearly must have overcome those initial concerns about Colemak you had back then. Perhaps the cunning use of AltGr and extend layers helped too - esp for example for your funny norwegian symbols...  :-P

Last edited by stevep99 (06-Jun-2015 16:17:34)

Using Colemak-DH with Seniply.

Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,360

I started with Dvorak a year or two before I heard of Colemak; can't quite remember off the top of my head how long I spent with Dvorak, really. Then I spent a lot of time thinking – even thinking up layouts myself before I realized that I couldn't improve on Colemak. I learnt a lot from that process though. I think that several more astute layout designers like Qwertie/David came to pretty much the same conclusion eventually: Colemak is a really good layout for most purposes, and one of the very best for many.

My speeds have improved quite slowly: I was a 50 WPM typist with QWERTY and I think 55–60 WPM with Dvorak at the best, but only lately have I gotten to 65–70 WPM consistently for texts in Amphetype using Colemak(-Curl).

I've always found the Colemak AltGr layers wrong for me. Hence my Colemak[eD]. And Extend layers weren't really invented before I and others did it around 2008 I think? For the ÆØÅ I was in trouble with their Norwegian Dvorak placements that didn't work for me, but the Colemak AltGr placements certainly aren't good enough for typing Norwegian with either. However, Colemak doesn't mess with the symbol keys at all so I could just use the symbol mappings from the Norwegian QWERTY layout; this is what I now call a 'keep local symbols' locale layout. It was quite a bit later I settled on the Colemak[eD] 'universal symbols' strategy.

Last edited by DreymaR (07-Jun-2015 17:08:16)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • Registered: 25-Aug-2015
  • Posts: 15

I have a question about the numbers on https://colemakmods.github.io/mod-dh/compare.html.

So first: what is the difficulty index on the key between the two 2.6 keys?

Secondly: Why is the difficulty index on the bottom row ring finger so low? It is the hardest one of all in my opinion, because you have to press it akwardly with your finger nail.

Offline
  • 0
  • Reputation: 117
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 978
kim366 said:

I have a question about the numbers on https://colemakmods.github.io/mod-dh/compare.html.

So first: what is the difficulty index on the key between the two 2.6 keys?

That key is not shown in the diagram, as it is not used for an alphabetic character when using the angle mod. The angle mod is strongly recommended for Mod-DH. For comparing non-angle-mod layouts in my analyzer, I use a value of 4.0 for that key as it's even worse than J.

kim366 said:

Secondly: Why is the difficulty index on the bottom row ring finger so low? It is the hardest one of all in my opinion, because you have to press it akwardly with your finger nail.

The bottom row ring finger - that scores 2.8? I wouldn't say that was especially low, but maybe it could score higher. All the numbers are just my estimates based on my experience and reading other peoples opinions. If you want you can put your own choice of the numbers in the analyzer to see how it effects the results.

Last edited by stevep99 (21-Sep-2015 18:30:23)

Using Colemak-DH with Seniply.

Offline
  • 0
  • Reputation: 0
  • Registered: 19-Jan-2016
  • Posts: 37

Can someone explain the logic behind moving K to a better position than M? This doesn't happen in Dreymar's light-DH-mod.

Offline
  • 0
  • Reputation: 117
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 978

I guess you are referring to this pattern of keys in Mod-DH...

M
K H

When I created Mod-DH, the idea was to minimize access to the centre-column keys, while at the same time keeping as few changes as possible to standard Colemak. As DreymaR has pointed out, arguably the Colemak K / Qwerty N position is not as bad as H on the middle-row. Since M is more common than K, you could for example have:

K
M H

However, this does mean 3 right-hand keys changed from standard Colemak instead of 2. Also, for those with matrix-like keyboards, the M would suddenly seem badly located for a mid-frequency key.

At the end of the day I think the difference between those two options is quite minor, so I'd prefer the one with fewer changes.

Last edited by stevep99 (26-Jan-2016 18:24:30)

Using Colemak-DH with Seniply.

Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,360

I agree with Steve there. More moved keys not only makes learning the layout slower, but makes typing on QWERTY keyboards more stressful in my opinion.

If you go from Colemak to Colemak-DH, the K doesn't move. In the vanilla Colemak philosophy the QWERTY N position is considered inferior to the QWERTY H (home row) position so the K is "demoted" down there, while the M is kept in place because it doesn't need moving.

Only in the past couple of years have we started thinking of the QWERTY N position as a very good one.

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Qai
  • New member
  • Reputation: 0
  • Registered: 01-Apr-2016
  • Posts: 3

New Mod-DH (with angle shift mod) user reporting for duty! Bloody fantastic layout. Thank you!

Offline
  • 0
  • Reputation: 0
  • Registered: 11-Oct-2013
  • Posts: 79

I've always found this to be interesting, but I'm considering trying it out myself now. Is the "Curl" referring to the fact that you curl your finger to hit h and d (in other words are "Curl-DH" and "Mod-DH" the same thing)?

I've been using my own wide mod for a while. Unfortunately I have an ANSI keyboard which makes things more annoying. I think I'm going to try out the Dvbg version that moves z to the middle (does this variant have an official name)? I've never used an angle mode before; have you guys found the fingering to make a significant difference? Also, for the Hm swap do you guys still use the same location for left in vim or do you swap that too?

What layout are you using now DreymaR?

Last edited by angelic_sedition (01-May-2016 21:15:51)
Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,360

Yes, "Curl" refers to the natural way of holding your hand relaxed over the keys, fingers following a slight curve so that the index fingers gravitate towards the lower row (and the middle fingers slightly towards the upper, incidentially). On Colemak, that indeed means Mod-DH.

You want Stevep99's Dvbg mod (I suppose you want the Hm mod on the right hand too then?), with the ANSI Angle(Z) mod and a Wide mod of your own making. I'm supporting that in Linux, since my xkb files are modular – apart from the custom Wide which you'd have to tweak yourself obviously. :-) But so far that "support" still entails tweaking a few files I think.

It doesn't really have a very catchy name, I guess. Steve would refer to it as "the" (ANSI) DH-mod, pretty much, I guess, while I'd call it Curl(DvbgHm)Angle(Z)Wide(Angelic) which is obviously very technical and not very snappy. Colemak-CAW is quite snappy, but personally I use that specifically for my own flavor of CurlAngleWide.

I don't know the impact of the ANSI angle mods since I'm lucky enough to be an ISO keyboardist. Haven't got much feedback on them either, so far. I'd love to hear some. On ISO, there's no real change in fingering which is sweet. I've heard of ANSI users wanting to switch to ISO because of this.

My own flavor, yes. That'd be Curl(DbgHk)Angle(ISO)Wide(/). You'll find it near the top of my BigBag sig topics!

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • Registered: 11-Oct-2013
  • Posts: 79

I'm leaning towards the Dvbg/Hm mod, but I have to think a bit more about whether I might prefer your Dbg/Hk version. The latter wouldn't require me to switch my fingering for the main benefit (I currently use my middle finger for the default Colemak m position), but I think I'd benefit from changing my fingering even without the mod. I'm also iffy on the Hm swap when it comes to keybindings. The Dvbg or Dbg swaps actually improve the placement of these keys for vim. On the other hand, the Hm or Hk swap breaks the last remaining key from hjkl. I have to decide what I want to do about that.

Thanks. I'll use "Angle(Z)" if I need to be more descriptive.

I've learned on and usually typed on ANSI keyboards, so the fingering change is going to be weird, but looking at it now, I wish I had started with it. Is the angle mod the normal fingering for people who use ISO keyboards?

Offline
  • 0
  • Reputation: 117
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 978

Most people haven't heard of the angle mod of course, but my casual observations of other people typing reveals quite a lot of people don't use the supposedly "standard" typing method, especially when it comes to keys like C. In practise people tend to develop ad-hoc techniques to cope with the fact that the standard keyboard is so poorly designed.

Colemak has been designed with proper finger placement in mind though, which means you either have to (i) use the "standard" (i.e. uncomfortable) technique, (ii) use the wrong fingers for some keys, or (iii) use the angle mod.  The best option being (iii).

It should be clarified though that whichever DH mod you use, they are all intended to preserve default colemak fingering. Obviously the situation is made a little more tricky by being an ANSI user though :)

If it helps, my write-up of the Angle mod is here.

Last edited by stevep99 (03-May-2016 11:44:12)

Using Colemak-DH with Seniply.

Offline
  • 0