c Created for Yoab Benjamin for Assyrian keyboard layout c July 1, 1997 by Karen Buseman, JAARS c for use with the program Keyman NAME "Assyrian" BITMAPS asy_on asy_off HOTKEY "^+A" VERSION 3.1 begin > use(Main) c these stores are used below in RESTRICTIONS store(vowelout) "eiou" c vowels in text store(vowelkey) "mbnv" c same vowels as keystrokes store(modout) "~{}" c modifiers: palatialize, soften, harden store(modkey) "~MT" c same modifiers as keystrokes group(Main) using keys c unshifted-shifted keyboard in physical key order + "`" > "U" c symbol for God + "~" > "~" c tilde shape + "1" > "1" c one + "!" > "!" c exclamation mark + "2" > "2" c two + "@" > "#" c pound sign, hatch mark + "3" > "3" c three + "#" > "%" c percent sign + "4" > "4" c four + "$" > "H" c pe with > wedge on left + "5" > "5" c five + "%" > "wI" c waw with two square dots under + "6" > "6" c six + "^" > "hIy" c he yud with two square dots under + "7" > "7" c seven + "&" > "hIw" c he waw with two square dots under + "8" > "8" c eight + "*" > "*" c asterisk + "9" > "9" c nine + "(" > "(" c closing parenthesis, ( + "0" > "0" c zero + ")" > ")" c opening parenthesis, ) + "-" > "-" c hyphen + "_" > "E" c connector + "=" > "S" c equals + "+" > "A" c plus + "\" > "\" c backslash + "|" > "|" c vertical bar + "q" > "f" c teth + "Q" > "+" c past tense + "w" > "c" c sadhe + "W" > "Q" c abbreviation + "e" > "q" c qoph + "E" > "X" c thin space + "r" > "r" c resh + "R" > "_" c maratana (schwa, underline) + "t" > "=" c plural, two square dots over + "T" > "}" c hardener (dot over) + "y" > "d" c daleth + "Y" > "d{" c daleth, softened + "u" > "w" c waw + "U" > "W" c paragraph symbol + "i" > "h" c he + "I" > "h}" c he, feminine, single dot over + "o" > "g" c gamal + "O" > "g{" c gamal softened dot under + "p" > "p" c pe + "P" > "p~" c pe softened, with saucer softener + "[" > "[" c square bracket + "{" > "I" c present feminine verbs, two square dots under + "]" > "]" c square bracket + "}" > "y{a" c yud with dot under & small alep above + "a" > "j" c zhin + "A" > "&" c round quotes, (( + "s" > "s" c semkath + "S" > "@" c round quotes, )) + "d" > "y" c yud + "D" > "y{" c ikwasa (yud with dot under) + "f" > "b" c beth + "F" > "b{" c beth softened + "g" > "l" c lamad + "G" > "Y" c fancy cross + "h" > "a" c alep + "H" > "Z" c plain cross + "j" > "t" c tau + "J" > "t{" c softened tau + "k" > "n" c nun + "K" > "D" c tau alep, like regular tau + "l" > "m" c mim + "L" > "F" c tau alep + ";" > "k" c kap + ":" > "k{" c chap, kap softened + "'" > "'" c apostrophe + '"' > '"' c quote mark + "z" > "z" c zayn + "Z" > "<" c chevron, << + "x" > "x" c kheth + "X" > "`" c silencer + "c" > "v" c ayin + "C" > ">" c chevron, >> + "v" > "u" c dot over and under + "V" > "^" c present tense, dot over + "b" > "i" c two parallel dots under + "B" > "w}" c waw with dot over + "n" > "o" c two diagonal dots over + "N" > "w{" c waw with dot under + "m" > "e" c two diagonal dots under + "M" > "{" c softener, single dot under + "," > "," c comma + "<" > ";" c semicolon + "." > "." c period + ">" > ":" c colon + "/" > "/" c forward slash + "?" > "?" c question mark c RESTRICTIONS c no doubling up of overstrikes "e" + "m" > context c vowels "i" + "b" > context "o" + "n" > context "u" + "v" > context "`" + "X" > context c silencer "~" + "~" > context c tilde "_" + "Y" > context c schwa "{" + "M" > context c dot under "}" + "T" > context c dot over "=" + "t" > context c plural c no two vowels together any(vowelout) + any(vowelkey) > context beep c schwa and silencer not with vowels or each other "`" + any(vowelkey) > context beep c silencer + vowel key "_" + any(vowelkey) > context beep c schwa + vowel key any(vowelout) + "X" > context beep c vowel + silencer key any(vowelout) + "R" > context beep c vowel + schwa key "`" + "_" > context beep c silencer + schwa key "_" + "`" > context beep c schwa + silencer key c dot under or over never with tilde or together any(modout) + any(modkey) > context beep c standardizing text sequences -- by pairs c desired sequence is modifier, vowel, plural c possible sequences are MV, MP, VP, VM, PM, PV c the first three are correct c so only three of the six possible are listed below c VM > MV any(vowelout) + any(modkey) > index(modout,2) context c PM > MP "=" + any(modkey) > index(modout,2) context c PV > VP "=" + any(vowelkey) > index(vowelout,2) context c sequences by threes c desired sequence is modifier, vowel, plural c possible sequences are MVP, MPV, VMP, VPM, PMV, PVM c the first is OK c in the second, only the PV sequence needs to change c in the third, the P is OK so only the VM needs to change c for the fifth (PMV), PM > MP, then PV > VP, so the pairs handle it c for the sixth (PVM), PV > VP, then VPM is handled by the fourth c so only one of the six possible is listed below c VPM > MVP any(vowelout) "=" + any(modkey) > index(modout,3) context