Author Topic: Balanced Keyboard Layout  (Read 79017 times)

philippe.quesnel

  • Valued Member
  • ***
  • Posts: 68
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1300 on: April 04, 2018, 09:32:09 AM »
After trying these CLPs out, going back to BEAKL15 (same thing when trying out X7-1H), I noticed right away how the reach to middle columns bothered me.

So .. my latest layout craziness : take the digits out of the beak syms layer as suggested to free up some nice spots.
And tried "putting the squeeze" on BEAKL15, ie reduce distance by moving the mid-column stuff to the altGr layer and reorganize puncs/syms some.
This of course ends up being at the expense of other measurements, but I am getting interesting results.
Less finger strain, more "brain strain" ! have to get use to this, it is not as intuitive

Gives something like this, the [?] keys are the moved ones.
Tried to keep same fingers (same hand of course) as much as possible..
D stays on main taking M's place, M G W go to AltGr
I also swapped the  , / keys on the left hand
and moved down (squeeze, squeeze !) some of the symbols from the top row, kept the easiest positions (longest fingers)
Code: [Select]
  q h o u [x]  [g] c r f z   
- y i e a [.]  [d] s t n b ;
  j , / k [']  [w] d l p v   
 
    % _              ^ ~     
  : < " >  `       [ = ] @   
- \ ( . ) #      $ m { } | ;
  * - x ' !        g w + &   

« Last Edit: April 04, 2018, 09:36:41 AM by philippe.quesnel »

philippe.quesnel

  • Valued Member
  • ***
  • Posts: 68
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1301 on: April 04, 2018, 11:38:39 AM »
Ian, you had asked about scripts / programs that could help in creating / converting KLA json files,
you might want to have a look at a small go program I wrote : https://github.com/phques/txtkbd2kla
It's pretty basic, but it helps

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1302 on: April 04, 2018, 11:58:18 AM »
I have it brought it up in the design of my phonetic script. (http://shenafu.com/smf/index.php?topic=117.msg1661#msg1661.) Such that 'TH' and 'NG' should be their own new single letters. Where TH is common in European languages, and NG is common in Europe, Asia, and Africa.

As for how to implement it on a keyboard. What are some ideas without inventing a new letter? Macros? Autocorrect? Replacement? (e.g. typing z becomes th).

Oddly enough I was thinking along these lines the other day, thinking that we really don't need existing 26 letters in English, eg Q or X sounds can be made with other letters.
On the other hand we could do with more vowels, so we can get away from that silly "magic e" that turns rat into rate and not into note etc.

FWIW if you're gonna substitute th with something for phonetic reasons you'll need two characters... for hard and soft th.

But don't get me started on redesigning English spelling... whole different ball game, where smarter people than me have tried and failed (so far).

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1303 on: April 04, 2018, 12:11:01 PM »
Ian, you had asked about scripts / programs that could help in creating / converting KLA json files,
you might want to have a look at a small go program I wrote : https://github.com/phques/txtkbd2kla
It's pretty basic, but it helps

thanks, interesting.

I did find this on github as well, for converting mac layouts to windows.

https://github.com/adobe-type-tools/keyboard-layouts

I've finished soldering my keyboard and the Teensy board seems to have survived the ordeal, now trying to find a gap and the courage to try to load a driver on it and get it to work... (fear of unknown procedures meets fear of failure -> procrastination.) for which I will eventually need an xkb file as well... so maybe should first do some code to do KLA.json -> xkb, for defined keyboard layouts. Should probably start with ANSI ones first since that's easiest to debug.

Cheers, Ian

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1304 on: April 04, 2018, 12:12:36 PM »
After trying these CLPs out, going back to BEAKL15 (same thing when trying out X7-1H), I noticed right away how the reach to middle columns bothered me.

What hardware are you on?

Thanks, Ian

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1122
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Balanced Keyboard Layout
« Reply #1305 on: April 04, 2018, 04:10:03 PM »
FWIW if you're gonna substitute th with something for phonetic reasons you'll need two characters... for hard and soft th.

Sure as purely phonetics, the two sounds are distinct. However, in English the two are (mostly) interchangeable allophones. Thus, English only needs one new letter for TH. Then other languages can invent their own method (on top of the new letter, most likely) if they really need to differentiate between hard and soft.

Regardless, this is only an issue if a bigram appears too commonly in particular languages. Which is the case for TH and NG. One can also make the case for some vowels, such as ER.

P.S. There is certainly an uneven distribution of frequency among the letters. But is this actually problematic? That is, one might see this and then attempt to redistribute the usage of letters more fairly. But is this actually a good idea? How would that affect typing, and the position of the letters on the keyboard? That is, would a fairer frequency distribution of letters in a corpus lead to better, smoother typing experience?
« Last Edit: April 04, 2018, 04:16:51 PM by Den »
Support me on Patreon

I saw. I conquered. I came.

philippe.quesnel

  • Valued Member
  • ***
  • Posts: 68
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1306 on: April 04, 2018, 04:22:14 PM »
Quote
What hardware are you on?

at home, my regular keyboard is a Microsoft Sculpt Ergo, I have been trying out a 'matrix' setup w. two single hand SmartYaos (Koolertron on Amazon), cannot say I'm a fan yet, maybe if I manage to correct the problems I'm having... (see attached pic, you know, when you are a Home Block fan and set up your keycaps accordingly hihi).

And at work I have a crapy Dell kbd  :P

Glad to hear your project is coming along !!

philippe.quesnel

  • Valued Member
  • ***
  • Posts: 68
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1307 on: April 04, 2018, 05:03:20 PM »
thanks, interesting.

...for which I will eventually need an xkb file as well... so maybe should first do some code to do KLA.json -> xkb, for defined keyboard layouts. Should probably start with ANSI ones first since that's easiest to debug.

Cheers, Ian
Oooops, just realized I never created a new Readme to go along the new version of my program, not very useful without it !

I guess one of the difficulties converting from KLA to XKB is to figure out the corresponding scancodes for each key id, which will depend on the kbd type

mstacker

  • Member
  • **
  • Posts: 41
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1308 on: April 15, 2018, 07:11:38 AM »
BEAKL 9 is stable candidate recommendation for mass consumption. This leg of the project is on hiatus until new breakthrough.

I'm not good at promotion, but have done some seeding around the 'net. Apparently, there are a few enthusiasts who have heard of BEAKL and have adopted it to their custom keyboards kits (although I know not about their experiences with it.) I do recommend people looking for optimal layouts should give any of the BEAKL layouts a try, or adapt the BEAKL philosophy to achieve a layout to their personal comfort.

I'm overdue for feedback and should have given by now. BEAKL 9 is a fine layout. Ive been using it for months now and plan to stick with it. Had a break from keyboards in general during Jan and Feb due to a sudden health incident. Was wondering if my fingers would remember and they did.

BEAKL 9 is a very low physical effort, high efficiency layout, pro-ergo layout. To date, I have not run into any ergo issues or odd key combos required. Mind you, you must come up with an intelligent way to place all the other keys such as cntr, F1-12, Del, etc. Den and Ian are definitely on to something good here. For reference, I've been a Dvorak on an ansi keyboard guy for probably 10 years. Lost track.

A word of advice; purely my opinion. Don't switch layout if you want to type faster, etc. I switched to Dvorak way back when cause I thought I'd be faster. It did not happen. Any small increase in speed was minor at best. Maybe if I was routinely training for speed I would have better results. I did improve ergonomics a bit so it was worth it. Dvorak will cut down on finger gynastics relative to qwerty but is also a little right hand intensive or it was for my general use.

If you want to switch layouts, do it for fun. It's a big investment in both time and equipment. Keep in mind you must continue to type effectively at work while you transition. Ergonomics are a big motive for me. I did go looking for better options than dvorak when long term keyboard use injuries became a concern. To date, the use of BEAKL 9 seems to have addressed my concerns with my right wrist being over used. If ergo injuries are your primary concern, buy a kinesis advantage (most awesomest keyboard in terms of ergonomics to date although I could offer a list of improvements) and call it good. Learning to adapt to the advantage will be enough of a learning curve.

Me, I'm kinda a keyboard nerd. For months, I've used a couple of ergodox keyboards I adapted via firmware. They work fine. Honestly, an ergolinear will work just as good if you can find one with enough keys. There is at least one guy on this thread who seems happy with BEAKL on a plank. I tried one on an atomic. It seemed to work okay although I felt my hands were too close together. I much prefer to have the keyboard split in half so my next will be a Viterbi <https://keeb.io/collections/keyboard-pcbs/products/viterbi-keyboard-pcbs-5x7-70-split-ortholinear?variant=1302704554014>.

Also, at some point, I'll be modifying my advantage (changing out the brains and firmware) for BEAKL 9. Despite having the keys mounted on a flat plane, and the ridiculous price tag, it is my fav keyboard.

Matt
« Last Edit: April 15, 2018, 07:27:57 AM by mstacker »

mstacker

  • Member
  • **
  • Posts: 41
    • View Profile
Re: not good
« Reply #1309 on: April 15, 2018, 07:49:32 AM »
smashed my left wrist. back on ansi keyboard and mouse on right hand and mostly one handed typing for now. At least it has mech switches (gateron red I think)

How is your wrist doing these days brother?

Matt

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1310 on: April 15, 2018, 08:18:57 AM »
Oooops, just realized I never created a new Readme to go along the new version of my program, not very useful without it !

I guess one of the difficulties converting from KLA to XKB is to figure out the corresponding scancodes for each key id, which will depend on the kbd type

I'm trying to modify one of the examples from QMK firmware for my keyboard, and the bit that confuses me is that (AFAICS) in QMK I need to define what letter each key sends, and there is a large assumption that "a" and "A" (or 4 and $) will be on the same key, which is not the case these days.
https://github.com/qmk/qmk_firmware

I was expecting (based on what I've seen of XKB config files) that QMK would send "Scancode A1" being first key in top row, and then rely on the PC operating system to decide what to do with it. That would seem the obvious way to do it to me. But no. Possibly this is also related to all the layers/one-shot modifiers/etc/etc/ that QMK supports.

So now it looks like I have to define that a key is sending "/", but no, it's not sending "?" as well. It's a different key that's sending that.

I've done a bare-bones modification, now need to summon up the courage to compile and install it on Teensy board, and then see what Linux says it is getting.

I think QMK takes the approach it does to fake an standard ANSI board for Windows, so that you don't need to worry about custom MKL files on the OS side.

But in solving one issue they create others....

Any QMK experts welcome to jump in at this point :-)

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: not good
« Reply #1311 on: April 15, 2018, 08:27:44 AM »
How is your wrist doing these days brother?

:-) Thanks for asking. It's improved, not back to how it was before though. Some bends are tight (flexion position), one causes pain (tension position), and the supination position (ie palm up) is still not horizontal ... can get it almost horizontal if I twist it with right hand. My age also means things heal slower than when I was a kid. But getting there. :-)

I can type etc okay, just some stretches a little sore.
Got a bit distracted with Forex stuff, but getting back into keyboard issues again too.


philippe.quesnel

  • Valued Member
  • ***
  • Posts: 68
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1312 on: April 15, 2018, 09:30:03 AM »
...  and there is a large assumption that "a" and "A" (or 4 and $) will be on the same key, which is not the case these days.

I was expecting (based on what I've seen of XKB config files) that QMK would send "Scancode A1" being first key in top row, and then rely on the PC operating system to decide what to do with it. That would seem the obvious way to do it to me. But no. Possibly this is also related to all the layers/one-shot modifiers/etc/etc/ that QMK supports.
I don't know QMK, can't help there, sorry.
I did have a similar problem about Aa /? etc when trying to program my SmartYaos : I can tell it which USB HID code a key sends ... and, well, these codes are defined in the standard so that for eg. code 7 is for both d and D

http://www.usb.org/developers/hidpage/Hut1_12v2.pdf

I ended up programing a QWERTY base / ref and doing the actual layout w. AutoHotkey, which means no Linux for now.

So now it looks like I have to define that a key is sending "/", but no, it's not sending "?" as well. It's a different key that's sending that.
strange, not sure I understand how that works, but as long as you do ;-)
Go for it, get that puppy going!!

Very glad to hear that your wrist is doing much better

sdothum

  • Member
  • **
  • Posts: 26
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1313 on: April 15, 2018, 04:33:28 PM »
I was expecting (based on what I've seen of XKB config files) that QMK would send "Scancode A1" being first key in top row, and then rely on the PC operating system to decide what to do with it. That would seem the obvious way to do it to me. But no. Possibly this is also related to all the layers/one-shot modifiers/etc/etc/ that QMK supports.

In QMK the standard modifier keycodes (shift, ctrl, etc.) when held down will issue the standard keycode for the following key presses. Similarly, the built in macros like S(keycode) will issue the ANSI shift value e.g. S("/") == "?".

To map a different key to a "shifted" key or other modifier (or any other designated key for that matter), you can use layers, effectively defining a layer that is raised by the designated "shift" key. The manner in which the layer is raised -- held down, toggled, one shot, multiple taps, etc. -- is up to you. Thus, any key can issue any specific keycode on a particular layer.

A single key can be responsible for many layers. And layers can require multiple keys. Layers can beget layers. It sounds crazy but there are use cases.

To illustrate http://thedarnedestthing.com/split%20redux. Unrelated to this topic but I have since migrated to this BEAKL mashup for the better finger rolls and the least same finger usage http://www.keyboard-layout-editor.com/#/gists/e0c628a2707117813c46611d37dee43e for anyone scrutinizing the layout in the link.

For me, ANSI output yields the most portable solution. Just plug the keyboard into any computer and I am never without my layout.

Hope this helps.

« Last Edit: April 15, 2018, 05:01:30 PM by sdothum »

mstacker

  • Member
  • **
  • Posts: 41
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1314 on: April 15, 2018, 05:17:02 PM »
To illustrate http://thedarnedestthing.com/split%20redux. Unrelated to this topic but I have since migrated to this BEAKL mashup for the better finger rolls and the least same finger usage http://www.keyboard-layout-editor.com/#/gists/e0c628a2707117813c46611d37dee43e for anyone scrutinizing the layout in the link.

Nice website and explanation.

Matt

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1315 on: April 16, 2018, 12:52:50 AM »
To illustrate http://thedarnedestthing.com/split%20redux. Unrelated to this topic but I have since migrated to this BEAKL mashup for the better finger rolls and the least same finger usage http://www.keyboard-layout-editor.com/#/gists/e0c628a2707117813c46611d37dee43e for anyone scrutinizing the layout in the link.

Thanks, will study.

Cheers, Ian

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1316 on: April 16, 2018, 02:37:38 PM »
To map a different key to a "shifted" key or other modifier (or any other designated key for that matter), you can use layers, effectively defining a layer that is raised by the designated "shift" key. The manner in which the layer is raised -- held down, toggled, one shot, multiple taps, etc. -- is up to you. Thus, any key can issue any specific keycode on a particular layer.

A single key can be responsible for many layers. And layers can require multiple keys. Layers can beget layers. It sounds crazy but there are use cases.

I can see for example how to send KC_CIRCUMFLEX, but for example KC_G sends both g and G .... or is it actually sending the scancode from an ANSI keyboard for G? ie
<AC05> = 43  (lifted from //usr/share/X11/xkb/keycode/ibm  scancodes file)
 or somesuch?

Like I said, I was expecting QMK to specify that the key in row 3 column 6 sends AC05, and then in
/usr/share/X11/xkb/symbols/us

I would have something like
 key <AC05> { [         g,          G,     copyright, dead_doubleacute ] };

Trying to wrap my head around this, bearing in mind Windows works differently to Linux, I'm guessing Mac works similarly to Linux here, but has their own keyboard layout description files.

But I suppose XKB is only set up for Shift, AltGr and ShiftAltGr, and QMK allows for other fancy tricks.

So when I define the layers, if I want a separate Shift layer, will it effectively be a duplicate in most cases? eg if g and G happen to be on the same key, then we say that base layer and shift layer both send KC_G ?

Which seems somewhat counter-intuitive :-)

Confused, Ian



sdothum

  • Member
  • **
  • Posts: 26
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1317 on: April 16, 2018, 05:50:21 PM »
I can see for example how to send KC_CIRCUMFLEX, but for example KC_G sends both g and G .... or is it actually sending the scancode from an ANSI keyboard for G? ie <AC05> = 43  (lifted from //usr/share/X11/xkb/keycode/ibm  scancodes file) or somesuch?

Like I said, I was expecting QMK to specify that the key in row 3 column 6 sends AC05, and then in /usr/share/X11/xkb/symbols/us

I would have something like key <AC05> { [         g,          G,     copyright, dead_doubleacute ] }; But I suppose XKB is only set up for Shift, AltGr and ShiftAltGr, and QMK allows for other fancy tricks.

So when I define the layers, if I want a separate Shift layer, will it effectively be a duplicate in most cases? eg if g and G happen to be on the same key, then we say that base layer and shift layer both send KC_G ?

Each layer defines a single keycode for each key position. So, if you define a key location with "KC_G", if pressed, it will output lower case "g". If you define a modifier key on that layer (it can inherit this keycode from the calling layer so you don't have to define positional modifiers that you want to exist across layers), say "KC_LSFT", if held down, will cause "KC_G" to output upper case "G".

You can define a key with a macro keycode, such as "S(KC_G)", which if pressed, will output upper case "G" so you don't need to hold down a modifier -- you can even define chained modifier keycodes, e.g. "LCTL(S(KC_G))". And you can define chained modifiers that, when held down (or tapped, one shot, etc.), operate on all the defined keycodes of that layer. You can create complex and convenient key values this way.

So a layer defines a default keycode for the key position, and any modifier alters the ANSI output value.

Now, you also have the ability within QMK to trap the keystroke stream and do what you want to with any of your defined keycodes -- extend QMK macro functionality, manage layers beyond what QMK has macros for, write a calculator, etc. The latter would be over the top but you get the picture. I have extended and added a lot of layer functionality to suit my own workflow. But the QMK library probably fills the needs way beyond what most people would use with its extensive set of key actions, such as one shot modifiers/layers, toggle keys/layers, tap dance, etc.

So, in your above example, you probably need 3 layers: "g" on one with a modifier to produce "G", and separate layers to produce the special characters (unless a modifier would suffice on one of the 2 symbols -- though, I would imagine using two or more layers would make for a much more flexible organization of symbols).

Hope this helps.
« Last Edit: April 16, 2018, 09:19:37 PM by sdothum »

sdothum

  • Member
  • **
  • Posts: 26
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1318 on: April 17, 2018, 05:17:44 AM »
So when I define the layers, if I want a separate Shift layer, will it effectively be a duplicate in most cases? eg if g and G happen to be on the same key, then we say that base layer and shift layer both send KC_G ?

Depends on how you define the keycode on the Shift layer. If the Shift layer uses a Shift modifier (and there are many types of shift key actions -- conventional, one shot, down position of a key that otherwise outputs a character, etc.) then yes, if pressed without a modifier enabled. But you could define the key position with a macro definition "S(KC_G)" to output shift "G" without need of the Shift modifier.

I use 2 Shift layers precisely that way to split the keyboard so each thumb hand holding its designated Shift key (which is not a real modifier but a layer invoking key) can type special symbols (like a keypad) while the opposite hand types shifted characters.

Layers free you from being limited to just a set of modifiers as you can see from the example link I posted earlier. The current limit is 32 layers. I probably use more layers than most and haven't come close to that.

Hope this further clarifies how one approaches QMK.
« Last Edit: April 17, 2018, 12:07:06 PM by sdothum »

philippe.quesnel

  • Valued Member
  • ***
  • Posts: 68
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1319 on: April 23, 2018, 09:02:43 PM »
In case someone could be interested,
here are updated BEAKL15 (with Den's latest suggested altGr layer / digits back on top row) Microsoft .klc and Linux XKB files.

Since this was created as KLC then converted to XKB,
and since KLC can't remap CapsLock, '-' was placed on altGr bottom left pinky.
Also I left shift-';' on right pinky generate ':' as on normal ';' and left other default keys "as-is"

moesasji

  • Newbie
  • *
  • Posts: 10
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1320 on: April 29, 2018, 02:21:51 AM »
As the keyboard virus has struck again I am looking how to best use Beakl on a keyboardio model 01 keyboard. For an ergodox the beakl-opted4-ergo-alt looks pretty good based on how I use my ergodox (now on colemak-mod-dh). However the keyboardio might be a better match for the p_rn, yet would need a good place for navigation. Hence the question: Is there any recommendation/advice how to use the beakl layout on the model 01?

btw) Looking at the AltGR layers of both triggers a question that doesn't seem to be covered in this topic. How do you optimize the placement of coding symbols as they are radically different between the versions I see on the layouts page. Hitting the for elisp pretty common '( looks pretty painful on p_rn with all keys to hit on same hand and same applies for things like (" which is also common yet hard to hit, yet this is better for the opted4/beakl9 version.

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1321 on: April 29, 2018, 03:53:17 AM »
btw) Looking at the AltGR layers of both triggers a question that doesn't seem to be covered in this topic. How do you optimize the placement of coding symbols as they are radically different between the versions I see on the layouts page. Hitting the for elisp pretty common '( looks pretty painful on p_rn with all keys to hit on same hand and same applies for things like (" which is also common yet hard to hit, yet this is better for the opted4/beakl9 version.

The problem with the punctuation is that is is rather language-dependent (computer programming language).

Eg Ada cares nothing for {} or even [], but JS and the whole bloody C family can't live without them,
or Python and Ruby are not pedantic about ; at end of statement (unless on same line) but the whole bloody C family (and Ada, for that matter) can't live without them.

So I suspect the answer to your question is "it depends" ... what languages do you use? Then you need to balance those needs with your needs in English or whatever you type most in.

(yes, I am not a fan of C family... :-) ... they've caused a global shortage of curly braces!)


moesasji

  • Newbie
  • *
  • Posts: 10
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1322 on: April 29, 2018, 07:30:59 AM »
So I suspect the answer to your question is "it depends" ... what languages do you use?

That wasn't the main question as I fully agree that this is heavily dependent on the programming languages one uses; I was just surprised to see that variation in the symbol layers in the suggested layouts. I personally tend to work most with languages that have lots of brackets/braces, i.e. elisp, LaTex, rust and although less brackets still in the c-family: Python. So unfortunately I am one of those contributing heavily to the global shortage of braces. ;)

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1323 on: April 29, 2018, 12:28:12 PM »
That wasn't the main question

The answer to your main question in is, "it depends" :-)

When I was playing against KLA I used the various programming, digit and punctuation input files to try to optimise. Often there is a clash between what gets good scores on these files and what gets good scores on English. Particularly with things like comma, period, and (). Also depends a lot on your English input text, and in this regard Alice is a poor choice, it uses way too many ! and ? and () compared to most texts. Even British vs American inputs throw out different results because of the different use of single vs double quotes in dialogue.

I can't speak for Den and why he changes things, I guess it's partly a result of real-world (where what the programs say is just awkward in practice) as well as what results he gets from running Opt on the layout, as opposed to KLA.

I'm fully expecting my own keyboard that I'm busy with to annoy me intensely with some key placements... which means back to the drawing board... (again).

At the end of the day you must use what works for you... there is no silver bullet... (as much as I would like there to be. Maybe a bronze bullet is good enough for most people. Will certainly be better than QWERTY.)

moesasji

  • Newbie
  • *
  • Posts: 10
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1324 on: April 30, 2018, 03:29:25 AM »
The answer to your main question in is, "it depends" :-)

The main question was: Is there any recommendation/advice how to use the beakl layout on the keyboardio model 01?

That is a question that has nothing to do with the symbol layer as the thumb and center key layout on that model differs sufficiently that there is probably a different optimum compared to the ergodox layout.


iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1325 on: April 30, 2018, 02:24:31 PM »
The main question was: Is there any recommendation/advice how to use the beakl layout on the keyboardio model 01?

I think that will require adding that physical layout to KLA to test possibilities. (Or maybe even KLE) But KLA can at present only handle normal, shifted, alt-gr'd, and shift-alt-gr'd combos.
Is there an Alt-Gr on model 1? or is that done by some other combo, or all on a different layer?

It seems to have enough keys judging by the layouts used in KLA, maybe those are missing some keys like Function keys etc....

Hence my suggestion to add it to KLA and let's play around after that.

moesasji

  • Newbie
  • *
  • Posts: 10
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1326 on: May 01, 2018, 12:56:45 AM »
I think that will require adding that physical layout to KLA to test possibilities. (Or maybe even KLE) But KLA can at present only handle normal, shifted, alt-gr'd, and shift-alt-gr'd combos.
Is there an Alt-Gr on model 1? or is that done by some other combo, or all on a different layer?

The model 01 is rather special in that is has layer switches under the palm of the hand, which is why I want to play with it to see how well that aspect works. Probably a case of running it through the adnw optimizer, but having looked at the code it is not that obvious to me how to create the physical layout, which is why I was hoping that Den had some advice.

moesasji

  • Newbie
  • *
  • Posts: 10
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1327 on: May 05, 2018, 12:53:33 AM »
I think that will require adding that physical layout to KLA to test possibilities. (Or maybe even KLE)

I found the physical layout for the model 01 in the KLE format here: http://www.keyboard-layout-editor.com/#/gists/9b917e6bfbd6f76962cb3ee9d81e24dc

How hard would it be to get it added to KLA starting from that?

Snarfangel

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1328 on: May 05, 2018, 10:10:57 AM »
Just thought I'd post my current layout. Only have to use my cheat sheet for some of the punctuation on the shift keys. My only common typo is swapping r and h, and that's because I had it the other way in my previous layout. I hope the pic and txt attaches correctly.


iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1329 on: May 05, 2018, 12:13:39 PM »
Just thought I'd post my current layout. Only have to use my cheat sheet for some of the punctuation on the shift keys. My only common typo is swapping r and h, and that's because I had it the other way in my previous layout. I hope the pic and txt attaches correctly.

Interesting ideas (E and O on same thumb ... who'da thunk?) and shift-shift for backspace .... Mmm... :-)

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1330 on: May 05, 2018, 12:19:02 PM »
I found the physical layout for the model 01 in the KLE format here: http://www.keyboard-layout-editor.com/#/gists/9b917e6bfbd6f76962cb3ee9d81e24dc

How hard would it be to get it added to KLA starting from that?

Have to figure out how to handle the palm keys ... there's no provision for that in KLA ... it only know about fingers and thumbs. Let me think. Sure Den will think too :-)
There are several issues with an extra modifier:
1. current keys (GUI view) only provide for 4 slots - normal, shifted, altgr, shift-altgr. So may have to code to allow centre spot as well.
2. need to update keymap handling to handle that
3. a more challenging problem is how to assign "weight" to use of palm key, compared to weights assigned to fingers. Do we assume using palm is even better than using thumb? Can you use right palm and right finger at same time? Etc....

BTW... these keys are under the palm rather than heel of hand, right? So do you need to straighten fingers to allow palm to sink down to press key?

Thanks, Ian

moesasji

  • Newbie
  • *
  • Posts: 10
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1331 on: May 05, 2018, 01:19:25 PM »
BTW... these keys are under the palm rather than heel of hand, right? So do you need to straighten fingers to allow palm to sink down to press key?

Thanks for looking into this. I have it on order, so don't know yet how useful that extra key under the base of the thumb will or how to best push it. My current thinking is that I will use it for a navigation layer where one can afford to be slow in pressing it down as this should definitely be more effort than a key under the thumb. Even if it turns out to be a gimmick the thumb keys appear better positioned than in my Ergodox, which is a big plus for me.

In any case I need to be able to still type on a laptop keyboard, so can't be too drastic in what I use those palm keys for. (I'm using a Japanese keyboard in a Lenovo T430 to have more thumb keys)

Snarfangel

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1332 on: May 05, 2018, 06:54:33 PM »
Interesting ideas (E and O on same thumb ... who'da thunk?) and shift-shift for backspace .... Mmm... :-)
 

I thought it might be confusing to have E and O on the left thumb, but I don't have any issues with it at all. It seems to work well. And it made the stats a little better on the keyboard layout analyzer.  :)

In case anyone was wondering why all the blank keys, I use the layout on my Kinesis Advantage2, and it doesn't have them all. Plus I had a full key and two shifted keys left over at the upper right that I haven't mapped yet.
« Last Edit: May 05, 2018, 06:59:40 PM by Snarfangel »

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1333 on: May 05, 2018, 11:46:47 PM »
Just thought I'd post my current layout. Only have to use my cheat sheet for some of the punctuation on the shift keys. My only common typo is swapping r and h, and that's because I had it the other way in my previous layout. I hope the pic and txt attaches correctly.

Mmm I somehow missed the one you posted here
https://geekhack.org/index.php?topic=74546.0

but I got Lydell's layout. Will add to the next round of tests. Must still do Den3 on all. Maybe must just restart with KLA original and Den with all the new layouts, and then do Den3 on them all... probably better use of time. Have 18 new layouts to add at the moment.

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1334 on: May 06, 2018, 12:54:38 PM »
Thanks for looking into this. I have it on order, so don't know yet how useful that extra key under the base of the thumb will or how to best push it. My current thinking is that I will use it for a navigation layer where one can afford to be slow in pressing it down as this should definitely be more effort than a key under the thumb. Even if it turns out to be a gimmick the thumb keys appear better positioned than in my Ergodox, which is a big plus for me.

In any case I need to be able to still type on a laptop keyboard, so can't be too drastic in what I use those palm keys for. (I'm using a Japanese keyboard in a Lenovo T430 to have more thumb keys)

According to their site, default usage is something like this:
Quote
Underneath the thumb arcs, you'll see one of the Model 01's most unique features: a palm key. You can think of it as a Function key or a special sort of Shift. Dropping the base of your thumb onto it turns the H, J, K, and L keys into your arrow keys, turns the number keys into F-keys and even turns the WASD keys into a high-precision mouse.

If that's the case then it's irrelevant to the tests in KLA. Unless you have other plans for it :-)
Wonder why they call it a palm key when it's actually a Mount of Venus key.... IMHO the palm is the area of the hand past the thumb....
Just call it the Venus key and then you can hit on Venus for your functions....
I'll shut up now.

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1335 on: May 06, 2018, 01:05:47 PM »
According to their site, default usage is something like this:
If that's the case then it's irrelevant to the tests in KLA. Unless you have other plans for it :-)

Whoops. You need it to access {} and [] ....  so will have to include it.

The code for plotting buttons on a curve may be a little tricky. Program then needs to be able to calculate the centre of each key, because that's where things get measured from. Suppose can borrow from the Kinensis layout there.

FWIW, after staring at the default layout, I think it would be better to have space next to shift, since you are likely to use Shift more than Alt.
The whole no-AltGr design shows the American heritage ... unless I am missing something. :-)

moesasji

  • Newbie
  • *
  • Posts: 10
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1336 on: May 06, 2018, 03:38:27 PM »
Whoops. You need it to access {} and [] ....  so will have to include it.

I think that it works very similar to the Ergodox in that other keys can also be used to toggle layers. Those palm keys are not the only way to get () and the like, that is just the default setup!

I think the out of the box layout is configured to keep it close to a standard qwerty keyboard to make it easier to get used to it for those that come from a non-ergonomic keyboard as the concept of layers takes some getting used to.

btw) I agree on the placement of the shift-key. That doesn't look that comfortable, but I would remap anyway.

moesasji

  • Newbie
  • *
  • Posts: 10
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1337 on: May 10, 2018, 12:36:23 PM »
Have to figure out how to handle the palm keys ... there's no provision for that in KLA .
...
3. a more challenging problem is how to assign "weight" to use of palm key, compared to weights assigned to fingers. Do we assume using palm is even better than using thumb? Can you use right palm and right finger at same time? Etc....

BTW... these keys are under the palm rather than heel of hand, right? So do you need to straighten fingers to allow palm to sink down to press key

The model 01 has arrived, so I'm finally able to give some early feedback on these questions.

How easy it is to hit the palm key probably depends heavily on how big your hands are. I seem to be stretching my fingers to hit the palm key with the first phalanx of the thumb. So effectively the same motion that my hands would make for hitting a key below the default thumb position. I probably do this because I don't like to make a rotating movement to push my palm down. However if I hit the palm key this way I can't easily type with other fingers on the same hand.

I find it difficult to say how expensive hitting the palm key is compared to other keys.....my current impression is that hitting the thumb keys is far easier than the big palm-keys as for those I don't need to move my hand. My instinct would be to leave the palm key out of the optimization in KLA and leave it for movement and shortcuts, as is for example done in this bepo layout for the model 01: http://www.keyboard-layout-editor.com/#/gists/8be7ede6216494c172ac08b483a0ed26

btw) hitting the outer one of the 4 thumbs is surprisingly easy as is the case for hitting two thumb keys next to each-other at the same time for a combo.

