Orsy: Orthographic Steno on Eighteen Keys

Page content

This follows Dosh, my per-character chording layout for the mesa keyboards. Dosh is eighteen keys, nine per hand, one letter per chord. That post ended with me having given up on steno. This one is about what happened two days later, when I found a kind of steno I hadn’t given up on.

(I used AI assistance writing this post — why)

Where Dosh left me

Dosh works. It is comfortable, and it is now my daily driver. But it types one character per chord, and the thing that drew me to steno in the first place was the idea of writing a whole syllable, or a whole word, in a single stroke.

The steno I had been learning was Phoenix, on a standard steno layout. That layout needs the outer pinky column and the number bar, and the mesa boards have neither. Eighteen keys is simply not enough for it. If I wanted to write in syllables on the board I had settled on, it was going to have to be something else.

Steno, and what it is for

Most steno theories are largely phonetic. You write what a word sounds like, not how it is spelled. That made sense when steno was created, before computers. Machine shorthand was printed on a paper tape and read back by the reporter who wrote it, and a little ambiguity was fine, because a person who had been in the room resolved it.

Once a computer does the translating, the ambiguity has to be resolved by the theory. Homophones have to be written differently. Spelling starts to matter again, and the theories get significantly more complicated to make up for what sound alone can’t tell you.

Phoenix handles this with a large dictionary. My copy is a little over 155,000 entries, about 5 MB as it ships, and even compacted into the binary format my keyboard firmware uses it is still about 4 MB. And the dictionary is never finished: it isn’t closed, so a new word or name may translate correctly or may not, and maintaining the dictionary is a lifetime task.

All of this serves one primary goal, which is speed. A court reporter or a captioner always has to keep up with speech.

That is not my goal. Mine is comfortable text entry. Speed is nice, but what I need is that it be more comfortable, or faster, than typing one letter at a time. I am not transcribing anyone.

There are less common steno theories that are orthographic: they spell rather than sound. StenoBee, for example, describes itself as “a spelling based, orderless Steno theory for Plover.” They are less popular, and they are not as good at speech transcription, which is exactly the thing I don’t need. I have concluded that an orthographic theory is a better match for what I want.

Michela and Midi4Text

The one I found is two steps removed from anything I had used before.

Michela is a machine shorthand invented by Antonio Michela Zucco in the 1860s. It is played on a keyboard that looks like a small piano, twenty keys across two “half keyboards,” six white and four black keys for each hand. The Italian Senate adopted it in 1880 and still uses it to record its proceedings. Michela is syllabic: each stroke is a syllable. It is also phonetic, and it is Italian.

Midi4Text, from the Sillabix group, is an orthographic reworking of Michela for English. It keeps Michela’s layout and its finger assignments, and reinterprets the keys as letters rather than sounds. A stroke spells a syllable instead of sounding one. Its authors call it “orthosyllabic,” and it runs in Plover on an ordinary MIDI keyboard through the Michela plugin.

Two things about it caught me.

First, it barely needs its dictionary. Midi4Text ships one, about 158,000 entries, but when I analyzed it I found that roughly 110 table rows and a dozen composition rules reproduce 98.3% of those entries exactly. Most of the rest look like inconsistencies in whatever generated the dictionary. That means the theory is closed. Any word you can spell, you can write, by rule, with no entry to add.

Second, it folds the space between words into the last stroke of each word. Every vowel has a plain form and an “ending” form, the ending form being the plain one plus one key. The ending form closes the word and adds the space. A space costs one key, not a stroke.

The problem was the key count. Midi4Text uses twenty keys, which is still two more than the mesa keyboard provides.

But a piano keyboard is more restrictive than the mesa. Piano keys are wide, and one finger can’t press two of them at once, so Michela was designed so that it never has to. On the mesa, the two keys under a finger are small and adjacent, and it is easy to press both with one finger. Dosh already does this all the time. Michela spends six keys on each consonant group, and Midi4Text uses only 29 of the 64 combinations they offer, partly because no finger can play two of them. On the mesa, five keys give 31 combinations, all of them playable, and that is enough. So eighteen keys are enough for the concept. The cost is that every consonant chord had to be re-encoded, so what I have is a theory derived from Midi4Text, not Midi4Text itself.

Orsy

I called it Orsy, short for orthographic-syllabic. I started it on September 10th, two days after the Dosh post.

The keyboard is divided into four sections, which Michela calls series. Each series has its own independent mapping from the keys pressed to one or more letters, and a stroke reads across them from left to right, in the order the letters come out:

  1. Onset: the consonant that opens the syllable. The outer five keys of the left hand.
  2. Second character: the inner four keys of the left hand, under the index finger and thumb.
  3. Vowel: the inner four keys of the right hand.
  4. Coda: the consonant that closes the syllable. The outer five keys of the right hand.
The eighteen keys of the mesa3, coloured by which of Orsy's four series each belongs to

The four series, which read across the board from left to right. The key names are Dosh’s. Bk is the thumb that types Space in Dosh.

