%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/language/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/language/lao-util.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.

;;; This file contains utf-8 non-ASCII characters,
;;; and so cannot be loaded into Emacs 22 or earlier.
(and (boundp 'emacs-version)
     (< (aref emacs-version (1- (length emacs-version))) ?A)
     (string-lessp emacs-version "23")
     (error "`%s' was compiled for Emacs 23 or later" #$))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(defconst lao-category-table (make-category-table))
(byte-code "\305\306\307#\210\305\310\311#\210\305\312\313#\210\305\314\315#\210\316\317\n\203f\n@\nA	@	A@\320\267\202T\321\f\306#\210\202T\321\f\312#\210\202T\321\f\310#\210\202T\321\f\314#\210\322\f\323#\210\322\f\324\325	8#\210*\202*\317\207" [lao-category-table elm l ptype char define-category 99 "Lao consonant" 115 "Lao semi-vowel" 118 "Lao upper/lower vowel" 116 "Lao tone" ((3713 consonant "CHICKEN") (3714 consonant "EGG") (3715 invalid) (3716 consonant "BUFFALO") (3717 invalid) (32 invalid) (3719 consonant "SNAKE") (3720 consonant "BUDDHIST NOVICE") (3721 invalid) (3722 consonant "ELEPHANT") (3723 invalid) (3724 invalid) (3725 consonant "MOSQUITO") (3726 invalid) (3726 invalid) (3726 invalid) (3726 invalid) (3726 invalid) (3726 invalid) (3732 consonant "NOSE") (3733 consonant "EYE") (3734 consonant "TO ASK,QUESTION") (3735 consonant "FLAG") (3736 invalid) (3737 consonant "BIRD") (3738 consonant "FISHHOOK") (3739 consonant "FISH") (3740 consonant "BEE") (3741 consonant "WALL") (3742 consonant "MOUNTAIN") (3743 consonant "FIRE") (3744 invalid) (3745 consonant "HORSE") (3746 consonant "MEDICINE") (3747 consonant "CAR") (3748 invalid) (3749 consonant "MONKEY") (3750 invalid) (3751 consonant "HAND FAN") (3752 invalid) (3753 invalid) (3754 consonant "TIGER") (3755 consonant "JAR") (3756 invalid) (3757 consonant "TAKE") (3758 consonant "BOAT") (3759 special) (3760 vowel-base) (3761 vowel-upper) (3762 vowel-base) (3763 vowel-base) (3764 vowel-upper) (3765 vowel-upper) (3766 vowel-upper) (3767 vowel-upper) (3768 vowel-lower) (3769 vowel-lower) (3770 invalid) (3771 vowel-upper) (3772 semivowel-lower) (3773 vowel-base) (3774 invalid) (3775 invalid) (3776 vowel-base) (3777 vowel-base) (3778 vowel-base) (3779 vowel-base) (3780 vowel-base) (3781 invalid) (3782 special) (3783 invalid) (3784 tone) (3785 tone) (3786 tone) (3787 tone) (3788 tone) (3789 vowel-upper) (3790 invalid) (3791 invalid) (3792 special) (3793 special) (3794 special) (3795 special) (3796 special) (3797 special) (3798 special) (3799 special) (3800 special) (3801 special) (3802 invalid) (3803 invalid) (3804 consonant "MOUSE") (3805 consonant "DOG") (3806 invalid)) nil #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (consonant 51 vowel-upper 60 vowel-lower 60 semivowel-lower 69 tone 78)) modify-category-entry put-char-code-property phonetic-type meaning 2] 5)
#@55 Regular expression matching a Lao composite sequence.
(defvar lao-composition-pattern "\\cc\\(\\ct\\|\\cv\\ct?\\|\\cs\\(\\ct\\|\\cv\\ct?\\)?\\)" (#$ . 2879))
(defalias 'lao-compose-string #[(str) "\306 p\307\216\310\n!\210\311\312\f
#\211\203$\313
\311\225#\210\311\225\202
)
+\207" [#1=#:old-buffer #2=#:old-table lao-category-table idx lao-composition-pattern str category-table #[nil "rq\210\302	!)\207" [#1# #2# set-category-table] 2] set-category-table 0 string-match compose-string] 4])
(defconst lao-transcription-consonant-alist (sort '(("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" . ["ຫຼ"]) ("ngh" . ["ຫງ"]) ("yh" . ["ຫຽ"]) ("wh" . ["ຫວ"]) ("hl" . ["ຫລ"]) ("hy" . ["ຫຍ"]) ("hn" . ["ຫນ"]) ("hm" . ["ຫມ"])) #[(x y) "@G	@GV\207" [x y] 2]))
(defconst lao-transcription-semi-vowel-alist '(("r" . "ຼ")))
(defconst lao-transcription-vowel-alist (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" . "ຳ")) #[(x y) "@G	@GV\207" [x y] 2]))
(defconst lao-transcription-maa-sakod-alist '(("k" . "ກ") ("g" . "ງ") ("y" . "ຍ") ("d" . "ດ") ("n" . "ນ") ("b" . "ບ") ("m" . "ມ") ("v" . "ວ") ("w" . "ວ")))
(defconst lao-transcription-tone-alist '(("'" . "່") ("\"" . "້") ("^" . "໊") ("+" . "໋") ("~" . "໌")))
(defconst lao-transcription-punctuation-alist '(("\\0" . "໐") ("\\1" . "໑") ("\\2" . "໒") ("\\3" . "໓") ("\\4" . "໔") ("\\5" . "໕") ("\\6" . "໖") ("\\7" . "໗") ("\\8" . "໘") ("\\9" . "໙") ("\\\\" . "ໆ") ("\\$" . "ຯ")))
#@61 Regexp of Roman transcription pattern for one Lao syllable.
(defconst lao-transcription-pattern (byte-code "\306\307\310\311#\312\307\310	\311#\313\307\310\n\311#\312\307\310\311#\314\307\315\f\311#\316\307\317
\311#\260\f\207" [lao-transcription-consonant-alist lao-transcription-semi-vowel-alist lao-transcription-vowel-alist lao-transcription-maa-sakod-alist lao-transcription-tone-alist lao-transcription-punctuation-alist "\\(" mapconcat car "\\|" "\\)\\(" "\\)?\\(\\(" "\\)?\\(" #[(x) "\301@!\207" [x regexp-quote] 2] "\\)?\\)?\\|" #[(x) "\301@!\207" [x regexp-quote] 2]] 15) (#$ . 5249))
#@61 Regexp of Roman transcription pattern for one Lao syllable.
(defconst lao-transcription-pattern (byte-code "\306\307\310\311\"!\312\307\310\311	\"!\313\307\310\311\n\"!\312\307\310\311\"!\314\307\310\311\f\"!\315\307\310\311
\"!\260\f\207" [lao-transcription-consonant-alist lao-transcription-semi-vowel-alist lao-transcription-vowel-alist lao-transcription-maa-sakod-alist lao-transcription-tone-alist lao-transcription-punctuation-alist "\\(" regexp-opt mapcar car "\\)\\(" "\\)?\\(\\(" "\\)?\\(" "\\)?\\)?\\|"] 15) (#$ . 5854))
#@862 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. "ເັຽະ").

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
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 `("ເືອ" (?ເ 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.
(defconst lao-vowel-reordering-rule '(("ະ" (0 3760) (0 3761)) ("າ" (0 3762)) ("ິ" (0 3765)) ("ີ" (0 3765)) ("ຶ" (0 3766)) ("ື" (0 3767)) ("ຸ" (0 3768)) ("ູ" (0 3769)) ("ເະ" (3776 0 3760) (3776 0 3761)) ("ເ" (3776 0)) ("ແະ" (3777 0 3760) (3777 0 3761)) ("ແ" (3777 0)) ("ໂະ" (3778 0 3760) (0 3771) (3725 3778 0 3761) (3751 3778 0 3761)) ("ໂ" (3778 0)) ("ເາະ" (3776 0 3762 3760) (0 3761 3757)) ("ໍ" (0 3789) (0 3757)) ("ເິ" (3776 0 3764)) ("ເີ" (3776 0 3765)) ("ົວະ" (0 3771 3751 3760) (0 3761 3751)) ("ົວ" (0 3771 3751) (0 3751)) ("ເັຽະ" (3776 0 3761 3773 3760) (0 3761 3773)) ("ເັຽ" (3776 0 3761 3773) (0 3773)) ("ເຶອ" (3776 0 3766 3757)) ("ເືອ" (3776 0 3767 3757)) ("ໄ" (3780 0)) ("ໃ" (3779 0)) ("ເົາ" (3776 0 3771 3762)) ("ຳ" (0 3763))) (#$ . 6394))
#@430 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 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
syllable.  In that case, FROM and TO are indexes to STR.
(defalias 'lao-transcribe-single-roman-syllable-to-lao #[(from to &optional str) "\203\306	\n#\211\2036\nY\203\307\2026\310\225\2026\212\nb\210\311	\312#\211\2033\310\224\2025\307)\n\205\265\313\314\"\313\315\"\313\316\"\313\317\"\313\320\"\307\211 !\307\211\"#\307\211$%\307&\310\225\f\204\321\313\310\"'\"A\202\255\321\f(\"A \322 !\203\224 \310H  G%
\203\306\321
)\"A!%\314U\203\264 !P\202\302\323 \310\314#!\323 \314\"Q\202\311 \203\255\307*\321+\"A\"\322\"!\203\347\"\310H\"\321\",\"*\204\375*A@*\202\321-\"A\211#\310H*AA\236A\206\324*8\206*A@**\204*\325\326\"\"\210 \327*\203X*@\310U\203H P\211G&\202O*@CP*A\211*\2044&\204c\325\330\"\210G.&.W\203\204\331&H\332\"\333>\203\204&T\211&\202i)#\203\217#P\203\254\321/\"A$\323\310&#$\323&\"Q)\n\334!E.\f\207" [str lao-transcription-pattern from to consonant semivowel string-match nil 0 re-search-forward t match-string 1 3 5 8 9 assoc vectorp substring 2 error "Lao vowel %S has no re-ordering rule" "" "Lao vowel %S has malformed re-ordering rule" get-char-code-property phonetic-type (vowel-lower vowel-upper) lao-compose-string vowel maa-sakod tone lao-consonant lao-semivowel lao-vowel lao-maa-sakod lao-tone clen cidx lao-transcription-punctuation-alist lao-transcription-consonant-alist lao-transcription-semi-vowel-alist rule lao-transcription-vowel-alist lao-vowel-reordering-rule lao-transcription-maa-sakod-alist len lao-transcription-tone-alist] 6 (#$ . 8111)])
#@62 Transcribe Romanized Lao string STR to Lao character string.
(defalias 'lao-transcribe-roman-to-lao-string #[(str) "\306G\307\310\311\f#\211\203>	@	A@\312	8\f\211
\fV\2033\n\313\f
#
Q\2027\n
P\f+\202	\fW\203N\n\313\f#P\202O\n,\207" [str val lao-str to from lao 0 "" nil lao-transcribe-single-roman-syllable-to-lao 2 substring end start] 6 (#$ . 10129)])
(defalias 'lao-composition-function #[(gstring direction) "\211\211\305H)GS)\306U\203\307	\"\207\310	\"\206K\211G\311Z)\305\312\fW\203D\211\311\\H*\211\203DT\211\202)\313\305\314$+\207" [gstring direction glyph i glyph-len 0 1 compose-gstring-for-graphic font-shape-gstring 2 nil compose-glyph-string-relative 0.1] 6])
(defalias 'lao-compose-region #[(from to) "\214	}\210eb\210\306 p\307\216\310\f!\210\311
\312\313#\205$\314\315\224`\"\210\202,\207" [from to #1=#:old-buffer #2=#:old-table lao-category-table lao-composition-pattern category-table #[nil "rq\210\302	!)\207" [#1# #2# set-category-table] 2] set-category-table re-search-forward nil t compose-region 0] 4 nil "r"])
(provide 'lao-util)

Zerion Mini Shell 1.0