Skip to content

Latest commit

 

History

History
72 lines (52 loc) · 2.33 KB

MagicRomak.md

File metadata and controls

72 lines (52 loc) · 2.33 KB

The Romak Keyboard Layout

Romak is a keyboard layout built for Portuguese and English users, with a goal to enhance hand alternation, minimize finger movement, reduce single-finger bigrams, and decrease reliance on the pinky and central columns.

For the regular versions of Romak, including performance analysis, check this other page instead.

Magic Romak

This is a version of Romak 24 that uses a Magic Key to improve the typing experience, reducing SFBs and consecutive activations of the secondary alpha layer.

This Magic Key replaces the regular H key from the standard Romak 24. It will still type H by default, but will also produce V or Y in some cases where H is not the most useful output. For consonants in the secondary alpha layer, this Magic Key will simply reactivate the secondary alpha layer for a second shot.

To cope with the cases where an H is required but the Magic Key would produce something else, the Q in the secondary alpha layer is moved to the outer left thumb key, with H taking its place.

Alpha 1 layer:

     B  M  G          L  O  U   
  D  N  S  T          R  A  E  I 
     F  C  P          *  ,  .   
           ®  Sp   A2 Sf

Alpha 2 layer:

     H  Qu K          Ô  Ê  Â
  Y  Z  X  W          Ã  É  Á  Í
     J  Ç  V          Õ  Ó  Ú
           Q  _    _  '
® = Repeat Key
* = Magic Key
Sp = Space
A2 = One Shot Alpha 2
Sf = One Shot Shift

Repeat Key

Usually the Repeat Key will simply repeat the last character, but in some cases an alternate repeat can be used.

This is how the Repeat Key behaves:

Previous Key Output
H AH
Qu Ê
Ç OS Alpha 2
' V
Anything Else Repeat

Magic Key

The Magic Key will produce H after most consonants, V after most vowels and Y after consonants that are not usually followed by H. For consonants in the secondary alpha layer, it will reactivate the secondary alpha layer.

This is how the Magic Key behaves:

Previous Keys Output
YZXHQuKJÇV OS Alpha 2
ÂÀÃÕ
AÁEÉÊIÍOÓÔUÚ ' V
BMDF Y
H
OS ⇧ H
Anything Else H

Implementation

A complete implementation can be found here.