From: handa Date: Fri, 26 Nov 2010 07:16:38 +0000 (+0000) Subject: Moved to the m17n-contrib package with improvements by Hugues MOISY . --- diff --git a/MIM/bo-ewts.mim b/MIM/bo-ewts.mim deleted file mode 100644 index 466b1ab..0000000 --- a/MIM/bo-ewts.mim +++ /dev/null @@ -1,363 +0,0 @@ -;; bo-ewts.mim -- Tibetan input method with EWTS -;; Copyright (C) 2007 -;; National Institute of Advanced Industrial Science and Technology (AIST) -;; Registration Number H15PRO112 - -;; This file is part of the m17n database; a sub-part of the m17n -;; library. - -;; The m17n library is free software; you can redistribute it and/or -;; modify it under the terms of the GNU Lesser General Public License -;; as published by the Free Software Foundation; either version 2.1 of -;; the License, or (at your option) any later version. - -;; The m17n library is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -;; Lesser General Public License for more details. - -;; You should have received a copy of the GNU Lesser General Public -;; License along with the m17n library; if not, write to the Free -;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. - -(input-method bo ewts) - -(description "Tibetan input method based on EWTS. -This implementation is based on THDL Extended Wylie Transliteration Scheme -Version 2.0 .") - -(title "ཀ") - -(variable - (precomposed - (_"Flag to tell whether or not to generate precomposed characters. -If 1, generate precomposed characters if available (e.g. \"ྲྀ\"(U+0F76). -If 0, generate only decomposed characters (e.g. \"ྲྀ\" (U+0FB2 U+0F80).") - 0 0 1)) - -(map - ;; This map is used also for subjoined consonants. - (consonant - ("k" "ཀ") - ("kh" "ཁ") - ("g" "ག") - ("ng" "ང") - ("c" "ཅ") - ("ch" "ཆ") - ("j" "ཇ") - ("ny" "ཉ") - ("t" "ཏ") - ("th" "ཐ") - ("d" "ད") - ("n" "ན") - ("p" "པ") - ("ph" "ཕ") - ("b" "བ") - ("m" "མ") - ("ts" "ཙ") - ("tsh" "ཚ") - ("dz" "ཛ") - ("w" "ཝ") - ("zh" "ཞ") - ("z" "ཟ") - ("'" "འ") - ("y" "ཡ") - ("r" "ར") - ("l" "ལ") - ("sh" "ཤ") - ("s" "ས") - ("h" "ཧ") - ("a" "ཨ")) - - ;; Standard Tibetan Stacks listed at: - ;; - (standard-stack - ("kl" "ཀླ") - ("kr" "ཀྲ") - ("kw" "ཀྭ") - ("ky" "ཀྱ") - ("khr" "ཁྲ") - ("khw" "ཁྭ") - ("khy" "ཁྱ") - ("gl" "གླ") - ("gr" "གྲ") - ("grw" "གྲྭ") - ("gw" "གྭ") - ("gy" "གྱ") - ("cw" "ཅྭ") - ("nyw" "ཉྭ") - ("tr" "ཏྲ") - ("tw" "ཏྭ") - ("thr" "ཐྲ") - ("dr" "དྲ") - ("drw" "དྲྭ") - ("dw" "དྭ") - ("pr" "པྲ") - ("py" "པྱ") - ("phr" "ཕྲ") - ("phy" "ཕྱ") - ("phyw" "ཕྱྭ") - ("bl" "བླ") - ("br" "བྲ") - ("by" "བྱ") - ("mr" "མྲ") - ("my" "མྱ") - ("tsw" "ཙྭ") - ("tshw" "ཚྭ") - ("zhw" "ཞྭ") - ("zl" "ཟླ") - ("zw" "ཟྭ") - ("rb" "རྦ") - ("rd" "རྡ") - ("rdz" "རྫ") - ("rg" "རྒ") - ("rgw" "རྒྭ") - ("rgy" "རྒྱ") - ("rj" "རྗ") - ("rk" "རྐ") - ("rky" "རྐྱ") - ("rl" "རླ") - ("rm" "རྨ") - ("rmy" "རྨྱ") - ("rn" "རྣ") - ("rng" "རྔ") - ("rny" "རྙ") - ("rt" "རྟ") - ("rts" "རྩ") - ("rtsw" "རྩྭ") - ("rw" "རྭ") - ("lb" "ལྦ") - ("lc" "ལྕ") - ("ld" "ལྡ") - ("lg" "ལྒ") - ("lh" "ལྷ") - ("lj" "ལྗ") - ("lk" "ལྐ") - ("lng" "ལྔ") - ("lp" "ལྤ") - ("lt" "ལྟ") - ("shr" "ཤྲ") - ("shw" "ཤྭ") - ("sb" "སྦ") - ("sbr" "སྦྲ") - ("sby" "སྦྱ") - ("sd" "སྡ") - ("sg" "སྒ") - ("sgr" "སྒྲ") - ("sgy" "སྒྱ") - ("sk" "སྐ") - ("skr" "སྐྲ") - ("sky" "སྐྱ") - ("sl" "སླ") - ("sm" "སྨ") - ("smr" "སྨྲ") - ("smy" "སྨྱ") - ("sn" "སྣ") - ("sng" "སྔ") - ("snr" "སྣྲ") - ("sny" "སྙ") - ("sp" "སྤ") - ("spr" "སྤྲ") - ("spy" "སྤྱ") - ("sr" "སྲ") - ("st" "སྟ") - ("sts" "སྩ") - ("sw" "སྭ") - ("hr" "ཧྲ") - ("hw" "ཧྭ")) - - (sanskrit - ("T" "ཊ") - ("Th" "ཋ") - ("D" "ཌ") - ("N" "ཎ") - ("Sh" "ཥ") - ("oM" (cond (precomposed "ༀ") (1 "ཨོཾ"))) - ("R+" "ཪ")) - - (force-stack - ("+")) - - (break-stack - (".")) - - (special-subjoined - ("h" (cond ((= precomposed 0) "ྷ") - ((= @-1 ?ག) (delete @-1) "གྷ") - ((= @-1 ?ད) (delete @-1) "དྷ") - ((= @-1 ?བ) (delete @-1) "བྷ") - ((= @-1 ?ཛ) (delete @-1) "ཛྷ") - (1 "ྷ"))) - ("Sh" (cond ((= precomposed 0) "ྵ") - ((= @-1 ?ཀ) (delete @-1) "ཀྵ") - (1 "ྵ"))) - ("W" "ྺ") - ("Y" "ྻ") - ("R" "ྼ")) - - (vowel - ("a" "") - ("i" "ི") - ("u" "ུ") - ("e" "ེ") - ("o" "ོ") - ("-i" (cond ((= precomposed 0) "ྀ") - ((= @-1 ?ྲ) "ྲྀ") - ((= @-1 ?ླ) "ླྀ") - (1 "ྀ"))) - ("A" "ཱ") - ("I" "ཱི") - ("U" "ཱུ") - ("ai" "ཻ") - ("au" "ཽ") - ("r-I" "ཷ") - ("l-I" "ཹ") - ("-I" (cond ((= precomposed 0) "ཱྀ") - ((= @-1 ?ྲ) "ཷ") - ((= @-1 ?ླ) "ཹ") - (1 "ཱྀ")))) - - (others - ;; Numbers - ("0" "༠") - ("1" "༡") - ("2" "༢") - ("3" "༣") - ("4" "༤") - ("5" "༥") - ("6" "༦") - ("7" "༧") - ("8" "༨") - ("9" "༩") - ;; These half numbers are not in EWTS but for convenience. - ("-1" "༪") - ("-2" "༫") - ("-3" "༬") - ("-4" "༭") - ("-5" "༮") - ("-6" "༯") - ("-7" "༰") - ("-8" "༱") - ("-9" "༲") - ("-0" "༳") - ;; Sanskrit-related marks - ("H" "ཿ") - ("M" "ཾ") - ("~M" "ྃ") - ("~M`" "ྂ") - ("?" "྄") - ("&" "྅") - ;; Intersyllabic marks - (" " "་") - ("*" "༌") - ;; Phrase deliminating marks - ("/" "།") - ("//" "༎") - (";" "༏") - ("|" "༑") - ("!" "༈") - (":" "༔") - ("_" " ") - ("=" "༴") - ;; Head marks - ("@" "༄") - ("#" "༅") - ("$" "༆") - ("%" "༇") - ;; Paired punctuation marks (brackets) - ("<" "༺") - (">" "༻") - ("(" "༼") - (")" "༽") - ;; Miscellaneous - ("~X" "༵") - ("X" "༷") - ("^" "༹")) - - (escape - ("\\" (mark BEG) "\\")) - - (non-tibetan - ("[")) - - (unicode - ("u" "u" (set MAX-COUNT 4)) - ("U" "U" (set MAX-COUNT 8))) - - (unescape - ("]")) - - (hexadigit - ("0" "0") - ("1" "1") - ("2" "2") - ("3" "3") - ("4" "4") - ("5" "5") - ("6" "6") - ("7" "7") - ("8" "8") - ("9" "9") - ("A" "A") ("a" "A") - ("B" "B") ("b" "B") - ("C" "C") ("c" "C") - ("D" "D") ("d" "D") - ("E" "E") ("e" "E") - ("F" "F") ("f" "F")) - - (backspace - ((Backspace) (undo)))) - -(state - (init - (consonant (shift after-consonant)) - (standard-stack (shift after-consonant)) - (sanskrit (shift after-consonant)) - (vowel (move @<) "ཨ" (move @>) (shift after-vowel)) - (others) - (escape (shift dispatch-escape)) - (non-tibetan (shift non-tibetan)) - (backspace)) - - (after-consonant - (force-stack (shift consonant-stack)) - (break-stack (shift init)) - (vowel (shift after-vowel))) - - (consonant-stack - "ཀ+" - (special-subjoined (shift after-consonant)) - (consonant (set C @-1) (delete @-1) (add C #x50) (insert C) - (shift after-consonant)) - (force-stack) - (nil (pop))) - - (after-vowel - (force-stack (shift vowel-stack))) - - (vowel-stack - "ཀ+" - (vowel (shift after-vowel))) - - (dispatch-escape - (unicode (shift unicode)) - (nil (delete BEG) (shift init) (unhandle))) - - (unicode - "ཀu" - (t (set COUNT 0) (set UNICODE 0)) - (hexadigit (cond ((> @-1 ?9) (set UNICODE (+ (* UNICODE 16) (- @-1 55)))) - (1 (set UNICODE (+ (* UNICODE 16) (- @-1 48))))) - (set COUNT (+ COUNT 1)) - (cond ((= COUNT MAX-COUNT) (delete BEG) (insert UNICODE) - (shift init))))) - - (non-tibetan - "ཀA" - (unescape (shift init)) - (nil (unhandle)))) - -;; Local Variables: -;; mode: lisp -;; End: