Next-Generation Uryuomoco Codec

This is an original implementation, written by myself in Summer 2017, and is not based on the Ookii translator. It should give the correct result for canonical text; this includes certain pieces of canonical text which the Ookii translator does not correctly decode.

For a description of the applied transforms, see Shiveapedia.  Disclaimer: I have limited control over the content of external sites (although I have contributed to the linked article).

This Uryuomoco-to-English decoder does not refer to a dictionary, nor does it offer lists of options, unlike the Ookii one. Rather, less common arrangements are assumed to be disambiguated using apostrophes; the English-to-Uryuomoco encoder accordingly inserts these where appropriate. Original apostrophes are prefixed by hyphens so they don’t get removed in the Uryuomoco-to-English process.