]> code.delx.au - gnu-emacs/blobdiff - lisp/language/lao-util.el
Update copyright year to 2014 by running admin/update-copyright.
[gnu-emacs] / lisp / language / lao-util.el
index 175338bc9970241eae8b6a2fc215c6bca1210c2f..8884b37baa1a84a4f1a766b5fdb367f34713c185 100644 (file)
@@ -1,9 +1,8 @@
-;;; lao-util.el --- utilities for Lao -*- coding: iso-2022-7bit; -*-
+;;; lao-util.el --- utilities for Lao -*- coding: utf-8; -*-
 
-;; Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
-;;   Free Software Foundation, Inc.
+;; Copyright (C) 2001-2014 Free Software Foundation, Inc.
 ;; Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
-;;   2007, 2008, 2009, 2010
+;;   2007, 2008, 2009, 2010, 2011
 ;;   National Institute of Advanced Industrial Science and Technology (AIST)
 ;;   Registration Number H14PRO021
 ;; Copyright (C) 2003
 (define-category ?v "Lao upper/lower vowel" lao-category-table)
 (define-category ?t "Lao tone" lao-category-table)
 
-(let ((l '((?\e(1!\e(B consonant "LETTER KOR  KAI'" "CHICKEN")
-          (?\e(1"\e(B consonant "LETTER KHOR KHAI'" "EGG")
-          (?\e(1#\e(B invalid nil)
-          (?\e(1$\e(B consonant "LETTER QHOR QHWARGN" "BUFFALO")
-          (?\e(1%\e(B invalid nil)
+(let ((l '((? consonant "LETTER KOR  KAI'" "CHICKEN")
+          (? consonant "LETTER KHOR KHAI'" "EGG")
+          (? invalid nil)
+          (? consonant "LETTER QHOR QHWARGN" "BUFFALO")
+          (? invalid nil)
           (?  invalid nil)
-          (?\e(1'\e(B consonant "LETTER NGOR NGUU" "SNAKE")
-          (?\e(1(\e(B consonant "LETTER JOR JUA" "BUDDHIST NOVICE")
-          (?\e(1)\e(B invalid nil)
-          (?\e(1*\e(B consonant "LETTER XOR X\"ARNG" "ELEPHANT")
-          (?\e(1+\e(B invalid nil)
-          (?\e(1,\e(B invalid nil)
-          (?\e(1-\e(B consonant "LETTER YOR YUNG" "MOSQUITO")
-          (?\e(1.\e(B invalid nil)
-          (?\e(1.\e(B invalid nil)
-          (?\e(1.\e(B invalid nil)
-          (?\e(1.\e(B invalid nil)
-          (?\e(1.\e(B invalid nil)
-          (?\e(1.\e(B invalid nil)
-          (?\e(14\e(B consonant "LETTER DOR DANG" "NOSE")
-          (?\e(15\e(B consonant "LETTER TOR TAR" "EYE")
-          (?\e(16\e(B consonant "LETTER THOR THUNG" "TO ASK,QUESTION")
-          (?\e(17\e(B consonant "LETTER DHOR DHARM" "FLAG")
-          (?\e(18\e(B invalid nil)
-          (?\e(19\e(B consonant "LETTER NOR NOK" "BIRD")
-          (?\e(1:\e(B consonant "LETTER BOR BED" "FISHHOOK")
-          (?\e(1;\e(B consonant "LETTER POR PAR" "FISH")
-          (?\e(1<\e(B consonant "LETTER HPOR HPER\"" "BEE")
-          (?\e(1=\e(B consonant "LETTER FHOR FHAR" "WALL")
-          (?\e(1>\e(B consonant "LETTER PHOR PHUU" "MOUNTAIN")
-          (?\e(1?\e(B consonant "LETTER FOR FAI" "FIRE")
-          (?\e(1@\e(B invalid nil)
-          (?\e(1A\e(B consonant "LETTER MOR MAR\"" "HORSE")
-          (?\e(1B\e(B consonant "LETTER GNOR GNAR" "MEDICINE")
-          (?\e(1C\e(B consonant "LETTER ROR ROD" "CAR")
-          (?\e(1D\e(B invalid nil)
-          (?\e(1E\e(B consonant "LETTER LOR LIING" "MONKEY")
-          (?\e(1F\e(B invalid nil)
-          (?\e(1G\e(B consonant "LETTER WOR WII" "HAND FAN")
-          (?\e(1H\e(B invalid nil)
-          (?\e(1I\e(B invalid nil)
-          (?\e(1J\e(B consonant "LETTER SOR SEA" "TIGER")
-          (?\e(1K\e(B consonant "LETTER HHOR HHAI" "JAR")
-          (?\e(1L\e(B invalid nil)
-          (?\e(1M\e(B consonant "LETTER OR OOW" "TAKE")
-          (?\e(1N\e(B consonant "LETTER HOR HEA" "BOAT")
-          (?\e(1O\e(B special "ELLIPSIS")
-          (?\e(1P\e(B vowel-base "VOWEL SIGN SARA A")
-          (?\e(1Q\e(B vowel-upper "VOWEL SIGN MAI KAN")
-          (?\e(1R\e(B vowel-base "VOWEL SIGN SARA AR")
-          (?\e(1S\e(B vowel-base "VOWEL SIGN SARA AM")
-          (?\e(1T\e(B vowel-upper "VOWEL SIGN SARA I")
-          (?\e(1U\e(B vowel-upper "VOWEL SIGN SARA II")
-          (?\e(1V\e(B vowel-upper "VOWEL SIGN SARA EU")
-          (?\e(1W\e(B vowel-upper "VOWEL SIGN SARA UR")
-          (?\e(1X\e(B vowel-lower "VOWEL SIGN SARA U")
-          (?\e(1Y\e(B vowel-lower "VOWEL SIGN SARA UU")
-          (?\e(1Z\e(B invalid nil)
-          (?\e(1[\e(B vowel-upper "VOWEL SIGN MAI KONG")
-          (?\e(1\\e(B semivowel-lower "SEMIVOWEL SIGN LO")
-          (?\e(1]\e(B vowel-base "SEMIVOWEL SIGN SARA IA")
-          (?\e(1^\e(B invalid nil)
-          (?\e(1_\e(B invalid nil)
-          (?\e(1`\e(B vowel-base "VOWEL SIGN SARA EE")
-          (?\e(1a\e(B vowel-base "VOWEL SIGN SARA AA")
-          (?\e(1b\e(B vowel-base "VOWEL SIGN SARA OO")
-          (?\e(1c\e(B vowel-base "VOWEL SIGN SARA EI MAI MUAN\"")
-          (?\e(1d\e(B vowel-base "VOWEL SIGN SARA AI MAI MAY")
-          (?\e(1e\e(B invalid nil)
-          (?\e(1f\e(B special "KO LA (REPETITION)")
-          (?\e(1g\e(B invalid nil)
-          (?\e(1h\e(B tone "TONE MAI EK")
-          (?\e(1i\e(B tone "TONE MAI THO")
-          (?\e(1j\e(B tone "TONE MAI TI")
-          (?\e(1k\e(B tone "TONE MAI JADTAWAR")
-          (?\e(1l\e(B tone "CANCELLATION MARK")
-          (?\e(1m\e(B vowel-upper "VOWEL SIGN SARA OR")
-          (?\e(1n\e(B invalid nil)
-          (?\e(1o\e(B invalid nil)
-          (?\e(1p\e(B special "DIGIT ZERO")
-          (?\e(1q\e(B special "DIGIT ONE")
-          (?\e(1r\e(B special "DIGIT TWO")
-          (?\e(1s\e(B special "DIGIT THREE")
-          (?\e(1t\e(B special "DIGIT FOUR")
-          (?\e(1u\e(B special "DIGIT FIVE")
-          (?\e(1v\e(B special "DIGIT SIX")
-          (?\e(1w\e(B special "DIGIT SEVEN")
-          (?\e(1x\e(B special "DIGIT EIGHT")
-          (?\e(1y\e(B special "DIGIT NINE")
-          (?\e(1z\e(B invalid nil)
-          (?\e(1{\e(B invalid nil)
-          (?\e(1|\e(B consonant "LETTER NHOR NHUU" "MOUSE")
-          (?\e(1}\e(B consonant "LETTER MHOR MHAR" "DOG")
-          (?\e(1~\e(B invalid nil)))
+          (? consonant "LETTER NGOR NGUU" "SNAKE")
+          (? consonant "LETTER JOR JUA" "BUDDHIST NOVICE")
+          (? invalid nil)
+          (? consonant "LETTER XOR X\"ARNG" "ELEPHANT")
+          (? invalid nil)
+          (? invalid nil)
+          (? consonant "LETTER YOR YUNG" "MOSQUITO")
+          (? invalid nil)
+          (? invalid nil)
+          (? invalid nil)
+          (? invalid nil)
+          (? invalid nil)
+          (? invalid nil)
+          (? consonant "LETTER DOR DANG" "NOSE")
+          (? consonant "LETTER TOR TAR" "EYE")
+          (? consonant "LETTER THOR THUNG" "TO ASK,QUESTION")
+          (? consonant "LETTER DHOR DHARM" "FLAG")
+          (? invalid nil)
+          (? consonant "LETTER NOR NOK" "BIRD")
+          (? consonant "LETTER BOR BED" "FISHHOOK")
+          (? consonant "LETTER POR PAR" "FISH")
+          (? consonant "LETTER HPOR HPER\"" "BEE")
+          (? consonant "LETTER FHOR FHAR" "WALL")
+          (? consonant "LETTER PHOR PHUU" "MOUNTAIN")
+          (? consonant "LETTER FOR FAI" "FIRE")
+          (? invalid nil)
+          (? consonant "LETTER MOR MAR\"" "HORSE")
+          (? consonant "LETTER GNOR GNAR" "MEDICINE")
+          (? consonant "LETTER ROR ROD" "CAR")
+          (? invalid nil)
+          (? consonant "LETTER LOR LIING" "MONKEY")
+          (? invalid nil)
+          (? consonant "LETTER WOR WII" "HAND FAN")
+          (? invalid nil)
+          (? invalid nil)
+          (? consonant "LETTER SOR SEA" "TIGER")
+          (? consonant "LETTER HHOR HHAI" "JAR")
+          (? invalid nil)
+          (? consonant "LETTER OR OOW" "TAKE")
+          (? consonant "LETTER HOR HEA" "BOAT")
+          (? special "ELLIPSIS")
+          (? vowel-base "VOWEL SIGN SARA A")
+          (? vowel-upper "VOWEL SIGN MAI KAN")
+          (? vowel-base "VOWEL SIGN SARA AR")
+          (? vowel-base "VOWEL SIGN SARA AM")
+          (? vowel-upper "VOWEL SIGN SARA I")
+          (? vowel-upper "VOWEL SIGN SARA II")
+          (? vowel-upper "VOWEL SIGN SARA EU")
+          (? vowel-upper "VOWEL SIGN SARA UR")
+          (? vowel-lower "VOWEL SIGN SARA U")
+          (? vowel-lower "VOWEL SIGN SARA UU")
+          (? invalid nil)
+          (? vowel-upper "VOWEL SIGN MAI KONG")
+          (? semivowel-lower "SEMIVOWEL SIGN LO")
+          (? vowel-base "SEMIVOWEL SIGN SARA IA")
+          (? invalid nil)
+          (?຿ invalid nil)
+          (? vowel-base "VOWEL SIGN SARA EE")
+          (? vowel-base "VOWEL SIGN SARA AA")
+          (? vowel-base "VOWEL SIGN SARA OO")
+          (? vowel-base "VOWEL SIGN SARA EI MAI MUAN\"")
+          (? vowel-base "VOWEL SIGN SARA AI MAI MAY")
+          (? invalid nil)
+          (? special "KO LA (REPETITION)")
+          (? invalid nil)
+          (? tone "TONE MAI EK")
+          (? tone "TONE MAI THO")
+          (? tone "TONE MAI TI")
+          (? tone "TONE MAI JADTAWAR")
+          (? tone "CANCELLATION MARK")
+          (? vowel-upper "VOWEL SIGN SARA OR")
+          (? invalid nil)
+          (? invalid nil)
+          (? special "DIGIT ZERO")
+          (? special "DIGIT ONE")
+          (? special "DIGIT TWO")
+          (? special "DIGIT THREE")
+          (? special "DIGIT FOUR")
+          (? special "DIGIT FIVE")
+          (? special "DIGIT SIX")
+          (? special "DIGIT SEVEN")
+          (? special "DIGIT EIGHT")
+          (? special "DIGIT NINE")
+          (? invalid nil)
+          (? invalid nil)
+          (? consonant "LETTER NHOR NHUU" "MOUSE")
+          (? consonant "LETTER MHOR MHAR" "DOG")
+          (? invalid nil)))
       elm)
   (while l
     (setq elm (car l) l (cdr l))
 
 (defconst lao-transcription-consonant-alist
   (sort '(;; single consonants
-         ("k" . "\e(1!\e(B")
-         ("kh" . "\e(1"\e(B")
-         ("qh" . "\e(1$\e(B")
-         ("ng" . "\e(1'\e(B")
-         ("j" . "\e(1(\e(B")
-         ("s" . "\e(1J\e(B")
-         ("x" . "\e(1*\e(B")
-         ("y" . "\e(1-\e(B")
-         ("d" . "\e(14\e(B")
-         ("t" . "\e(15\e(B")
-         ("th" . "\e(16\e(B")
-         ("dh" . "\e(17\e(B")
-         ("n" . "\e(19\e(B")
-         ("b" . "\e(1:\e(B")
-         ("p" . "\e(1;\e(B")
-         ("hp" . "\e(1<\e(B")
-         ("fh" . "\e(1=\e(B")
-         ("ph" . "\e(1>\e(B")
-         ("f" . "\e(1?\e(B")
-         ("m" . "\e(1A\e(B")
-         ("gn" . "\e(1B\e(B")
-         ("l" . "\e(1E\e(B")
-         ("r" . "\e(1C\e(B")
-         ("v" . "\e(1G\e(B")
-         ("w" . "\e(1G\e(B")
-         ("hh" . "\e(1K\e(B")
-         ("O" . "\e(1M\e(B")
-         ("h" . "\e(1N\e(B")
-         ("nh" . "\e(1|\e(B")
-         ("mh" . "\e(1}\e(B")
-         ("lh" . ["\e(1K\\e(B"])
+         ("k" . "")
+         ("kh" . "")
+         ("qh" . "")
+         ("ng" . "")
+         ("j" . "")
+         ("s" . "")
+         ("x" . "")
+         ("y" . "")
+         ("d" . "")
+         ("t" . "")
+         ("th" . "")
+         ("dh" . "")
+         ("n" . "")
+         ("b" . "")
+         ("p" . "")
+         ("hp" . "")
+         ("fh" . "")
+         ("ph" . "")
+         ("f" . "")
+         ("m" . "")
+         ("gn" . "")
+         ("l" . "")
+         ("r" . "")
+         ("v" . "")
+         ("w" . "")
+         ("hh" . "")
+         ("O" . "")
+         ("h" . "")
+         ("nh" . "")
+         ("mh" . "")
+         ("lh" . ["ຫຼ"])
          ;; double consonants
-         ("ngh" . ["\e(1K'\e(B"])
-         ("yh" . ["\e(1K]\e(B"])
-         ("wh" . ["\e(1KG\e(B"])
-         ("hl" . ["\e(1KE\e(B"])
-         ("hy" . ["\e(1K-\e(B"])
-         ("hn" . ["\e(1K9\e(B"])
-         ("hm" . ["\e(1KA\e(B"])
+         ("ngh" . ["ຫງ"])
+         ("yh" . ["ຫຽ"])
+         ("wh" . ["ຫວ"])
+         ("hl" . ["ຫລ"])
+         ("hy" . ["ຫຍ"])
+         ("hn" . ["ຫນ"])
+         ("hm" . ["ຫມ"])
          )
        (function (lambda (x y) (> (length (car x)) (length (car y)))))))
 
 (defconst lao-transcription-semi-vowel-alist
-  '(("r" . "\e(1\\e(B")))
+  '(("r" . "")))
 
 (defconst lao-transcription-vowel-alist
-  (sort '(("a" . "\e(1P\e(B")
-         ("ar" . "\e(1R\e(B")
-         ("i" . "\e(1T\e(B")
-         ("ii" . "\e(1U\e(B")
-         ("eu" . "\e(1V\e(B")
-         ("ur" . "\e(1W\e(B")
-         ("u" . "\e(1X\e(B")
-         ("uu" . "\e(1Y\e(B")
-         ("e" . ["\e(1`P\e(B"])
-         ("ee" . "\e(1`\e(B")
-         ("ae" . ["\e(1aP\e(B"])
-         ("aa" . "\e(1a\e(B")
-         ("o" . ["\e(1bP\e(B"])
-         ("oo" . "\e(1b\e(B")
-         ("oe" . ["\e(1`RP\e(B"])
-         ("or" . "\e(1m\e(B")
-         ("er" . ["\e(1`T\e(B"])
-         ("ir" . ["\e(1`U\e(B"])
-         ("ua" . ["\e(1[GP\e(B"])
-         ("uaa" . ["\e(1[G\e(B"])
-         ("ie" . ["\e(1`Q]P\e(B"])
-         ("ia" . ["\e(1`Q]\e(B"])
-         ("ea" . ["\e(1`VM\e(B"])
-         ("eaa" . ["\e(1`WM\e(B"])
-         ("ai" . "\e(1d\e(B")
-         ("ei" . "\e(1c\e(B")
-         ("ao" . ["\e(1`[R\e(B"])
-         ("aM" . "\e(1S\e(B"))
+  (sort '(("a" . "")
+         ("ar" . "")
+         ("i" . "")
+         ("ii" . "")
+         ("eu" . "")
+         ("ur" . "")
+         ("u" . "")
+         ("uu" . "")
+         ("e" . ["ເະ"])
+         ("ee" . "")
+         ("ae" . ["ແະ"])
+         ("aa" . "")
+         ("o" . ["ໂະ"])
+         ("oo" . "")
+         ("oe" . ["ເາະ"])
+         ("or" . "")
+         ("er" . ["ເິ"])
+         ("ir" . ["ເີ"])
+         ("ua" . ["ົວະ"])
+         ("uaa" . ["ົວ"])
+         ("ie" . ["ເັຽະ"])
+         ("ia" . ["ເັຽ"])
+         ("ea" . ["ເຶອ"])
+         ("eaa" . ["ເືອ"])
+         ("ai" . "")
+         ("ei" . "")
+         ("ao" . ["ເົາ"])
+         ("aM" . ""))
        (function (lambda (x y) (> (length (car x)) (length (car y)))))))
 
 ;; Maa-sakod is put at the tail.
 (defconst lao-transcription-maa-sakod-alist
-  '(("k" . "\e(1!\e(B")
-    ("g" . "\e(1'\e(B")
-    ("y" . "\e(1-\e(B")
-    ("d" . "\e(14\e(B")
-    ("n" . "\e(19\e(B")
-    ("b" . "\e(1:\e(B")
-    ("m" . "\e(1A\e(B")
-    ("v" . "\e(1G\e(B")
-    ("w" . "\e(1G\e(B")
+  '(("k" . "")
+    ("g" . "")
+    ("y" . "")
+    ("d" . "")
+    ("n" . "")
+    ("b" . "")
+    ("m" . "")
+    ("v" . "")
+    ("w" . "")
     ))
 
 (defconst lao-transcription-tone-alist
-  '(("'" . "\e(1h\e(B")
-    ("\"" . "\e(1i\e(B")
-    ("^" . "\e(1j\e(B")
-    ("+" . "\e(1k\e(B")
-    ("~" . "\e(1l\e(B")))
+  '(("'" . "")
+    ("\"" . "")
+    ("^" . "")
+    ("+" . "")
+    ("~" . "")))
 
 (defconst lao-transcription-punctuation-alist
-  '(("\\0" . "\e(1p\e(B")
-    ("\\1" . "\e(1q\e(B")
-    ("\\2" . "\e(1r\e(B")
-    ("\\3" . "\e(1s\e(B")
-    ("\\4" . "\e(1t\e(B")
-    ("\\5" . "\e(1u\e(B")
-    ("\\6" . "\e(1v\e(B")
-    ("\\7" . "\e(1w\e(B")
-    ("\\8" . "\e(1x\e(B")
-    ("\\9" . "\e(1y\e(B")
-    ("\\\\" . "\e(1f\e(B")
-    ("\\$" . "\e(1O\e(B")))
+  '(("\\0" . "")
+    ("\\1" . "")
+    ("\\2" . "")
+    ("\\3" . "")
+    ("\\4" . "")
+    ("\\5" . "")
+    ("\\6" . "")
+    ("\\7" . "")
+    ("\\8" . "")
+    ("\\9" . "")
+    ("\\\\" . "")
+    ("\\$" . "")))
 
 (defconst lao-transcription-pattern
   (concat
   "Regexp of Roman transcription pattern for one Lao syllable.")
 
 (defconst lao-vowel-reordering-rule
-  '(("\e(1P\e(B" (0 ?\e(1P\e(B) (0 ?\e(1Q\e(B))
-    ("\e(1R\e(B" (0 ?\e(1R\e(B))
-    ("\e(1T\e(B" (0 ?\e(1U\e(B))
-    ("\e(1U\e(B" (0 ?\e(1U\e(B))
-    ("\e(1V\e(B" (0 ?\e(1V\e(B))
-    ("\e(1W\e(B" (0 ?\e(1W\e(B))
-    ("\e(1X\e(B" (0 ?\e(1X\e(B))
-    ("\e(1Y\e(B" (0 ?\e(1Y\e(B))
-    ("\e(1`P\e(B" (?\e(1`\e(B 0 ?\e(1P\e(B) (?\e(1`\e(B 0 ?\e(1Q\e(B))
-    ("\e(1`\e(B" (?\e(1`\e(B 0))
-    ("\e(1aP\e(B" (?\e(1a\e(B 0 ?\e(1P\e(B) (?\e(1a\e(B 0 ?\e(1Q\e(B))
-    ("\e(1a\e(B" (?\e(1a\e(B 0))
-    ("\e(1bP\e(B" (?\e(1b\e(B 0 ?\e(1P\e(B) (0 ?\e(1[\e(B) (?\e(1-\e(B ?\e(1b\e(B 0 ?\e(1Q\e(B) (?\e(1G\e(B ?\e(1b\e(B 0 ?\e(1Q\e(B))
-    ("\e(1b\e(B" (?\e(1b\e(B 0))
-    ("\e(1`RP\e(B" (?\e(1`\e(B 0 ?\e(1R\e(B ?\e(1P\e(B) (0 ?\e(1Q\e(B ?\e(1M\e(B))
-    ("\e(1m\e(B" (0 ?\e(1m\e(B) (0 ?\e(1M\e(B))
-    ("\e(1`T\e(B" (?\e(1`\e(B 0 ?\e(1T\e(B))
-    ("\e(1`U\e(B" (?\e(1`\e(B 0 ?\e(1U\e(B))
-    ("\e(1[GP\e(B" (0 ?\e(1[\e(B ?\e(1G\e(B ?\e(1P\e(B) (0 ?\e(1Q\e(B ?\e(1G\e(B))
-    ("\e(1[G\e(B" (0 ?\e(1[\e(B ?\e(1G\e(B) (0 ?\e(1G\e(B))
-    ("\e(1`Q]P\e(B" (?\e(1`\e(B 0 ?\e(1Q\e(B ?\e(1]\e(B ?\e(1P\e(B) (0 ?\e(1Q\e(B ?\e(1]\e(B))
-    ("\e(1`Q]\e(B" (?\e(1`\e(B 0 ?\e(1Q\e(B ?\e(1]\e(B) (0 ?\e(1]\e(B))
-    ("\e(1`VM\e(B" (?\e(1`\e(B 0 ?\e(1V\e(B ?\e(1M\e(B))
-    ("\e(1`WM\e(B" (?\e(1`\e(B 0 ?\e(1W\e(B ?\e(1M\e(B))
-    ("\e(1d\e(B" (?\e(1d\e(B 0))
-    ("\e(1c\e(B" (?\e(1c\e(B 0))
-    ("\e(1`[R\e(B" (?\e(1`\e(B 0 ?\e(1[\e(B ?\e(1R\e(B))
-    ("\e(1S\e(B" (0 ?\e(1S\e(B)))
+  '(("ະ" (0 ?ະ) (0 ?ັ))
+    ("າ" (0 ?າ))
+    ("ິ" (0 ?ີ))
+    ("ີ" (0 ?ີ))
+    ("ຶ" (0 ?ຶ))
+    ("ື" (0 ?ື))
+    ("ຸ" (0 ?ຸ))
+    ("ູ" (0 ?ູ))
+    ("ເະ" (?ເ 0 ?ະ) (?ເ 0 ?ັ))
+    ("ເ" (?ເ 0))
+    ("ແະ" (?ແ 0 ?ະ) (?ແ 0 ?ັ))
+    ("ແ" (?ແ 0))
+    ("ໂະ" (?ໂ 0 ?ະ) (0 ?ົ) (?ຍ ?ໂ 0 ?ັ) (?ວ ?ໂ 0 ?ັ))
+    ("ໂ" (?ໂ 0))
+    ("ເາະ" (?ເ 0 ?າ ?ະ) (0 ?ັ ?ອ))
+    ("ໍ" (0 ?ໍ) (0 ?ອ))
+    ("ເິ" (?ເ 0 ?ິ))
+    ("ເີ" (?ເ 0 ?ີ))
+    ("ົວະ" (0 ?ົ ?ວ ?ະ) (0 ?ັ ?ວ))
+    ("ົວ" (0 ?ົ ?ວ) (0 ?ວ))
+    ("ເັຽະ" (?ເ 0 ?ັ ?ຽ ?ະ) (0 ?ັ ?ຽ))
+    ("ເັຽ" (?ເ 0 ?ັ ?ຽ) (0 ?ຽ))
+    ("ເຶອ" (?ເ 0 ?ຶ ?ອ))
+    ("ເືອ" (?ເ 0 ?ື ?ອ))
+    ("ໄ" (?ໄ 0))
+    ("ໃ" (?ໃ 0))
+    ("ເົາ" (?ເ 0 ?ົ ?າ))
+    ("ຳ" (0 ?ຳ)))
   "Alist of Lao vowel string vs the corresponding re-ordering rule.
 Each element has this form:
        (VOWEL NO-MAA-SAKOD-RULE WITH-MAA-SAKOD-RULE (MAA-SAKOD-0 RULE-0) ...)
 
-VOWEL is a vowel string (e.g. \"\e(1`Q]P\e(B\").
+VOWEL is a vowel string (e.g. \"ເັຽະ\").
 
 NO-MAA-SAKOD-RULE is a rule to re-order and modify VOWEL following a
 consonant.  It is a list vowel characters or 0.  The element 0
 indicate the place to embed a consonant.
 
 Optional WITH-MAA-SAKOD-RULE is a rule to re-order and modify VOWEL
-follwoing a consonant and preceding a maa-sakod character.  If it is
-nil, NO-MAA-SAKOD-RULE is used.  The maa-sakod character is alwasy
+following a consonant and preceding a maa-sakod character.  If it is
+nil, NO-MAA-SAKOD-RULE is used.  The maa-sakod character is always
 appended at the tail.
 
-For instance, rule `(\"\e(1`WM\e(B\" (?\e(1`\e(B t ?\e(1W\e(B ?\e(1M\e(B))' tells that this vowel
-string following a consonant `\e(1!\e(B' should be re-ordered as \"\e(1`!WM\e(B\".
+For instance, rule `(\"ເືອ\" (?ເ t ?ື ?ອ))' tells that this vowel
+string following a consonant `ກ' should be re-ordered as \"ເກືອ\".
 
 Optional (MAA-SAKOD-n RULE-n) are rules specially applied to maa-sakod
 character MAA-SAKOD-n.")
@@ -387,7 +386,7 @@ character MAA-SAKOD-n.")
   "Transcribe a Romanized Lao syllable in the region FROM and TO to Lao string.
 Only the first syllable is transcribed.
 The value has the form: (START END LAO-STRING), where
-START and END are the beggining and end positions of the Roman Lao syllable,
+START and END are the beginning and end positions of the Roman Lao syllable,
 LAO-STRING is the Lao character transcription of it.
 
 Optional 3rd arg STR, if non-nil, is a string to search for Roman Lao
@@ -516,5 +515,4 @@ syllable.  In that case, FROM and TO are indexes to STR."
 ;;
 (provide 'lao-util)
 
-;; arch-tag: 1f828781-3cb8-4695-88af-8f33222338ce
 ;;; lao-util.el ends here