• You are not logged in.

Learn Colemak in steps with the Tarmak layouts!

  • Started by DreymaR
  • 95 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: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,361

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: -5
  • From: Banned
  • Registered: 02-May-2015
  • Posts: 116
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.

Banned from Colemak

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

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: -5
  • From: Banned
  • Registered: 02-May-2015
  • Posts: 116
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

Banned from Colemak

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

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-DH with Seniply.

Offline
  • 0
  • Reputation: -5
  • From: Banned
  • Registered: 02-May-2015
  • Posts: 116
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)

Banned from Colemak

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

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-DH with Seniply.

Offline
  • 0
  • Reputation: -5
  • From: Banned
  • Registered: 02-May-2015
  • Posts: 116
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)

Banned from Colemak

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

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-DH with Seniply.

Offline
  • 0
  • Reputation: -5
  • From: Banned
  • Registered: 02-May-2015
  • Posts: 116
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.

Banned from Colemak

Offline
  • 0
  • Reputation: -5
  • From: Banned
  • Registered: 02-May-2015
  • Posts: 116
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)

Banned from Colemak

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

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
  • cm
  • Member
  • Reputation: 0
  • Registered: 31-Jul-2021
  • Posts: 5

Does anyone have images on the Tarmak steps for ANSI Colemak-DH as described in the bottom of Post #2? Or would using the ISO keyboards for reference be okay too? Thanks.

Also, sorry if this question has been asked before, but how hard is the transition from Colemak to Colemak-DH?

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

Hi! Oh, you've made a Tarmak learning tool! That's nice. Could you please add links to the BigBag there?

The BigBag link:
https://dreymar.colemak.org/

If you just want the Tarmak link:
https://dreymar.colemak.org/tarmak-intro.html

I thought it'd be logical enough for users that I show the ISO progression and how to make the ANSI one. But you're not the first one to ask so maybe I'll have to add the actual ANSI images to the BigBag pages as well.

However, they can still be found in EPKL:
https://github.com/DreymaR/BigBagKbdTri … rlDH-Angle

Thanks for giving me credit. Not everyone do, it's appreciated.

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

Offline
  • 1
  • cm
  • Member
  • Reputation: 0
  • Registered: 31-Jul-2021
  • Posts: 5

Thanks DreymaR! :D

Last edited by cm (01-Aug-2021 15:52:42)
Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,361

I notice that for the "vanilla Tarmak 1" image you used the ISO image from the DH progression, and for the rest you use the images without the ISO key.

You probably want this one for Tarmak 1:
  https://dreymar.colemak.org/res/cmk/tar … _RBo_E.png

By the way, I tried out your tool since I wanted to link to it, but I couldn't get it to work? I switched to a QWERTY US layout and suspended EPKL, but the letters were all red and Space didn't work. I must be doing something wrong...?

Last edited by DreymaR (02-Aug-2021 10:32:58)

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

Offline
  • 0
  • cm
  • Member
  • Reputation: 0
  • Registered: 31-Jul-2021
  • Posts: 5

That's strange... could you try the tool again, but after typing a word, 1) inspect the page 2)open the console, and 3) tell me what the output is?

edit: :w00t: Finally 30 WPM on Tarmak 3

Last edited by cm (02-Aug-2021 19:32:05)
Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,361

I got it to work on vanilla Tarmak5, with EPKL suspended. Something went wonky when I re-tried it on Tarmak5-DH, but I'm not sure what that was about.

Will you add Tarmak-DH-ISO as well?

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

Offline
  • 0
  • cm
  • Member
  • Reputation: 0
  • Registered: 31-Jul-2021
  • Posts: 5

Hi, extremely sorry for 2 month late reply.

I don't plan on updating the project anytime soon given the current circumstances, but you can fork the project and add it if you want (repl.it, search user Smart0ne, project Transitional Colemak).

Offline
  • 0