iandoug

  • Hero Member
  • *****
  • Posts: 802
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #1338 on: May 10, 2018, 01:45:26 PM »
The model 01 has arrived, so I'm finally able to give some early feedback on these questions.

Thanks, interesting ....

Any comment on using the index finger to hit Enter?
As opposed to, for example, a thumb?

Thanks, Ian

moesasji

  • Newbie
  • *
  • Posts: 10
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1339 on: May 10, 2018, 03:26:18 PM »
Any comment on using the index finger to hit Enter?
As opposed to, for example, a thumb?

I can see the logic of putting the Enter at that position, but I personally prefer Enter on a thumb position. That inner row position used for enter in the model 01 is in fact left unused on my Ergodox as I find the long inward movement that is needed unpleasant. This is mainly because it requires moving way too many fingers from their home-position to reach it, i.e. all but the pinky. Although those two keys are a bit easier to reach for the model 01, I expect I won't use them for anything I need to hit often either. This is different for the bottom two keys in those rows that can be hit by the thumbs.

btw) This might be a very personal preference as my dislike for using the central columns is also apparent in the fact that I have been using colemak-mod-dh for a long time, which reduces the usage of the central column compared to colemak itself.

qites

  • Newbie
  • *
  • Posts: 1
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1340 on: May 10, 2018, 05:53:05 PM »
Hello everybody!
Maybe someone will be interested, I tried to adapt BEAKL9 for a standard keyboard.



