• You are not logged in.

Learn Colemak in steps with the Tarmak layouts!

  • Started by DreymaR
  • 88 Replies:
  • Reputation: 2
  • Registered: 22-Nov-2020
  • Posts: 3
DreymaR said:

• Also note that the very latest EPKL commit is awesomesauce! It finally contains a Layout/Settings UI that should make life so much easier for newcomers.

I had originally just pulled down the archive of the latest release since I wasn't planning on doing any code changes, but I've now forked and cloned the repo so I can work on the latest version.  Hopefully I'll have time to look at it more closely over the next few days.  The UI looks nice and will be very helpful for newcomers!

DreymaR said:

Best of luck and yes – if you want to contribute we'll find lots of cool stuff to do! And making a Tarmak-CAW sequence w/ images by using the remaps sounds awesome. Did you manage to make images using the EPKL Help Image Generator (HIG) and Inkscape?

Yes, I was able to use HIG & Inkscape to generate images for Tmk-eD-Tm1_ANS_CurlAWide.  However, of course, this means the images are just the characters.  I used the Bg_@K_FingerShui-AWide-eD background.  I've been slowly looking through the image generation code to understand how the images are generated.  It would be nice to somehow combine the colorful eD background with the highlighting of the keys for the current stage of Tarmak, but I'm not sure if that would be more trouble than it's worth.  Do you have any suggestions there?  Maybe we could control the color of the appropriate characters for each stage of Tarmak programmatically so we don't have to make a different background for each layout.

