;ELC ;;; Compiled by dan@wayne.mit.edu on Wed Apr 21 21:02:00 2004 ;;; from file /usr/pkgsrc-current/inputmethod/skk/work.bondage/ddskk-12.2.0/skk-viper.el ;;; in Emacs version 21.3.1 ;;; with bytecomp version 2.85.4.1 ;;; with all optimizations. ;;; This file contains multibyte non-ASCII characters ;;; and therefore cannot be loaded into Emacs 19. (if (and (boundp 'emacs-version) (< (aref emacs-version (1- (length emacs-version))) ?A) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "20"))) (error "`skk-viper.el' was compiled for Emacs 20 or later")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (require 'viper) (defalias 'skk-viper-advice-select '(macro . #[(viper vip arg body) "\304\305\306 \nBBB\306 \nBBBF\207" [vip arg body viper if skk-viper-use-vip-prefix defadvice] 7])) (byte-code "\203\306\202 \307 B\310\311 \312\216\313\f\314\"\204\315\fP*\316\317!\203\241\320\321\322\323\324$\210\325\321\324\"\210\2039\326\202:\327\211\324;\211<\203`<@;\330\331\332\333;!!\334BB!\210 (length skk-prefix) count) (setq skk-prefix (substring skk-prefix 0 (- (length skk-prefix) count))) (setq skk-prefix "")) (when (>= skk-henkan-end-point (point)) (skk-kakutei)))) ((and (eq skk-henkan-mode 'on) (>= skk-henkan-start-point (point))) (setq skk-henkan-count 0) (skk-kakutei)) ((and (eq skk-henkan-mode 'on) overwrite-mode) (backward-char count) (delete-char count)) (t (if (string= skk-prefix "") ad-do-it (skk-erase-prefix 'clean))))))) (skk-ad nil t (advice lambda nil "’’§’₯β’‘Ό’₯Ι’€Η skk-delete-implies-kakutei ’€¬ non-nil ’€ΐ’€Γ’€Ώ’€ι’ΔΎ’Α°’€Ξ’ΚΈ’»ϊ’€ς’ΎΓ’€·’€Ζ’³Ξ’Δκ’€Ή’€λ’‘£\n’’§’₯β’‘Ό’₯Ι’€Η skk-delete-implies-kakutei ’€¬ nil ’€ΐ’€Γ’€Ώ’€ι’Α°’Έυ’Κδ’€ς’Ι½’Ό¨’€Ή’€λ’‘£\n’’¦’₯β’‘Ό’₯Ι’€ΐ’€Γ’€Ώ’€ι’³Ξ’Δκ’€Ή’€λ’‘£\n’³Ξ’Δκ’Ζώ’ΞΟ’₯β’‘Ό’₯Ι’€Η’‘’’€«’€Κ’₯Χ’₯μ’₯Υ’₯£’₯Γ’₯―’₯Ή’€Ξ’Ζώ’ΞΟ’Γζ’€Κ’€ι’€Π’‘’’€«’€Κ’₯Χ’₯μ’₯Υ’₯£’₯Γ’₯―’₯Ή’€ς’ΎΓ’€Ή’‘£" (let ((count (or (prefix-numeric-value (ad-get-arg 0)) 1))) (cond ((eq skk-henkan-mode 'active) (if (and (not skk-delete-implies-kakutei) (= skk-henkan-end-point (point))) (skk-previous-candidate) (if overwrite-mode (progn (backward-char count) (delete-char count)) ad-do-it) (if (> (length skk-prefix) count) (setq skk-prefix (substring skk-prefix 0 (- (length skk-prefix) count))) (setq skk-prefix "")) (when (>= skk-henkan-end-point (point)) (skk-kakutei)))) ((and (eq skk-henkan-mode 'on) (>= skk-henkan-start-point (point))) (setq skk-henkan-count 0) (skk-kakutei)) ((and (eq skk-henkan-mode 'on) overwrite-mode) (backward-char count) (delete-char count)) (t (if (string= skk-prefix "") ad-do-it (skk-erase-prefix 'clean))))))) vip-intercept-ESC-key (skk-add nil t (advice lambda nil "’’¦’₯β’‘Ό’₯Ι’‘’’’§’₯β’‘Ό’₯Ι’€ΐ’€Γ’€Ώ’€ι’³Ξ’Δκ’€Ή’€λ’‘£" (when (and skk-mode skk-henkan-mode) (skk-kakutei)))) viper-intercept-ESC-key (skk-add nil t (advice lambda nil "’’¦’₯β’‘Ό’₯Ι’‘’’’§’₯β’‘Ό’₯Ι’€ΐ’€Γ’€Ώ’€ι’³Ξ’Δκ’€Ή’€λ’‘£" (when (and skk-mode skk-henkan-mode) (skk-kakutei)))) vip-join-lines (skk-ad nil t (advice lambda nil "’₯Ή’₯Ϊ’‘Ό’₯Ή’€Ξ’ΞΎ’Β¦’€Ξ’ΚΈ’»ϊ’₯»’₯Γ’₯Θ’€¬ JISX0208/JISX0213 ’€ΐ’€Γ’€Ώ’€ι’₯Ή’₯Ϊ’‘Ό’₯Ή’€ς’Όθ’€κ’½ό’€―’‘£" (save-match-data (let ((char-after (char-after (progn (skip-chars-forward " ") (point)))) (char-before (char-before (progn (skip-chars-backward " ") (point))))) (when (and (or (skk-jisx0208-p char-after) (skk-jisx0213-p char-after)) (or (skk-jisx0208-p char-before) (skk-jisx0213-p char-before))) (while (looking-at " ") (delete-char 1))))))) viper-join-lines (skk-ad nil t (advice lambda nil "’₯Ή’₯Ϊ’‘Ό’₯Ή’€Ξ’ΞΎ’Β¦’€Ξ’ΚΈ’»ϊ’₯»’₯Γ’₯Θ’€¬ JISX0208/JISX0213 ’€ΐ’€Γ’€Ώ’€ι’₯Ή’₯Ϊ’‘Ό’₯Ή’€ς’Όθ’€κ’½ό’€―’‘£" (save-match-data (let ((char-after (char-after (progn (skip-chars-forward " ") (point)))) (char-before (char-before (progn (skip-chars-backward " ") (point))))) (when (and (or (skk-jisx0208-p char-after) (skk-jisx0213-p char-after)) (or (skk-jisx0208-p char-before) (skk-jisx0213-p char-before))) (while (looking-at " ") (delete-char 1))))))) func #:--dolist-temp--36101 #:--dolist-temp--36102] 7) (defalias 'skk-viper-normalize-map #[nil "\306\302! \210\307\302\n\"\210\205Lr\310 \311\211\203J\f@\312 !\203C q\210\313\n\236\204@\314\302\315 B\316B\313B\317BF\"\210 \210\fA\211\204+\311)\207" [other-buffer skk-viper-normalize-map-function minor-mode-map-alist buf #1=#:--dolist-temp--36103 skk-latin-mode-map local-variable-if-set-p set-default buffer-list nil buffer-live-p skk-j-mode set-modified-alist skk-latin-mode skk-abbrev-mode skk-jisx0208-latin-mode skk-abbrev-mode-map skk-j-mode-map skk-jisx0208-latin-mode-map] 8]) (eval-after-load "viper-cmd" '(defun viper-toggle-case (arg) "Toggle character case.\nConvert hirakana to katakana and vice versa." (interactive "P") (let ((val (viper-p-val arg)) (c)) (viper-set-destructive-command (list 'viper-toggle-case val nil nil nil nil)) (while (> val 0) (setq c (following-char)) (delete-char 1 nil) (cond ((skk-ascii-char-p c) (if (eq c (upcase c)) (insert-char (downcase c) 1) (insert-char (upcase c) 1))) ((and (<= 53793 c) (>= 53875 c)) (insert (skk-hiragana-to-katakana (char-to-string c)))) ((and (<= 53921 c) (>= 54003 c)) (insert (skk-katakana-to-hiragana (char-to-string c)))) (t (insert-char c 1))) (when (eolp) (backward-char 1)) (setq val (1- val)))))) (defalias 'skk-viper-init-function #[nil "\301\300!\203\302\303!\203\304 \305 \210\306\307\310\"\207" [viper-insert-state-cursor-color boundp featurep skk-cursor skk-cursor-current-color skk-viper-normalize-map remove-hook skk-mode-hook skk-viper-init-function] 3]) (byte-code "\301\302\303\"\210\304\300!\210\304\305!\210\306\307\310!\300\311\312!\313\314\"\210\315\307\310!\"\210\316!\314\232\203.\2029\317\312\320\314\321\320\211\211\322&)#\210\307\310!\207" [product add-hook skk-mode-hook skk-viper-init-function require skk-version put provide skk-viper product-find-by-name "Daredevil SKK" product-run-checkers (12 2 0) product-add-feature product-version vector nil "Sone" "12.2.0"] 12)