;ELC   
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.



(require 'ja-dic-utl)
#@97 String denoting KKC input method.
This string is shown at mode line when users are in KKC mode.
(defvar kkc-input-method-title "漢" (#$ . 106))
#@66 Name of a file which contains user's initial setup code for KKC.
(defvar kkc-init-file-name (locate-user-emacs-file "kkcrc" ".kkcrc") (#$ . 257))
(defvar kkc-init-file-flag nil)
(defvar kkc-lookup-cache nil)
(defconst kkc-lookup-cache-tag 'kkc-lookup-cache-2)
#@78 Save initial setup code for KKC to a file specified by `kkc-init-file-name'.
(defalias 'kkc-save-init-file #[0 "\205 \305=?\205 \306\307\310\311\312\"\307\f#*\207" [kkc-init-file-flag print-length coding-system-for-write kkc-lookup-cache kkc-init-file-name t iso-2022-7bit nil write-region format "(setq kkc-lookup-cache '%S)\n"] 4 (#$ . 523)])
(defvar kkc-show-conversion-list-index-chars "1234567890")
#@54 Show key bindings available while converting by KKC.
(defalias 'kkc-help #[0 "r\306\307!q\210p\310 \210\311\211\312\211\312\313 \210\314\315!\210+\211\316\317\320!!\321!\210)\207" [default-directory buffer-read-only buffer-file-name buffer-undo-list inhibit-modification-hooks inhibit-read-only get-buffer-create "*Help*" kill-all-local-variables nil t erase-buffer run-hooks temp-buffer-setup-hook princ substitute-command-keys "\\{kkc-keymap}" internal-temp-output-buffer-show standard-output] 6 (#$ . 940) nil])
#@40 Keymap for KKC (Kana Kanji Converter).
(defvar kkc-keymap (byte-code "\301 G\302\211W\203 \303\304H!\305#\210\211T\262\202 \303\306\307#\210\303\310\311#\210\303\312\313#\210\303\314\307#\210\303\315\316#\210\303\317\320#\210\303\321\322#\210\303\323\324#\210\303\325\326#\210\303\327\330#\210\303\331\330#\210\303\332\333#\210\303\334\335#\210\303\336\337#\210\303\340\341#\210\303\342\343#\210\303\344\313#\210\303\345\330#\210\303\346\311#\210\303\347\350#\210\207" [kkc-show-conversion-list-index-chars make-sparse-keymap 0 define-key char-to-string kkc-select-from-list " " kkc-next "" kkc-terminate " " kkc-first-char-only "" "" kkc-prev "	" kkc-shorter "" kkc-longer "I" kkc-shorter-conversion "O" kkc-longer-phrase "" kkc-cancel "" "" kkc-next-phrase "K" kkc-katakana "H" kkc-hiragana "l" kkc-show-conversion-list-or-next-group "L" kkc-show-conversion-list-or-prev-group [67108896] [delete] [return] "" kkc-help] 8) (#$ . 1472))
(defvar kkc-original-kana nil)
(defvar kkc-current-key nil)
(defvar kkc-current-conversions nil)
(defvar kkc-current-conversions-width nil)
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable kkc-show-conversion-list-count funcall function #[0 "\300\207" [4] 1 ""] "Count of successive `kkc-next' or `kkc-prev' to show conversion list.\nWhen you type SPC or C-p successively this count while using the input\nmethod `japanese', the conversion candidates are shown in the echo\narea while indicating the current selection by `<N>'." :group mule :type integer] 8)
(defvar kkc-next-count nil)
(defvar kkc-prev-count nil)
(defvar kkc-overlay-head nil)
(defvar kkc-overlay-tail nil)
(defvar kkc-length-head nil)
(defvar kkc-length-converted nil)
(defvar kkc-cursor-type nil)
#@42 

(fn LEN &optional POSTFIX PREFER-NOUN)
(defalias 'kkc-lookup-key #[769 "\204\" \306\307\310\311\312\"\210\313\n!\203\" \3141 \315\n!0\210\202\" \210\n\210	\211\205/ \211<\205/ \211A<\262\203; 	@=\204@ C\301\316\f	\317\306%\211@:\203X \307\211@\211\207\320\f$\262\211\203~ \307\321B\203| \322\f	$\210\301\306\207\321U\205\216 \321\307\317C\211\207" [kkc-init-file-flag kkc-lookup-cache kkc-init-file-name kkc-lookup-cache-tag kkc-current-key kkc-length-converted t nil add-hook kill-emacs-hook kkc-save-init-file file-readable-p (kkc-error) load-file lookup-nested-alist 0 skkdic-lookup-key 1 set-nested-alist kkc-current-conversions-width kkc-current-conversions] 9 (#$ . 3257)])
(define-error 'kkc-error nil)
#@19 

(fn &rest ARGS)
(defalias 'kkc-error #[128 "\300\301\302\303\"\"\207" [signal kkc-error apply format-message] 6 (#$ . 4013)])
(defvar kkc-converting nil)
#@325 Functions to run after a conversion is selected in `japanese' input method.
With this input method, a user can select a proper conversion from
candidate list.  Each time he changes the selection, functions in this
list are called with two arguments; starting and ending buffer
positions that contains the current selection.
(defvar kkc-after-update-conversion-functions nil (#$ . 4177))
#@389 Convert Kana string in the current region to Kanji-Kana mixed string.
Users can select a desirable conversion interactively.
When called from a program, expects two arguments,
positions FROM and TO (integers or markers) specifying the target region.
When it returns, the point is at the tail of the selected conversion,
and the return value is the length of the conversion.

(fn FROM TO)
(defalias 'kkc-region #[514 "{b\210\306	!\203 \307	#\210\202$ \310\311\211\312%\313	\314\315#\210\306\n!\2033 \307\n\211#\210\202A \310\211\311\211\312%\313\n\314\316#\210\317!\262\211G\320\321\216)\311\322 \312*+\323\f\311#\204l \fS\311\262\202[ b\210\324\325!\210\326,\320-,.Y\203\214 /G\327Y\203\214 \330 \210\331 \210\3120\332\311!\2100\203\333!\21012\3113\334\311!\3351\"\336!\203\357 \3371\342 \211\340\267\202\324 ,T,\320-\202\332 -T-\320,\202\332 \320\211,-\341!0\210\202 \332\342A\"\210\343 \266\202 \344\345 \344\311\"\2624\"4\346 \210*\266\202\226 \331 \210\347\n!b\210\350	!Z*\266\204)\207" [kkc-original-kana kkc-overlay-head kkc-overlay-tail kkc-current-key kkc-length-head kkc-length-converted overlayp move-overlay make-overlay nil t overlay-put face highlight underline vconcat 0 #[0 "\302!\210\302	!\207" [kkc-overlay-head kkc-overlay-tail delete-overlay] 2] buffer-modified-p kkc-lookup-key kkc-update-conversion all 1 3 kkc-show-conversion-list-or-next-group force-mode-line-update message set-buffer-modified-p read-key-sequence lookup-key commandp (kkc-error) #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (kkc-next 190 kkc-prev 201)) call-interactively "%s" beep append this-single-command-raw-keys kkc-terminate overlay-end overlay-start kkc-input-method-title input-method-function current-input-method-title kkc-next-count kkc-prev-count kkc-show-conversion-list-count kkc-current-conversions kkc-converting kkc-keymap overriding-terminal-local-map help-char unread-input-method-events] 14 (#$ . 4571) "r"])
#@54 Exit from KKC mode by fixing the current conversion.
(defalias 'kkc-terminate #[0 "\303!b\210\304	``#\210\305\211\207" [kkc-overlay-tail kkc-overlay-head kkc-converting overlay-end move-overlay nil] 4 (#$ . 6603) nil])
#@50 Exit from KKC mode by canceling any conversions.
(defalias 'kkc-cancel #[0 "\304!b\210\304!\305	!|\210\nc\210\306\211\207" [kkc-overlay-head kkc-overlay-tail kkc-original-kana kkc-converting overlay-start overlay-end nil] 3 (#$ . 6830) nil])
#@54 Select only the first character currently converted.
(defalias 'kkc-first-char-only #[0 "\302!b\210\303u\210`\304	!|\210\305 \207" [kkc-overlay-head kkc-overlay-tail overlay-start 1 overlay-end kkc-terminate] 3 (#$ . 7081) nil])
#@42 Select the next candidate of conversion.
(defalias 'kkc-next #[0 "@T\211\306W\203\f \307\262\211GY\203 \306\262\240\210\211\307V\203) \310	\n$\210\302\2045 \fY\2038 \311 \210\312 \207" [kkc-current-conversions kkc-current-key kkc-lookup-cache kkc-length-converted kkc-init-file-flag kkc-current-conversions-width 0 1 set-nested-alist kkc-show-conversion-list-update kkc-update-conversion kkc-next-count kkc-show-conversion-list-count] 6 (#$ . 7317) nil])
#@46 Select the previous candidate of conversion.
(defalias 'kkc-prev #[0 "@S\211\306W\203 GS\262\240\210\211\307V\203! \310	\n$\210\302\204- \fY\2030 \311 \210\312 \207" [kkc-current-conversions kkc-current-key kkc-lookup-cache kkc-length-converted kkc-init-file-flag kkc-current-conversions-width 0 1 set-nested-alist kkc-show-conversion-list-update kkc-update-conversion kkc-prev-count kkc-show-conversion-list-count] 6 (#$ . 7792) nil])
#@66 Select one candidate from the list currently shown in echo area.
(defalias 'kkc-select-from-list #[0 "\305\203< 	G\306H\307H\306H\306HZ\306V\203 \262\211W\203: 	H\nU\2033 \211\262\262\202 \211T\262\202 \266\211\203P \306H\306H\\\240\210\310 \210\311 \207\n\fB\312 \207" [kkc-current-conversions-width kkc-show-conversion-list-index-chars last-input-event kkc-current-conversions unread-input-method-events nil 0 1 kkc-show-conversion-list-update kkc-update-conversion kkc-terminate] 6 (#$ . 8247) nil])
#@22 Convert to Katakana.
(defalias 'kkc-katakana #[0 "\301\240\210\302\303!\207" [kkc-current-conversions -1 kkc-update-conversion all] 2 (#$ . 8777) nil])
#@22 Convert to hiragana.
(defalias 'kkc-hiragana #[0 "\301\240\210\302 \207" [kkc-current-conversions 0 kkc-update-conversion] 2 (#$ . 8936) nil])
#@47 Make the Kana string to be converted shorter.
(defalias 'kkc-shorter #[0 "\302X\203\n \303\304!\210S	V\203$ \305\306!\204# \211S\262\202 \210\307\310!\207" [kkc-length-head kkc-length-converted 1 kkc-error "Can't be shorter" 0 kkc-lookup-key kkc-update-conversion all] 3 (#$ . 9086) nil])
#@46 Make the Kana string to be converted longer.
(defalias 'kkc-longer #[0 "	GY\203 \302\303!\210T\304\305\"\210\306\307!\207" [kkc-length-head kkc-current-key kkc-error "Can't be longer" kkc-lookup-key postfix kkc-update-conversion all] 3 (#$ . 9390) nil])
#@47 Make the Kana string to be converted shorter.
(defalias 'kkc-shorter-conversion #[0 "\301X\203\n \302\303!\210S\304\305!\204 \211S\262\202 \210\306\307!\207" [kkc-length-converted 1 kkc-error "Can't be shorter" 0 kkc-lookup-key kkc-update-conversion all] 3 (#$ . 9655) nil])
#@74 Make the current phrase (BUNSETSU) longer without looking up dictionary.
(defalias 'kkc-longer-phrase #[0 "	GY\203 \302\303!\210T\304\305!\207" [kkc-length-head kkc-current-key kkc-error "Can't be longer" kkc-update-conversion all] 2 (#$ . 9943) nil])
#@77 Fix the currently converted string and try to convert the remaining string.
(defalias 'kkc-next-phrase #[0 "	GY\203\n \306 \207	GZ\307\n!b\210`\307!W\203, \310\311!\203, \312\225b\210S\202 \312U\2035 \306 \207\313\312\"	GZ\312\314\211W\203_ 	\\HI\210\f\315H!P\211T\262\202A \312\316\317W#\204y \320V\203y S\202c `\307!\321\n#\210\321\211#\266\322\323!\207" [kkc-length-head kkc-current-key kkc-overlay-head kkc-overlay-tail kkc-original-kana kkc-length-converted kkc-terminate overlay-end looking-at "\\CH" 0 make-vector "" char-to-string kkc-lookup-key nil 1 move-overlay kkc-update-conversion all] 10 (#$ . 10205) nil])
(defalias 'kkc-setup-current-conversions-width #[0 "AG\302\303\304\"\211\305\306\307\304#I\210\205, 	\310@!\311\\I\210A\262\211T\262\202 \207" [kkc-current-conversions kkc-current-conversions-width 1 make-vector nil 0 vector -2 string-width 4] 10])
#@200 Show list of available conversions in echo area with index numbers.
If the list is already shown, show the next group of conversions,
and change the current conversion to the first one in the group.
(defalias 'kkc-show-conversion-list-or-next-group #[0 "G\302W\203 \303\304!\210	\203, 	\305H\306H\211	GW\203\" \240\210\202& \306\240\210\307 \210\310 \207\311 \210\307 \207" [kkc-current-conversions kkc-current-conversions-width 3 kkc-error "No alternative" 0 1 kkc-show-conversion-list-update kkc-update-conversion kkc-setup-current-conversions-width] 3 (#$ . 11131) nil])
#@203 Show list of available conversions in echo area with index numbers.
If the list is already shown, show the previous group of conversions,
and change the current conversion to the last one in the group.
(defalias 'kkc-show-conversion-list-or-prev-group #[0 "G\302W\203 \303\304!\210	\203. 	\305H\305H\211\306V\203\" S\240\210\202( 	GS\240\210\307 \210\310 \207\311 \210\307 \207" [kkc-current-conversions kkc-current-conversions-width 3 kkc-error "No alternative" 0 1 kkc-show-conversion-list-update kkc-update-conversion kkc-setup-current-conversions-width] 3 (#$ . 11717) nil])
(defalias 'kkc-show-conversion-list-update #[0 "\204 \304 \210	@\305H\211\305H\306H\307HW\203$ \306\262\310\262\2020 Y\2030 \262\310\262\211\204	G\311\312 !\305\nG\310\fX\203y H\\X\203f \nZW\203f H\\\262\202n \262\nH\262T\262\211A\262\202A \n\305I\210W\203\255 H\\X\203\255 \nZW\203\255 H\\\262T\262\211A\262\202\200 \n\306\211\262\fI\210		\233\262\313\314\n\305H\315@\316##\262	T\262\211A\262	W\203\373 \313\317	\nZH\315@\316	#$\262T\262\211A\262\202\324 \n\307	I\266\305V\203<\320G\321\305G\322$\210\323\316#=\204+\324\316$\262\202\325\324\316$\326\327%\266\310\330\331\")\207" [kkc-current-conversions-width kkc-current-conversions kkc-show-conversion-list-index-chars message-log-max kkc-setup-current-conversions-width 0 1 2 nil window-width minibuffer-window format " %c %s" propertize kkc-conversion-index "%s  %c %s" 3 remove-text-properties (face nil) get-text-property next-single-property-change put-text-property face highlight message "%s"] 20])
#@22 

(fn &optional ALL)
(defalias 'kkc-update-conversion #[256 "\306!b\210	@\307U\203# \307\211\nW\203 Hc\210\211T\262\202 \210\202I 	@\310U\203C \307\211\nW\203? \311H!c\210\211T\262\202+ \210\202I 	@	8c\210`\306\f!|\210\211\203\243 G\n\306\f!\312!|\210\211W\203\201 	@\310U\203u \311H!c\210\202z Hc\210\211T\262\202^ `W\203\224 Hc\210T\262\202\202 \313\306!#\210`\312\f!|\266\314\216\315\316\306!\312!#)\207" [kkc-overlay-head kkc-current-conversions kkc-length-converted kkc-current-key kkc-overlay-tail kkc-length-head overlay-start 0 -1 japanese-katakana overlay-end move-overlay #[0 "\301!b\207" [kkc-overlay-tail overlay-end] 2] run-hook-with-args kkc-after-update-conversion-functions] 8 (#$ . 13382)])
(provide 'kkc)
