dariogoetz / keyboard_layout_optimizer

A keyboard layout optimizer supporting multiple layers. Implemented in Rust.
https://dariogoetz.github.io/keyboard_layout_optimizer/
GNU General Public License v3.0
92 stars 18 forks source link

how to optimise "a-z" only? #54

Closed mokapsing closed 1 year ago

mokapsing commented 1 year ago

I want to optimise "a-z" based on qwerty layout, how could I edit the settings?

ps: I am not a native English speaker, hope you can understand what I express.

image

dariogoetz commented 1 year ago

The default configuration in the web-ui is for a German QWERTZ layout on an ISO keyboard. If you want to consider a QWERTY layout on an ANSI keyboard, you need to replace the keyboard configuration (i.e. the contents of Keyboard tab) with the file https://raw.githubusercontent.com/dariogoetz/keyboard_layout_optimizer/master/config/keyboard/standard_qwerty_us.yml.

This should give you a slightly different plot of the keyboard on the left-hand side (observe the wider left shift key).

At that point, the pre-configured layout buttons ("noted", "miners", ...) won't work anymore, because these configure German Umlauts. Also, when entering a layout, you still need to provide semicolon, period, comma symbols. If you only want to consider a-z, you need to additionally set the corresponding locations in the fixed section of the Keyboard tab to true. This should make these symbols directly visible in the keyboard view on the left-hand side (even if no layout is entered, yet).

In general, I recommend using the commandline program instead of the web-ui for optimization (and everything non-standard, like not using a German-based layout like QWERTY). It is much more performant because it can leverage multiple processor cores quite effectively (think about 10x speedup on modern 8 core processors with multithreading). Also, you can store your individual config files without needing to always paste them into the web-ui tabs.

mokapsing commented 1 year ago

The default configuration in the web-ui is for a German QWERTZ layout on an ISO keyboard. If you want to consider a QWERTY layout on an ANSI keyboard, you need to replace the keyboard configuration (i.e. the contents of Keyboard tab) with the file https://raw.githubusercontent.com/dariogoetz/keyboard_layout_optimizer/master/config/keyboard/standard_qwerty_us.yml.

This should give you a slightly different plot of the keyboard on the left-hand side (observe the wider left shift key).

At that point, the pre-configured layout buttons ("noted", "miners", ...) won't work anymore, because these configure German Umlauts. Also, when entering a layout, you still need to provide semicolon, period, comma symbols. If you only want to consider a-z, you need to additionally set the corresponding locations in the fixed section of the Keyboard tab to true. This should make these symbols directly visible in the keyboard view on the left-hand side (even if no layout is entered, yet).

In general, I recommend using the commandline program instead of the web-ui for optimization (and everything non-standard, like not using a German-based layout like QWERTY). It is much more performant because it can leverage multiple processor cores quite effectively (think about 10x speedup on modern 8 core processors with multithreading). Also, you can store your individual config files without needing to always paste them into the web-ui tabs.

Much thx, I will try