dotdash-keyboard-android
dotdash-keyboard-android copied to clipboard
Change my extended Morse code to avoid conflicts with existing code groups
Wikipedia has a big list of code groups for letters with diacriticals. Some of these conflict with my own newly-invented symbols for right-square bracket, and backslash.
I don't know that I'll ever add support for these particular diacritical letter code groups (since I've got my own ideas about a universal diacritical system), but I should probably try to avoid conflicting with them.
See http://en.wikipedia.org/wiki/Morse_code#Letters.2C_numbers.2C_punctuation.2C_prosigns_and_non-English_variants
The MN digraph for exclamation mark also conflicts with one of them, which is perhaps why Wikipedia favors the KW digraph.
Okay, expanding my list to include all the diacriticalized symbols on Wikipedia, I find these conflicts:
- "Open bracket" [
..-..
is shared with "E with accute accent", "D with a stroke", and "E with an ogonek" - "Backslash" **
.-..-
is shared with "E with grave accent" and "L with a stroke". - "Open brace" {
.--.-
is shared with "A with umlaut" and "A with ring". - "Asterisk" *
-.-.-
is shared with the ITU "Start signal", and with a prosign that means "Attention" - "Open pointy bracket" <
--.--
is shared with "N with tilde" and "N with circumflex".
Lol, seems like the 5-pulse space is pretty crowded...
It's notable that all my open-bracket symbols conflicted. I ran an automated analysis to see if I could find any available pairs of 5,6 character code groups. And no, I could not. I checked for matched pairs of three-pulse signals, and symmetrical pairs of three-pulse symbols, but they all conflict in either the 6-pulse code or the 5-pulse code (or both).
So, I'll have to go to a 6,7 pair for the brackets, if I want to avoid conflicting. There are several suitable pairs of those available. I could also 7,8, but I think that's getting a bit long.
Okay, so here's option 1. I continue using the parentheses pattern, but the matching code groups are 6 pulses (for the opener) and 7 pulses (for the closer). In which case the non-conflicting trigraphs (for closers) are: SES, UEU, RER, WEW, WTW, DED, DTD, GTG, OEO, OTO
Option 2, is I ditch the parentheses system, and instead I use symmetrical code groups. This kind of appeals to me more, actually. And surprisingly, there are about a dozen acceptable code groups available. The best ones are made of two palindromic letters, so that their digraphs are simply reversed, but there are only two such: RS/SR, KO/OK. I guess another, slightly different way to go, would be to look for reversed digraphs (like LM/ML). ... it'll take me a slightly more complicated script to search for those.