;ELC
;;; Compiled
;;; in Emacs version 27.1
;;; 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" #$))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(require 'robin)
(defvar exit-ethiopic-environment-data nil)
(defalias 'setup-ethiopic-environment-internal #[nil "\303\304\211\203\" @@\211\305!B\nB\306 @A\"\210 A\211\204 *\307\310\311\"\210\307\312\313\"\210\307\314\311\"\207" [kb key-bindings exit-ethiopic-environment-data ((" " . ethio-insert-space) ([33554464] . ethio-insert-ethio-space) ([f3] . ethio-fidel-to-sera-buffer) ([S-f3] . ethio-fidel-to-sera-region) ([C-f3] . ethio-fidel-to-sera-marker) ([f4] . ethio-sera-to-fidel-buffer) ([S-f4] . ethio-sera-to-fidel-region) ([C-f4] . ethio-sera-to-fidel-marker) ([S-f6] . ethio-modify-vowel) ([S-f7] . ethio-replace-space) ([C-f9] . ethio-toggle-space) ([S-f9] . ethio-replace-space)) nil global-key-binding global-set-key add-hook find-file-hook ethio-find-file write-file-functions ethio-write-file after-save-hook] 4])
#@37 Exit Ethiopic language environment.
(defalias 'exit-ethiopic-environment #[nil "\203 \301@@@A\"\210A\211\204 \302\303\304\"\210\302\305\306\"\210\302\307\304\"\207" [exit-ethiopic-environment-data global-set-key remove-hook find-file-hook ethio-find-file write-file-functions ethio-write-file after-save-hook] 4 (#$ . 1247)])
#@136 Symbol that defines the primary language in SERA --> FIDEL conversion.
The value should be one of: `tigrigna', `amharic' or `english'.
(defvar ethio-primary-language 'tigrigna (#$ . 1587))
#@138 Symbol that defines the secondary language in SERA --> FIDEL conversion.
The value should be one of: `tigrigna', `amharic' or `english'.
(defvar ethio-secondary-language 'english (#$ . 1783))
#@206 Non-nil means associate ASCII colon with Ethiopic colon.
If nil, associate ASCII colon with Ethiopic word separator, i.e., two
vertically stacked dots. All SERA <--> FIDEL converters refer this
variable.
(defvar ethio-use-colon-for-colon nil (#$ . 1982))
#@245 Non-nil means associate ASCII question mark with Ethiopic old style question mark (three vertically stacked dots).
If nil, associate ASCII question mark with Ethiopic stylized question
mark. All SERA <--> FIDEL converters refer this variable.
(defvar ethio-use-three-dot-question nil (#$ . 2245))
#@203 Non-nil means always put an apostrophe before an isolated vowel (except at word initial) in FIDEL --> SERA conversion.
If nil, put an apostrophe only between a 6th-form consonant and an
isolated vowel.
(defvar ethio-quote-vowel-always nil (#$ . 2550))
#@112 Non-nil means convert the Wu-form of a 12-form consonant to "W'" instead of "Wu" in FIDEL --> SERA conversion.
(defvar ethio-W-sixth-always nil (#$ . 2809))
#@322 Degree of reduction in converting Ethiopic digits into Arabic digits.
Should be 0, 1 or 2.
For example, ({10}{9}{100}{80}{7}) is converted into:
\=`10\=`9\=`100\=`80\=`7 if `ethio-numeric-reduction' is 0,
\=`109100807 if `ethio-numeric-reduction' is 1,
\=`10900807 if `ethio-numeric-reduction' is 2.
(defvar ethio-numeric-reduction 0 (#$ . 2973))
#@104 Non-nil means save Ethiopic characters in lowercase hex numbers to Java files.
If nil, use uppercases.
(defvar ethio-java-save-lowercase nil (#$ . 3348))
(defalias 'ethio-prefer-amharic-p #[nil "\302=\206 \303=?\205 \302=\207" [ethio-primary-language ethio-secondary-language amharic tigrigna] 2])
(defalias 'ethio-prefer-amharic #[(arg) "\203 \301\302\303\304#\210\301\302\305\306#\210\301\302\307\310#\210\301\302\311\312#\207\301\302\307\304#\210\301\302\311\306#\210\301\302\303\310#\210\301\302\305\312#\207" [arg robin-modify-package "ethiopic-sera" "'a" 4768 "a" "አ" "'A" 4771 "A" "ኣ"] 4])
(defalias 'ethio-use-colon-for-colon #[(arg) "\203 \301\302\303\304#\210\301\302\305\306#\207\301\302\307\306#\210\301\302\303\310#\210\301\302\311\304#\207" [arg robin-modify-package "ethiopic-sera" ":" 4965 "`:" 4961 " : " "፡" "-:"] 4])
(defalias 'ethio-use-three-dot-question #[(arg) "\203 \301\302\303\304#\210\301\302\305\306#\207\301\302\303\306#\210\301\302\305\304#\207" [arg robin-modify-package "ethiopic-sera" "?" 4967 "`?" 63] 4])
(defalias 'ethio-adjust-robin #[nil "\302\303 !\210\300!\210\301 !\207" [ethio-use-colon-for-colon ethio-use-three-dot-question ethio-prefer-amharic ethio-prefer-amharic-p] 2])
(add-hook 'robin-activate-hook 'ethio-adjust-robin)
#@525 Convert the current buffer from SERA to FIDEL.
The variable `ethio-primary-language' specifies the primary
language and `ethio-secondary-language' specifies the secondary.
If the 1st optional argument SECONDARY is non-nil, assume the
buffer begins with the secondary language; otherwise with the
primary language.
If the 2nd optional argument FORCE is non-nil, perform conversion
even if the buffer is read-only.
See also the descriptions of the variables
`ethio-use-colon-for-colon' and `ethio-use-three-dot-question'.
(defalias 'ethio-sera-to-fidel-buffer #[(&optional secondary force) "\302ed $\207" [secondary force ethio-sera-to-fidel-region] 5 (#$ . 4642) "P"])
#@533 Convert the characters in region from SERA to FIDEL.
The variable `ethio-primary-language' specifies the primary
language and `ethio-secondary-language' specifies the secondary.
If the 3rd argument SECONDARY is given and non-nil, assume the
region begins with the secondary language; otherwise with the
primary language.
If the 4th argument FORCE is given and non-nil, perform
conversion even if the buffer is read-only.
See also the descriptions of the variables
`ethio-use-colon-for-colon' and `ethio-use-three-dot-question'.
(defalias 'ethio-sera-to-fidel-region #[(begin end &optional secondary force) "\203 \204 \306\307!\204 \310\311!\210\n\312\f\203 \202 \n\312\313!\210\314\f!\210\214}\210eb\210m\204v \315\267\202X \316\317!\210\320\321!\202Z \316\312!\210\320\322!\202Z \323 \211\324=\203p \n=\203l \202q \n\202q
\2029 .\325 \207" [buffer-read-only force ethio-primary-language ethio-secondary-language secondary ret y-or-n-p "Buffer is read-only. Force to convert? " error "" nil ethio-use-colon-for-colon ethio-use-three-dot-question #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (amharic 68 tigrigna 78)) ethio-prefer-amharic t ethio-sera-to-fidel-region-ethio amharic tigrigna ethio-sera-to-fidel-region-noethio toggle ethio-adjust-robin lang begin end] 6 (#$ . 5322) "r\nP"])
#@67 Return next language as symbol: amharic, tigrigna, toggle or nil.
(defalias 'ethio-sera-to-fidel-region-noethio #[nil "\301\302\303\301\304#\204 \301\2029 \305\306!\210\307 \211\203 \2029 g\310U\203* \311u\210\301\2029 g\312U\2038 \305\311!\210\313\2029 \313)\207" [lflag nil search-forward "\\" 0 delete-char -1 ethio-process-language-flag 92 1 32 toggle] 4 (#$ . 6695)])
#@67 Return next language as symbol: amharic, tigrigna, toggle or nil.
(defalias 'ethio-sera-to-fidel-region-ethio #[(lang) "\214`\304\305\306\307#\203 \310\224\202 d}\210\311ed\312#\210db\210)\306g\313U\203/ \314\315!\210\316 \210 \202\n\317\320!\203c \321\302!\203? \n\204I \321\303!\203\\ \203\\ \322g\323U\203T \324\202U \325\306\310#\210\202_ \315u\210 \202\nm\203k \306\202\n\314\315!\210g\326U\203} \314\315!\210\327\202\n\317\330!\203\213 \310\225b\210 \202\ng\331U\204\225 \327\202\n\332 \211\203\240 \202\n\314\315!\210\317\333!\203\276 \334\335!\210\304\336\306\310#\203\272 \334\335!\210 \202\n\317\337!\203\320 \334\335!\210\340\307!\210 \202\n\317\341!\203\342 \334\335!\210\340\306!\210 \202\n\317\342!\203\364 \334\335!\210\343\307!\210 \202\n\317\344!\203\334\335!\210\343\306!\210 \202\n\345c\210 )\207" [lflag lang ethio-sera-being-called-by-w3 sera-being-called-by-w3 re-search-forward "\\(`[1-9][0-9]*\\)\\|[\\<&]" nil t 0 robin-convert-region "ethiopic-sera" 96 delete-char 1 ethio-process-digits looking-at "[<&]" boundp search-forward 60 ">" ";" 32 toggle "[,.;:'`?\\]+" 126 ethio-process-language-flag "! ?" replace-match "" "\\\\~! ?" "-: ?" ethio-use-colon-for-colon "`: ?" "`| ?" ethio-use-three-dot-question "\\? ?" "\\~"] 5 (#$ . 7079)])
#@565 Process a language flag of the form "~lang" or "~lang1~lang2".
If looking at "~lang1~lang2", set `ethio-primary-language' and
`ethio-secondary-language' based on "lang1" and "lang2".
Then delete the language flag "~lang1~lang2" from the buffer.
Return value is the new primary language.
If looking at "~lang", delete that language flag "~lang" from
the buffer and return that language. In this case
`ethio-primary-language' and `ethio-secondary-language' are left
unchanged.
If an unsupported language flag is found, just return nil without
changing anything.
(defalias 'ethio-process-language-flag #[nil "\304\211\305\306!\2035 \307\310\311!!\211\2035 \307\310\312!!\211\2035 `\312\225|\210g\313U\2031 \314\311!\210\n\202Y \305\315!\203X \307\310\311!!\211\203X `\311\225|\210g\313U\203T \314\311!\210 \202Y \304*\207" [lang2 lang1 ethio-primary-language ethio-secondary-language nil looking-at "~\\([a-z][a-z][a-z]?\\)~\\([a-z][a-z][a-z]?\\)[ \n\\]" ethio-flag-to-language match-string 1 2 32 delete-char "~\\([a-z][a-z][a-z]?\\)[ \n\\]"] 3 (#$ . 8369)])
(defalias 'ethio-flag-to-language #[(flag) "\301\230\204\f \302\230\203 \303\207\304\230\204 \305\230\203 \306\207\307\230\204( \310\230\203* \311\207\312\207" [flag "en" "eng" english "ti" "tir" tigrigna "am" "amh" amharic nil] 2])
#@43 Convert Arabic digits to Ethiopic digits.
(defalias 'ethio-process-digits #[nil "\302\211g\211\303Y\205m \304X\205m \305\306!\210\307g\310U\203( \305\306!\210T\202 \311\312\"\306U\203> \313 \303ZHc\210S\202W \303U\204N \314 \315ZHc\210\202W \307U\203W \316c\210\311\317\"\312U\203c \320c\210\321\322\317\245\"\210\202 *\207" [z ch nil 49 57 delete-char 1 0 48 mod 2 [4978 4979 4980 4981 4982 4983 4984 4985 4986] [4970 4971 4972 4973 4974 4975 4976 4977] 50 "፩" 4 "፻" insert-char 4988] 4 (#$ . 9689)])
#@203 Convert the regions surrounded by "" and "" from SERA to FIDEL.
Assume that each region begins with `ethio-primary-language'.
The markers "" and "" themselves are not deleted.
(defalias 'ethio-sera-to-fidel-marker #[(&optional force) "\203 \204 \302\303!\204 \304\305!\210\212eb\210\306\307\310\311#\2055 \312`\306\313\310\311#\203- \314\224\202. d\310\301$\210\202 )\207" [buffer-read-only force y-or-n-p "Buffer is read-only. Force to convert? " error "" search-forward "" nil t ethio-sera-to-fidel-region "" 0] 6 (#$ . 10218) "P"])
(defalias 'ethio-language-to-flag #[(lang) "\301\267\202\f \302\207\303\207\304\207\305\207" [lang #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (english 6 tigrigna 8 amharic 10)) "eng" "tir" "amh" ""] 2])
#@615 Replace all the FIDEL characters in the current buffer to the SERA format.
The variable `ethio-primary-language' specifies the primary
language and `ethio-secondary-language' specifies the secondary.
If the 1st optional argument SECONDARY is non-nil, try to convert the
region so that it begins with the secondary language; otherwise with the
primary language.
If the 2nd optional argument FORCE is non-nil, convert even if the
buffer is read-only.
See also the descriptions of the variables
`ethio-use-colon-for-colon', `ethio-use-three-dot-question',
`ethio-quote-vowel-always' and `ethio-numeric-reduction'.
(defalias 'ethio-fidel-to-sera-buffer #[(&optional secondary force) "\302ed $\207" [secondary force ethio-fidel-to-sera-region] 5 (#$ . 11052) "P"])
#@603 Replace all the FIDEL characters in the region to the SERA format.
The variable `ethio-primary-language' specifies the primary
language and `ethio-secondary-language' specifies the secondary.
If the 3rd argument SECONDARY is given and non-nil, convert
the region so that it begins with the secondary language; otherwise with
the primary language.
If the 4th argument FORCE is given and non-nil, convert even if the
buffer is read-only.
See also the descriptions of the variables
`ethio-use-colon-for-colon', `ethio-use-three-dot-question',
`ethio-quote-vowel-always' and `ethio-numeric-reduction'.
(defalias 'ethio-fidel-to-sera-region #[(begin end &optional secondary force) "\203 \204 \306\307!\204 \310\311!\210\214\n}\210\312\f\203
\202\" :\313 \203+ \314\202, \315\312\211;<=>eb\210\316 \210>\317=\204G \320>>\317=\203W \321\322!\203W \320>>\320=\203g \321\323!\203g \317>>\317=\203r \324\202t =c\210m?\205\312>\317=\203\254 \325\326\312\327#\203\215 \330u\210g\331=\203\234 \332c\210\333u\210\202v \321\322!\203v =c\210\320>\202v `<\325\334\312\327#\203\272 \330u\210\214<`}\210\335ed\336#\210eb\210\325\337\312\340#\203\212\341u\210h\211;\342Y\203\345 ;\343X\204\363 ;\344Y\203;\345X\203?\204\n;\346>\203\n\347\333!\210\202\n\347\333!\210)\202\311 @\204(eb\210\350\351\312\340#\203(\347\330!\210\352c\210\202A\327V\203Deb\210\325\353\312\340#\203D\354\355!\210\330u\210\2022A\356U\203]eb\210\325\357\312\340#\203]\354\355!\210\202Ndb\210)\321\360!\203p\324c\210\317>\202v \321\361!\203\201\332c\210\327\225Tb\210\202v g\362U\203\225B\203\217\332c\210\333u\210\202v \321\363!\203v \364\365!\203\2465\204\261\364\366!\203\3046\203\304\350g\367U\203\274\370\202\275\371\312\327#\210\202v \333u\210\202v .\207" [buffer-read-only force begin end secondary ethio-secondary-language y-or-n-p "Buffer is read-only. Force to convert? " error "" nil ethio-prefer-amharic-p "\\~amh " "\\~tir " ethio-adjust-robin english ethiopic looking-at "\\ce" "\\Ce" "\\~eng " re-search-forward "\\(\\ce\\|\\\\\\)" 0 -1 92 "\\" 1 "[a-z,.;:'`?\\<&]" robin-invert-region "ethiopic-sera" "'[eauio]" t -2 97 122 65 90 (101 97 117 105 111 69 65 73) delete-char search-forward "W'" "u" "\\([0-9]\\)`\\([0-9]\\)" replace-match "\\1\\2" 2 "\\([0-9]\\)1\\(0+\\)" "[a-z]" "[,.;:'`\\]+" 63 "[<&]" boundp ethio-sera-being-called-by-w3 sera-being-called-by-w3 60 ">" "&" ethio-primary-language ch p flag mode ethio-quote-vowel-always ethio-W-sixth-always ethio-numeric-reduction ethio-use-three-dot-question] 6 (#$ . 11823) "r\nP"])
#@141 Convert the regions surrounded by "" and "" from FIDEL to SERA.
The markers "" and "" themselves are not deleted.
(defalias 'ethio-fidel-to-sera-marker #[(&optional force) "\203 \204 \302\303!\204 \304\305!\210\212eb\210\306\307\310\311#\2055 \312`\306\313\310\311#\203- \314\224\202. d\310\301$\210\202 )\207" [buffer-read-only force y-or-n-p "Buffer is read-only. Force to convert? " error "" search-forward "" nil t ethio-fidel-to-sera-region "" 0] 6 (#$ . 14410) "P"])
#@57 Modify the vowel of the FIDEL that is under the cursor.
(defalias 'ethio-modify-vowel #[nil "\302 \210\303g!\304\211\204 \305\306!\202<