[edit: You're right, something's fishy. For one thing, I've baked the Angle mod into the Tarmak_#C_ layouts without calling them Tarmak_#CA_ as I should. But even accounting for that, there's something that prevents them from working. The plain Tarmak_# layouts work just fine it seems. I'll have to look into it.]

I'll try and see if I can figure it out as well.

Edit: After adding some debug logging, I figured it out.  Not sure how I missed it earlier, but the Tarmak_2 - 4 settings were:

Tarmak_2C_ANS   =  Tarmak_2     ,  Curl-DH-Mod  ,  Angle_ANS
Tarmak_3C_ANS   =  Tarmak_3     ,  Curl-DH-Mod  ,  Angle_ANS
Tarmak_4C_ANS   =  Tarmak_4     ,  Curl-DH-Mod  ,  Angle_ANS

"Curl-DH-Mod" doesn't exist.  I changed it to "Cmk-Curl-DH" and it worked, but the Angle mod was being applied twice because, as you mentioned:

... I've baked the Angle mod into the Tarmak_#C_ layouts without calling them Tarmak_#CA_ as I should.

So, I removed the Angle mod from the remap to make it more flexible, and now I'm getting exactly what I expected to.

I'll put together a commit and open a pull request into your repo with at least the full set of Tarmak ANS_CurlAWide layouts.

Last edited by androit (27-Nov-2020 03:10:28)
Offline
  • 0
  • Reputation: 148
  • From: Oslo, Norway
  • Registered: 13-Dec-2006
  • Posts: 4,992

Excellent catch! I'd updated the name a while back but forgot about the tarmaks in the process.  (b ̄◇ ̄)b

I realized the names were getting long so I'll use this nomenclature now:

...
Tmk-4C_ISO      =  Tarmak-4     ,  Cmk-Curl-DH
Tmk-2CA_ISO     =  Tarmak-2     ,  Cmk-Curl-DH  ,  Angle_ISO
...

I'm still tweaking EPKL like nobody's business to get the Settings UI done. I'll also allow a @M shortcut for the Main Layout in the EPKL_Layouts files. Then when it's all settled, I'll call it a new release – EPKL v1-2-0! I think that'll be appropriate with the settings GUI in place. So maybe you'll want to hold off the forking a little pending that storm to pass. It should all be done some time next week I hope.

I have of course thought about how to implement the bold and color-coded keys for the Tarmak images. I didn't come to any conclusions on that... but I just realize that it'd be possible to add another layer to the image template and use that. It's what I've already done to create yellow auras around the dead keys in an image. Might have to provide a table in the image settings regarding which keys to mark in what color, so it'd be a bit clunky but doable. I originally made those images with Inkscape and used a layer of fat and colorful letters for the original Tarmak images. I could share my SVG image with you if you want to have a look at it. It does sound like a somewhat daunting task though...

Could have an entry like this in the HIG settings:

markColors = #c00:_E/_N/_K, #990:_B/_T/_F, #009:_J     ; Tarmak2 colors

Only the keys in those lists would get marked and colored in the "fat letters" layer. This way we could also make bold letters in any layout image, by using the #000 color. Not sure if we should use the web-safe colors for brevity or the full #cc0033 color format.

Since I have you on the line though: In the latest commit, I just noticed that the help images don't update when I use a dead key anymore! This is something I fixed in the Nov 12 commit, but now it's all gone bad again and I have no idea why. I haven't been editing the pkl_gui_image.ahk file that I know of lately so I don't know what made this happen.

I have another issue that I want to fix, but I think I'll get that done soon. I allowed remaps and remap cycles to be in the Layout Stack in the latest commit, but it seems to have made EPKL rather sluggish on startup. So I'll try to undo that and move the change to pkl_init.ahk where it should do less damage. I only want the main maps and cycles to be available in the LayStack anyway, and maybe I'll make an initial check to see if the active layout even uses that.

Last edited by DreymaR (27-Nov-2020 15:14:56)

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

Offline
  • 0
  • Reputation: 2
  • Registered: 22-Nov-2020
  • Posts: 3
DreymaR said:

I realized the names were getting long so I'll use this nomenclature now:

...
Tmk-4C_ISO      =  Tarmak-4     ,  Cmk-Curl-DH
Tmk-2CA_ISO     =  Tarmak-2     ,  Cmk-Curl-DH  ,  Angle_ISO
...

I'm still tweaking EPKL like nobody's business to get the Settings UI done. I'll also allow a @M shortcut for the Main Layout in the EPKL_Layouts files. Then when it's all settled, I'll call it a new release – EPKL v1-2-0! I think that'll be appropriate with the settings GUI in place. So maybe you'll want to hold off the forking a little pending that storm to pass. It should all be done some time next week I hope.

Perfect, I'll use that nomenclature when I make my changes.  If I make changes before you're done, I can always merge/rebase as needed.

DreymaR said:

Since I have you on the line though: In the latest commit, I just noticed that the help images don't update when I use a dead key anymore! This is something I fixed in the Nov 12 commit, but now it's all gone bad again and I have no idea why. I haven't been editing the pkl_gui_image.ahk file that I know of lately so I don't know what made this happen.

I haven't explored dead keys yet, so I'm not familiar with how to use them.  That's something I was planning on exploring soon anyway, so I'll learn more about them and see what I can find that might have broken their images in the latest commit.

DreymaR said:

I have another issue that I want to fix, but I think I'll get that done soon. I allowed remaps and remap cycles to be in the Layout Stack in the latest commit, but it seems to have made EPKL rather sluggish on startup. So I'll try to undo that and move the change to pkl_init.ahk where it should do less damage. I only want the main maps and cycles to be available in the LayStack anyway, and maybe I'll make an initial check to see if the active layout even uses that.

Aren't remaps already available in the LayStack?  Maybe I'm misunderstanding the terminology; is it not considered using remaps when you reference them in mapSC_layout, i.e.

mapSC_layout    = Cmk-CAW_@K

?

As we start to shift away from the subject of Tarmak, would it be appropriate to move discussions elsewhere?  I suggest GitHub issue(s) so we can more easily reference code and find these discussions in the future.

Offline
  • 1
  • Reputation: -1
  • From: Poland, birthday 8 №v 2004
  • Registered: 02-May-2015
  • Posts: 110
DreymaR said:

=
Keep your hands at home position (QWERTY ASDF JKL;) and stretch inwards then down. Which is more comfortable?
    • If you like the inwards stretches (QWE GH) best, ignore the curl mod. (Or, try again while keeping your wrists straight as they should ideally be!)
    • If you like the downward curls (QWE CM) best, consider Colemak-DH!


But what if the user prefers just the downward staggered movements, without the curl mod (qaz VM)? The user might then like to use the DH without the curl mod.

Offline
  • 0
  • Reputation: 148
  • From: Oslo, Norway
  • Registered: 13-Dec-2006
  • Posts: 4,992

I think you're confused? The Curl mod is the DH mod, they are the same. There have been some variants, but we're back to the original DH(m) mod by SteveP as the standard now. One variant used down-center instead of down-outwards curls.

Many are confused about the Angle mod, which we consider a natural part of the DH mod for row-staggered boards but not for matrix boards. Is that what you're mixing up too?

*** 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: Poland, birthday 8 №v 2004
  • Registered: 02-May-2015
  • Posts: 110
DreymaR said:

I think you're confused? The Curl mod is the DH mod, they are the same. There have been some variants, but we're back to the original DH(m) mod by SteveP as the standard now. One variant used down-center instead of down-outwards curls.

Many are confused about the Angle mod, which we consider a natural part of the DH mod for row-staggered boards but not for matrix boards. Is that what you're mixing up too?

I mean this:

j8sdyPg.png

Offline
  • 0
  • Reputation: 84
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 830

But that doesn't make sense. In your image, C and H are in equivalent positions, as are D and K.

If someone thinks the D in that image (Qwerty V key) really is better, then logically, they must also think K (Qwerty N key) is better too. I don't see how anyone could actually think those keys are better - unless their hands are approaching the keyboard in a very uncomfortable angle.

Using Colemak Mod-DH with some additional ergonomic keyboard mods.

Offline
  • 0
  • Reputation: -1
  • From: Poland, birthday 8 №v 2004
  • Registered: 02-May-2015
  • Posts: 110
stevep99 said:

But that doesn't make sense. In your image, C and H are in equivalent positions, as are D and K.

If someone thinks the D in that image (Qwerty V key) really is better, then logically, they must also think K (Qwerty N key) is better too. I don't see how anyone could actually think those keys are better - unless their hands are approaching the keyboard in a very uncomfortable angle.

C and H cannot possibly be equivalent in the staggered layout. C with middle, H with index. This is not a CT same finger layout. D is a move down with the stagger but K is diagonal. If they think index is better that doesn't mean they think diagonal moves are better.

Last edited by PiotrGrochowski (09-Jan-2021 14:35:07)
Offline
  • 0
  • Reputation: 84
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 830

They are equivalent geometrically - C is midway between S and T, and H is midway between N and E. OK, so the traditional scheme says to use middle finger for C, but if that's really more comfortable, why don't people use their middle finger for H? Obviously that's an absurd suggestion, but it's logical counterpart of using middle finger for C. The fact that H is highlighted and people think it's a comfortable position for the index finger, tells you all you need to know.

Even if people reject all common sense and insist on using middle finger for C, that still doesn't explain why D is treated differently from K in that image, as those two keys are also symmetrically equivalent, and both with index fingers, even in the traditional finger scheme.

Last edited by stevep99 (09-Jan-2021 16:16:00)

Using Colemak Mod-DH with some additional ergonomic keyboard mods.

Offline
  • 0
  • Reputation: -1
  • From: Poland, birthday 8 №v 2004
  • Registered: 02-May-2015
  • Posts: 110
stevep99 said:

They are equivalent geometrically - C is midway between S and T, and H is midway between N and E. OK, so the traditional scheme says to use middle finger for C, but if that's really more comfortable, why don't people use their middle finger for H? Obviously that's an absurd suggestion, but it's logical counterpart of using middle finger for C. The fact that H is highlighted and people think it's a comfortable position for the index finger, tells you all you need to know.

Even if people reject all common sense and insist on using middle finger for C, that still doesn't explain why D is treated differently from K in that image, as those two keys are also symmetrically equivalent, and both with index fingers, even in the traditional finger scheme.

The keyboard is with stagger, not curl. Stagger is of course asymmetric as the bottom row is shifted constantly to the right (and top row to the left). Using the middle for H would go against the stagger. If you want geometrical symmetry then that's impossible because each top row and number row key would correspond to the edge between two keys on the other hand. The constant shift is how stagger fundamentally works.

The C cannot be on index finger because DH does not intend to make CT same-finger. It's not the Workman C.

The D is treated differently from K, because of, again, how the stagger works. Moving down from T and N (with stagger, not curl) makes D and H. The right hand then has to move left to arrive at K.

Last edited by PiotrGrochowski (09-Jan-2021 16:50:12)
Offline
  • 0
  • Reputation: 84
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 830

the bottom row is shifted constantly to the right

Only if you define it as such. You could equally define it as being "shifted half a key to the left". That's the point: the physical keyboard geometry is what it is, and so people can adapt to it however they want. There is no authority enforcing the "shifted to the right" idea, or going around checking people are using the middle finger for Qwerty C. All that stuff is just historic convention - and highly illogical at that.

The essence of being an alternative layout user is that efficiency trumps outdated conventions. If we all just stuck with convention we'd still be using Qwerty.

If you want geometrical symmetry then that's impossible because each top row and number row key would correspond to the edge between two keys on the other hand.

We were not discussing the top row, only the bottom row C,D,K,H keys (in the image above) and their position in relation to the home keys. And those are symmetrical. Of course, people can still use the assymetric fingering system on the bottom row if they really want to, but it's nonetheless objectively worse.

Last edited by stevep99 (09-Jan-2021 19:01:49)

Using Colemak Mod-DH with some additional ergonomic keyboard mods.

Offline
  • 0
  • Reputation: -1
  • From: Poland, birthday 8 №v 2004
  • Registered: 02-May-2015
  • Posts: 110
stevep99 said:

the bottom row is shifted constantly to the right

Only if you define it as such. You could equally define it as being "shifted half a key to the left". That's the point: the physical keyboard geometry is what it is, and so people can adapt to it however they want. There is no authority enforcing the "shifted to the right" idea, or going around checking people are using the middle finger for Qwerty C. All that stuff is just historic convention - and highly illogical at that.

The essence of being an alternative layout user is that efficiency trumps outdated conventions. If we all just stuck with convention we'd still be using Qwerty.

If you want geometrical symmetry then that's impossible because each top row and number row key would correspond to the edge between two keys on the other hand.

We were not discussing the top row, only the bottom row C,D,K,H keys (in the image above) and their position in relation to the home keys. And those are symmetrical. Of course, people can still use the assymetric fingering system on the bottom row if they really want to, but it's nonetheless objectively worse.

How is it objectively worse to avoid CT bigram? Colemak is designed for the staggered fingering (with no intent to make CT same finger) and the DH I have shown does not change it.

Offline
  • 0
  • Reputation: -1
  • From: Poland, birthday 8 №v 2004
  • Registered: 02-May-2015
  • Posts: 110
stevep99 said:

the bottom row is shifted constantly to the right

Only if you define it as such. You could equally define it as being "shifted half a key to the left". That's the point: the physical keyboard geometry is what it is, and so people can adapt to it however they want. There is no authority enforcing the "shifted to the right" idea, or going around checking people are using the middle finger for Qwerty C. All that stuff is just historic convention - and highly illogical at that.

The essence of being an alternative layout user is that efficiency trumps outdated conventions. If we all just stuck with convention we'd still be using Qwerty.

If you want geometrical symmetry then that's impossible because each top row and number row key would correspond to the edge between two keys on the other hand.

We were not discussing the top row, only the bottom row C,D,K,H keys (in the image above) and their position in relation to the home keys. And those are symmetrical. Of course, people can still use the assymetric fingering system on the bottom row if they really want to, but it's nonetheless objectively worse.

How is it objectively worse to avoid CT bigram? Colemak is designed for the staggered fingering (with no intent to make CT same finger) and the DH I have shown does not change it. For the DH I have shown, the staggered fingering (52 points, as in Colemak) is better than the 'Angle' fingering (63 points) for same finger and does not require diagonal (relative to the stagger direction) movement for the D.

qwfpbjluy;
arstgmneio
zxcdvkh,./
qwfpbjluy;arstgmneiozxcdvkh,./
ue9 kn9 sc8 pt5 ln4 wr3 kl2 dg2 tb1 tg1 az1 ml1 nh1 yi1 mn1 dv1 fs1 mh1 jm0 lh0 jk0 bv0 qa0 pb0 rx0 mk0 gv0 td0 jl0 db0 pg0 jn0 bg0 qz0 wx0 fc0 pd0 pv0 jh0 tv0 kh0
Same finger points: 52

qwfpbjluy;
arstgmneio
vzxcdkh,./
qwfpbjluy;arstgmneiovzxcdkh,./
tc20 ue9 kn9 pt5 ln4 wr3 gd2 kl2 mn1 yi1 tg1 tb1 nh1 ml1 vd1 mh1 fs1 rz0 lh0 pc0 bd0 jk0 qa0 jm0 sx0 mk0 pb0 jl0 cb0 pg0 jn0 cg0 bg0 wz0 fx0 td0 pd0 cd0 kh0 vp0 jh0 vt0 vg0 vc0 vb0
Same finger points: 63

(Note: I did take into account the positioning in the v for the second one, as seen in the list of same finger bigrams.)

Last edited by PiotrGrochowski (09-Jan-2021 19:47:34)
Offline
  • 0
  • Reputation: 148
  • From: Oslo, Norway
  • Registered: 13-Dec-2006
  • Posts: 4,992

Okay, sorry for my saying so but this debate has nothing to do with learning Colemak the Tarmak route. Please make a new topic?

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

Offline
  • 0