Regular Outline Grammars

A steno theory having a "regular outline grammar" means that outlines are constructed in a way that makes their boundaries unambiguous. You can always tell where an outline starts and ends, and whether a given stroke is part of the previous outline or starting a new one.

Why would this be important? Well, for one, Having a regular outline grammar entirely removes 2 major classes of conflicts - those being word boundary conflicts and word-affix conflicts.

"But we have tools to get rid of word boundary conflicts!"

Yes, through a ridiculous amount of complexity and theory rules, splitting words in nonsensical ways, creating a dozen mandatory affixes, requiring the use of * for compound words (which causes its own set of mandatories, as well as conflicts for compound words that already use *, which can also span multiple strokes!), you can get rid of most word boundary conflicts most of the time, hopefully, fingers crossed.

This is just silly, and regular outline grammars are an extremely simple solution to this.

How?

In order for outlines to have unambiguous boundaries, you need to define a grammar that they must follow.

The simplest way to do this would be a dedicated "join" key that joins the current stroke to the previous - like space suppression at the stroke level. Then, it would be trivial to tell when outlines start and end. Any stroke without the join key is the start of a new outline, and any stroke with the join key is a continuation of the previous outline. if you find it useful, the regex for outlines with a join key is (stroke without join key)(stroke with join key)*.

This has the obvious drawback of requiring an entire dedicated key, which is usually not something you just have lying around. (Sorry Shrimple :p)

Another way to go about this is with a more applied version of Phoenix's "vowel omission principle" called "subsequent vowel omission". (see The Relativity of Theory - Carol Jochim: https://www.stenolife.com/carolj.htm)

Rather than subsequent strokes in outlines using a "join" key, they drop, or "omit", their vowels to become skeletons. Subsequent vowel sounds in English are extremely unimportant (try replacing all the vowels in a multi-syllable word with schwas), and they can be completely ignored while creating almost no conflicts. I could demonstrate this, but the section at the end of this page is plenty enough.

The regex for outlines with subsequent vowel omission is (non-skeleton)(skeleton)*

The trade-offs of subsequent vowel omission is that there are a few words that differ only in their subsequent vowel sounds, such as "forget" and "forgot"; and that all skeletons are reserved.

On the other hand, it does allow for a great amount of squishing/stacking of subsequent strokes. When you don't care about the vowels, you can heavily stack multi-syllable words. Rather than needing to write out KA/T-/T-/N-K (See Raw Steno), you could squish this into something more like KAT/T-NK. See Onyx Syllabic Splitting for how this could be done.

If you're not comfortable giving up skeletons, there is another flavor of subsequent vowel omission that reserves all "naked" initial and final chords, but not skeletons.

Here are the rules:

  1. Pick a "stressed" vowel in every word
  2. Drop all other vowels
  3. All strokes that come before the stressed vowel use a naked initial chord
  4. All strokes that come after the stressed vowel use a naked final chord

Some extra rules you can apply:

As long as affixes always go before or after a word, you can add them without issue.

Whatever of these rules you use, avoiding word boundary conflicts makes a theory much simpler and avoids a common pitfall that occurs while learning a system, as well as providing additional flexibility in the maintenance of a system.

There is this way as well.

The content on this page is licensed under CC BY-SA 4.0