I myself use the ISO version of the keyboard. It allows me to move the lower left row with an additional key and thus get a more comfortable angle of attack for the left hand. See the pictures in the attachment.
I use this one week and I really like it. Prior to that, for 12 years I used Dvorak's layout with similar modifications. The only thing that worries me is the key L. My right middle finger is uncomfortable to press there. I think to change it with the M key, it is less common. Probably on an ergonomic keyboard, there would not be such a problem.
By the way, this option is compatible with the "preonik" keyboard or "model01". These keyboards are too expensive for me now, but maybe someday I can afford one of them and be happy).

And yet, this layout variant competes well in Dan analyzers on the text from the source codes of the githab


In any case, accept my deepest respect for the work you have done!

Translated with google translate
« Last Edit: May 10, 2018, 06:48:50 PM by qites »

moesasji

  • Newbie
  • *
  • Posts: 10
    • View Profile
Re: Balanced Keyboard Layout
« Reply #1341 on: May 11, 2018, 01:22:33 AM »
By the way, this option is compatible with the "preonik" keyboard or "model01". These keyboards are too expensive for me now, but maybe someday I can afford one of them and be happy).

That looks pretty cool indeed and the angle-mod you use is indeed extremely good on the wrists. Thanks for sharing!
In your iso-layout I actually hit the two keys that you leave empty above the spacebar with my thumbs. Mainly as I need CTRL to be easily reachable as well.

btw) true ergonomic keyboards are indeed pretty expensive. A "cheap" alternative that gives more thumb keys is buying a Japanese keyboard as they have two special keys next to a much smaller spacebar. You can see this from the layouts on this page: http://xahlee.info/kbd/Japan_keyboard_layouts.html. Those can be as cheap as a standard keyboard....I wish I had figured that out before starting the ergodox journey.
« Last Edit: May 11, 2018, 01:27:18 AM by moesasji »