Magic Key
A magic key is a key that produces different output based which key was pressed before it. Magic keys have the unique ability to eliminate SKBs because it allows character sequences such as ll
and ee
to be produced with presses of different keys (l
and magic, for example). Magic keys can even be defined to produce multiple key presses, resulting in an overall reduction in total keystrokes.
- A magic context is the context used to determine a magic key’s behavior. AKLDB only analyzes layouts for which the magic context is the unigram immediately preceding the magic key press, though larger magic contexts (e.g. the preceding bigram) are used in more complex systems, for example in Sequence Transform.
- A magic expansion is the output that the magic key produces when pressed. AKLDB does not currently support magic keys that delete some or all of the magic context.
- A magic rule is a mapping from magic context to magic expansion. It states that if the previous keystroke matches the magic context, pressing the magic key produces the magic expansion.
Notation
Section titled “Notation”AKLDB notates magic rules like this:
This rule states that when t
is pressed and then the magic key is pressed, the magic key produces the output ment
. is the magic context, and the magic expansion is .
Repeat Key
Section titled “Repeat Key”A repeat key is a special case of magic key. It always repeats the previous keystroke.