So dream is d + r + ea + m, read straight across the board, and it is one stroke. A handful of simple rules then turn the four pieces into text.

The onset and the coda

The outer five keys of the left hand, on the pinky, ring, and middle fingers, are the keys Dosh calls a, o, s, t, and n. As an onset, they spell 27 consonants. Most are single letters, but th, ch, sh, gh, and ck each get a shape of their own, as do three prefixes, ind, inc, and int.

The right hand is symmetric. The same shapes, mirrored, spell the coda, mostly with the same letters, so it is one set of thirty shapes to learn, not two. But a few change to fit syllable endings better: the onset h becomes st as a coda, and the three prefixes become nd, ng, and nt. Three more shapes only make sense as a coda: a final h, a final e, and one that capitalizes the syllable.

Thirty left-hand diagrams, one per outer-key shape, each labelled with its onset and, where different, its coda

The thirty outer shapes, drawn on the left hand. On the right hand the same shape, mirrored, is the coda. Blue is the onset; purple marks the codas that differ from it.

Where I could, I kept Dosh’s keys. s, t, and n are the three most common consonants in the corpus, and they are also single keys in Dosh, so they mean the same thing in both. Where a pair of consonants differ only in voicing, the rarer one is usually the commoner one plus the pinky: b is p plus pinky, v is f plus pinky, z is s plus pinky.

The second character and the vowel

The four inner keys of the left hand are the second character. Some of these are second consonants, the r in dream or the l in play. Others are vowels: i, e, o, and u all have a shape here.

The four inner keys of the right hand are entirely the vowel. There are seven: a, e, i, o, u, ea, and ou. Each has a plain form, and an ending form that adds Bk. Since Bk is the thumb that types Space in Dosh, the ending form is exactly what it sounds like: the space thumb adds the space.

The thirteen second-character shapes on the left hand and the seven vowel shapes on the right

The inner four keys. The second character’s vowels use the same shapes as the right hand’s, so there is nothing new to learn. Adding Bk to a vowel ends the word.

Where a second character and a vowel mean the same letter, they use the same shape on both hands. That pays off in the most useful rule in the layout. When the right hand plays no vowel but does play a coda, a second character that can be read as a vowel becomes the vowel, and a silent e is added at the end. So time is t + i + m + e, and it is one stroke. This covers a lot of the most common words in English: time, name, home, like, life, use, there.

Eight common words, each drawn as a single two-handed Orsy stroke

One stroke each. Time and life use the silent e. Strong uses the str rule. When uses the w-as-h rule. Quick uses the qu rule. Under each stroke are its keys, left hand, then a hyphen, then the right hand.

The rules

Some rules take a combination of the two left-hand series that would otherwise be a rare pair, and use it to spell a common English cluster instead: str, spl, spr, scr, sch, sk, sci, qu, and j. A related rule reads the second character w as an h after p, w, or r, which gives ph, wh, and rh.

The rest are small. The vowel determines spacing: an ending form closes the word, a plain vowel joins onto the next stroke, and a stroke with no vowel at all leans back onto the one before. Longer words are simply a run of plain-vowel syllables with an ending form on the last one, and a consonant that doesn’t fit gets a stroke of its own.

Four longer words, each written as a sequence of Orsy strokes

Longer words, one syllable per stroke. The d at the end of keyboard is a coda by itself, leaning back onto boar. The y at the end of easy rides on an ending-form i that spells nothing but the space.

Choosing where to divide a word is the one genuinely new skill, and it has no counterpart in Dosh. The rules don’t care about dictionary hyphenation. Any division the layout can spell is legal, and when there are several, the one with fewest strokes wins.

What it can’t write

The only thing Orsy can’t write is a q that isn’t followed by u. Across the 10,000 most common words in my word list, that is three: iraq, iraqi, and qatar. Those few words could be made into briefs. Numbers and most symbols come from Dosh, either through a one-shot chord that plays a single Dosh chord with the right hand or through a toggle into Dosh for longer runs.

Status

The theory is complete. The mapping is frozen, and the design notes, including the analysis of Midi4Text it came from, are in docs/orsy and docs/midi4text.

It is implemented in my keyboard firmware. The rules are a small crate, bbq-orsy, with no dictionary, and it is checked against a model of the theory over every one of the 262,144 possible strokes.

Claude helped me write a tutor for it, as an Orsy mode in the same TaipoTeacher app I wrote about in the Dosh post. It teaches one pattern at a time, and it shows the next stroke as a pair of hands in the four series colors. The illustrations in this post are drawn the same way.

I can type in it, at this time at about 15 WPM. That is well behind Dosh, but Dosh had a month of Taipo muscle memory to build on, and Orsy is a month old.

I will hold off on briefs until my speed and comfort come up. They are the long-term argument for Orsy, though. A Dosh chord is one hand, so there are only a few hundred chords left over for briefs. An Orsy stroke uses both hands, and real English uses less than 3% of the possible strokes, so there are hundreds of thousands of free strokes. And, because the theory is closed, every word I never brief can still be written.