annotate lisp/skk/skk.el @ 224:4663b37daab6

Added tag r20-4b10 for changeset 2c611d1463a6
author cvs
date Mon, 13 Aug 2007 10:10:55 +0200
parents 262b8bb4a523
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
219
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1 ;; -*-byte-compile-dynamic: t;-*-
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2 ;;; skk.el --- SKK (Simple Kana to Kanji conversion program)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3 ;; Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4 ;; Masahiko Sato <masahiko@kuis.kyoto-u.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
6 ;; Author: Masahiko Sato <masahiko@kuis.kyoto-u.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
7 ;; Maintainer: Murata Shuuichirou <mrt@mickey.ai.kyutech.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
8 ;; Mikio Nakajima <minakaji@osaka.email.ne.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
9 ;; Version: $Id: skk.el,v 1.1 1997/12/02 08:48:40 steve Exp $
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
10 ;; Keywords: japanese
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
11 ;; Last Modified: $Date: 1997/12/02 08:48:40 $
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
12
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
13 ;; This program is free software; you can redistribute it and/or modify
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
14 ;; it under the terms of the GNU General Public License as published by
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
15 ;; the Free Software Foundation; either versions 2, or (at your option)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
16 ;; any later version.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
17
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
18 ;; This program is distributed in the hope that it will be useful
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
19 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
20 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
21 ;; GNU General Public License for more details.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
22
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
23 ;; You should have received a copy of the GNU General Public License
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
24 ;; along with SKK, see the file COPYING. If not, write to the Free
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
25 ;; Software Foundation Inc., 59 Temple Place - Suite 330, Boston,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
26 ;; MA 02111-1307, USA.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
27
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
28 ;;; Commentary:
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
29
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
30 ;; Following people contributed modifications to skk.el (Alphabetical order):
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
31 ;; Chikanobu Toyofuku <unbound@papaya.juice.or.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
32 ;; FURUE Hideyuki <furue@kke.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
33 ;; GUNJI Takao <gunji@lisa.lang.osaka-u.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
34 ;; Haru Mizuno <mizu@cs3.cs.oki.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
35 ;; Hideki Sakurada <sakurada@kuis.kyoto-u.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
36 ;; Hisao Kuroda <kuroda@msi.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
37 ;; Hitoshi SUZUKI <h-suzuki@ael.fujitsu.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
38 ;; IIDA Yosiaki <iida@secom-sis.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
39 ;; Jun-ichi Nakamura <nakamura@pluto.ai.kyutech.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
40 ;; Katuya Tomioka <tomioka@culle.l.chiba-u.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
41 ;; Kazuo Hirokawa <hirokawa@rics.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
42 ;; Kazushi Marukawa <kazushi@kubota.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
43 ;; Kimura Chikahiro <kimura@oa1.kb.nec.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
44 ;; Kiyotaka Sakai <ksakai@netwk.ntt-at.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
45 ;; Koichi MORI <kmori@onsei2.rilp.m.u-tokyo.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
46 ;; MINOURA Itsushi <minoura@uni.zool.s.u-tokyo.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
47 ;; MIYOSHI Tsutomu <minkov@fuzzy.or.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
48 ;; Makoto MATSUSHITA <matusita@ics.es.osaka-u.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
49 ;; Masahiko Suzuki <suzmasa@sm.sony.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
50 ;; Masahiro Doteguchi <xdote@rp.open.cs.fujitsu.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
51 ;; Masakazu Takahashi <masaka-t@ascii.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
52 ;; Masatake YAMATO <jet@airlab.cs.ritsumei.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
53 ;; Mikio Nakajima <minakaji@osaka.email.ne.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
54 ;; Motohiko Mouri <mouri@jaist.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
55 ;; Murata Shuuichirou <mrt@mickey.ai.kyutech.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
56 ;; $BCfDE;3(B $B91(B <hisashi@rst.fujixerox.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
57 ;; NAMBA Seiich <pi9s-nnb@asahi-net.or.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
58 ;; Naoki HAMADA <nao@mimo.jaist-east.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
59 ;; Ryoichi Hashimoto <gnu@ipri.go.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
60 ;; Sekita Daigo <sekita@mri.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
61 ;; $B?JF#M5;V(B <shindo@super.ees.saitama-u.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
62 ;; Shuji Ashizawa <ashizawa@zuken.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
63 ;; Takeshi OHTANI <ohtani@iias.flab.fujitsu.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
64 ;; Tomoyuki Hiro <hiro@momo.it.okayama-u.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
65 ; $BDS?"(B $B@5Bg(B (ma-tsuge@kdd.co.jp)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
66 ;; Tsugutomo Enami <enami@ptgd.sony.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
67 ;; Wataru Matsui <matsui@atr-rd.atr.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
68 ;; Yoshida Toyonobu <toyono-y@is.aist-nara.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
69
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
70 ;;; Change log:
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
71
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
72 ;;; Code:
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
73 (require 'advice)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
74 ;; Elib 1.0 is required
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
75 ;; queue-m.el and string.el are now distributed with SKK; this seems
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
76 ;; to be the primary source for XEmacs
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
77 (require 'queue-m)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
78 (require 'string)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
79 (require 'skk-foreword)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
80 (require 'skk-vars)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
81
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
82 (defconst skk-version "10.38")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
83
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
84 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
85 (defconst skk-month-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
86 '(("Jan" . "1") ("Feb" . "2") ("Mar" . "3") ("Apr" . "4") ("May" . "5")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
87 ("Jun" . "6") ("Jul" . "7") ("Aug" . "8") ("Sep" . "9") ("Oct" . "10")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
88 ("Nov" . "11") ("Dec" . "12") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
89 "$B1Q8l$N7nL>$H;;MQ?t;z$NO"A[%j%9%H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
90
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
91 $B;;MQ?t;z$+$i1Q8l$N7nL>$N$_$r=PNO$9$k$N$G$"$l$P!"%Y%/%?!<$r;H$C$?J}$,9bB.$@$,!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
92 $B1Q8l$N7nL>$+$i;;MQ?t;z$r=PNO$9$k$N$G$"$l$PO"A[%j%9%H$G$J$1$l$PL5M}$J$N$G!"B?(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
93 $BL\E*$K;HMQ$G$-$k$h$&O"A[%j%9%H$N7ABV$r<h$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
94
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
95 Alist of English month abbreviations and numerical values.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
96
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
97 Although it is faster to use a vector if we only want to output
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
98 month abbreviations given the ordinal, without the alist it's
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
99 unreasonable [sic] to output the ordinal given the abbreviation,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
100 so for multi-purpose utility we use the alist form."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
101 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
102
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
103 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
104 (defun skk-version ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
105 (interactive)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
106 (if (not (interactive-p))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
107 skk-version
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
108 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
109 (let* ((raw-date "$Date: 1997/12/02 08:48:40 $")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
110 (year (substring raw-date 7 11))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
111 (month (substring raw-date 12 14))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
112 (date (substring raw-date 15 17)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
113 (if (string-match "^0" month)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
114 (setq month (substring month (match-end 0))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
115 (if (string-match "^0" date)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
116 (setq date (substring date (match-end 0))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
117 (message "SKK version %s of %s"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
118 skk-version
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
119 (concat (car (rassoc month skk-month-alist))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
120 " " date ", " year ))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
121
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
122 ;;;; variables declaration
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
123 ;;; user variables
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
124 (defvar skk-debug nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
125
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
126 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
127 (defvar skk-init-file (if (eq system-type 'ms-dos) "~/_skk" "~/.skk")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
128 "*SKK $B$N=i4|@_Dj%U%!%$%kL>!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
129 skk.el 9.x $B$h$j(B ~/.emacs $B$G$N%+%9%?%^%$%:$,2DG=$H$J$C$?!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
130
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
131 Name of the SKK initialization file.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
132 From skk.el 9.x on all customization may be done in ~/.emacs."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
133 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
134
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
135 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
136 (defvar skk-special-midashi-char-list '(?> ?< ??)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
137 "*$B@\F,<-!"@\Hx<-$NF~NO$N$?$a$N%W%l%U%#%C%/%9%-!<!"%5%U%#%C%/%9%-!<$N%j%9%H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
138
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
139 List of prefix and suffix keys for entering `setsutoji' and `setsuoji'."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
140 ;#SJT# What are `setsutoji' and `setsuoji'?
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
141 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
142
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
143 ;#SJT# Is this hook also run in skk-auto-fill-mode? Before or after?
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
144 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
145 (defvar skk-mode-hook nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
146 "*SKK $B$r5/F0$7$?$H$-$N%U%C%/!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
147 $BB>$K!"(Bskk-auto-fill-mode-hook$B!"(Bskk-load-hook, skk-init-file $B$G$b%+%9%?(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
148 $B%^%$%:$,2DG=!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
149
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
150 Hook run at SKK startup.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
151
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
152 `skk-auto-fill-mode-hook', `skk-load-hook', and skk-init-file may also
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
153 be used for customization."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
154 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
155
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
156 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
157 (defvar skk-auto-fill-mode-hook nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
158 "*skk-auto-fill-mode $B$r5/F0$7$?$H$-$N%U%C%/!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
159 $BB>$K!"(Bskk-mode-hook, skk-load-hook, skk-init-file $B$G$b%+%9%?%^%$%:$,2D(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
160 $BG=!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
161
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
162 Hook run at startup of skk-auto-fill-mode.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
163
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
164 `skk-mode-hook', `skk-load-hook', and `skk-init-file' may also be
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
165 used for customization."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
166 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
167
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
168 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
169 (defvar skk-load-hook nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
170 "*skk.el $B$r%m!<%I$7$?$H$-$N%U%C%/!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
171 $BB>$K!"(Bskk-mode-hook, skk-auto-fill-mode-hook, skk-init-file $B$G$b%+%9%?(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
172 $B%^%$%:$,2DG=!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
173
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
174 Hook run when SKK is loaded.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
175
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
176 `skk-auto-fill-mode-hook', `skk-mode-hook', and `skk-init-file' may
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
177 also be used for customization."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
178 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
179
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
180 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
181 (defvar skk-kakutei-jisyo nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
182 "*$B:G=i$K8!:w$9$k<-=q!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
183 Non-nil $B$G!"$+$D(B skk-search-prog-list $B$NMWAG$NCf$K$3$NJQ?t$,;HMQ$5$l$F$$$l$P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
184 $B;XDj$5$l$?<-=q$r8!:w$N$?$a%P%C%U%!$KFI$_9~$_!"8!:w$r9T$J$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
185 $B8+=P$78l$O!"%=!<%H$5$l$F$$$J$1$l$P$J$i$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
186 $B3F8+=P$78l$N:G=i$N%(%s%H%j$7$+8!:w$7$J$$(B ($BJ#?t$N%(%s%H%j$,$"$C$F$b(B 2 $BHVL\0J9_$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
187 $B%(%s%H%j$OL5;k$5$l$k(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
188 skk-search-prog-list $B$NCM$r@_Dj$9$k$3$H$K$h$j!"8!:wBP>]$N<-=q$NJQ99!"8!:w$N=g(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
189 $B=x$NJQ99$,2DG=!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
190
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
191 The first dictionary to be searched.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
192 If non-nil, and this variable is used as a component of
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
193 `skk-search-prog-list', the indicated dictionary is read into a
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
194 buffer and searched.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
195 The keys must be sorted.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
196 Only the first entry in each key is checked; if several entries are
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
197 present the second and following entries are ignored.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
198 By setting the value of `skk-search-prog-list' the dictionaries
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
199 searched and the order of search can be changed."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
200 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
201
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
202 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
203 (defvar skk-initial-search-jisyo nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
204 "*$B%f!<%6!<<-=q$N8!:w$NA0$K8!:w$9$k<-=q!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
205 $B8+=P$78l$O!"%=!<%H$5$l$F$$$J$1$l$P$J$i$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
206 Non-nil $B$G!"$+$D(B skk-search-prog-list $B$NMWAG$NCf$K$3$NJQ?t$,;HMQ$5$l$F$$$l$P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
207 $B;XDj$5$l$?<-=q$r8!:w$N$?$a%P%C%U%!$KFI$_9~$_!"8!:w$r9T$J$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
208 skk-search-prog-list $B$NCM$r@_Dj$9$k$3$H$K$h$j!"8!:wBP>]$N<-=q$NJQ99!"8!:w$N=g(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
209 $B=x$NJQ99$,2DG=!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
210
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
211 This dictionary is searched before the user's personal dictionary.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
212 The keys must be sorted.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
213 If non-nil, and this variable is used as a component of
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
214 `skk-search-prog-list', the indicated dictionary is read into a
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
215 buffer and searched.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
216 By setting the value of `skk-search-prog-list' the dictionaries
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
217 searched and the order of search can be changed."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
218 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
219
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
220 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
221 (defvar skk-large-jisyo nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
222 "*$B%f!<%6!<<-=q$N8!:w$N8e$K8!:w$9$k<-=q!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
223 $B8+=P$78l$O!"%=!<%H$5$l$F$$$J$1$l$P$J$i$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
224 Non-nil $B$G!"$+$D(B skk-search-prog-list $B$NMWAG$NCf$K$3$NJQ?t$,;HMQ$5$l$F$$$l$P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
225 $B;XDj$5$l$?<-=q$r8!:w$N$?$a%P%C%U%!$KFI$_9~$_!"8!:w$r9T$J$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
226 skk-search-prog-list $B$NCM$r@_Dj$9$k$3$H$K$h$j!"8!:wBP>]$N<-=q$NJQ99!"8!:w$N=g(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
227 $B=x$NJQ99$,2DG=!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
228
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
229 Dictionary searched after the user dictionary.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
230 Keys must be sorted.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
231 If non-nil and this variable is used as a component of
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
232 `skk-search-prog-list', the indicated dictionary is read into a buffer
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
233 for search, and the search is executed.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
234 By setting the value of `skk-search-prog-list' the dictionaries
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
235 searched and the order of search can be changed."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
236 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
237
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
238 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
239 (defvar skk-aux-large-jisyo nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
240 "*SKK $B%5!<%P!<$G:G8e$K8!:w$9$k<-=q!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
241 $B8+=P$78l$O!"%=!<%H$5$l$F$$$J$1$l$P$J$i$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
242 Non-nil $B$G!"$+$D(B skk-search-prog-list $B$NMWAG$NCf$K$3$NJQ?t$,;HMQ$5$l$F$$$l$P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
243 SKK $B%5!<%P!<$r;H$$8!:w$r9T$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
244 SKK $B%5!<%P!<$,(B active $B$G$J$1$l$P!";XDj$5$l$?<-=q$r%P%C%U%!$KFI$_9~$`!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
245 skk-search-prog-list $B$NCM$r@_Dj$9$k$3$H$K$h$j!"8!:wBP>]$N<-=q$NJQ99!"8!:w$N=g(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
246 $B=x$NJQ99$,2DG=!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
247 $B$3$NCM$r@_Dj$9$k$3$H$K$h$j!"(Bskk-server.el $B$,(B autoload $B$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
248
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
249 Last dictionary to be searched by the SKK server.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
250 Keys must be sorted.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
251
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
252 If non-nil and this variable is used as a component of
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
253 `skk-search-prog-list', the SKK server is used to execute the search.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
254 If the server is not active, the indicated dictionary is read into a
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
255 buffer for search, and the search is executed.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
256 By setting the value of `skk-search-prog-list' the dictionaries
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
257 searched and the order of search can be changed.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
258 According to the value of this variable the skkserv.el will be
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
259 autoloaded."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
260 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
261
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
262 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
263 (defvar skk-search-prog-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
264 '((skk-search-kakutei-jisyo-file skk-kakutei-jisyo 10000 t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
265 (skk-search-jisyo-file skk-initial-search-jisyo 10000 t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
266 (skk-search-jisyo-file skk-jisyo 0 t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
267 ;; skk-auto.el $B$r%m!<%I$9$k$H2<5-$NMWAG$,%W%i%9$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
268 ;;(skk-okuri-search)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
269 (skk-search-jisyo-file skk-large-jisyo 10000)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
270 ;; skk-server.el $B$r%m!<%I$9$k$H2<5-$NMWAG$,%W%i%9$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
271 ;;(skk-search-server skk-aux-large-jisyo 10000)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
272 ;; skk-server-host $B$b$7$/$O(B skk-servers-list $B$r;XDj$9$k$H!"(Bskk-server.el
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
273 ;; $B$,(B autoload $B$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
274 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
275 "*$B8!:w4X?t!"8!:wBP>]$N<-=q$r7hDj$9$k$?$a$N%j%9%H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
276 $BJQ49$7$?8uJd$rJV$9(B S $B<0$r%j%9%H$N7A$KI=5-$7$?$b$N!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
277 skk-search $B4X?t$,(B skk-search-prog-list $B$N(B car $B$+$i8eJ}8~$X=gHV$K(B S $B<0$NI>2A$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
278 $B9T$$JQ49$r9T$J$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
279
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
280 This list determines the search functions used and the dictionaries
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
281 searched.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
282 A list of S-expressions returning conversion candidates.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
283 The function `skk-search' performs conversions by evaluating each S-
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
284 expression in order, starting with the car of `skk-search-prog-list'."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
285 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
286
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
287 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
288 (defvar skk-jisyo (if (eq system-type 'ms-dos) "~/_skk-jisyo" "~/.skk-jisyo")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
289 "*SKK $B$N%f!<%6!<<-=q!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
290
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
291 SKK's dictionary of user-specified conversions." )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
292
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
293 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
294 (defvar skk-backup-jisyo
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
295 (if (eq system-type 'ms-dos) "~/_skk-jisyo.BAK" "~/.skk-jisyo.BAK")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
296 "*SKK $B$N%f!<%6!<<-=q$N%P%C%/%"%C%W%U%!%$%k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
297
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
298 Name of user dictionary backup (a file name as a string)."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
299 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
300
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
301 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
302 (defvar skk-jisyo-code nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
303 "*Non-nil $B$G$"$l$P!"$=$NCM$G<-=q%P%C%U%!$N4A;z%3!<%I$r@_Dj$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
304 Mule $B$G$O!"(B*euc-japan*, *sjis*, *junet*$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
305 $B$^$?!"(B\"euc\", \"ujis\", \"sjis\", \"jis\" $B$J$I$NJ8;zNs$K$h$C$F$b;XDj$,(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
306 $B2DG=!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
307
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
308 If non-nil, the value sets the kanji code used in dictionary buffers.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
309 In Mule, the symbols *euc-japan*, *sjis*, or *junet*. Can also be
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
310 specified as a string such as \"euc\", \"ujis\", \"sjis\", or \"jis\"."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
311 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
312
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
313 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
314 (defvar skk-keep-record t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
315 "*Non-nil $B$G$"$l$P!"JQ49$K4X$9$k5-O?$r(B skk-record-file $B$K<h$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
316
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
317 If non-nil, a record of conversions is kept in `skk-record-file'.")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
318
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
319 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
320 (defvar skk-record-file
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
321 (if (eq system-type 'ms-dos) "~/_skk-record" "~/.skk-record")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
322 "*$B%f!<%6!<<-=q$NE}7W$r<h$k%U%!%$%k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
323 $B<-=q%;!<%V$N;~9o!"C18l$NEPO??t!"3NDj$r9T$C$?2s?t!"3NDjN(!"A4BN$N8l?t$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
324 $B>pJs$r<}$a$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
325
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
326 File containing statistics about the user dictionary.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
327
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
328 At the time the dictionary is saved, the number of words registered,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
329 number of conversions accepted, rate of acceptance, and the total
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
330 number of words are collected." )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
331
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
332 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
333 (defvar skk-kakutei-key "\C-j"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
334 "*$B3NDjF0:n(B (\"skk-kakutei\") $B$r9T$&%-!<!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
335
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
336 The key that executes conversion confirmation (\"skk-kakutei\").")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
337
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
338 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
339 (defvar skk-use-vip nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
340 "*Non-nil $B$G$"$l$P!"(BVIP $B$KBP1~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
341
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
342 If non-nil, VIP compatibility mode." )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
343
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
344 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
345 (defvar skk-use-viper nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
346 "*Non-nil $B$G$"$l$P!"(BVIPER $B$KBP1~$9$k!#!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
347
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
348 If non-nil, VIPER compatibility mode." )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
349
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
350 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
351 (defvar skk-henkan-okuri-strictly nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
352 "*Non-nil $B$G$"$l$P!"8+=P$78l$HAw$j2>L>$,0lCW$7$?$H$-$@$18uJd$H$7$F=PNO$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
353 $BNc$($P!"2<5-$N$h$&$J<-=q%(%s%H%j$,!"(Bskk-jisyo \($B%W%i%$%Y!<%H<-=q(B\) $B$K$"$C$?>l9g$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
354
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
355 \"$B$*$*(Bk /$BBg(B/$BB?(B/[$B$/(B/$BB?(B/]/[$B$-(B/$BBg(B/]/\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
356
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
357 \"$B"&$*$*(B*$B$/(B\" $B$rJQ49$7$?$H$-!"(B\"$BB?$/(B\" $B$N$_$r=PNO$7!"(B\"$BBg$/(B\" $B$r=PNO$7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
358
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
359 SKK-JISYO.[SML] $B$NAw$j2>L>%(%s%H%j$O>e5-$N7A<0$K$J$C$F$$$J$$$N$G!"(Bskk-jisyo $B$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
360 $BAw$j$"$j$N<-=q%(%s%H%j$,$3$N7A<0$N$b$N$r$"$^$j4^$s$G$$$J$$>l9g$O!"$3$N%*%W%7%g(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
361 $B%s$r(B on $B$K$9$k$3$H$G!"$9$0$KC18lEPO?$KF~$C$F$7$^$&$N$GCm0U$9$k$3$H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
362
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
363 skk-process-okuri-early $B$NCM$,(B nil $B$J$i$P>e5-$N7A<0$G(B skk-jisyo $B$,:n$i$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
364
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
365 Emacs 19 $B%Y!<%9$N(B Mule $B$J$i$P!"2<5-$N%U%)!<%`$rI>2A$9$k$3$H$G!"C18lEPO?$KF~$C(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
366 $B$?$H$-$@$10l;~E*$K$3$N%*%W%7%g%s$r(B nil $B$K$9$k$3$H$,$G$-$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
367
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
368 \(add-hook 'minibuffer-setup-hook
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
369 \(function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
370 \(lambda \(\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
371 \(if \(and \(boundp 'skk-henkan-okuri-strictly\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
372 skk-henkan-okuri-strictly
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
373 \(not \(eq last-command 'skk-purge-from-jisyo\)\) \)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
374 \(progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
375 \(setq skk-henkan-okuri-strictly nil\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
376 \(put 'skk-henkan-okuri-strictly 'temporary-nil t\) \)\)\)\)\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
377
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
378 \(add-hook 'minibuffer-exit-hook
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
379 \(function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
380 \(lambda \(\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
381 \(if \(get 'skk-henkan-okuri-strictly 'temporary-nil\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
382 \(progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
383 \(put 'skk-henkan-okuri-strictly 'temporary-nil nil\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
384 \(setq skk-henkan-okuri-strictly t\) \)\)\)\)\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
385
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
386 $B$3$N%*%W%7%g%sMxMQ;~$O!"(Bskk-process-okuri-early $B$NCM$O(B nil $B$G$J$1$l$P$J$i$J$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
387 \($B%a%K%e!<%P!<(B $B$rMxMQ$7$F%+%9%?%^%$%:$7$?>l9g$O<+F0E*$KD4@0$5$l$k(B\)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
388
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
389 If non-nil, only when the key and its inflected suffix are given
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
390 together in the dictionary will they be output as a candidate. For
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
391 example, if the following entry is in `skk-jisyo' (the provate
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
392 dictionary),
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
393
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
394 \"$B$*$*(Bk /$BBg(B/$BB?(B/[$B$/(B/$BB?(B/]/[$B$-(B/$BBg(B/]/\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
395
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
396 then when converting \"$B"&$*$*(B*$B$/(B\", only \"$BB?$/(B\" wil be output; \"$BBg$/(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
397 \" will not be offered as a candidate.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
398
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
399 The inflected suffixes in SKK-JISYO.[SML] are not given in the above
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
400 way, so if very few of the entries in skk-jisyo are given in that
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
401 form, then when this option is set `on', \"word registration mode\" will
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
402 be entered extremely often.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
403
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
404 If the value of `skk-process-okuri-early' is `nil', new entries in
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
405 `skk-jisyo' will be created in the form above.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
406
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
407 If using a Mule based on Emacs 19 or later, you can arrange for this
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
408 option to be temporarily set to `nil' by evaluating the following
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
409 form:
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
410
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
411 \(add-hook 'minibuffer-setup-hook
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
412 \(function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
413 \(lambda \(\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
414 \(if \(and \(boundp 'skk-henkan-okuri-strictly\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
415 skk-henkan-okuri-strictly
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
416 \(not \(eq last-command 'skk-purge-from-jisyo\)\) \)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
417 \(progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
418 \(setq skk-henkan-okuri-strictly nil\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
419 \(put 'skk-henkan-okuri-strictly 'temporary-nil t\) \)\)\)\)\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
420
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
421 \(add-hook 'minibuffer-exit-hook
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
422 \(function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
423 \(lambda \(\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
424 \(if \(get 'skk-henkan-okuri-strictly 'temporary-nil\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
425 \(progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
426 \(put 'skk-henkan-okuri-strictly 'temporary-nil nil\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
427 \(setq skk-henkan-okuri-strictly t\) \)\)\)\)\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
428
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
429 When using this option, `skk-process-okuri-early' must be `nil'.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
430 (When using customize from the menubar this will automatically
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
431 temporarily be set to `nil'.)" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
432
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
433 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
434 (defvar skk-henkan-strict-okuri-precedence nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
435 "*Non-nil $B$G$"$l$P!"8+=P$78l$HAw$j2>L>$,0lCW$7$?8uJd$rM%@h$7$FI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
436 $BNc$($P!"2<5-$N$h$&$J<-=q%(%s%H%j$,!"(Bskk-jisyo \($B%W%i%$%Y!<%H<-=q(B\) $B$K$"$C$?>l9g$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
437
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
438 \"$B$*$*(Bk /$BBg(B/$BB?(B/[$B$/(B/$BB?(B/]/[$B$-(B/$BBg(B/]/\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
439
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
440 \"$B"&$*$*(B*$B$/(B\" $B$rJQ49$7$?$H$-!"$^$:(B\"$BB?$/(B\" $B$r=PNO$7!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
441 $B<!$K(B \"$BBg$/(B\" $B$r=PNO$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
442
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
443 \"$BBg$/(B\"$B$J$I$N8uJd$O$&$C$H$&$7$$$,!"$9$0$KC18lEPO?$K$O$$$C$F$7$^$&$N$b(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
444 $B7y$J$R$H$K$*$9$9$a!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
445
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
446 $B$3$N%*%W%7%g%sMxMQ;~$O!"(Bskk-process-okuri-early $B$NCM$O(B nil $B$G$J$i$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
447 $B$^$?(B skk-henkan-okuri-strictly $B$,(B non-nil $B$N$H$-$O!"$3$NJQ?t$OL5;k$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
448 \($B%a%K%e!<%P!<(B $B$rMxMQ$7$F%+%9%?%^%$%:$7$?>l9g$O<+F0E*$KD4@0$5$l$k(B\)$B!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
449
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
450 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
451 (defvar skk-auto-okuri-process nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
452 "*Non-nil $B$G$"$l$P!"Aw$j2>L>ItJ,$r<+F0G'<1$7$FJQ49$r9T$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
453 $BNc$($P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
454
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
455 \"Uresii (\"UreSii\" $B$G$O$J$/(B) -> $B4r$7$$(B\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
456
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
457 $B$N$h$&$KJQ49$5$l$k!#C"$7!"(Bskk-jisyo $B<-=q(B \($B%W%i%$%Y!<%H<-=q(B\) $B$,!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
458
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
459 \"$B$&$l(Bs /$B4r(B/[$B$7(B/$B4r(B/]/\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
460
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
461 $B$N$h$&$J7A<0$K$J$C$F$$$k$3$H$,I,MW$G$"$k(B \(SKK-JISYO.[SML] $B$O$3$N7A<0$KBP1~$7(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
462 $B$F$$$J$$$N$G!"(Bskk-jisyo $B$K$3$N%(%s%H%j$,$J$1$l$P$J$i$J$$(B\)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
463
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
464 $B$3$N%*%W%7%g%sMxMQ;~$O!"(Bskk-process-okuri-early $B$NCM$O(B nil $B$G$J$1$l$P$J$i$J$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
465 \($B%a%K%e!<%P!<(B $B$rMxMQ$7$F%+%9%?%^%$%:$7$?>l9g$O<+F0E*$KD4@0$5$l$k(B\)$B!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
466
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
467 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
468 (defvar skk-process-okuri-early nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
469 "*Non-nil $B$G$"$l$P!"Aw$j2>L>$N%m!<%^;z%W%l%U%#%C%/%9$NF~NO;~E@$GJQ49$r3+;O$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
470 $BNc$($P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
471
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
472 \"UgoK -> $B"'F0(Bk\"$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
473
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
474 $BAw$j2>L>$,J,$i$J$$$^$^JQ49$7$F$$$k$3$H$K$J$k$N$G!"(Bskk-jisyo $B$,Aw$j2>L>$KBP1~$7(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
475 $B$?7A$K@.D9$7$J$$!#$D$^$j(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
476
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
477 \"$B$&$4(Bk /$BF0(B/\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
478
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
479 $B$N$h$&$J7ABV$N$^$^$H$J$k!#$?$@$7!"4{$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
480
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
481 \"$B$&$4(Bk /$BF0(B/[$B$/(B/$BF0(B/]/[$B$+(B/$BF0(B/]/[$B$1(B/$BF0(B/]/[$B$-(B/$BF0(B/]/[$B$3(B/$BF0(B/]/\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
482
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
483 $B$N$h$&$J%(%s%H%j$,(B skk-jisyo $B$K$"$l$P!"$=$l$rGK2u$7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
484
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
485 nil $B$G$"$l$P!"Aw$j2>L>$NF~NO$,40N;$7$?;~E@$GJQ49$,3+;O$9$k!#Nc$($P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
486
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
487 \"UgoK -> $B"&$&$4(B*k\", \"UgoKu -> $B"'F0$/(B\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
488
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
489 $B$3$N%*%W%7%g%s$r(B on $B$K$7$F(B skk-mode $B$r5/F0$9$k$H!"N>N)$G$-$J$$%*%W%7%g%s$G$"$k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
490 skk-kakutei-early, skk-auto-okuri-process, skk-henkan-okuri-strictly $B$O(B nil $B$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
491 $B%;%C%H$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
492
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
493 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
494 (defvar skk-egg-like-newline nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
495 "*Non-nil $B$G$"$l$P!""'%b!<%I$G2~9T$r%?%$%W$7$F$b3NDj$9$k$N$_$G2~9T$7$J$$!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
496
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
497 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
498 (defvar skk-kakutei-early t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
499 "*Non-nil $B$G$"$l$P(B skk-kana-input $B$,8F$P$l$?$H$-$K8=:_$N8uJd$r3NDj$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
500 $BNc$($P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
501
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
502 \"$B"&$+$/$F$$(B -> $B"'3NDj(B -> $B3NDj(Bs -> $B3NDj$9(B\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
503
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
504 $B$N$h$&$KJQ498e!"!V$9!W$N(B prefix $B$G$"$k(B \"s\" $B$rF~NO$7$?;~E@$G3NDj$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
505 nil $B$G$"$l$P!"Nc$($P(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
506
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
507 \"$B"&$+$/$F$$(B -> $B"'3NDj(B -> $B"'3NDj(Bs -> $B"'3NDj$9$k(B -> $B3NDj$9$k!#(B\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
508
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
509 $B$N$h$&$K(B skk-kakutei $B$rD>@\!"4V@\$K%3!<%k$9$k$^$G(B \($B6gFIE@$rF~NO$7$?$j!"?7$?$J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
510 $B"&%b!<%I$KF~$C$?$j$9$k$H4V@\E*$K(B skk-kakutei $B$r%3!<%k$9$k(B\) $B$O!"3NDj$7$J$$$N$G!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
511 $B$=$N4V$O!"JQ498uJd$rA*$S$J$*$9$3$H$J$I$,2DG=!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
512
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
513 $B$3$N%*%W%7%g%sMxMQ;~$O!"(Bskk-process-okuri-early $B$NCM$O(B nil $B$G$J$1$l$P$J$i$J$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
514 \($B%a%K%e!<%P!<(B $B$rMxMQ$7$F%+%9%?%^%$%:$7$?>l9g$O<+F0E*$KD4@0$5$l$k(B\)$B!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
515
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
516 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
517 (defvar skk-delete-implies-kakutei t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
518 "*Non-nil $B$G$"$l$P!""'%b!<%I$G(B BS $B$r2!$9$H!"A0$N0lJ8;z$r:o=|$73NDj$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
519 nil $B$G$"$l$P!"0l$DA0$N8uJd$rI=<($9$k!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
520
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
521 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
522 (defvar skk-allow-spaces-newlines-and-tabs t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
523 "*Non-nil $B$G$"$l$P!"(Bskk-henkan-key $B$K%9%Z!<%9!"%?%V!"2~9T$,$"$C$F$bJQ492DG=!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
524 $BNc$($P!"2<5-$N$h$&$K(B skk-henkan-key $B$NCf$K2~9T$,F~$C$F$$$F$bJQ49$,2DG=$G$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
525
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
526 \"$B"&$+(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
527 $B$J(B\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
528 -> \"$B2>L>(B\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
529
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
530 $B$3$NCM$,(B nil $B$G$"$l$P!":G=i$N%9%Z!<%9$G(B skk-henkan-key $B$r@Z$j5M$a$F$7$^$$!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
531 $B0J9_$N%9%Z!<%9!"%?%V!"2~9T$OL5;k$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
532 $B$3$NCM$O!"(Bskk-start-henkan, skk-ascii-henkan, skk-katakana-henkan,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
533 skk-hiragana-henkan, skk-zenkaku-henkan $B5Z$S(B skk-backward-and-set-henkan-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
534 $B$NF0:n$K1F6A$9$k!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
535
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
536 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
537 (defvar skk-convert-okurigana-into-katakana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
538 "*Non-nil $B$G$"$l$P!"%+%?%+%J%b!<%I$GJQ49$7$?$H$-$KAw$j2>L>$b%+%?%+%J$KJQ49$9$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
539
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
540 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
541 (defvar skk-delete-okuri-when-quit nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
542 "*Non-nil $B$G$"$l$P!"Aw$j$"$j$NJQ49Cf$K(B \"C-g\" $B$r2!$9$HAw$j2>L>$r>C$7"&%b!<%I$KF~$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
543 $BNc$($P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
544
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
545 \"$B"&$J(B*$B$/(B -> $B"'5c$/(B -> \"C-g\" ->$B"&$J(B\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
546
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
547 nil $B$G$"$l$P!"Aw$j2>L>$r4^$a$?8+=P$78l$r$=$N$^$^;D$7!""#%b!<%I$KF~$k!#Nc$($P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
548
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
549 \"$B"&$J(B*$B$/(B -> $B"'5c$/(B -> \"C-g\" -> $B$J$/(B\"" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
550
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
551 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
552 (defvar skk-henkan-show-candidates-keys '(?a ?s ?d ?f ?j ?k ?l)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
553 "*$B%a%K%e!<7A<0$G8uJd$rA*Br$9$k$H$-$NA*Br%-!<$N%j%9%H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
554 \"x\", \" \" $B5Z$S(B \"C-g\" $B0J30$N(B 7 $B$D$N%-!<(B (char type) $B$r4^$`I,MW$,$"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
555 $B$k!#(B\"x\", \" \" $B5Z$S(B \"C-g\" $B$O8uJdA*Br;~$K$=$l$>$lFCJL$J;E;v$K3d$jEv(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
556 $B$F$i$l$F$$$k$N$G!"$3$N%j%9%H$NCf$K$O4^$a$J$$$3$H!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
557
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
558 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
559 (defvar skk-ascii-mode-string " SKK"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
560 "*SKK $B$,(B ascii $B%b!<%I$G$"$k$H$-$K%b!<%I%i%$%s$KI=<($5$l$kJ8;zNs!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
561
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
562 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
563 (defvar skk-hirakana-mode-string " $B$+$J(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
564 "*$B$R$i$,$J%b!<%I$G$"$k$H$-$K%b!<%I%i%$%s$KI=<($5$l$kJ8;zNs!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
565
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
566 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
567 (defvar skk-katakana-mode-string " $B%+%J(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
568 "*$B%+%?%+%J%b!<%I$G$"$k$H$-$K%b!<%I%i%$%s$KI=<($5$l$kJ8;zNs!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
569
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
570 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
571 (defvar skk-zenkaku-mode-string " $BA41Q(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
572 "*$BA41Q%b!<%I$G$"$k$H$-$K%b!<%I%i%$%s$KI=<($5$l$kJ8;zNs!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
573
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
574 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
575 (defvar skk-abbrev-mode-string " a$B$"(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
576 "*SKK abbrev $B%b!<%I$G$"$k$H$-$K%b!<%I%i%$%s$KI=<($5$l$kJ8;zNs!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
577
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
578 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
579 (defvar skk-echo t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
580 "*Non-nil $B$G$"$l$P!"2>L>J8;z$N%W%l%U%#%C%/%9$rI=<($9$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
581
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
582 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
583 (defvar skk-use-numeric-conversion t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
584 "*Non-nil $B$G$"$l$P!"?tCMJQ49$r9T$&!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
585
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
586 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
587 (defvar skk-char-type-vector
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
588 [0 0 0 0 0 0 0 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
589 5 0 0 0 0 0 0 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
590 0 0 0 0 0 0 0 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
591 0 0 0 0 0 0 0 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
592 0 0 0 0 0 0 0 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
593 0 0 0 0 0 0 0 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
594 0 0 0 0 0 0 0 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
595 0 0 0 0 0 0 0 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
596 0 4 4 4 4 4 4 4
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
597 4 4 4 4 0 4 4 4
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
598 4 0 4 4 4 4 4 4
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
599 0 4 4 0 0 0 0 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
600 0 3 1 1 1 3 1 1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
601 1 3 1 1 0 1 2 3
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
602 1 0 1 1 1 3 1 1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
603 2 1 1 0 0 0 0 5]
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
604 "*skk-kana-input $B$G;2>H$9$k$+$JJ8;zJQ49$N$?$a$N(B char type $B%Y%/%?!<!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
605 $B3FMWAG$N?t;z$N0UL#$O2<5-$NDL$j!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
606
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
607 0 $B%m!<%^J8;z$h$j$+$JJ8;z$X$NJQ49$rCf;_$9$k(B ($B8=:_$N$H$3$m;HMQ$7$F$$$J$$(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
608 1 $BB%2;$N0lItJ,$H$J$jF@$k;R2;!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
609 2 $B>e5-(B 1 $B0J30$N;R2;(B (n, x)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
610 3 $BJl2;(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
611 4 skk-mode $B$G!"(Bskk-set-henkan-point $B$K3d$jIU$1$i$l$F$$$kJ8;z!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
612 5 $B%W%l%U%#%C%/%9$r>C5n$9$k(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
613
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
614 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
615 (defvar skk-standard-rom-kana-rule-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
616 '(("b" "b" nil) ("by" "by" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
617 ("c" "c" nil) ("ch" "ch" nil) ("cy" "cy" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
618 ("d" "d" nil) ("dh" "dh" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
619 ("dy" "dy" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
620 ("f" "f" nil) ("fy" "fy" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
621 ("g" "g" nil) ("gy" "gy" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
622 ("h" "h" nil) ("hy" "hy" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
623 ("j" "j" nil) ("jy" "jy" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
624 ("k" "k" nil) ("ky" "ky" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
625 ("m" "m" nil) ("my" "my" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
626 ("n" "n" nil) ("ny" "ny" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
627 ("p" "p" nil) ("py" "py" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
628 ("r" "r" nil) ("ry" "ry" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
629 ("s" "s" nil) ("sh" "sh" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
630 ("sy" "sy" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
631 ("t" "t" nil) ("th" "th" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
632 ("ts" "ts" nil) ("ty" "ty" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
633 ("v" "v" nil) ("w" "w" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
634 ("x" "x" nil) ("xk" "xk" nil) ("xt" "xt" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
635 ("xw" "xw" nil) ("xy" "xy" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
636 ("y" "y" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
637 ("z" "z" nil) ("zy" "zy" nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
638
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
639 ("bb" "b" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
640 ("cc" "c" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
641 ("dd" "d" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
642 ("ff" "f" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
643 ("gg" "g" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
644 ("hh" "h" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
645 ("jj" "j" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
646 ("kk" "k" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
647 ("mm" "m" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
648 ;;("nn" "n" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
649 ("pp" "p" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
650 ("rr" "r" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
651 ("ss" "s" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
652 ("tt" "t" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
653 ("vv" "v" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
654 ("ww" "w" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
655 ("xx" "x" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
656 ("yy" "y" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
657 ("zz" "z" ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
658
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
659 ("a" nil ("$B%"(B" . "$B$"(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
660 ("ba" nil ("$B%P(B" . "$B$P(B")) ("bya" nil ("$B%S%c(B" . "$B$S$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
661 ("cha" nil ("$B%A%c(B" . "$B$A$c(B")) ("cya" nil ("$B%A%c(B" . "$B$A$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
662 ("da" nil ("$B%@(B" . "$B$@(B")) ("dha" nil ("$B%G%c(B" . "$B$G$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
663 ("dya" nil ("$B%B%c(B" . "$B$B$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
664 ("fa" nil ("$B%U%!(B" . "$B$U$!(B")) ("fya" nil ("$B%U%c(B" . "$B$U$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
665 ("ga" nil ("$B%,(B" . "$B$,(B")) ("gya" nil ("$B%.%c(B" . "$B$.$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
666 ("ha" nil ("$B%O(B" . "$B$O(B")) ("hya" nil ("$B%R%c(B" . "$B$R$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
667 ("ja" nil ("$B%8%c(B" . "$B$8$c(B")) ("jya" nil ("$B%8%c(B" . "$B$8$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
668 ("ka" nil ("$B%+(B" . "$B$+(B")) ("kya" nil ("$B%-%c(B" . "$B$-$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
669 ("ma" nil ("$B%^(B" . "$B$^(B")) ("mya" nil ("$B%_%c(B" . "$B$_$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
670 ("na" nil ("$B%J(B" . "$B$J(B")) ("nya" nil ("$B%K%c(B" . "$B$K$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
671 ("pa" nil ("$B%Q(B" . "$B$Q(B")) ("pya" nil ("$B%T%c(B" . "$B$T$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
672 ("ra" nil ("$B%i(B" . "$B$i(B")) ("rya" nil ("$B%j%c(B" . "$B$j$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
673 ("sa" nil ("$B%5(B" . "$B$5(B")) ("sha" nil ("$B%7%c(B" . "$B$7$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
674 ("sya" nil ("$B%7%c(B" . "$B$7$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
675 ("ta" nil ("$B%?(B" . "$B$?(B")) ("tha" nil ("$B%F%!(B" . "$B$F$!(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
676 ("tya" nil ("$B%A%c(B" . "$B$A$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
677 ("va" nil ("$B%t%!(B" . "$B$&!+$!(B")) ("wa" nil ("$B%o(B" . "$B$o(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
678 ("xa" nil ("$B%!(B" . "$B$!(B")) ("xka" nil ("$B%u(B" . "$B$+(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
679 ("xwa" nil ("$B%n(B" . "$B$n(B")) ("xya" nil ("$B%c(B" . "$B$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
680 ("ya" nil ("$B%d(B" . "$B$d(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
681 ("za" nil ("$B%6(B" . "$B$6(B")) ("zya" nil ("$B%8%c(B" . "$B$8$c(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
682
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
683 ("i" nil ("$B%$(B" . "$B$$(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
684 ("bi" nil ("$B%S(B" . "$B$S(B")) ("byi" nil ("$B%S%#(B" . "$B$S$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
685 ("chi" nil ("$B%A(B" . "$B$A(B")) ("cyi" nil ("$B%A%#(B" . "$B$A$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
686 ("di" nil ("$B%B(B" . "$B$B(B")) ("dhi" nil ("$B%G%#(B" . "$B$G$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
687 ("dyi" nil ("$B%B%#(B" . "$B$B$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
688 ("fi" nil ("$B%U%#(B" . "$B$U$#(B")) ("fyi" nil ("$B%U%#(B" . "$B$U$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
689 ("gi" nil ("$B%.(B" . "$B$.(B")) ("gyi" nil ("$B%.%#(B" . "$B$.$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
690 ("hi" nil ("$B%R(B" . "$B$R(B")) ("hyi" nil ("$B%R%#(B" . "$B$R$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
691 ("ji" nil ("$B%8(B" . "$B$8(B")) ("jyi" nil ("$B%8%#(B" . "$B$8$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
692 ("ki" nil ("$B%-(B" . "$B$-(B")) ("kyi" nil ("$B%-%#(B" . "$B$-$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
693 ("mi" nil ("$B%_(B" . "$B$_(B")) ("myi" nil ("$B%_%#(B" . "$B$_$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
694 ("ni" nil ("$B%K(B" . "$B$K(B")) ("nyi" nil ("$B%K%#(B" . "$B$K$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
695 ("pi" nil ("$B%T(B" . "$B$T(B")) ("pyi" nil ("$B%T%#(B" . "$B$T$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
696 ("ri" nil ("$B%j(B" . "$B$j(B")) ("ryi" nil ("$B%j%#(B" . "$B$j$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
697 ("si" nil ("$B%7(B" . "$B$7(B")) ("shi" nil ("$B%7(B" . "$B$7(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
698 ("syi" nil ("$B%7%#(B" . "$B$7$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
699 ("ti" nil ("$B%A(B" . "$B$A(B")) ("thi" nil ("$B%F%#(B" . "$B$F$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
700 ("tyi" nil ("$B%A%#(B" . "$B$A$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
701 ("vi" nil ("$B%t%#(B" . "$B$&!+$#(B")) ("wi" nil ("$B%&%#(B" . "$B$&$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
702 ("xi" nil ("$B%#(B" . "$B$#(B")) ("xwi" nil ("$B%p(B" . "$B$p(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
703 ("zi" nil ("$B%8(B" . "$B$8(B")) ("zyi" nil ("$B%8%#(B" . "$B$8$#(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
704
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
705 ("u" nil ("$B%&(B" . "$B$&(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
706 ("bu" nil ("$B%V(B" . "$B$V(B")) ("byu" nil ("$B%S%e(B" . "$B$S$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
707 ("chu" nil ("$B%A%e(B" . "$B$A$e(B")) ("cyu" nil ("$B%A%e(B" . "$B$A$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
708 ("du" nil ("$B%E(B" . "$B$E(B")) ("dhu" nil ("$B%G%e(B" . "$B$G$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
709 ("dyu" nil ("$B%B%e(B" . "$B$B$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
710 ("fu" nil ("$B%U(B" . "$B$U(B")) ("fyu" nil ("$B%U%e(B" . "$B$U$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
711 ("gu" nil ("$B%0(B" . "$B$0(B")) ("gyu" nil ("$B%.%e(B" . "$B$.$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
712 ("hu" nil ("$B%U(B" . "$B$U(B")) ("hyu" nil ("$B%R%e(B" . "$B$R$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
713 ("ju" nil ("$B%8%e(B" . "$B$8$e(B")) ("jyu" nil ("$B%8%e(B" . "$B$8$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
714 ("ku" nil ("$B%/(B" . "$B$/(B")) ("kyu" nil ("$B%-%e(B" . "$B$-$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
715 ("mu" nil ("$B%`(B" . "$B$`(B")) ("myu" nil ("$B%_%e(B" . "$B$_$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
716 ("nu" nil ("$B%L(B" . "$B$L(B")) ("nyu" nil ("$B%K%e(B" . "$B$K$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
717 ("pu" nil ("$B%W(B" . "$B$W(B")) ("pyu" nil ("$B%T%e(B" . "$B$T$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
718 ("ru" nil ("$B%k(B" . "$B$k(B")) ("ryu" nil ("$B%j%e(B" . "$B$j$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
719 ("su" nil ("$B%9(B" . "$B$9(B")) ("shu" nil ("$B%7%e(B" . "$B$7$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
720 ("syu" nil ("$B%7%e(B" . "$B$7$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
721 ("tu" nil ("$B%D(B" . "$B$D(B")) ("thu" nil ("$B%F%e(B" . "$B$F$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
722 ("tsu" nil ("$B%D(B" . "$B$D(B")) ("tyu" nil ("$B%A%e(B" . "$B$A$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
723 ("vu" nil ("$B%t(B" . "$B$&!+(B")) ("wu" nil ("$B%&(B" . "$B$&(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
724 ("xu" nil ("$B%%(B" . "$B$%(B")) ("xtu" nil ("$B%C(B" . "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
725 ("xtsu" nil ("$B%C(B" . "$B$C(B")) ("xyu" nil ("$B%e(B" . "$B$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
726 ("yu" nil ("$B%f(B" . "$B$f(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
727 ("zu" nil ("$B%:(B" . "$B$:(B")) ("zyu" nil ("$B%8%e(B" . "$B$8$e(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
728
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
729 ("e" nil ("$B%((B" . "$B$((B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
730 ("be" nil ("$B%Y(B" . "$B$Y(B")) ("bye" nil ("$B%S%'(B" . "$B$S$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
731 ("che" nil ("$B%A%'(B" . "$B$A$'(B")) ("cye" nil ("$B%A%'(B" . "$B$A$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
732 ("de" nil ("$B%G(B" . "$B$G(B")) ("dhe" nil ("$B%G%'(B" . "$B$G$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
733 ("dye" nil ("$B%B%'(B" . "$B$B$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
734 ("fe" nil ("$B%U%'(B" . "$B$U$'(B")) ("fye" nil ("$B%U%'(B" . "$B$U$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
735 ("ge" nil ("$B%2(B" . "$B$2(B")) ("gye" nil ("$B%.%'(B" . "$B$.$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
736 ("he" nil ("$B%X(B" . "$B$X(B")) ("hye" nil ("$B%R%'(B" . "$B$R$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
737 ("je" nil ("$B%8%'(B" . "$B$8$'(B")) ("jye" nil ("$B%8%'(B" . "$B$8$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
738 ("ke" nil ("$B%1(B" . "$B$1(B")) ("kye" nil ("$B%-%'(B" . "$B$-$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
739 ("me" nil ("$B%a(B" . "$B$a(B")) ("mye" nil ("$B%_%'(B" . "$B$_$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
740 ("ne" nil ("$B%M(B" . "$B$M(B")) ("nye" nil ("$B%K%'(B" . "$B$K$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
741 ("pe" nil ("$B%Z(B" . "$B$Z(B")) ("pye" nil ("$B%T%'(B" . "$B$T$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
742 ("re" nil ("$B%l(B" . "$B$l(B")) ("rye" nil ("$B%j%'(B" . "$B$j$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
743 ("se" nil ("$B%;(B" . "$B$;(B")) ("she" nil ("$B%7%'(B" . "$B$7$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
744 ("sye" nil ("$B%7%'(B" . "$B$7$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
745 ("te" nil ("$B%F(B" . "$B$F(B")) ("the" nil ("$B%F%'(B" . "$B$F$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
746 ("tye" nil ("$B%A%'(B" . "$B$A$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
747 ("ve" nil ("$B%t%'(B" . "$B$&!+$'(B")) ("we" nil ("$B%&%'(B" . "$B$&$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
748 ("xe" nil ("$B%'(B" . "$B$'(B")) ("xke" nil ("$B%v(B" . "$B$1(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
749 ("xwe" nil ("$B%q(B" . "$B$q(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
750 ("ye" nil ("$B%$%'(B" . "$B$$$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
751 ("ze" nil ("$B%<(B" . "$B$<(B")) ("zye" nil ("$B%8%'(B" . "$B$8$'(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
752
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
753 ("o" nil ("$B%*(B" . "$B$*(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
754 ("bo" nil ("$B%\(B" . "$B$\(B")) ("byo" nil ("$B%S%g(B" . "$B$S$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
755 ("cho" nil ("$B%A%g(B" . "$B$A$g(B")) ("cyo" nil ("$B%A%g(B" . "$B$A$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
756 ("do" nil ("$B%I(B" . "$B$I(B")) ("dho" nil ("$B%G%g(B" . "$B$G$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
757 ("dyo" nil ("$B%B%g(B" . "$B$B$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
758 ("fo" nil ("$B%U%)(B" . "$B$U$)(B")) ("fyo" nil ("$B%U%g(B" . "$B$U$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
759 ("go" nil ("$B%4(B" . "$B$4(B")) ("gyo" nil ("$B%.%g(B" . "$B$.$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
760 ("ho" nil ("$B%[(B" . "$B$[(B")) ("hyo" nil ("$B%R%g(B" . "$B$R$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
761 ("jo" nil ("$B%8%g(B" . "$B$8$g(B")) ("jyo" nil ("$B%8%g(B" . "$B$8$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
762 ("ko" nil ("$B%3(B" . "$B$3(B")) ("kyo" nil ("$B%-%g(B" . "$B$-$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
763 ("mo" nil ("$B%b(B" . "$B$b(B")) ("myo" nil ("$B%_%g(B" . "$B$_$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
764 ("no" nil ("$B%N(B" . "$B$N(B")) ("nyo" nil ("$B%K%g(B" . "$B$K$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
765 ("po" nil ("$B%](B" . "$B$](B")) ("pyo" nil ("$B%T%g(B" . "$B$T$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
766 ("ro" nil ("$B%m(B" . "$B$m(B")) ("ryo" nil ("$B%j%g(B" . "$B$j$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
767 ("so" nil ("$B%=(B" . "$B$=(B")) ("sho" nil ("$B%7%g(B" . "$B$7$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
768 ("syo" nil ("$B%7%g(B" . "$B$7$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
769 ("to" nil ("$B%H(B" . "$B$H(B")) ("tho" nil ("$B%F%g(B" . "$B$F$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
770 ("tyo" nil ("$B%A%g(B" . "$B$A$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
771 ("vo" nil ("$B%t%)(B" . "$B$&!+$)(B")) ("wo" nil ("$B%r(B" . "$B$r(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
772 ("xo" nil ("$B%)(B" . "$B$)(B")) ("xyo" nil ("$B%g(B" . "$B$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
773 ("yo" nil ("$B%h(B" . "$B$h(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
774 ("zo" nil ("$B%>(B" . "$B$>(B")) ("zyo" nil ("$B%8%g(B" . "$B$8$g(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
775
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
776 ("nn" nil ("$B%s(B" . "$B$s(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
777 ("n'" nil ("$B%s(B" . "$B$s(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
778
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
779 ("z/" nil ("$B!&(B" . "$B!&(B")) ("z," nil ("$B!E(B" . "$B!E(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
780 ("z." nil ("$B!D(B" . "$B!D(B")) ("z-" nil ("$B!A(B" . "$B!A(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
781 ("zh" nil ("$B"+(B" . "$B"+(B")) ("zj" nil ("$B"-(B" . "$B"-(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
782 ("zk" nil ("$B",(B" . "$B",(B")) ("zl" nil ("$B"*(B" . "$B"*(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
783 ("z[" nil ("$B!X(B" . "$B!X(B")) ("z]" nil ("$B!Y(B" . "$B!Y(B")) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
784 "SKK $B$NI8=`$N%m!<%^;z$+$JJQ49$N%*!<%H%^%H%s$N>uBVA+0\5,B'!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
785 $B%j%9%H$N3FMWAG$O!"(B\($B8=:_$N>uBV(B@$BF~NO(B $B<!$N>uBV(B $B=PNO(B\) \($BC"$7!"(B\"@\" $B$OO"@\(B\) $B$r0UL#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
786 $B$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
787 $B%7%9%F%`MQ$J$N$G%+%9%?%^%$%:$K$O(B skk-rom-kana-rule-list $B$rMxMQ$7$F$/$@$5$$!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
788
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
789 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
790 (defvar skk-rom-kana-rule-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
791 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
792 "*$B%m!<%^;z$+$JJQ49$N%*!<%H%^%H%s$N>uBVA+0\5,B'!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
793 $B%j%9%H$N3FMWAG$O!"(B\($B8=:_$N>uBV(B@$BF~NO(B $B<!$N>uBV(B $B=PNO(B\) \($BC"$7!"(B\"@\" $B$OO"@\(B\) $B$r0UL#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
794 $B$9$k!#%+%9%?%^%$%:$K$O(B skk-standard-rom-kana-rule-list $B$G$OL5$/!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
795 $B$3$A$i$rMxMQ$7$F$/$@$5$$!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
796
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
797 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
798 (defvar skk-fallback-rule-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
799 '(("n" "$B%s(B" . "$B$s(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
800 "*$B%m!<%^;z$+$JJQ49;~$K!"(Bskk-rom-kana-rule-list, skk-standard-rom-kana-rule-list $B$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
801 $B$"$H$K;2>H$5$l$k5,B'!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
802 $B%j%9%H$N3FMWAG$O!"(B\($B8=:_$N>uBV(B $B=PNO(B\) $B$r0UL#$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
803 $B$3$N5,B'$,E,MQ$5$l$?>l9g!"F~NO$O%9%H%j!<%`$KJV$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
804
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
805 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
806 (defvar skk-postfix-rule-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
807 '(("oh" "$B%*(B" . "$B$*(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
808 "*$B%m!<%^;z$+$JJQ49;~$K!"D>A0$N$+$JJ8;z$r:n$k$N$KMQ$$$i$l$?:G8e$NF~NO$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
809 $B8=:_$NF~NO$+$i$+$JJ8;z$r:n$j$@$9$?$a$N5,B'!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
810 $B%j%9%H$N3FMWAG$O!"(B\($BD>A0$NF~NO(B@$BF~NO(B $B=PNO(B\) \($BC"$7!"(B\"@\" $B$OO"@\(B\) $B$r0UL#$9$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
811
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
812 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
813 (defvar skk-previous-candidate-char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
814 ?x
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
815 "*skk-previous-candidate $B$r3dEv$F$?%-%c%i%/%?!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
816
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
817 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
818 (defvar skk-okuri-char-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
819 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
820 "*" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
821
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
822 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
823 (defvar skk-downcase-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
824 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
825 "*" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
826
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
827 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
828 (defvar skk-input-vector
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
829 [nil nil nil nil nil nil nil nil ;7
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
830 nil nil nil nil nil nil nil nil ;15
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
831 nil nil nil nil nil nil nil nil ;23
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
832 nil nil nil nil nil nil nil nil ;31
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
833 nil "$B!*(B" nil nil nil nil nil nil ;39
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
834 nil nil nil nil "$B!"(B" "$B!<(B" "$B!#(B" nil ;47
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
835 nil nil nil nil nil nil nil nil ;55
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
836 nil nil "$B!'(B" "$B!((B" nil nil nil "$B!)(B" ;63
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
837 nil nil nil nil nil nil nil nil ;71
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
838 nil nil nil nil nil nil nil nil ;79
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
839 nil nil nil nil nil nil nil nil ;87
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
840 nil nil nil "$B!V(B" nil "$B!W(B" nil nil ;95
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
841 nil nil nil nil nil nil nil nil ;103
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
842 nil nil nil nil nil nil nil nil ;111
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
843 nil nil nil nil nil nil nil nil ;119
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
844 nil nil nil nil nil nil nil nil] ;127
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
845 "*skk-self-insert $B$G;2>H$5$l$kJ8;z%F!<%V%k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
846 $B%-!<$KBP1~$9$k0LCV$KJ8;zNs$,$"$l$P!"$R$i$,$J%b!<%I$b$7$/$O%+%?%+%J%b!<%I$G!"3:(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
847 $BEv$N%-!<$r2!$9$3$H$G!"BP1~$9$kJ8;z$,A^F~$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
848 $BNc$($P!"(B\"~\" $B%-!<$KBP1~$7$F!"(B\"$B!A(B\" $B$rA^F~$5$;$k$h$&$KJQ99$7$?$1$l$P!"(Bskk.el
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
849 $B$N%m!<%I8e(B ($B$b$7$/$O(B skk-load-hook $B$rMxMQ$7$F(B)$B!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
850
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
851 \(aset skk-input-vector 126 \"$B!A(B\"\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
852
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
853 $B$H$9$k$+!"$b$7$/$O!"(Bskk-input-vector $B$N(B 126 $BHVL\(B (0 $BHV$+$i?t$($F(B) $B$NCM$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
854 \"$B!A(B\" $B$H$9$k$h$&$J(B skk-input-vector $B$rD>@\=q$-!"(Bsetq $B$GBeF~$9$k(B \(126 $B$O!"(B?
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
855 { $B$rI>2A$7$?$H$-$NCM(B\)$B!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
856
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
857 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
858 (defvar skk-zenkaku-vector
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
859 [nil nil nil nil nil nil nil nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
860 nil nil nil nil nil nil nil nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
861 nil nil nil nil nil nil nil nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
862 nil nil nil nil nil nil nil nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
863 "$B!!(B" "$B!*(B" "$B!I(B" "$B!t(B" "$B!p(B" "$B!s(B" "$B!u(B" "$B!G(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
864 "$B!J(B" "$B!K(B" "$B!v(B" "$B!\(B" "$B!$(B" "$B!](B" "$B!%(B" "$B!?(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
865 "$B#0(B" "$B#1(B" "$B#2(B" "$B#3(B" "$B#4(B" "$B#5(B" "$B#6(B" "$B#7(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
866 "$B#8(B" "$B#9(B" "$B!'(B" "$B!((B" "$B!c(B" "$B!a(B" "$B!d(B" "$B!)(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
867 "$B!w(B" "$B#A(B" "$B#B(B" "$B#C(B" "$B#D(B" "$B#E(B" "$B#F(B" "$B#G(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
868 "$B#H(B" "$B#I(B" "$B#J(B" "$B#K(B" "$B#L(B" "$B#M(B" "$B#N(B" "$B#O(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
869 "$B#P(B" "$B#Q(B" "$B#R(B" "$B#S(B" "$B#T(B" "$B#U(B" "$B#V(B" "$B#W(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
870 "$B#X(B" "$B#Y(B" "$B#Z(B" "$B!N(B" "$B!@(B" "$B!O(B" "$B!0(B" "$B!2(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
871 "$B!F(B" "$B#a(B" "$B#b(B" "$B#c(B" "$B#d(B" "$B#e(B" "$B#f(B" "$B#g(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
872 "$B#h(B" "$B#i(B" "$B#j(B" "$B#k(B" "$B#l(B" "$B#m(B" "$B#n(B" "$B#o(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
873 "$B#p(B" "$B#q(B" "$B#r(B" "$B#s(B" "$B#t(B" "$B#u(B" "$B#v(B" "$B#w(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
874 "$B#x(B" "$B#y(B" "$B#z(B" "$B!P(B" "$B!C(B" "$B!Q(B" "$B!A(B" nil]
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
875 "*skk-zenkaku-insert $B$G;2>H$5$l$kJ8;z%F!<%V%k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
876 $B%-!<$KBP1~$9$k0LCV$KJ8;zNs$,$"$l$P!"A41Q%b!<%I$G3:Ev$N%-!<$r2!$9$3$H$G!"BP1~$9(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
877 $B$kJ8;z$,A^F~$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
878 $BCM$NJQ99J}K!$K$D$$$F$O!"(Bskk-input-vector $B$r;2>H$N$3$H!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
879
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
880 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
881 (defvar skk-use-face (or window-system (skk-terminal-face-p))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
882 "*Non-nil $B$G$"$l$P!"(BEmacs 19 $B$N(B face $B$N5!G=$r;HMQ$7$FJQ49I=<($J$I$r9T$J$&!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
883
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
884 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
885 (defvar skk-henkan-face
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
886 (if (and (or window-system (skk-terminal-face-p))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
887 (or (and (fboundp 'frame-face-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
888 (assq 'highlight (frame-face-alist (selected-frame))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
889 (and (fboundp 'face-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
890 (memq 'highlight (face-list)))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
891 'highlight )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
892 "*$BJQ498uJd$N(B face $BB0@-!#(Bskk-use-face $B$,(B non-nil $B$N$H$-$N$_M-8z!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
893 Emacs $BI8=`%U%'%$%9$N(B default, modeline, region, secondary-selection,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
894 highlight, underline, bold, italic, bold-italic $B$NB>!"?7$?$K(B face $B$r:n$j;XDj$9(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
895 $B$k$3$H$b2DG=!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
896 $B?7$?$J(B face $B$r:n$j;XDj$9$k$K$O(B skk-make-face $B$rMxMQ$7$F!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
897
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
898 \(skk-make-face 'DimGray/PeachPuff1\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
899 \(setq skk-henkan-face 'DimGray/PeachPuff1\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
900
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
901 $B$N$h$&$K$9$k$N$,<j7Z!#(Bforeground $B$H(B background $B$N?';XDj$@$1$G$J$$6E$C$?(B face
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
902 $B$r:n$k>l9g$O!"(Bskk-make-face $B$G$OBP1~$G$-$J$$$N$G!"(BEmacs $B$N(B hilit19.el $B$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
903 hilit-lookup-face-create $B$J$I$rMxMQ$9$k!#?'$rIU$1$k>l9g$NG[?'$O!"(Bcanna.el $B$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
904 canna:attribute-alist $B$,NI$$Nc$+$b$7$l$J$$!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
905
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
906 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
907 (defvar skk-use-color-cursor (and window-system
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
908 (fboundp 'x-display-color-p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
909 (x-display-color-p) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
910 "*Non-nil $B$G$"$l$P!"(BSKK $B%b!<%I$NF~NO%b!<%I$K1~$8$F%+!<%=%k$K?'$rIU$1$k!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
911
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
912 (defvar skk-default-cursor-color
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
913 (if skk-xemacs
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
914 (frame-property (selected-frame) 'cursor-color)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
915 (cdr (assq 'cursor-color (frame-parameters (selected-frame)))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
916 "*SKK $B$N%*%U$r<($9%+!<%=%k?'!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
917
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
918 ;; $BGX7J?'$r9u$K$7$F;HMQ$5$l$F$$$kJ}$G!"NI$$G[?'$,$"$l$P$*CN$i$;2<$5$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
919 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
920 (defvar skk-hirakana-cursor-color (if (eq skk-background-mode 'light)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
921 "coral4"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
922 "pink" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
923 "*$B$+$J%b!<%I$r<($9%+!<%=%k?'!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
924
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
925 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
926 (defvar skk-katakana-cursor-color (if (eq skk-background-mode 'light)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
927 "forestgreen"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
928 "green" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
929 "*$B%+%?%+%J%b!<%I$r<($9%+!<%=%k?'!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
930
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
931 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
932 (defvar skk-zenkaku-cursor-color "gold"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
933 "*$BA43Q1Q;z%b!<%I$r<($9%+!<%=%k?'!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
934
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
935 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
936 (defvar skk-ascii-cursor-color (if (eq skk-background-mode 'light)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
937 "ivory4"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
938 "gray" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
939 "*$B%"%9%-!<%b!<%I$r<($9%+!<%=%k?'!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
940
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
941 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
942 (defvar skk-abbrev-cursor-color "royalblue"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
943 "*$B%"%9%-!<%b!<%I$r<($9%+!<%=%k?'!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
944
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
945 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
946 (defvar skk-report-set-cursor-error t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
947 "*Non-nil $B$G$"$l$P!"%+%i!<%^%C%W@Z$l$,5/$-$?>l9g!"%(%i!<%a%C%;!<%8$rI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
948 nil $B$G$"$l$P!"I=<($7$J$$!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
949
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
950 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
951 (defvar skk-use-cursor-change t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
952 "*Non-nil $B$G$"$l$P!"(BOvwrt $B%^%$%J!<%b!<%I;~$K%+!<%=%k$NI}$r=L$a$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
953
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
954 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
955 (defvar skk-auto-insert-paren nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
956 "*Non-nil $B$G$"$l$P!"(B2 $B$D$NJ8;zNs$r$^$H$a$FA^F~$7!"$=$NJ8;zNs$N4V$K%+!<%=%k$r0\F0$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
957 $BNc$($P!"(B\"$B!V(B\" $B$rF~NO$7$?$H$-$K(B \"$B!W(B\" $B$r<+F0E*$KA^F~$7!"N>$+$.$+$C$3$N4V$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
958 $B%+!<%=%k$r0\F0$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
959 $BA^F~$9$kJ8;zNs$O!"(Bskk-auto-paren-string-alist $B$G;XDj$9$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
960
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
961 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
962 (defvar skk-auto-paren-string-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
963 '(("$B!V(B" . "$B!W(B") ("$B!X(B" . "$B!Y(B") ("(" . ")") ("$B!J(B" . "$B!K(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
964 ("{" . "}")("$B!P(B" . "$B!Q(B") ("$B!R(B" . "$B!S(B") ("$B!T(B" . "$B!U(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
965 ("[" . "]") ("$B!N(B" . "$B!O(B") ("$B!L(B" . "$B!M(B") ("$B!Z(B" . "$B![(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
966 ("\"" . "\"")("$B!H(B" . "$B!I(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
967 ;; skk-special-midashi-char-list $B$NMWAG$K$J$C$F$$$kJ8;z$O!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
968 ;; skk-auto-paren-string-alist $B$K4^$a$F$b:o=|$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
969 ;;("<" . ">")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
970 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
971 "*$B<+F0E*$KBP$K$J$kJ8;zNs$rF~NO$9$k$?$a$NO"A[%j%9%H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
972 car $B$NJ8;zNs$,A^F~$5$l$?$H$-$K(B cdr $B$NJ8;zNs$r<+F0E*$KA^F~$9$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
973
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
974 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
975 (defvar skk-japanese-message-and-error nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
976 "*Non-nil $B$G$"$l$P!"(BSKK $B$N%a%C%;!<%8$H%(%i!<$rF|K\8l$GI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
977 nil $B$G$"$l$P!"1Q8l$GI=<($9$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
978
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
979 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
980 (defvar skk-ascii-mode-map nil "*ASCII $B%b!<%I$N%-!<%^%C%W!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
981 (or skk-ascii-mode-map
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
982 (let ((map (make-sparse-keymap)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
983 (define-key map skk-kakutei-key 'skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
984 (skk-define-menu-bar-map map)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
985 (setq skk-ascii-mode-map map)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
986
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
987 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
988 (defvar skk-j-mode-map nil "*$B$+$J%b!<%I$N%-!<%^%C%W!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
989 (or skk-j-mode-map
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
990 (let ((map (make-sparse-keymap)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
991 (define-key map "!" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
992 (define-key map "#" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
993 (define-key map "$" 'skk-display-code-for-char-at-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
994 (define-key map "%" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
995 (define-key map "&" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
996 (define-key map "'" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
997 (define-key map "*" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
998 (define-key map "+" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
999 (define-key map "," 'skk-insert-comma)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1000 (define-key map "-" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1001 (define-key map "." 'skk-insert-period)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1002 (define-key map "/" 'skk-abbrev-mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1003 (define-key map "0" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1004 (define-key map "1" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1005 (define-key map "2" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1006 (define-key map "3" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1007 (define-key map "4" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1008 (define-key map "5" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1009 (define-key map "6" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1010 (define-key map "7" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1011 (define-key map "8" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1012 (define-key map "9" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1013 (define-key map ":" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1014 (define-key map ";" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1015 ;; "<", ">", "?" $B$N(B 3 $BJ8;z$O!"(Bskk-special-midashi-char-list $B$NCM$,%G%#%U%)%k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1016 ;; $B%H$N$^$^$G$"$l$P!"(Bskk-setup-special-midashi-char $B$K$h$j(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1017 ;; skk-set-henkan-point $B$K:F3d$jIU$1$5$l$k$,!"@_Dj$K$h$j$3$l$i$NJ8;z$r;XDj$7(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1018 ;; $B$J$$>l9g$O!"(Bskk-self-insert $B$H$7$FF0$/$N$,K>$^$7$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1019 (define-key map "<" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1020 (define-key map "=" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1021 (define-key map ">" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1022 (define-key map "?" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1023 (define-key map "@" 'skk-today)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1024 (define-key map "A" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1025 (define-key map "B" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1026 (define-key map "C" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1027 (define-key map "D" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1028 (define-key map "E" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1029 (define-key map "F" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1030 (define-key map "G" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1031 (define-key map "H" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1032 (define-key map "I" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1033 (define-key map "J" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1034 (define-key map "K" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1035 (define-key map "L" 'skk-zenkaku-mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1036 (define-key map "M" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1037 (define-key map "N" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1038 (define-key map "O" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1039 (define-key map "P" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1040 (define-key map "Q" 'skk-set-henkan-point-subr)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1041 (define-key map "R" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1042 (define-key map "S" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1043 (define-key map "T" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1044 (define-key map "U" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1045 (define-key map "V" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1046 (define-key map "W" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1047 (define-key map "X" 'skk-purge-from-jisyo)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1048 (define-key map "Y" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1049 (define-key map "Z" 'skk-set-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1050 (define-key map "\ " 'skk-start-henkan)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1051 (define-key map "\"" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1052 (define-key map "\(" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1053 (define-key map "\)" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1054 ;;(define-key map "\177" 'skk-delete-backward-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1055 ;;(define-key map "\C-g" 'skk-keyboard-quit)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1056 ;;(define-key map "\C-m" 'skk-newline)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1057 (define-key map "\[" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1058 (define-key map "\\" 'skk-input-by-code-or-menu)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1059 (define-key map "\]" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1060 (or skk-use-vip
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1061 (define-key map "\M-\ " 'skk-start-henkan-with-completion) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1062 (or skk-use-vip
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1063 (define-key map "\M-Q" 'skk-backward-and-set-henkan-point) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1064 (define-key map "\t" 'skk-try-completion)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1065 (define-key map "\{" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1066 (define-key map "\}" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1067 (define-key map "^" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1068 (define-key map "_" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1069 (define-key map "`" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1070 (define-key map "a" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1071 (define-key map "b" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1072 (define-key map "c" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1073 (define-key map "d" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1074 (define-key map "e" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1075 (define-key map "f" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1076 (define-key map "g" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1077 (define-key map "h" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1078 (define-key map "i" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1079 (define-key map "j" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1080 (define-key map "k" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1081 (define-key map "l" 'skk-ascii-mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1082 (define-key map "m" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1083 (define-key map "n" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1084 (define-key map "o" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1085 (define-key map "p" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1086 (define-key map "q" 'skk-toggle-kana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1087 (define-key map "r" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1088 (define-key map "s" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1089 (define-key map "t" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1090 (define-key map "u" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1091 (define-key map "v" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1092 (define-key map "w" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1093 (define-key map "x" 'skk-previous-candidate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1094 (define-key map "y" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1095 (define-key map "z" 'skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1096 (define-key map "|" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1097 (define-key map "~" 'skk-self-insert)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1098 (define-key map skk-kakutei-key 'skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1099 (skk-define-menu-bar-map map)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1100 (setq skk-j-mode-map map)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1101
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1102 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1103 (defvar skk-zenkaku-mode-map nil "*$BA43Q%b!<%I$N%-!<%^%C%W!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1104 (or skk-zenkaku-mode-map
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1105 (let ((map (make-sparse-keymap))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1106 (i 0) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1107 (while (< i 128)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1108 (if (aref skk-zenkaku-vector i)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1109 (define-key map (char-to-string i) 'skk-zenkaku-insert) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1110 (setq i (1+ i)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1111 (define-key map skk-kakutei-key 'skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1112 (or skk-use-vip
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1113 (define-key map "\M-Q" 'skk-backward-and-set-henkan-point) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1114 (define-key map "\C-q" 'skk-ascii-henkan)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1115 (skk-define-menu-bar-map map)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1116 (setq skk-zenkaku-mode-map map)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1117
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1118 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1119 (defvar skk-abbrev-mode-map nil "*SKK abbrev $B%b!<%I$N%-!<%^%C%W!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1120 (or skk-abbrev-mode-map
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1121 (let ((map (make-sparse-keymap)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1122 (define-key map "," 'skk-abbrev-comma)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1123 (define-key map "." 'skk-abbrev-period)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1124 (define-key map "\ " 'skk-start-henkan)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1125 ;;(define-key map "\177" 'skk-delete-backward-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1126 ;;(define-key map "\C-g" 'skk-keyboard-quit)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1127 ;;(define-key map "\C-m" 'skk-newline)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1128 (define-key map "\C-q" 'skk-zenkaku-henkan)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1129 (or skk-use-vip
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1130 (define-key map "\M-\ " 'skk-start-henkan-with-completion) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1131 (define-key map "\t" 'skk-try-completion)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1132 (define-key map skk-kakutei-key 'skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1133 (skk-define-menu-bar-map map)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1134 (setq skk-abbrev-mode-map map)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1135
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1136 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1137 (defvar skk-jisyo-save-count 50
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1138 "*$B?tCM$G$"$l$P!"$=$N2s?t<-=q$,99?7$5$l$?$H$-$K<-=q$r<+F0E*$K%;!<%V$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1139 nil $B$G$"$l$P!"<-=q$N%*!<%H%;!<%V$r9T$J$o$J$$!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1140
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1141 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1142 (defvar skk-byte-compile-init-file t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1143 "*Non-nil $B$G$"$l$P!"(Bskk-mode $B5/F0;~$K(B skk-init-file $B$r%P%$%H%3%s%Q%$%k$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1144 $B@53N$K8@$&$H!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1145
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1146 (1)skk-init-file $B$r%P%$%H%3%s%Q%$%k$7$?%U%!%$%k$,$J$$$+!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1147 (2)skk-init-file $B$H$=$N%P%$%H%3%s%Q%$%k:Q%U%!%$%k$rHf3S$7$F!"A0<T$NJ}$,?7$7(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1148 $B$$$H$-(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1149
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1150 $B$K(B skk-init-file $B$r%P%$%H%3%s%Q%$%k$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1151 nil $B$G$"$l$P!"(Bskk-init-file $B$H$=$N%P%$%H%3%s%Q%$%k:Q$_%U%!%$%k$rHf3S$7$F(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1152 skk-init-file $B$NJ}$,?7$7$$$H$-$O!"$=$N%P%$%H%3%s%Q%$%k:Q%U%!%$%k$r>C$9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1153
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1154 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1155 (defvar skk-count-private-jisyo-candidates-exactly nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1156 "*Non-nil $B$G$"$l$P!"(BEmacs $B$r=*N;$9$k$H$-$K@53N$K8D?M<-=q$N8uJd?t$r?t$($k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1157 nil $B$G$"$l$P!"(B1 $B9T$KJ#?t$N8uJd$,$"$C$F$b(B 1 $B8uJd$H$7$F?t$($k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1158 $B7W;;7k2L$O!"(Bskk-record-file $B$KJ]B8$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1159
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1160 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1161 (defvar skk-compare-jisyo-size-when-saving t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1162 "*Non-nil $B$G$"$l$P!"(Bskk-jisyo $B$N%;!<%V;~$K%U%!%$%k%5%$%:$N%A%'%C%/$r9T$J$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1163 $BA02s%;!<%V$7$?(B skk-jisyo $B$H:#2s%;!<%V$7$h$&$H$9$k<-=q$H$N%5%$%:Hf3S$r9T$J$$!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1164 $B8e<T$NJ}$,Bg$-$$$H$-$K%f!<%6!<$K%;!<%V$rB3$1$k$+$I$&$+$N3NG'$r5a$a$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1165
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1166 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1167 (defvar skk-auto-start-henkan t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1168 "$BC18l$dJ8@a$N6h@Z$j$r<($9J8;z$NBG80$K$h$j<+F0E*$KJQ49$r3+;O$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1169 skk-auto-start-henkan-keyword-list $B$K$h$jC18l$dJ8@a$N6h@Z$j$r<($9J8;z$r;XDj$9$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1170
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1171 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1172 (defvar skk-auto-start-henkan-keyword-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1173 '("$B$r(B" "$B!"(B" "$B!#(B" "$B!%(B" "$B!$(B" "$B!)(B" "$B!W(B" "$B!*(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1174 "$B!((B" "$B!'(B" ")" ";" ":" "$B!K(B" "$B!I(B" "$B![(B" "$B!Y(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1175 "$B!U(B" "$B!S(B" "$B!Q(B" "$B!O(B" "$B!M(B" "}" "]" "?" "."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1176 "," "!" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1177 ;; $B$"$^$j%-!<%o!<%I$,B?$/$J$k$H!"DL>o$NJQ49$r:$Fq$K$9$k!)(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1178 "$B<+F0JQ49$r3+;O$9$k%-!<%o!<%I!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1179 $B$3$N%j%9%H$NMWAG$NJ8;z$rA^F~$9$k$H!"(BSPC $B$r2!$9$3$H$J$/<+F0E*$KJQ49$r3+;O$9$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1180
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1181 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1182 (defvar skk-search-excluding-word-pattern-function nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1183 "*$B8D?M<-=q$K<h$j9~$^$J$$J8;zNs$N%Q%?!<%s$r8!:w$9$k4X?t$r;XDj$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1184 $B3NDj$7$?J8;zNs$r0z?t$KEO$7$F(B funcall $B$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1185
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1186 SKK $B$G$OJQ49!"3NDj$r9T$J$C$?J8;zNs$OA4$F8D?M<-=q$K<h$j9~$^$l$k$,!"$3$NJQ?t$G;X(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1187 $BDj$5$l$?4X?t$,(B non-nil $B$rJV$9$H$=$NJ8;zNs$O8D?M<-=q$K<h$j9~$^$l$J$$!#Nc$($P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1188 $B$3$NJQ?t$K2<5-$N$h$&$J;XDj$9$k$H!"(BSKK abbrev mode $B$G$NJQ49$r=|$-!"%+%?%+%J$N$_(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1189 $B$+$i$J$kJ8;zNs$rJQ49$K$h$jF@$F3NDj$7$F$b!"$=$l$r8D?M<-=q$K<h$j9~$^$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1190
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1191 $B%+%?%+%J$rJQ49$K$h$j5a$a$?$$$,!"8D?M<-=q$K$O%+%?%+%J$N$_$N8uJd$r<h$j9~$_$?$/$J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1192 $B$$!"$J$I!"8D?M<-=q$,I,MW0J>e$KKD$l$k$N$rM^$($kL\E*$K;HMQ$G$-$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1193
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1194 $B8D?M<-=q$K<h$j9~$^$J$$J8;zNs$K$D$$$F$OJd40$,8z$+$J$$$N$G!"Cm0U$9$k$3$H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1195
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1196 \(setq skk-search-excluding-word-pattern-function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1197 \(function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1198 \(lambda \(kakutei-word\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1199 ;; $B$3$N4X?t$,(B t $B$rJV$7$?$H$-$O!"$=$NJ8;zNs$O8D?M<-=q$K<h$j9~$^$l$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1200 \(save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1201 \(and
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1202 ;; $BAw$j$J$7JQ49$G!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1203 \(not skk-okuri-char\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1204 ;; $B3NDj8l$,%+%?%+%J$N$_$+$i9=@.$5$l$F$$$F!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1205 \(string-match \"^[$B!<%!(B-$B%s(B]+$\" kakutei-word\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1206 ;; SKK abbrev mode $B0J30$G$NJQ49$+!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1207 \(or \(not skk-abbrev-mode\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1208 ;; $B8+=P$78l$,%+%?%+%J!"$R$i$,$J0J30$N$H$-!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1209 ;; \($B8e$G"&%^!<%/$rIU$1$?$H$-$O!"8+=P$78l$,1QJ8;z$G$b!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1210 ;; skk-abbrev-mode$B$,(B t $B$K$J$C$F$$$J$$(B\)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1211 \(not \(string-match \"^[^$B!<%!(B-$B%s$!(B-$B$s(B]+$\" skk-henkan-key\)\) \)\)\)\)\)\) ")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1212
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1213 ;;; -- internal variables
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1214 ;; ---- global variables
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1215 (defconst skk-ml-address "skk-develop@kuis.kyoto-u.ac.jp")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1216
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1217 (defconst skk-coding-system-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1218 (if (or skk-mule3 skk-xemacs)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1219 '(("euc" . euc-japan)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1220 ("ujis" . euc-japan)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1221 ("sjis". sjis)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1222 ("jis" . junet) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1223 '(("euc" . *euc-japan*)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1224 ("ujis" . *euc-japan*)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1225 ("sjis". *sjis*)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1226 ("jis" . *junet*) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1227 "coding-system $B$NJ8;zNsI=8=$H!"%7%s%\%kI=8=$NO"A[%j%9%H!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1228
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1229 (defconst skk-default-zenkaku-vector
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1230 ;; note that skk-zenkaku-vector is a user variable.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1231 ;; skk.el $B%m!<%IA0$K(B .emacs $B$J$I$G!"(Bskk-zenkaku-vector $B$NJL$NCM$r%f!<%6!<$,(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1232 ;; $BD>@\=q$$$?$j!"(Bskk.el $B%m!<%I8e$K$3$NCM$r(B aset $B$GD>@\$$$8$C$?$j$7$J$1$l$P(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1233 ;; default-value $B$G(B skk-zenkaku-vector $B$K%"%/%;%9$9$k$3$H$G(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1234 ;; skk-default-zenkaku-vector $B$NCM$rJ];}$9$k$3$H$b$G$-$h$&$,!"$=$l$OK>$a$J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1235 ;; $B$$(B...$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1236 [nil nil nil nil nil nil nil nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1237 nil nil nil nil nil nil nil nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1238 nil nil nil nil nil nil nil nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1239 nil nil nil nil nil nil nil nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1240 "$B!!(B" "$B!*(B" "$B!I(B" "$B!t(B" "$B!p(B" "$B!s(B" "$B!u(B" "$B!G(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1241 "$B!J(B" "$B!K(B" "$B!v(B" "$B!\(B" "$B!$(B" "$B!](B" "$B!%(B" "$B!?(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1242 "$B#0(B" "$B#1(B" "$B#2(B" "$B#3(B" "$B#4(B" "$B#5(B" "$B#6(B" "$B#7(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1243 "$B#8(B" "$B#9(B" "$B!'(B" "$B!((B" "$B!c(B" "$B!a(B" "$B!d(B" "$B!)(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1244 "$B!w(B" "$B#A(B" "$B#B(B" "$B#C(B" "$B#D(B" "$B#E(B" "$B#F(B" "$B#G(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1245 "$B#H(B" "$B#I(B" "$B#J(B" "$B#K(B" "$B#L(B" "$B#M(B" "$B#N(B" "$B#O(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1246 "$B#P(B" "$B#Q(B" "$B#R(B" "$B#S(B" "$B#T(B" "$B#U(B" "$B#V(B" "$B#W(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1247 "$B#X(B" "$B#Y(B" "$B#Z(B" "$B!N(B" "$B!@(B" "$B!O(B" "$B!0(B" "$B!2(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1248 "$B!F(B" "$B#a(B" "$B#b(B" "$B#c(B" "$B#d(B" "$B#e(B" "$B#f(B" "$B#g(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1249 "$B#h(B" "$B#i(B" "$B#j(B" "$B#k(B" "$B#l(B" "$B#m(B" "$B#n(B" "$B#o(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1250 "$B#p(B" "$B#q(B" "$B#r(B" "$B#s(B" "$B#t(B" "$B#u(B" "$B#v(B" "$B#w(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1251 "$B#x(B" "$B#y(B" "$B#z(B" "$B!P(B" "$B!C(B" "$B!Q(B" "$B!A(B" nil]
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1252 "skk-zenkaku-region $B$G;2>H$9$kJ8;z%F!<%V%k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1253 \"ascii\" -> \"$B#a#s#c#i#i(B\" $B$N$h$&$JA43QJ8;z$X$NJQ49$r9T$&:]$KMxMQ$9$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1254
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1255 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1256 (defconst skk-kanji-len (length "$B$"(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1257 "$B4A;z0lJ8;z$ND9$5!#(BMule $B$G$O(B 3 $B$K$J$k!#(BXEmacs $B$G$O(B 1$B!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1258
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1259 (defconst skk-hankaku-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1260 '((161 . 32) ; ?\
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1261 (170 . 33) ;?\!
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1262 (201 . 34) ;?\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1263 (244 . 35) ;?\#
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1264 (240 . 36) ;?\$
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1265 (243 . 37) ;?\%
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1266 (245 . 38) ;?\&
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1267 (199 . 39) ;?\'
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1268 (202 . 40) ;?\(
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1269 (203 . 41) ;?\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1270 (246 . 42) ;?\*
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1271 (220 . 43) ;?\+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1272 (164 . 44) ;?\,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1273 (221 . 45) ;?\-
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1274 (165 . 46) ;?\.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1275 (191 . 47) ;?\/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1276 (167 . 58) ;?\:
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1277 (168 . 59) ;?\;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1278 (227 . 60) ;?\<
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1279 (225 . 61) ;?\=
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1280 (228 . 62) ;?\>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1281 (169 . 63) ;?\?
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1282 (247 . 64) ;?\@
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1283 (206 . 91) ;?\[
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1284 (239 . 92) ;?\\
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1285 (207 . 93) ;?\]
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1286 (176 . 94) ;?^
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1287 (178 . 95) ;?\_
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1288 (208 . 123) ;?\{
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1289 (195 . 124) ;?\|
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1290 (209 . 125) ;?\}
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1291 (177 . 126) ;?\~
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1292 (198 . 96)) ;?`
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1293 "$BJ8;z%3!<%I$N(B 2 $BHVL\$N%P%$%H$H$=$NJ8;z$KBP1~$9$k(B ascii $BJ8;z(B \(char\) $B$H$NO"A[%j%9%H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1294 skk-ascii-region $B$G;2>H$9$k!#(BMule-2.3 $BE:IU$N(B egg.el $B$h$j%3%T!<$7$?!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1295
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1296 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1297 (defvar skk-insert-new-word-function nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1298 "$B8uJd$rA^F~$7$?$H$-$K(B funcall $B$5$l$k4X?t$rJ]B8$9$kJQ?t!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1299
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1300 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1301 (defvar skk-input-mode-string skk-hirakana-mode-string
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1302 "SKK $B$NF~NO%b!<%I$r<($9J8;zNs!#(Bskk-mode $B5/F0;~$O!"(Bskk-hirakana-mode-string$B!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1303
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1304 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1305 (defvar skk-isearch-message nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1306 "skk-isearch $B4X?t$r%3!<%k$9$k$?$a$N%U%i%0!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1307 Non-nil $B$G$"$l$P!"(Bskk-isearch-message $B4X?t$r%3!<%k$9$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1308
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1309 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1310 (defvar skk-mode-invoked nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1311 "Non-nil $B$G$"$l$P!"(BEmacs $B$r5/F08e4{$K(B skk-mode $B$r5/F0$7$?$3$H$r<($9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1312
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1313 (defvar skk-kakutei-count 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1314 "$BJQ498uJd$r3NDj$7$?%+%&%s%H$rJ];}$9$kJQ?t!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1315 skk-record-file $B$N(B \"$B3NDj(B:\" $B9`L\$N%+%&%s%?!<!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1316
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1317 (defvar skk-touroku-count 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1318 "$B<-=qEPO?$7$?%+%&%s%H$rJ];}$9$kJQ?t!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1319 skk-record-file $B$N(B \"$BEPO?(B:\" $B9`L\$N%+%&%s%?!<!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1320
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1321 (defvar skk-update-jisyo-count 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1322 "$B<-=q$r99?7$7$?2s?t!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1323 $B$3$N%+%&%s%?!<$N?t;z$,(B skk-jisyo-save-count $B0J>e$H$J$C$?$H$-$K%f!<%6!<<-=q$N%*!<(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1324 $B%H%;!<%V$,9T$J$o$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1325
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1326 (defvar skk-use-relation nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1327 "*skk-relation $B$r;HMQ$9$k!#$3$l$OD>A0$NJQ49$r21$($F$*$/$3$H$G!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1328 $BJQ498zN($rNI$/$7$h$&$H$$$&;n$_!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1329
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1330 (defvar skk-relation-length (* skk-kanji-len 10)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1331 "skk-relation $B;HMQ;~$K!"2?J8;zA0$NJQ49$^$G21$($F$*$/$+$r;XDj$9$kJQ?t!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1332
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1333 (defvar skk-relation-record-num 100
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1334 "skk-relation $B;HMQ;~$K!"2?%(%s%H%j$^$G%U%!%$%k$K5-21$9$k$+$r<($9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1335
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1336 ;; ---- buffer local variables
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1337 ;; <$B%U%i%0N`(B>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1338 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1339 (skk-deflocalvar skk-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1340 "Non-nil $B$G$"$l$P!"%+%l%s%H%P%C%U%!$G8=:_(B skk-mode $B$r5/F0$7$F$$$k$3$H$r<($9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1341
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1342 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1343 (skk-deflocalvar skk-ascii-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1344 "Non-nil $B$G$"$l$P!"F~NO%b!<%I$,(B ASCII $B%b!<%I$G$"$k$3$H$r<($9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1345
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1346 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1347 (skk-deflocalvar skk-j-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1348 "Non-nil $B$G$"$l$P!"F~NO%b!<%I$,$+$J!&%+%J%b!<%I$G$"$k$3$H$r<($9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1349
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1350 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1351 (skk-deflocalvar skk-katakana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1352 "Non-nil $B$G$"$l$P!"F~NO%b!<%I$,%+%J%b!<%I$G$"$k$3$H$r<($9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1353 \"(and (not skk-katakana) skk-j-mode))\" $B$,(B t $B$G$"$l$P!"$+$J%b!<%I$G$"$k$3$H$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1354 $B<($9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1355
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1356 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1357 (skk-deflocalvar skk-zenkaku-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1358 "Non-nil $B$G$"$l$P!"F~NO%b!<%I$,A41Q%b!<%I$G$"$k$3$H$r<($9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1359
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1360 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1361 (skk-deflocalvar skk-abbrev-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1362 "Non-nil $B$G$"$l$P!"F~NO%b!<%I$,(B SKK abbrev $B%b!<%I$G$"$k$3$H$r<($9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1363
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1364 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1365 (skk-deflocalvar skk-okurigana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1366 "Non-nil $B$G$"$l$P!"Aw$j2>L>ItJ,$,F~NOCf$G$"$k$3$H$r<($9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1367
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1368 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1369 (skk-deflocalvar skk-henkan-on nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1370 "Non-nil $B$G$"$l$P!""&%b!<%I(B ($BJQ49BP>]$NJ8;zNs7hDj$N$?$a$N%b!<%I(B) $B$G$"$k$3$H$r<($9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1371
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1372 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1373 (skk-deflocalvar skk-henkan-active nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1374 "Non-nil $B$G$"$l$P!""'%b!<%I(B ($BJQ49Cf(B) $B$G$"$k$3$H$r<($9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1375
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1376 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1377 (skk-deflocalvar skk-kakutei-flag nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1378 "Non-nil $B$J$i3NDj$7$FNI$$8uJd$r8+$D$1$?>uBV$G$"$k$3$H$r;X$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1379 skk-henkan, skk-search-kakutei-jisyo-file, skk-henkan-show-candidates,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1380 skk-henkan-in-minibuff $B$H(B skk-kakutei-save-and-init-variables $B$GJQ99!";2>H$5$l(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1381 $B$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1382
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1383 (skk-deflocalvar skk-exit-show-candidates nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1384 "$B%_%K%P%C%U%!$G8uJd$r<!!9$KI=<($7$F!"8uJd$,?T$-$?$H$-$K(B non-nil $B$H$J$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1385 $B$=$NCM$O%j%9%H$G!"(Bcar $B$K(B skk-henkan-show-candidate $B4X?t$G(B while $B%k!<%W$r2s$C(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1386 $B$?2s?t$r<($90l;~JQ?t(B loop $B$NCM$r!"(Bcdr $BIt$K:G8e$K%_%K%P%C%U%!$KI=<($7$?(B 1 $B$DA0(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1387 $B$N8uJd72$N:G8e$NMWAG$r;X$9%$%s%G%/%9$,BeF~$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1388 skk-henkan-show-candidates, skk-henkan-in-minibuff $B$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1389 skk-kakutei-save-and-init-variables $B$GJQ99!";2>H$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1390
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1391 (skk-deflocalvar skk-last-henkan-result nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1392 "" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1393
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1394 (skk-deflocalvar skk-last-henkan-point nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1395 "" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1396
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1397 ;; <$B%-!<%^%C%W4XO"(B>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1398
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1399 ;; <$B<-=q4XO"$NJQ?t(B>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1400 (skk-deflocalvar skk-okuri-ari-min nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1401 "SKK $B<-=q$NAw$jM-$j%(%s%H%j$N3+;OE@$r<($9%P%C%U%!%]%$%s%H!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1402
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1403 (skk-deflocalvar skk-okuri-ari-max nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1404 "SKK $B<-=q$NAw$jM-$j%(%s%H%j$N=*N;E@$r<($9%P%C%U%!%]%$%s%H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1405 skk-jisyo $B$N%P%C%U%!$G$O<-=q$N99?7$NI,MW$,$"$k$?$a$K%^!<%+!<$,BeF~$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1406
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1407 (skk-deflocalvar skk-okuri-nasi-min nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1408 "SKK $B<-=q$NAw$j$J$7%(%s%H%j$N3+;OE@$r<($9%P%C%U%!%]%$%s%H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1409 skk-jisyo $B$N%P%C%U%!$G$O<-=q$N99?7$NI,MW$,$"$k$?$a$K%^!<%+!<$,BeF~$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1410
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1411 ;; <$B$=$NB>(B>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1412 (skk-deflocalvar skk-mode-line nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1413 "SKK $B$N%b!<%I$r<($9%b!<%I%i%$%s$NJ8;zNs!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1414 skk-mode-string, skk-hirakana-mode-string, skk-katakana-mode-string
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1415 and skk-zenkaku-mode-string $B$N$$$:$l$+$,BeF~$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1416
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1417 ;; "" $B$KBP1~$7$?%(%s%H%j$,(B skk-roma-kana-[aiue] $B$K$"$k$?$a!"(B"" $B$r(B nil $B$GBeMQ(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1418 ;; $B$G$-$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1419 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1420 (skk-deflocalvar skk-prefix ""
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1421 "$BF~NO$9$k$+$J$r7hDj$9$k$?$a$N%W%l%U%#%C%/%9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1422 $B8e$GF~NO$5$l$kJl2;$KBP1~$7$?(B skk-roma-kana-[aiue] $BO"A[%j%9%H$G!"$=$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1423 skk-prefix $B$r%-!<$K$7$FF~NO$9$Y$-$+$JJ8;z$,7hDj$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1424 $BNc$($P!"(B\"$B$+(B\" $B$N$h$&$K(B \"k\" $B$+$i;O$^$k;R2;$rF~NO$7$F$$$k$H$-$O!"(Bskk-prefix
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1425 $B$O!"(B\"k\" $B$G!"$=$N<!$KF~NO$5$l$?Jl2;(B \"a\" $B$KBP1~$9$k(B skk-roma-kana-a $B$NCf$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1426 \"k\" $B$r%-!<$K;}$DCM!"(B\"$B$+(B\" $B$b$7$/$O(B \"$B%+(B\" $B$,F~NO$9$Y$-$+$JJ8;z$H$J$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1427
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1428 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1429 (skk-deflocalvar skk-henkan-start-point nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1430 "$BJQ493+;O%]%$%s%H$r<($9%^!<%+!<!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1431
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1432 (skk-deflocalvar skk-henkan-end-point nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1433 "$BJQ49=*N;%]%$%s%H$r<($9%^!<%+!<!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1434
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1435 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1436 (skk-deflocalvar skk-kana-start-point nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1437 "$B$+$JJ8;z$N3+;O%]%$%s%H$r<($9%^!<%+!<!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1438
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1439 (skk-deflocalvar skk-okurigana-start-point nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1440 "$BAw$j2>L>$N3+;O%]%$%s%H$r<($9%^!<%+!<!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1441
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1442 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1443 (skk-deflocalvar skk-henkan-key nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1444 "$BJQ49$9$Y$-8+=P$78l!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1445 $BNc$($P!"(B\"$B"&$+$J(B\" $B$rJQ49$9$l$P!"(Bskk-henkan-key $B$K$O(B \"$B$+$J(B\" $B$,BeF~$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1446 \"$B"&$o$i(B*$B$&(B\" $B$N$h$&$JAw$j$"$j$NJQ49$N>l9g$K$O!"(B\"$B$o$i(Bu\" $B$N$h$&$K!"4A;zItJ,$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1447 $BFI$_$,$J(B + $BAw$j2>L>$N:G=i$NJ8;z$N%m!<%^;z$N%W%l%U%#%C%/%9$,BeF~$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1448
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1449 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1450 (skk-deflocalvar skk-okuri-char nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1451 "$BJQ49$9$Y$-8l$NAw$j2>L>$NItJ,$N%W%l%U%#%C%/%9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1452 $BNc$($P!"(B\"$B$*$/(B*$B$j(B\" $B$rJQ49$9$k$H$-$O!"(Bskk-okuri-char $B$O(B \"r\"$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1453 skk-okuri-char $B$,(B non-nil $B$G$"$l$P!"Aw$j$"$j$NJQ49$G$"$k$3$H$r<($9!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1454
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1455 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1456 (skk-deflocalvar skk-henkan-okurigana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1457 "$B8=:_$NJQ49$NAw$j2>L>ItJ,!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1458 $BNc$($P!"(B\"$B"&$&$^$l(B*$B$k(B\" $B$rJQ49$9$l$P!"(Bskk-henkan-okurigana $B$K$O(B \"$B$k(B\" $B$,BeF~(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1459 $B$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1460
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1461 (skk-deflocalvar skk-last-kakutei-henkan-key nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1462 "$B3NDj<-=q$K$h$j:G8e$K3NDj$7$?$H$-$N8+=P$78l!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1463 $B3NDj<-=q$K$h$k3NDj$ND>8e$K(B x $B%-!<$r2!$9$H3NDj$,%"%s%I%%$5$l$F!"3NDjA0$N>uBV$G(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1464 $B$3$N8+=P$78l$,%+%l%s%H%P%C%U%!$KA^F~$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1465
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1466 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1467 (skk-deflocalvar skk-henkan-list nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1468 "$BJQ497k2L$N8uJd$N%j%9%H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1469 $BNc$($P!"(B\"$B"&$J(B*$B$/(B\" $B$H$$$&JQ49$9$l$P!"(Bskk-henkan-list $B$O(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1470 (\"$BLD(B\" \"$B5c(B\" \"$BL5(B\" \"$BK4(B\") $B$N$h$&$K$J$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1471
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1472 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1473 (skk-deflocalvar skk-henkan-count -1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1474 "skk-henkan-list $B$N%j%9%H$N%$%s%G%/%9$G8=:_$N8uJd$r:9$9$b$N!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1475
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1476 (skk-deflocalvar skk-self-insert-non-undo-count 1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1477 "skk-self-insert $B$J$I$GO"B3F~NO$7$?J8;z?t$rI=$o$9%+%&%s%?!<!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1478 Emacs $B$N%*%j%8%J%k$NF0:n$G$O!"(Bself-insert-command $B$K%P%$%s%I$5$l$?%-!<F~NO$O!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1479 $BO"B3(B 20 $B2s$^$G$,(B 1 $B$D$N%"%s%I%%$NBP>]$H$J$k!#$3$NF0:n$r%(%_%e%l!<%H$9$k$?$a$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1480 $B%+%&%s%?!<!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1481 skk-self-insert $B0J30$G$O!"(Bskk-abbrev-comma, skk-abbrev-period, skk-insert-a,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1482 skk-insert-comma, skk-insert-e, skk-insert-i, skk-insert-period, skk-insert-u,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1483 skk-kana-input, skk-set-henkan-point, skk-zenkaku-insert $B$N$$$:$l$+$N%3%^%s%I(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1484 $B$GF~NO$5$l$?>l9g$bO"B3$7$?F~NO$H$7$F07$o$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1485 $B$3$N%+%&%s%?!<$,!"(B20 $B0J2<$G$"$k$H$-$O!"F~NO$N$?$S$K(B cancel-undo-boundary $B$,%3!<(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1486 $B%k$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1487
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1488 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1489 (skk-deflocalvar skk-current-search-prog-list nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1490 "skk-search-prog-list $B$N8=:_$NCM$rJ]B8$9$k%j%9%H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1491 $B:G=i$NJQ49;~$O(B skk-search-prog-list $B$NA4$F$NCM$rJ];}$7!"JQ49$r7+$jJV$9$?$S$K(B 1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1492 $B$D$E$DC;$/$J$C$F$f$/!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1493
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1494 ;; for skk-undo-kakutei
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1495 (skk-deflocalvar skk-last-henkan-key nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1496 "skk-henkan-key $B$N:G8e$NCM!#(Bskk-undo-kakutei $B$G;2>H$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1497
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1498 (skk-deflocalvar skk-last-henkan-okurigana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1499 "skk-henkan-okurigana $B$N:G8e$NCM!#(Bskk-undo-kakutei $B$G;2>H$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1500
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1501 (skk-deflocalvar skk-last-henkan-list nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1502 "skk-henkan-list $B$N:G8e$NCM!#(Bskk-undo-kakutei $B$G;2>H$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1503
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1504 (skk-deflocalvar skk-last-okuri-char nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1505 "skk-okuri-char $B$N:G8e$NCM!#(Bskk-undo-kakutei $B$G;2>H$5$l$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1506
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1507 (skk-deflocalvar skk-henkan-overlay nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1508 "$B8uJd$rI=<($9$k$H$-$K;HMQ$9$k(B Overlay$B!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1509
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1510 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1511 (defvar skk-menu-modified-user-option nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1512 "SKK $B%a%K%e!<%3%^%s%I$GJQ99$5$l$?%f!<%6!<JQ?tJ];}$9$k%j%9%H!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1513
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1514 (or (assq 'skk-mode minor-mode-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1515 (setq minor-mode-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1516 (cons '(skk-mode skk-input-mode-string) minor-mode-alist) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1517
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1518 ;; +----------------------+-------- skk-mode -----+----------------------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1519 ;; | | | |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1520 ;; | | | |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1521 ;; skk-j-mode skk-ascii-mode skk-zenkaku-mode skk-abbrev-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1522 ;; ASCII ZENKAKU EIMOJI ABBREVIATION
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1523 ;; (C-j wakes up skk-j-mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1524 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1525 ;; skk-j-mode-map skk-ascii-mode-map skk-zenkaku-mode-map skk-abbrev-mode-map
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1526 ;; skk-katakana: nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1527 ;; HIRAKANA
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1528 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1529 ;; skk-j-mode-map
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1530 ;; skk-katakana: t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1531 ;; KATAKANA
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1532
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1533 ;; sub minor mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1534 ;;(cond ((and skk-xemacs (local-variable-p 'minor-mode-map-alist nil t)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1535 ;; ((local-variable-p 'minor-mode-map-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1536 ;; (setq-default minor-mode-map-alist minor-mode-map-alist) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1537
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1538 (or (assq 'skk-ascii-mode minor-mode-map-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1539 (setq minor-mode-map-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1540 (cons (cons 'skk-ascii-mode skk-ascii-mode-map) minor-mode-map-alist) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1541
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1542 (or (assq 'skk-abbrev-mode minor-mode-map-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1543 (setq minor-mode-map-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1544 (cons (cons 'skk-abbrev-mode skk-abbrev-mode-map) minor-mode-map-alist) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1545
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1546 (or (assq 'skk-j-mode minor-mode-map-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1547 (setq minor-mode-map-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1548 (cons (cons 'skk-j-mode skk-j-mode-map) minor-mode-map-alist) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1549
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1550 (or (assq 'skk-zenkaku-mode minor-mode-map-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1551 (setq minor-mode-map-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1552 (cons (cons 'skk-zenkaku-mode skk-zenkaku-mode-map) minor-mode-map-alist) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1553
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1554 ;;;; aliases
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1555 (defalias 'skk-backward-char 'backward-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1556 (defalias 'skk-eventp 'eventp)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1557 (defalias 'skk-forward-char 'forward-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1558 (defalias 'skk-insert-and-inherit 'insert-and-inherit)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1559 (defalias 'skk-skip-chars-backward 'skip-chars-backward)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1560
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1561 ;;;; macros
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1562
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1563 ;; Why I use non-intern temporary variable in the macro --- see comment in
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1564 ;; save-match-data of subr.el of GNU Emacs. And should we use the same manner
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1565 ;; in the save-current-buffer, with-temp-buffer and with-temp-file macro
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1566 ;; definition?
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1567 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1568 (defmacro skk-save-point (&rest body)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1569 (` (let ((skk-save-point (point-marker)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1570 (unwind-protect
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1571 (progn (,@ body))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1572 (goto-char skk-save-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1573 (skk-set-marker skk-save-point nil) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1574
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1575 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1576 (defmacro skk-message (japanese english &rest arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1577 ;; skk-japanese-message-and-error $B$,(B non-nil $B$@$C$?$i(B JAPANESE $B$r(B nil $B$G$"$l(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1578 ;; $B$P(B ENGLISH $B$r%(%3!<%(%j%"$KI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1579 ;; ARG $B$O(B message $B4X?t$NBh#20z?t0J9_$N0z?t$H$7$FEO$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1580 (list 'let (list (list 'mc-flag t) (list 'enable-multibyte-characters t))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1581 (append (list 'message (list 'if 'skk-japanese-message-and-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1582 japanese english ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1583 arg )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1584
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1585 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1586 (defmacro skk-error (japanese english &rest arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1587 ;; skk-japanese-message-and-error $B$,(B non-nil $B$@$C$?$i(B JAPANESE $B$r(B nil $B$G$"$l(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1588 ;; $B$P(B ENGLISH $B$r%(%3!<%(%j%"$KI=<($7!"%(%i!<$rH/@8$5$;$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1589 ;; ARG $B$O(B error $B4X?t$NBh#20z?t0J9_$N0z?t$H$7$FEO$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1590 (list 'let (list (list 'mc-flag t) (list 'enable-multibyte-characters t))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1591 (append (list 'error (list 'if 'skk-japanese-message-and-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1592 japanese english ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1593 arg )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1594
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1595 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1596 (defmacro skk-yes-or-no-p (japanese english)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1597 ;; skk-japanese-message-and-error $B$,(B non-nil $B$G$"$l$P!"(Bjapanese $B$r(B nil $B$G$"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1598 ;; $B$l$P(B english $B$r%W%m%s%W%H$H$7$F(B yes-or-no-p $B$r<B9T$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1599 ;; yes-or-no-p $B$N0z?t$N%W%m%s%W%H$,J#;($KF~$l9~$s$G$$$k>l9g$O$3$N%^%/%m$r;H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1600 ;; $B$&$h$j%*%j%8%J%k$N(B yes-or-no-p $B$r;HMQ$7$?J}$,%3!<%I$,J#;($K$J$i$J$$>l9g$,(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1601 ;; $B$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1602 (list 'let (list (list 'mc-flag t) (list 'enable-multibyte-characters t))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1603 (list 'yes-or-no-p (list 'if 'skk-japanese-message-and-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1604 japanese english ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1605
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1606 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1607 (defmacro skk-y-or-n-p (japanese english)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1608 ;; skk-japanese-message-and-error $B$,(B non-nil $B$G$"$l$P!"(Bjapanese $B$r(B nil $B$G$"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1609 ;; $B$l$P(B english $B$r%W%m%s%W%H$H$7$F(B y-or-n-p $B$r<B9T$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1610 (list 'let (list (list 'mc-flag t) (list 'enable-multibyte-characters t))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1611 (list 'y-or-n-p (list 'if 'skk-japanese-message-and-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1612 japanese english ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1613
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1614 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1615 (defmacro skk-set-marker (marker position &optional buffer)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1616 ;; $B%P%C%U%!%m!<%+%kCM$G$"$k(B skk-henkan-start-point, skk-henkan-end-point,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1617 ;; skk-kana-start-point, $B$"$k$$$O(B skk-okurigana-start-point $B$,(B nil $B$@$C$?$i!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1618 ;; $B?75,%^!<%+!<$r:n$C$FBeF~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1619 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1620 ;; skk.el $B$N%P%C%U%!%m!<%+%kCM$N07$$$K$OCm0U$9$Y$-E@$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1621 ;; $BNc$($P!"$"$k%P%C%U%!(B Buffer A $B$G2<5-$N$h$&$J%U%)!<%`$rI>2A$7$?$H$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1622 ;; ---------- Buffer A ---------------+--------------- Buffer B ----------
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1623 ;; (setq test (make-marker)) |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1624 ;; -> #<marker in no buffer> |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1625 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1626 ;; (make-variable-buffer-local 'test) |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1627 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1628 ;; test | test
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1629 ;; -> #<marker in no buffer> | -> #<marker in no buffer>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1630 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1631 ;; (set-marker test (point)) |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1632 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1633 ;; test | test
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1634 ;; -> #<marker at 122 in A> | -> #<marker at 122 in A>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1635 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1636 ;; $B%P%C%U%!%m!<%+%kCM$H$7$F$N@k8@$r$9$kA0$K(B non-nil $BCM$rBeF~$7!"$=$N(B non-nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1637 ;; $BCM$rD>@\=q$-JQ$($k$h$&$J%U%)!<%`$rI>2A$9$k$H(B Buffer B $B$+$i8+$($k%G%#%U%)%k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1638 ;; $B%HCM$^$G=q$-JQ$C$F$7$^$&!#>e5-$NNc$O%^!<%+!<$@$,!"2<5-$N$h$&$K%j%9%H$KBP$7(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1639 ;; $B$FGK2uE*4X?t$GA`:n$7$?$H$-$bF1MM$N7k2L$H$J$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1640 ;; ---------- Buffer A ---------------+--------------- Buffer B ----------
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1641 ;; (setq test '(A B C)) |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1642 ;; -> (A B C) |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1643 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1644 ;; (make-variable-buffer-local 'test) |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1645 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1646 ;; test | test
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1647 ;; -> (A B C) | -> (A B C)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1648 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1649 ;; (setcar test 'X) |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1650 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1651 ;; test | test
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1652 ;; -> (X B C) | -> (X B C)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1653 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1654 ;; $B$3$N8=>]$G0lHV:$$k$N$O!"4A;zEPO?$J$I$G%_%K%P%C%U%!$KF~$C$?$H$-(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1655 ;; (skk-henkan-show-candidate $B$N$h$&$KC1$K!V%(%3!<%(%j%"!W$r;HMQ$9$k4X?t$G$O(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1656 ;; $B4X78$J$$(B) $B$K!"$b$H$N%P%C%U%!$H%_%K%P%C%U%!$H$G$O$=$l$>$lJL$NJQ49$r9T$J$&(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1657 ;; $B$N$,IaDL$G$"$k$N$G!">e5-$N$h$&$KB>$N%P%C%U%!$N%P%C%U%!%m!<%+%kCM$^$G=q$-(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1658 ;; $BJQ$($F$7$^$&$H!"JQ49$r5Y;_$7$F$$$kB>$N%P%C%U%!$G@5>o$JJQ49$,$G$-$J$/$J$k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1659 ;; $B>l9g$,$"$k$3$H$G$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1660 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1661 ;; $B$7$+$b(B SKK $B$G$O%j%+!<%7%V%_%K%P%C%U%!$,;HMQ$G$-$k$N$G!"(B *Minibuf-0* $B$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1662 ;; *Minibuf-1 $B$N4V(B ($B$"$k$$$O$b$C$H?<$$%j%+!<%7%V%_%K%P%C%U%!F1;N$N4V(B) $B$G%P%C(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1663 ;; $B%U%!%m!<%+%kCM$NGK2uE*=q$-JQ$($,9T$J$o$l$F$7$^$$!">e0L$N%_%K%P%C%U%!$KLa$C(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1664 ;; $B$?$H$-$K@5>o$JJQ49$,$G$-$J$/$J$k>l9g$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1665 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1666 ;; $B$H$3$m$,2<5-$N$h$&$K=i4|CM$r(B nil $B$K$7$F!"%P%C%U%!%m!<%+%kCM$H$7$F$N@k8@8e!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1667 ;; non-nil $BCM$rBeF~$9$l$P!"0J8e$=$N%P%C%U%!%m!<%+%kCM$KGK2uE*A`:n$r$7$F$b$=$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1668 ;; $B%P%C%U%!$K8GM-$NCM$7$+JQ2=$7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1669 ;; ---------- Buffer A ---------------+--------------- Buffer B ----------
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1670 ;; (setq test nil) |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1671 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1672 ;; (make-variable-buffer-local 'test) |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1673 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1674 ;; test | test
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1675 ;; -> nil | -> nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1676 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1677 ;; (setq test (make-marker)) |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1678 ;; -> #<marker in no buffer> |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1679 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1680 ;; (set-marker test (point)) |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1681 ;; |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1682 ;; test | test
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1683 ;; -> #<marker at 122 in A> | -> nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1684 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1685 ;; skk.el 9.3 $B$N;~E@$G$O!"(Bskk-henkan-start-point, skk-henkan-end-point,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1686 ;; skk-kana-start-point $B5Z$S(B skk-okurigana-start-point $B$N=i4|CM(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1687 ;; (make-variable-buffer-local $B$,%3!<%k$5$l$kA0$NCM(B) $B$,(B make-marker $B$NJV$jCM(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1688 ;; $B$G$"$k(B #<marker in no buffer> $B$G$"$C$?$N$G!"%j%+!<%7%V%_%K%P%C%U%!$KF~$C(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1689 ;; $B$FJQ49$7$?$H$-$K(B "$B"'(B" $B$,>C$($J$$!"$J$I$N%H%i%V%k$,$"$C$?$,!"$3$l$i$N=i4|(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1690 ;; $BCM$r(B nil $B$K$7$F;HMQ;~$K(B make-marker $B$NJV$jCM$rBeF~$9$k$h$&$K$7!"$3$NLdBj$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1691 ;; $B2r7h$7$?!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1692 (list 'progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1693 (list 'if (list 'not marker)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1694 (list 'setq marker (list 'make-marker)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1695 (list 'set-marker marker position buffer) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1696
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1697 ;;;; inline functions
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1698 (defsubst skk-mode-off ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1699 (setq skk-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1700 skk-abbrev-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1701 skk-ascii-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1702 skk-j-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1703 skk-zenkaku-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1704 ;; j's sub mode.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1705 skk-katakana nil )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1706 ;; initialize
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1707 (setq skk-input-mode-string skk-hirakana-mode-string)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1708 (setq skk-last-henkan-result nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1709 (skk-set-marker skk-last-henkan-point nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1710 (skk-set-cursor-color skk-default-cursor-color)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1711 (force-mode-line-update) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1712
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1713 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1714 (defsubst skk-j-mode-on (&optional katakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1715 (setq skk-mode t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1716 skk-abbrev-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1717 skk-ascii-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1718 skk-j-mode t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1719 skk-zenkaku-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1720 ;; j's sub mode.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1721 skk-katakana katakana )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1722 ;; mode line
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1723 (if katakana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1724 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1725 (setq skk-input-mode-string skk-katakana-mode-string)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1726 (skk-set-cursor-color skk-katakana-cursor-color) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1727 (setq skk-input-mode-string skk-hirakana-mode-string)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1728 (skk-set-cursor-color skk-hirakana-cursor-color) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1729 (force-mode-line-update) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1730
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1731 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1732 (defsubst skk-ascii-mode-on ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1733 (setq skk-mode t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1734 skk-abbrev-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1735 skk-ascii-mode t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1736 skk-j-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1737 skk-zenkaku-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1738 ;; j's sub mode.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1739 skk-katakana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1740 skk-input-mode-string skk-ascii-mode-string )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1741 (skk-set-cursor-color skk-ascii-cursor-color)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1742 (force-mode-line-update) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1743
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1744 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1745 (defsubst skk-zenkaku-mode-on ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1746 (setq skk-mode t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1747 skk-abbrev-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1748 skk-ascii-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1749 skk-j-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1750 skk-zenkaku-mode t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1751 ;; j's sub mode.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1752 skk-katakana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1753 skk-input-mode-string skk-zenkaku-mode-string )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1754 (skk-set-cursor-color skk-zenkaku-cursor-color)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1755 (force-mode-line-update) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1756
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1757 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1758 (defsubst skk-abbrev-mode-on ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1759 (setq skk-mode t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1760 skk-abbrev-mode t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1761 skk-ascii-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1762 skk-j-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1763 skk-zenkaku-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1764 ;; j's sub mode.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1765 skk-katakana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1766 skk-input-mode-string skk-abbrev-mode-string )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1767 (skk-set-cursor-color skk-abbrev-cursor-color)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1768 (force-mode-line-update) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1769
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1770 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1771 (defsubst skk-in-minibuffer-p ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1772 ;; $B%+%l%s%H%P%C%U%!$,%_%K%P%C%U%!$+$I$&$+$r%A%'%C%/$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1773 (window-minibuffer-p (selected-window)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1774
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1775 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1776 (defsubst skk-insert-prefix (&optional char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1777 ;; skk-echo $B$,(B non-nil $B$G$"$l$P%+%l%s%H%P%C%U%!$K(B skk-prefix $B$rA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1778 (if skk-echo
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1779 ;; skk-prefix $B$NA^F~$r%"%s%I%%$NBP>]$H$7$J$$!#A^F~$7$?%W%l%U%#%C%/%9$O!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1780 ;; $B$+$JJ8;z$rA^F~$9$kA0$KA4$F>C5n$9$k$N$G!"$=$N4V!"(Bbuffer-undo-list $B$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1781 ;; t $B$K$7$F%"%s%I%%>pJs$rC_$($J$/$H$bLdBj$,$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1782 (let ((buffer-undo-list t))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1783 (insert (or char skk-prefix)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1784
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1785 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1786 (defsubst skk-erase-prefix ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1787 ;; skk-echo $B$,(B non-nil $B$G$"$l$P%+%l%s%H%P%C%U%!$KA^F~$5$l$?(B skk-prefix $B$r>C(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1788 ;; $B$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1789 (if skk-echo
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1790 ;; skk-prefix $B$N>C5n$r%"%s%I%%$NBP>]$H$7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1791 (let ((buffer-undo-list t))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1792 (delete-region skk-kana-start-point (point) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1793
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1794 (defsubst skk-string<= (str1 str2)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1795 ;; str1 $B$,(B str2 $B$HHf3S$7$F!"(Bstring< $B$+(B string= $B$G$"$l$P!"(Bt $B$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1796 (or (string< str1 str2) (string= str1 str2)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1797
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1798 (defsubst skk-jis-char-p (char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1799 ;; char $B$,(B JIS $BJ8;z$@$C$?$i(B t $B$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1800 (> char 127) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1801
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1802 (defsubst skk-alpha-char-p (char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1803 ;; char $B$,(B ascii $BJ8;z$@$C$?$i(B t $B$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1804 (<= char 127) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1805
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1806 (defsubst skk-lower-case-p (char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1807 ;; char $B$,>.J8;z$N%"%k%U%!%Y%C%H$G$"$l$P!"(Bt $B$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1808 (and (<= ?a char) (>= ?z char) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1809
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1810 (defsubst skk-do-auto-fill ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1811 ;; auto-fill-function $B$KCM$,BeF~$5$l$F$*$l$P!"(Bdo-auto-fill $B$r%3!<%k$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1812 (and auto-fill-function (funcall auto-fill-function)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1813
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1814 ;;;; from dabbrev.el. Welcome!
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1815 ;; $BH=Dj4V0c$$$rHH$9>l9g$"$j!#MW2~NI!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1816 (defsubst skk-minibuffer-origin ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1817 (nth 1 (buffer-list)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1818
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1819 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1820 (defsubst skk-numeric-p ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1821 (and skk-use-numeric-conversion (require 'skk-num)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1822 skk-num-list ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1823
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1824 (defsubst skk-substring-head-character (string)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1825 (char-to-string (string-to-char string)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1826
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1827 (defsubst skk-get-simply-current-candidate (&optional noconv)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1828 (if (> skk-henkan-count -1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1829 ;; (nth -1 '(A B C)) $B$O!"(BA $B$rJV$9$N$G!"Ii$G$J$$$+$I$&$+%A%'%C%/$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1830 (let ((word (nth skk-henkan-count skk-henkan-list)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1831 (and word
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1832 (if (and (skk-numeric-p) (consp word))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1833 (if noconv (car word) (cdr word))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1834 word )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1835
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1836 (eval-after-load "font-lock"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1837 '(mapcar (function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1838 (lambda (pattern)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1839 (add-to-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1840 'lisp-font-lock-keywords-2
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1841 (cons pattern
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1842 '((1 font-lock-keyword-face)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1843 (2 font-lock-variable-name-face) )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1844 '("^(\\(skk-deflocalvar\\)[ \t'\(]*\\(\\sw+\\)?"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1845 "^(\\(skk-defunsoft\\)[ \t'\(]*\\(\\sw+\\)?" )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1846
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1847 (defun skk-submit-bug-report ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1848 "$B%a!<%k$G(B SKK $B$N%P%0%l%]!<%H$rAw$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1849 reporter-mailer $B$r@_Dj$9$k$3$H$K$h$j9%$_$N%a!<%k%$%s%?!<%U%'%$%9$r;HMQ$9$k$3$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1850 $B$,$G$-$k!#Nc$($P!"(BMew $B$r;HMQ$7$?$$>l9g$O2<5-$N$h$&$K@_Dj$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1851
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1852 \(setq reporter-mailer '\(mew-send reporter-mail\)\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1853
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1854 reporter.el 3.2 $B$G$O!"JQ?t(B reporter-mailer $B$,$J$/$J$C$?!#$3$N%P!<%8%g%s$G$O!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1855
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1856 \(setq mail-user-agent 'mew-user-agent\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1857
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1858 $B$H;XDj$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1859 (interactive)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1860 (require 'reporter)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1861 (if (and (boundp 'mail-user-agent)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1862 (eq mail-user-agent 'mew-user-agent) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1863 (define-mail-user-agent 'mew-user-agent
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1864 'mew-send 'mew-draft-send-letter 'mew-draft-kill ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1865 (and (y-or-n-p "Do you really want to submit a report on SKK? ")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1866 (reporter-submit-bug-report
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1867 skk-ml-address
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1868 (concat "skk.el " (skk-version)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1869 (if (or (and (boundp 'skk-server-host) skk-server-host)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1870 (and (boundp 'skk-servers-list) skk-servers-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1871 (getenv "SKKSERVER")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1872 (getenv "SKKSERV") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1873 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1874 (require 'skk-server)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1875 (concat ", skkserv; " (skk-server-version)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1876 (if (getenv "SKKSERVER")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1877 (concat ",\nSKKSERVER; "
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1878 (getenv "SKKSERVER") ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1879 (if (getenv "SKKSERV")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1880 (concat ", SKKSERV; "
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1881 (getenv "SKKSERV") ))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1882 (let ((base (list 'window-system
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1883 'skk-auto-okuri-process
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1884 'skk-auto-start-henkan
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1885 'skk-egg-like-newline
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1886 'skk-henkan-okuri-strictly
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1887 'skk-henkan-strict-okuri-precedence
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1888 'skk-kakutei-early
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1889 'skk-process-okuri-early
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1890 'skk-search-prog-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1891 'skk-use-face
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1892 'skk-use-vip )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1893 (if (boundp 'skk-henkan-face)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1894 (nconc base '(skk-henkan-face)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1895 (if (boundp 'skk-server-host)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1896 (nconc base '(skk-server-host)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1897 (if (boundp 'skk-server-prog)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1898 (nconc base '(skk-server-prog)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1899 (if (boundp 'skk-servers-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1900 (nconc base '(skk-servers-list)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1901 base ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1902
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1903 ;;;; defadvices.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1904 ;; defadvice $B$GDj5A$9$k$H!"8e$G%f!<%6!<$,?75,$N5!G=$rIU$1$F99$K(B defadvice $B$7$F(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1905 ;; $B$b$A$c$s$HF0$/!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1906
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1907 ;; cover to original functions.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1908
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1909 (defadvice keyboard-quit (around skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1910 "$B"'%b!<%I$G$"$l$P!"8uJd$NI=<($r$d$a$F"&%b!<%I$KLa$9(B ($B8+=P$78l$O;D$9(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1911 $B"&%b!<%I$G$"$l$P!"8+=P$78l$r:o=|$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1912 $B>e5-$N$I$A$i$N%b!<%I$G$b$J$1$l$P(B keyboard-quit $B$HF1$8F0:n$r$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1913 (cond ((not skk-henkan-on)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1914 (with-current-buffer (skk-minibuffer-origin)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1915 (skk-set-cursor-properly) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1916 ad-do-it )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1917 (skk-henkan-active
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1918 (setq skk-henkan-count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1919 (if (and skk-delete-okuri-when-quit skk-henkan-okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1920 (let ((count (/ (length skk-henkan-okurigana) skk-kanji-len)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1921 (skk-previous-candidate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1922 ;; $B$3$3$G$O(B delete-backward-char $B$KBhFs0z?t$rEO$5$J$$J}$,%Y%?!<!)(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1923 (delete-backward-char count) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1924 (skk-previous-candidate) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1925 (t (if (> (point) skk-henkan-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1926 (delete-region (point) skk-henkan-start-point) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1927 (skk-kakutei) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1928
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1929 (defadvice abort-recursive-edit (around skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1930 "$B"'%b!<%I$G$"$l$P!"8uJd$NI=<($r$d$a$F"&%b!<%I$KLa$9(B ($B8+=P$78l$O;D$9(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1931 $B"&%b!<%I$G$"$l$P!"8+=P$78l$r:o=|$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1932 $B>e5-$N$I$A$i$N%b!<%I$G$b$J$1$l$P(B abort-recursive-edit $B$HF1$8F0:n$r$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1933 (cond ((not skk-henkan-on)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1934 (with-current-buffer (skk-minibuffer-origin)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1935 (skk-set-cursor-properly) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1936 ad-do-it )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1937 (skk-henkan-active
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1938 (setq skk-henkan-count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1939 (if (and skk-delete-okuri-when-quit skk-henkan-okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1940 (let ((count (/ (length skk-henkan-okurigana) skk-kanji-len)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1941 (skk-previous-candidate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1942 ;; $B$3$3$G$O(B delete-backward-char $B$KBhFs0z?t$rEO$5$J$$J}$,%Y%?!<!)(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1943 (delete-backward-char count) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1944 (skk-previous-candidate) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1945 (t (if (> (point) skk-henkan-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1946 (delete-region (point) skk-henkan-start-point) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1947 (skk-kakutei) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1948
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1949 (defadvice newline (around skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1950 (if (not (or skk-j-mode skk-abbrev-mode))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1951 ad-do-it
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1952 (let ((arg (ad-get-arg 0))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1953 ;; skk-kakutei $B$r<B9T$9$k$H(B skk-henkan-on $B$NCM$,L5>r7o$K(B nil $B$K$J$k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1954 ;; $B$N$G!"J]B8$7$F$*$/I,MW$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1955 (no-newline (and skk-egg-like-newline skk-henkan-on))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1956 (auto-fill-function auto-fill-function) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1957 (if (not (interactive-p))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1958 (setq auto-fill-function nil) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1959 (if (skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1960 ;; skk-do-auto-fill $B$K$h$C$F9T$,@^$jJV$5$l$?$i(B arg $B$r(B 1 $B$D8:$i$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1961 ;; fill $B$5$l$F$b(B nil $B$,5"$C$F$/$k(B :-<
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1962 (setq arg (1- arg)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1963 (if (not no-newline)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1964 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1965 (ad-set-arg 0 arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1966 ad-do-it )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1967
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1968 (defadvice newline-and-indent (around skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1969 (if (and skk-egg-like-newline skk-henkan-on)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1970 (newline)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1971 ad-do-it))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1972
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1973 (defadvice exit-minibuffer (around skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1974 (if (not (or skk-j-mode skk-abbrev-mode))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1975 ad-do-it
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1976 (let ((no-newline (and skk-egg-like-newline skk-henkan-on)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1977 (if skk-mode (skk-kakutei))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1978 (or no-newline ad-do-it) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1979
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1980 (defadvice delete-backward-char (around skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1981 "$B8=:_$N%]%$%s%H$+$iLa$C$F(B COUNT $BJ8;z$r>C5n$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1982 (let ((count (or (prefix-numeric-value (ad-get-arg 0)) 1)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1983 (cond ((and skk-henkan-on (>= skk-henkan-start-point (point)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1984 (setq skk-henkan-count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1985 (skk-kakutei) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1986 (skk-henkan-active
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1987 (if (and (not skk-delete-implies-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1988 (= skk-henkan-end-point (point)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1989 (skk-previous-candidate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1990 ;;(if skk-use-face (skk-henkan-face-off))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1991 ;; overwrite-mode $B$GA43QJ8;zA43QJ8;z$K0O$^$l!"$+$DD>A0$NJ8;z$,A4(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1992 ;; $B3QJ8;z$G$"$k%]%$%s%H$G(B delete-backward-char $B$r;H$&$H!"A43QJ8;z(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1993 ;; $B$O>C$9$,H>3QJ8;zJ,$7$+(B backward $BJ}8~$K%]%$%s%H$,La$i$J$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1994 ;; (Emacs 19.31 $B$K$F3NG'(B)$B!#JQ49Cf$N8uJd$KBP$7$F$O(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1995 ;; delete-backward-char $B$GI,$:A43QJ8;z(B 1 $BJ8;zJ,(B backward $BJ}8~$KLa$C(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1996 ;; $B$?J}$,NI$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1997 (if overwrite-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1998 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
1999 (backward-char count)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2000 (delete-char count) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2001 ad-do-it )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2002 (if (>= skk-henkan-end-point (point)) (skk-kakutei)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2003 ;; $BF~NOCf$N8+=P$78l$KBP$7$F$O(B delete-backward-char $B$GI,$:A43QJ8;z(B 1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2004 ;; $BJ8;zJ,(B backward $BJ}8~$KLa$C$?J}$,NI$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2005 ((and skk-henkan-on overwrite-mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2006 (backward-char count)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2007 (delete-char count) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2008 (t ad-do-it) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2009
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2010 (defadvice save-buffers-kill-emacs (before skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2011 "SKK $B<-=q$r%;!<%V$7$F!"(BEmacs $B$r=*N;$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2012 $B%;!<%V8e!"(Bskk-before-kill-emacs-hook $B$r<B9T$7$F$+$i(B Emacs $B$r%-%k$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2013 ;; defadvice $B$9$k:]!"Ho(B advice $B4X?t$H$O0c$&J}K!$G0z?tEO$7$r$7$?$$>l9g0J30$O!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2014 ;; interactive + descripter $B$OMW$i$J$$$_$?$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2015 ;;(interactive "P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2016 (skk-save-jisyo)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2017 (run-hooks 'skk-before-kill-emacs-hook) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2018
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2019 (defadvice picture-mode-exit (before skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2020 "SKK $B$N%P%C%U%!%m!<%+%kJQ?t$rL58z$K$7!"(Bpicture-mode-exit $B$r%3!<%k$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2021 picture-mode $B$+$i=P$?$H$-$K$=$N%P%C%U%!$G(B SKK $B$r@5>o$KF0$+$9$?$a$N=hM}!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2022 (if skk-mode (skk-kill-local-variables)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2023
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2024 (defadvice undo (before skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2025 "SKK $B%b!<%I$,(B on $B$J$i(B skk-self-insert-non-undo-count $B$r=i4|2=$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2026 (if skk-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2027 (setq skk-self-insert-non-undo-count 0) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2028
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2029 (defadvice kill-buffer (around skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2030 "SKK $B$N"'%b!<%I$@$C$?$i!"3NDj$7$F$+$i%P%C%U%!$r%-%k$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2031 $B%P%C%U%!$N%-%k8e!"(BSKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2032 (if skk-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2033 (and skk-henkan-on (skk-kakutei)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2034 ad-do-it
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2035 ;; $BJL$N%P%C%U%!$XHt$V%3%^%s%I$O(B skk-mode $B$,(B nil $B$G$b%+!<%=%k?'$rD4@0$9$kI,MW(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2036 ;; $B$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2037 (skk-set-cursor-properly) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2038
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2039 (defadvice overwrite-mode (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2040 (if skk-use-cursor-change
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2041 (skk-change-cursor-when-ovwrt) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2042
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2043 (defadvice eval-expression (before skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2044 (if skk-mode (skk-mode-off)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2045
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2046 (defadvice query-replace-regexp (before skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2047 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2048 (add-hook 'minibuffer-setup-hook 'skk-setup-minibuffer) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2049
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2050 (defadvice query-replace (before skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2051 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2052 (add-hook 'minibuffer-setup-hook 'skk-setup-minibuffer) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2053
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2054 (defadvice goto-line (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2055 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2056 (and skk-mode (skk-set-cursor-properly)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2057
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2058 (defadvice yank (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2059 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2060 (and skk-mode (skk-set-cursor-properly)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2061
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2062 (defadvice yank-pop (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2063 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2064 (and skk-mode (skk-set-cursor-properly)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2065
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2066 (defadvice recenter (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2067 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2068 (and skk-mode (skk-set-cursor-properly)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2069
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2070 ;; $BJL$N%P%C%U%!$XHt$V%3%^%s%I$O(B skk-mode $B$,(B nil $B$G$b%+!<%=%k?'$rD4@0$9$kI,MW$,(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2071 ;; $B$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2072 (defadvice bury-buffer (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2073 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2074 (skk-set-cursor-properly) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2075
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2076 (defadvice switch-to-buffer (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2077 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2078 (skk-set-cursor-properly) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2079
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2080 ;; cover to hilit19 functions.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2081 ;; forward advice $B$H(B automatic advice activation $B5!G=$,$"$k$+$i!"(Bhilit19.el
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2082 ;; $B$N%m!<%IA0$K(B defadvice $B$7$F$bBg>fIW!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2083 ;;(if (not (fboundp 'hilit-add-pattern))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2084 ;; nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2085 (defadvice hilit-yank (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2086 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2087 (and skk-mode (skk-set-cursor-properly)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2088
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2089 (defadvice hilit-yank-pop (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2090 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2091 (and skk-mode (skk-set-cursor-properly)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2092
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2093 (defadvice hilit-recenter (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2094 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2095 (and skk-mode (skk-set-cursor-properly)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2096
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2097 (defadvice execute-extended-command (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2098 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2099 (skk-set-cursor-properly) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2100
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2101 (defadvice pop-to-buffer (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2102 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2103 (skk-set-cursor-properly) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2104
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2105 ;; abort-recursive-edit $B$G$O!"(Bafter original command $B$X0\9T$9$kA0$K%"%\!<%H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2106 ;; $B$7$F$7$^$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2107 ;;(defadvice abort-recursive-edit (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2108 ;; "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2109 ;; (skk-set-cursor-properly) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2110 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2111 (defadvice abort-recursive-edit (before skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2112 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2113 ;; $BJ#?t$N(B window $B$r3+$$$F$$$k>l9g$J$I$O!"8mF0:n$N2DG=@-$"$j!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2114 (with-current-buffer (skk-minibuffer-origin)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2115 (skk-set-cursor-properly) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2116
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2117 (defadvice other-window (after skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2118 "SKK $B$N%b!<%I$K=>$$%+!<%=%k$N?'$rJQ$($k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2119 (skk-set-cursor-properly) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2120
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2121 (if skk-xemacs
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2122 ;; XEmacs has minibuffer-keyboard-quit that has nothing to do with delsel.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2123 (defadvice minibuffer-keyboard-quit (around skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2124 (cond ((or (string= skk-henkan-key "") (not skk-henkan-on))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2125 (with-current-buffer (skk-minibuffer-origin)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2126 (skk-set-cursor-properly) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2127 ad-do-it )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2128 (skk-henkan-active
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2129 (setq skk-henkan-count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2130 (if (and skk-delete-okuri-when-quit skk-henkan-okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2131 (let ((count (/ (length skk-henkan-okurigana) skk-kanji-len)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2132 (skk-previous-candidate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2133 ;; $B$3$3$G$O(B delete-backward-char $B$KBhFs0z?t$rEO$5$J$$J}$,%Y%?!<!)(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2134 (delete-backward-char count) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2135 (skk-previous-candidate) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2136 (t (if (> (point) skk-henkan-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2137 (delete-region (point) skk-henkan-start-point) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2138 (skk-kakutei) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2139 (defadvice minibuffer-keyboard-quit (around skk-ad activate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2140 ;; for delsel.el
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2141 (if (and skk-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2142 (not (and
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2143 delete-selection-mode transient-mark-mode mark-active )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2144 (keyboard-quit)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2145 ad-do-it )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2146
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2147 ;;;; mode setup
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2148
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2149 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2150 (defun skk-mode (&optional arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2151 "$BF|K\8lF~NO%b!<%I!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2152 $B%^%$%J!<%b!<%I$N0l<o$G!"%*%j%8%J%k$N%b!<%I$K$O1F6A$rM?$($J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2153 $BIi$N0z?t$rM?$($k$H(B SKK $B%b!<%I$+$iH4$1$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2154
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2155 An input mode for Japanese, converting romanized phonetic strings to kanji.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2156
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2157 A minor mode, it should not affect the use of any major mode or
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2158 orthogonal minor modes.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2159
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2160 In the initial SKK mode, hiragana submode, the mode line indicator is
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2161 $B!V$+$J!W(B. Lowercase romaji entry is automatically converted to
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2162 hiragana where possible. The lowercase characters `q' and `l' change
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2163 submodes of SKK, and `x' is used as a prefix indicating a small kana.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2164
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2165 `q' is used to toggle between hiragana and katakana (mode line
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2166 indicator $B!V%+%J!W(B) entry submodes.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2167
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2168 `l' is used to enter ASCII submode (mode line indicator \"SKK\").
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2169 Uppercase `L' enters zenkaku (wide) ASCII submode (mode line indicator
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2170 $B!VA41Q!W(B). `\C-j' returns to hiragana submode from either ASCII submode.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2171
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2172 Kanji conversion is complex, but the basic principle is that the user
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2173 signals the appropriate stem to be matched against dictionary keys by
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2174 the use of uppercase letters. Because SKK does not use grammatical
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2175 information, both the beginning and the end of the stem must be marked.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2176
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2177 For non-inflected words (eg, nouns) consisting entirely of kanji, the
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2178 simplest way to invoke conversion is to enter the reading of the kanji,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2179 the first character only in uppercase. A leading $B!V"&!W(B indicates that
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2180 kanji conversion is in progress. After entering the reading, press
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2181 space. This invokes dictionary lookup, and the hiragana reading will be
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2182 redisplayed in kanji as the first candidate. Pressing space again gives
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2183 the next candidate. Further presses of space produce further candidates,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2184 as well as a list of the next few candidates in the minibuffer. Eg,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2185 \"Benri\" => $B!V"&$Y$s$j!W(B, and pressing space produces $B!V"'JXMx!W(B (the solid
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2186 triangle indicates that conversion is in progress). Backspace steps
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2187 through the candidate list in reverse.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2188
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2189 A candidate can be accepted by pressing `\C-j', or by entering a
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2190 self-inserting character. (Unlike other common Japanese input methods,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2191 RET not only accepts the current candidate, but also inserts a line
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2192 break.)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2193
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2194 Inflected words (verbs and adjectives), like non-inflected words, begin
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2195 entry with a capital letter. However, for these words the end of the
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2196 kanji string is signaled by capitalizing the next mora. Eg, \"TuyoI\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2197 => $B!V"'6/$$!W(B. If no candidate is available at that point, the inflection
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2198 point will be indicated with an asterisk \"*\", and trailing characters
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2199 will be displayed until a candidate is recognized. It will be
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2200 immediately displayed (pressing space is not necessary). Space and
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2201 backspace are used to step forward and backward through the list of
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2202 candidates.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2203
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2204 For more information, see the `skk' topic in Info. (Japanese only.)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2205
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2206 A tutorial is available in Japanese or English via \"M-x skk-tutorial\".
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2207 Use a prefix argument to be prompted for the language. The default is
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2208 system-dependent.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2209 "
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2210
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2211 (interactive "P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2212 (setq skk-mode (cond ((null arg) (not skk-mode))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2213 ;; - $B$O(B -1 $B$KJQ49$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2214 ((> (prefix-numeric-value arg) 0) t) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2215 (if (not skk-mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2216 ;; exit skk-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2217 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2218 (let ((skk-mode t)) (skk-kakutei))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2219 (skk-mode-off) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2220 ;; enter skk-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2221 (if (not skk-mode-invoked)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2222 ;; enter skk-mode for the first time in this session
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2223 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2224 (setq skk-mode-invoked t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2225 (skk-setup-init-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2226 (load skk-init-file t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2227 (if skk-keep-record
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2228 (skk-create-file
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2229 skk-record-file
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2230 (if skk-japanese-message-and-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2231 "SKK $B$N5-O?MQ%U%!%$%k$r:n$j$^$7$?(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2232 "I have created an SKK record file for you" )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2233 (skk-create-file
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2234 skk-jisyo (if skk-japanese-message-and-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2235 "SKK $B$N6u<-=q$r:n$j$^$7$?(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2236 "I have created an empty SKK Jisyo file for you" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2237 (skk-get-jisyo-buffer skk-jisyo 'nomsg) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2238 ;;$B0J2<$O(B skk-mode $B$KF~$k$?$S$KKhEY%3!<%k$5$l$k%3!<%I!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2239 ;;(if (boundp 'disable-undo)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2240 ;; (make-local-variable 'disable-undo) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2241 (cond (skk-use-vip (skk-vip-mode))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2242 (skk-use-viper
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2243 (require 'skk-viper)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2244 (funcall skk-viper-normalize-map-function) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2245 (if (and (not (featurep 'skk-server))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2246 (or (and (boundp 'skk-server-host) skk-server-host)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2247 (and (boundp 'skk-servers-list) skk-servers-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2248 (getenv "SKKSERVER")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2249 (getenv "SKKSERV") ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2250 (require 'skk-server) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2251 ;; $B%f!<%6!<JQ?t$K4X$9$k$b$N$O!"%f!<%6!<$,$$$D!"$=$l$i$NJQ?t$rJQ99$9$k$+M=(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2252 ;; $BB,$,IU$+$J$$$N$G!"(Bskk-mode $B$KF~$k$?$S$K@_Dj$7$J$*$7$F$$$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2253 (if (featurep 'skk-server)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2254 ;; skk-search-server $B$O%5!<%P!<$,Mn$A$F$b;H$($k$N$G!"30$5$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2255 (skk-adjust-search-prog-list-for-server-search 'non-del) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2256 (if skk-auto-okuri-process
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2257 (skk-adjust-search-prog-list-for-auto-okuri) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2258 (if skk-use-relation
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2259 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2260 (require 'skk-attr)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2261 (setq skk-search-prog-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2262 (cons '(skk-search-relation) skk-search-prog-list) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2263 (skk-setup-delete-selection-mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2264 (skk-setup-special-midashi-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2265 (skk-setup-auto-paren)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2266 (skk-adjust-user-option)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2267 (define-key minibuffer-local-map skk-kakutei-key 'skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2268 ;;(define-key minibuffer-local-map "\C-m" 'skk-newline)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2269 (define-key minibuffer-local-completion-map skk-kakutei-key 'skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2270 ;;(define-key minibuffer-local-completion-map "\C-m" 'skk-newline)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2271 ;; XEmacs doesn't have minibuffer-local-ns-map
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2272 (if (boundp 'minibuffer-local-ns-map)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2273 ;;(define-key minibuffer-local-ns-map "\C-m" 'skk-newline)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2274 (define-key minibuffer-local-ns-map skk-kakutei-key 'skk-kakutei) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2275 (skk-j-mode-on)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2276 (run-hooks 'skk-mode-hook) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2277
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2278 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2279 (defun skk-auto-fill-mode (&optional arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2280 "$BF|K\8lF~NO%b!<%I!#<+F0@^$jJV$75!G=IU$-!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2281 $B%^%$%J!<%b!<%I$N0l<o$G!"%*%j%8%J%k$N%b!<%I$K$O1F6A$rM?$($J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2282 $B@5$N0z?t$rM?$($k$H!"6/@)E*$K(B auto-fill-mode $B5Z$S(B SKK $B%b!<%I$KF~$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2283 $BIi$N0z?t$rM?$($k$H(B auto-fill-mode $B5Z$S(B SKK $B%b!<%I$+$iH4$1$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2284 (interactive "P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2285 (let ((auto-fill
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2286 (cond ((null arg) (not auto-fill-function))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2287 ((> (prefix-numeric-value arg) 0) t) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2288 (auto-fill-mode (if auto-fill 1 -1))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2289 (skk-mode arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2290 (skk-set-cursor-color (if skk-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2291 skk-hirakana-cursor-color
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2292 skk-default-cursor-color ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2293 (run-hooks 'skk-auto-fill-mode-hook) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2294
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2295 (defun skk-kill-emacs-without-saving-jisyo (&optional query)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2296 "SKK $B<-=q$r%;!<%V$7$J$$$G!"(BEmacs $B$r=*N;$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2297 skk-before-kill-emacs-hook $B$r<B9T$7$F$+$i(B Emacs $B$r%-%k$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2298 (interactive "P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2299 ;; format $B$r0z?t$K;}$?$;$?>l9g$O!"(Bskk-yes-or-no-p $B$r;H$&$H$+$($C$F>iD9$K$J$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2300 (if (yes-or-no-p
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2301 (format (if skk-japanese-message-and-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2302 "$B<-=q$NJ]B8$r$;$:$K(B %s $B$r=*N;$7$^$9!#NI$$$G$9$+!)(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2303 "Do you really wish to kill %s without saving Jisyo? " )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2304 (cond (skk-mule "Mule")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2305 (skk-xemacs "XEmacs")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2306 (t "Emacs") )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2307 (let ((buff (skk-get-jisyo-buffer skk-jisyo 'nomsg)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2308 (if buff
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2309 (progn (set-buffer buff)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2310 (set-buffer-modified-p nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2311 (kill-buffer buff) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2312 (run-hooks 'skk-before-kill-emacs-hook)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2313 (ad-remove-advice 'save-buffers-kill-emacs 'before 'skk-ad)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2314 (ad-activate 'save-buffers-kill-emacs)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2315 (save-buffers-kill-emacs query) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2316
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2317 (defun skk-setup-init-file ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2318 ;; skk-byte-compile-init-file $B$,(B non-nil $B$N>l9g$G!"(Bskk-init-file $B$r%P%$%H%3(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2319 ;; $B%s%Q%$%k$7$?%U%!%$%k$,B8:_$7$J$$$+!"$=$N%P%$%H%3%s%Q%$%k:Q%U%!%$%k$h$j(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2320 ;; skk-init-file $B$NJ}$,?7$7$$$H$-$O!"(Bskk-init-file $B$r%P%$%H%3%s%Q%$%k$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2321 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2322 ;; skk-byte-compile-init-file $B$,(B nil $B$N>l9g$G!"(Bskk-init-file $B$r%P%$%H%3%s%Q(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2323 ;; $B%$%k$7$?%U%!%$%k$h$j(B skk-init-file $B$NJ}$,?7$7$$$H$-$O!"$=$N%P%$%H%3%s%Q%$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2324 ;; $B%k:Q%U%!%$%k$r>C$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2325 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2326 (let* ((init-file (expand-file-name skk-init-file))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2327 (elc (concat init-file
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2328 (if (string-match "\\.el$" init-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2329 "c"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2330 ".elc" ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2331 (if skk-byte-compile-init-file
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2332 (if (and (file-exists-p init-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2333 (or (not (file-exists-p elc))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2334 (file-newer-than-file-p init-file elc) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2335 (save-window-excursion ;; for keep window configuration.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2336 (skk-message "%s $B$r%P%$%H%3%s%Q%$%k$7$^$9!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2337 "Byte-compile %s"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2338 skk-init-file )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2339 (sit-for 2)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2340 (byte-compile-file init-file) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2341 (if (and (file-exists-p init-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2342 (file-exists-p elc)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2343 (file-newer-than-file-p init-file elc) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2344 (delete-file elc) )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2345
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2346 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2347 ;;(skk-setup-special-midashi-char skk-minibuff-map)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2348
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2349 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2350 (defun skk-emulate-original-map (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2351 ;; $B%-!<F~NO$KBP$7$F!"(BSKK $B$N%b!<%I$G$O$J$/!"(BEmacs $B$N%*%j%8%J%k$N%-!<3d$jIU$1$G(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2352 ;; $B%3%^%s%I$r<B9T$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2353 (let ((prefix-arg arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2354 (keys (skk-command-key-sequence (this-command-keys) this-command)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2355 (if (not keys)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2356 ;; no alternative commands. may be invoked by M-x.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2357 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2358 (let (skk-mode skk-ascii-mode skk-j-mode skk-abbrev-mode skk-zenkaku-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2359 command )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2360 (setq command (key-binding keys))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2361 (if (eq command this-command)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2362 ;; avoid recursive calling of skk-emulate-original-map.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2363 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2364 ;; if no bindings are found, call `undefined'. it's
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2365 ;; original behaviour.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2366 (skk-cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2367 (command-execute (or command (function undefined))))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2368
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2369 (defun skk-command-key-sequence (key command)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2370 ;; KEY $B$+$i(B universal arguments $B$r<h$j=|$-!"(BCOMMAND $B$r<B9T$9$k%-!<$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2371 ;; `execute-extended-command' $B$K$h$C$F%3%^%s%I$,<B9T$5$l$?>l9g$O!"(Bnil $B$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2372 (while (not (or (zerop (length key))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2373 (eq command (key-binding key))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2374 (setq key (vconcat (cdr (append key nil)))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2375 (and (not (zerop (length key))) key))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2376
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2377 (defun skk-setup-special-midashi-char ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2378 ;; skk-special-midashi-char-list $B$K;XDj$5$l$?(B char $B$r(B skk-j-mode-map $B$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2379 ;; skk-set-henkan-point $B$K3d$jIU$1$k!#(Bskk-special-midashi-char-list $B$K;XDj$5(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2380 ;; $B$l$?(B char $B$G!"@\F,<-!"@\Hx<-$NF~NO$r2DG=$K$9$k$?$a$N=hM}!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2381 (let ((strlist (mapcar 'char-to-string skk-special-midashi-char-list))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2382 ;; Use default-value for Viper. It localizes minor-mode-map-alist.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2383 (map (cdr (assq 'skk-j-mode (default-value 'minor-mode-map-alist))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2384 str )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2385 (while strlist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2386 (setq str (car strlist))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2387 (if (not (eq 'skk-set-henkan-point (lookup-key map str)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2388 (define-key map str 'skk-set-henkan-point) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2389 (setq strlist (cdr strlist)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2390
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2391 (defun skk-setup-delete-selection-mode ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2392 ;; Delete Selection $B%b!<%I$,(B SKK $B$r;H$C$?F|K\8lF~NO$KBP$7$F$b5!G=$9$k$h$&$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2393 ;; $B%;%C%H%"%C%W$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2394 (if (and (featurep 'delsel)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2395 (not (get 'skk-insert-a 'delete-selection)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2396 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2397 ;;(put 'skk-delete-backward-char 'delete-selection 'supersede)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2398 (mapcar (function (lambda (func) (put func 'delete-selection t)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2399 '(skk-input-by-code-or-menu
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2400 skk-insert-comma
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2401 skk-insert-period
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2402 skk-kana-input
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2403 ;;skk-newline
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2404 ;;skk-set-henkan-point-subr
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2405 skk-set-henkan-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2406 skk-self-insert
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2407 skk-today )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2408
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2409 (defun skk-setup-auto-paren ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2410 ;; skk-auto-paren-string-alist $B$NCf$+$i!"(Bskk-special-midashi-char-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2411 ;; $B$NMWAG$K4XO"$9$k$b$N$r<h$j=|$/!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2412 ;; $B$^$?!"(Bskk-auto-paren-string-alist $B$N3FMWAG$N(B car $B$NJ8;z$,(B ascii char $B$G$"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2413 ;; $B$k>l9g$O!"(Bskk-input-vector $B$N3:Ev$N>l=j(B ($B$=$N(B ascii char $B$rI>2A$7$??t$,%$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2414 ;; $B%s%G%/%9$H$J$k(B) $B$K$=$NJ8;z$r=q$-9~$`(B ($BK\Mh$O(B ascii char $B$O(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2415 ;; skk-input-vector $B$K=q$/I,MW$,$J$$$,!"(Bskk-auto-paren-string-alist $B$K;XDj$5(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2416 ;; $B$l$?BP$K$J$kJ8;z$NA^F~$N$?$a$K$O!"%-!<$H$J$kJ8;z$r=q$$$F$*$/I,MW$,$"$k(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2417 (if (null skk-auto-paren-string-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2418 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2419 (let ((strlist (mapcar 'char-to-string skk-special-midashi-char-list))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2420 cell str alist )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2421 (while strlist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2422 (setq cell (assoc (car strlist) skk-auto-paren-string-alist))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2423 (if cell
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2424 ;; assoc $B$GCj=P$7$?(B cell $B$rD>@\;XDj$7$F$$$k$N$G!"(Bdelete $B$G$J$/$H$bBg(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2425 ;; $B>fIW!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2426 (setq skk-auto-paren-string-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2427 (delq cell skk-auto-paren-string-alist) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2428 (setq strlist (cdr strlist)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2429 (setq alist skk-auto-paren-string-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2430 (while alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2431 (setq str (car (car alist)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2432 (if (and (eq (string-width str) 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2433 ;; $B4{$K%f!<%6!<$,;XDj$7$F$$$k>l9g$O!"$I$s$JJ8;z$G$"$C$F$b(B ($B%-!<(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2434 ;; $B$H$J$kJ8;z$H$O0c$C$F$$$F$b(B)$B!"2?$b$7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2435 (not (aref skk-input-vector (string-to-char str))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2436 (aset skk-input-vector (string-to-char str) str) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2437 (setq alist (cdr alist)) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2438
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2439 (defun skk-adjust-user-option ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2440 ;; $BN>N)$G$-$J$$%*%W%7%g%s$ND4@0$r9T$J$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2441 (if skk-process-okuri-early
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2442 ;; skk-process-okuri-early $B$NCM$,(B non-nil $B$G$"$k$H$-$K2<5-$NCM$,(B non-nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2443 ;; $B$G$"$l$P@5>o$KF0$+$J$$$N$G$3$NJQ?t$NM%@h=g0L$r9b$/$7$?!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2444 (setq skk-kakutei-early nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2445 skk-auto-okuri-process nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2446 skk-henkan-okuri-strictly nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2447 skk-henkan-strict-okuri-precedence nil)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2448
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2449 (defun skk-try-completion (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2450 "$B"&%b!<%I$G8+=P$78l$NJd40$r9T$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2451 $B$=$l0J30$N%b!<%I$G$O!"%*%j%8%J%k$N%-!<3d$jIU$1$N%3%^%s%I$r%(%_%e%l!<%H$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2452 (interactive "P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2453 (if (and skk-henkan-on (not skk-henkan-active))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2454 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2455 (setq this-command 'skk-completion)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2456 (skk-completion (not (eq last-command 'skk-completion))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2457 (skk-emulate-original-map arg) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2458
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2459 (defun skk-ascii-mode ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2460 "SKK $B$N%b!<%I$r(B ascii $B%b!<%I$KJQ99$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2461 (interactive)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2462 (skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2463 (skk-ascii-mode-on) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2464
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2465 (defun skk-zenkaku-mode ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2466 "SKK $B$N%b!<%I$rA43Q1Q;zF~NO%b!<%I$KJQ99$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2467 (interactive)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2468 (skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2469 (skk-zenkaku-mode-on) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2470
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2471 (defun skk-abbrev-mode ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2472 "ascii $BJ8;z$r%-!<$K$7$?JQ49$r9T$&$?$a$NF~NO%b!<%I!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2473 (interactive "*")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2474 (if (and skk-henkan-on (not skk-henkan-active))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2475 (skk-error "$B4{$K"&%b!<%I$KF~$C$F$$$^$9(B" "Already in $B"&(B mode") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2476 (skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2477 (skk-set-henkan-point-subr)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2478 (skk-abbrev-mode-on) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2479
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2480 (defun skk-toggle-kana (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2481 "$B$R$i$,$J%b!<%I$H%+%?%+%J%b!<%I$r%H%0%k$G@Z$jBX$($k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2482 $B%+%?%+%J%b!<%I$GJQ49$r9T$J$&$H$-$K!"Aw$j2>L>$r%+%?%+%J$KJQ49$7$?$/$J$$$H$-$O!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2483 skk-convert-okurigana-into-katakana $B$NCM$r(B non-nil $B$K$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2484
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2485 $B"&%b!<%I$G$O!"(Bskk-henkan-start-point ($B"&$ND>8e(B) $B$H%+!<%=%k$N4V$NJ8;zNs$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2486
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2487 $B$R$i$,$J(B <=> $B%+%?%+%J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2488 $BA43Q1Q?t;z(B <=> ascii
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2489
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2490 $B$N$h$&$KJQ49$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2491 (interactive "P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2492 (cond ((and skk-henkan-on (not skk-henkan-active))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2493 (let (char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2494 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2495 (goto-char skk-henkan-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2496 ;; "$B!<(B" $B$G$OJ8;z<oJL$,H=JL$G$-$J$$$N$G!"%]%$%s%H$r?J$a$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2497 (while (looking-at "$B!<(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2498 (skk-forward-char 1) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2499 (setq char (skk-what-char-type)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2500 (skk-set-marker skk-henkan-end-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2501 (cond ((eq char 'hirakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2502 (skk-katakana-henkan arg) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2503 ((eq char 'katakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2504 (skk-hiragana-henkan arg) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2505 ((eq char 'ascii)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2506 (skk-zenkaku-henkan arg) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2507 ((eq char 'zenkaku)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2508 (skk-ascii-henkan arg) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2509 ((and (skk-in-minibuffer-p) (not skk-j-mode))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2510 ;; $B%_%K%P%C%U%!$X$N=iFMF~;~!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2511 (skk-j-mode-on) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2512 (t (setq skk-katakana (not skk-katakana))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2513 (skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2514 (if skk-katakana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2515 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2516 (setq skk-input-mode-string skk-katakana-mode-string)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2517 (skk-set-cursor-color skk-katakana-cursor-color) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2518 (setq skk-input-mode-string skk-hirakana-mode-string)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2519 (skk-set-cursor-color skk-hirakana-cursor-color) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2520 (force-mode-line-update) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2521
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2522 (defun skk-misc-for-picture ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2523 ;; picture-mode $B$XF~$C$?$H$-$K(B SKK $B$r@5>o$KF0$+$9$?$a$KI,MW$J=hM}$r9T$J$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2524 ;; edit-picture-hook $B$K(B add-hook $B$7$F;HMQ$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2525 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2526 ;; picture-mode $B$G(B SKK $B$r;HMQ$74A;zF~NO$r$7$?>l9g$K!"(BBS $B$GA43QJ8;z$,>C$;$J$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2527 ;; $B$N$O!"(BSKK $B$NIT6q9g$G$O$J$/!"(Bpicture.el $B$NLdBj(B (move-to-column-force $B4X?t(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2528 ;; $B$NCf$G;HMQ$7$F$$$k(B move-to-column $B$GA43QJ8;z$rL5;k$7$?%+%i%`?t$,M?$($i$l(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2529 ;; $B$?$H$-$K%+!<%=%k0\F0$,$G$-$J$$$+$i(B) $B$G$"$k!#>C$7$?$$J8;z$K%]%$%s%H$r9g$o(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2530 ;; $B$;!"(BC-c C-d $B$G0lJ8;z$E$D>C$9$7$+J}K!$O$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2531 (if skk-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2532 ;; SKK $B5/F0A0$N>uBV$KLa$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2533 (skk-kill-local-variables) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2534
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2535 (defun skk-kill-local-variables ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2536 ;; SKK $B4XO"$N%P%C%U%!%m!<%+%kJQ?t$rL58z$K$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2537 ;; $B4{B8$N%P%C%U%!$r(B picture mode $B$K$7$?$H$-!"(Bpicture-mode $B4X?t$O(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2538 ;; kill-all-local-variables $B4X?t$r8F$P$J$$$N$G!"(BSKK $B4XO"$N%P%C%U%!%m!<%+%k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2539 ;; $BJQ?t$,85$N%P%C%U%!$NCM$N$^$^$K$J$C$F$7$^$&!#$=$3$G!"(Bpicture mode $B$KF~$C$?(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2540 ;; $B$H$-$K%U%C%/$rMxMQ$7$F$3$l$i$N%P%C%U%!%m!<%+%kJQ?t$r(B kill $B$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2541 ;; RMS $B$O(B picture-mode $B$G(B kill-all-local-variables $B4X?t$r8F$P$J$$$N$O!"%P%0(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2542 ;; $B$G$O$J$$!"$H8@$C$F$$$?!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2543 (if (eq (nth 1 mode-line-format) 'skk-mode-line)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2544 (setq mode-line-format (delq 'skk-mode-line mode-line-format) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2545 (let ((lv (buffer-local-variables))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2546 v vstr )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2547 (while lv
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2548 (setq v (car (car lv))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2549 lv (cdr lv)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2550 vstr (prin1-to-string v) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2551 (if (and
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2552 (> (length vstr) 3) (string= "skk-" (substring vstr 0 4)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2553 (kill-local-variable v) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2554
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2555 ;;;; kana inputting functions
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2556
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2557 (defun skk-insert (table)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2558 ;; skk-prefix $B$r%-!<$H$7$F!"O"A[%j%9%H(B TABLE $B$+$iJ8;zNs$rC5$7$FF~NO$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2559 (let ((char (assoc skk-prefix table)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2560 (if (null char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2561 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2562 ;; skk-prefix not found in the table
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2563 (setq skk-prefix "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2564 (skk-unread-event (skk-character-to-event last-command-char)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2565 (if (and skk-henkan-active skk-kakutei-early
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2566 (not skk-process-okuri-early) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2567 (skk-kakutei) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2568 (skk-insert-str (if skk-katakana (nthcdr 2 char) (nth 1 char)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2569 (if skk-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2570 (skk-set-okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2571 (setq skk-prefix "") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2572 (if (not skk-henkan-on) (skk-do-auto-fill)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2573
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2574 (defun skk-insert-str (str)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2575 ;; skk-insert $B$N%5%V%k!<%A%s!#(BSTR $B$rA^F~$9$k!#I,MW$G$"$l$P(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2576 ;; self-insert-after-hook $B$r%3!<%k$9$k!#(Boverwrite-mode $B$G$"$l$P!"E,@Z$K>e=q$-(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2577 ;; $B$r9T$&!#$3$N4X?t$O!"(Bskk-vip.el $B$G>e=q$-$5$l$k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2578 (skk-cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2579 (skk-insert-and-inherit str)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2580 (if (and skk-henkan-on (not skk-henkan-active))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2581 (if (and skk-auto-start-henkan (not skk-okurigana))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2582 (skk-auto-start-henkan str) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2583 (if (and (boundp 'self-insert-after-hook) self-insert-after-hook)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2584 (funcall self-insert-after-hook (- (point) (length str)) (point)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2585 (if overwrite-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2586 (skk-del-char-with-pad (skk-ovwrt-len (string-width str))) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2587
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2588 (defun skk-auto-start-henkan (str)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2589 ;; skk-auto-start-henkan-keyword-list $B$NMWAG$NJ8;zNs$rA^F~$7$?$H$-$K<+F0E*$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2590 ;; ($B%9%Z!<%9$rBG80$7$J$/$H$b(B) $BJQ49$r3+;O$9$k!#%(!<!_%$%=%U%H<R$N(B MSDOS $BMQ(B $B$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2591 ;; FEP$B!"(BWX2+ $BIw!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2592 (if (member str skk-auto-start-henkan-keyword-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2593 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2594 (skk-backward-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2595 (if (> (point) skk-henkan-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2596 (let ((skk-prefix ""))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2597 (skk-start-henkan (prefix-numeric-value current-prefix-arg)) )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2598
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2599 (defun skk-ovwrt-len (len)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2600 ;; $B>e=q$-$7$FNI$$D9$5$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2601 ;; $B$3$N4X?t$O!"(Bskk-vip.el $B$G>e=q$-$5$l$k(B (<(skk-vip.el/skk-ovwrt-len)>)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2602 (min (string-width
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2603 (skk-buffer-substring (point) (skk-save-point (end-of-line) (point))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2604 len ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2605
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2606 (defun skk-del-char-with-pad (length)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2607 ;; $BD9$5(B LENGTH $B$NJ8;z$r>C5n$9$k!#D4@0$N$?$a!"I,MW$G$"$l$P!"KvHx$K%9%Z!<%9$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2608 ;; $BA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2609 (let ((p (point)) (len 0))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2610 (while (< len length)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2611 (forward-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2612 (setq len (string-width (skk-buffer-substring (point) p))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2613 (delete-region p (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2614 (or (eq length len)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2615 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2616 (insert " ")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2617 (backward-char 1)))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2618
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2619 (defun skk-cancel-undo-boundary ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2620 ;; skk-insert-[aiue], skk-insert-comma, skk-insert-period, skk-kana-input,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2621 ;; skk-self-insert, skk-set-henkan-point, skk-zenkaku-insert $B$GO"B3$7$FF~NO(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2622 ;; $B$5$l$?(B 20 $BJ8;z$r(B 1 $B2s$N%"%s%I%%$NBP>]$H$9$k!#(B`20' $B$O(B keyboard.c $B$KDj$a$i(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2623 ;; $B$l$?%^%8%C%/%J%s%P!<!#(BMule-2.3 $BE:IU$N(B egg.el $B$r;29M$K$7$?!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2624 (if (and (< skk-self-insert-non-undo-count 20)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2625 (memq last-command
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2626 '(
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2627 ;; SKK abbrev $B%b!<%I$G$O!"%"%9%-!<J8;zF~NO$,(B Emacs $B%*%j%8%J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2628 ;; $B%k$N(B self-insert-command $B$K$h$j9T$J$o$l$F$$$k$N$G!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2629 ;; skk-self-insert-non-undo-count $B$r%$%s%/%j%a%s%H$9$k$3$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2630 ;; $B$,$G$-$J$$$N$G!"%"%s%I%%$r%(%_%e%l!<%H$G$-$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2631 ;; $B$7$+$b!"%+%s%^$d%T%j%*%I$rA^F~$7$?;~E@$G!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2632 ;; skk-abbrev-comma $B$d(B skk-abbrev-period $B$r;H$&$3$H$K$J$k$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2633 ;; $B$G!"%*%j%8%J%k$N%"%s%I%%$N5!G=$bB;$J$C$F$7$^$&!#8=<BLdBj(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2634 ;; $B$H$7$F$O!"(BSKK abbrev $B%b!<%I$O>JN,7A$H$7$F$N8+=P$78l$rA^(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2635 ;; $BF~$9$k$?$a$N%b!<%I$G$"$k$N$G!"D9$$8+=P$78l$rA^F~$9$k$3$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2636 ;; $B$O$"$^$j$J$/!"LdBj$b>.$5$$$H9M$($i$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2637 ;;skk-abbrev-comma
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2638 ;;skk-abbrev-period
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2639 skk-insert-comma
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2640 skk-insert-period
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2641 skk-kana-input
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2642 skk-self-insert
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2643 ;;skk-set-henkan-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2644 skk-zenkaku-insert )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2645 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2646 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2647 (setq skk-self-insert-non-undo-count
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2648 (1+ skk-self-insert-non-undo-count) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2649 (setq skk-self-insert-non-undo-count 1) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2650
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2651 (defun skk-get-next-rule (prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2652 (or (if (and (boundp 'skk-rom-kana-rule-tree)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2653 skk-rom-kana-rule-tree )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2654 (skk-assoc-tree prefix
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2655 skk-rom-kana-rule-tree )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2656 (cdr (assoc prefix skk-rom-kana-rule-list)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2657 (if (and (boundp 'skk-standard-rom-kana-rule-tree)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2658 skk-standard-rom-kana-rule-tree)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2659 (skk-assoc-tree prefix
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2660 skk-standard-rom-kana-rule-tree )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2661 (cdr (assoc prefix skk-standard-rom-kana-rule-list)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2662
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2663 (defun skk-get-fallback-rule (prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2664 (cdr (assoc prefix skk-fallback-rule-alist)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2665
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2666 (defun skk-check-postfix-rule (last)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2667 (let ((l skk-postfix-rule-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2668 ret)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2669 (while l
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2670 (if (eq (string-to-char last) (string-to-char (car (car l))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2671 (setq ret (cons (car l) ret)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2672 (setq l (cdr l)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2673 ret ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2674
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2675 (defun skk-get-postfix-rule (prefix &optional alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2676 (let ((alist (or alist skk-postfix-rule-alist)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2677 (cdr (assoc prefix alist)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2678
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2679 (defun skk-kana-input ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2680 "$B$+$JJ8;z$NF~NO$r9T$&%k!<%A%s!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2681 (interactive "*")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2682 (combine-after-change-calls
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2683 (if (and skk-henkan-active
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2684 skk-kakutei-early (not skk-process-okuri-early) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2685 (skk-kakutei) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2686 (let ((echo-keystrokes 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2687 ;; don't echo key strokes in the minibuffer.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2688 last-input
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2689 last-kana )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2690 (if skk-isearch-message (skk-isearch-message))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2691 (setq skk-prefix "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2692 (skk-set-marker skk-kana-start-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2693 (skk-unread-event (skk-character-to-event last-command-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2694 (condition-case nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2695 (let ((cont t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2696 prev )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2697 (while cont
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2698 (let* ((raw-event (skk-read-event))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2699 ;; ascii equivallence of raw-event or nil.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2700 (r-char (skk-event-to-character raw-event))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2701 input
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2702 prefix
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2703 next
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2704 low )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2705 (if skk-debug (message "%S" r-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2706 (if r-char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2707 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2708 (if (and
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2709 (or (and
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2710 skk-henkan-on (not skk-henkan-active)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2711 (= skk-henkan-start-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2712 skk-kana-start-point ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2713 (and
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2714 skk-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2715 (= (1+ skk-okurigana-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2716 ;; "*"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2717 skk-kana-start-point )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2718 (not (eq r-char (skk-downcase r-char))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2719 ;; this case takes care of the rare case where
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2720 ;; one types two characters in upper case
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2721 ;; consequtively. For example, one sometimes
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2722 ;; types "TE" when one should type "Te"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2723 (setq r-char (skk-downcase r-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2724 raw-event (skk-character-to-event r-char) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2725 (setq input (skk-char-to-string r-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2726 last-input input
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2727 prefix (concat skk-prefix input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2728 next (skk-get-next-rule prefix) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2729 (if skk-debug (message "%S" next))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2730 (if skk-isearch-message (skk-isearch-message))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2731 (if next
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2732 (let ((newprefix (car next))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2733 (output (nth 1 next)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2734 (setq low (nth 2 next))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2735 (skk-erase-prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2736 (if output
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2737 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2738 (setq last-kana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2739 (if skk-katakana (car output) (cdr output)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2740 ;; XXX for isearch
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2741 (skk-insert-str last-kana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2742 (if skk-okurigana (skk-set-okurigana))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2743 (if newprefix
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2744 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2745 (skk-set-marker skk-kana-start-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2746 (skk-insert-prefix newprefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2747 (setq skk-prefix newprefix))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2748 (setq cont nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2749 skk-prefix "" )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2750 (let ((type (skk-kana-input-char-type
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2751 (or r-char (skk-event-to-character raw-event)))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2752 (cond ((eq type 5) ; delete prefix
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2753 (setq cont nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2754 (if skk-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2755 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2756 (skk-delete-okuri-mark)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2757 (skk-set-marker skk-kana-start-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2758 skk-okurigana-start-point )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2759 (or (string= skk-prefix "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2760 (if skk-echo
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2761 (skk-erase-prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2762 (skk-message "$B%W%l%U%#%C%/%9(B \"%s\" $B$r>C$7$^$7$?(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2763 "Deleted prefix \"%s\""
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2764 skk-prefix )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2765 (setq skk-prefix "") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2766 (t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2767 (if (string= skk-prefix "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2768 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2769 (skk-message
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2770 "$BE,@Z$J%m!<%^;z$+$JJQ49%k!<%k$,$"$j$^$;$s!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2771 "No suitable rule." )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2772 (skk-set-marker skk-kana-start-point nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2773 (setq cont nil) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2774 (skk-erase-prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2775 (let ((output (skk-get-fallback-rule skk-prefix)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2776 (if output
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2777 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2778 (setq last-kana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2779 (if skk-katakana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2780 (car output) (cdr output)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2781 ;; XXX for isearch
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2782 (skk-insert-str last-kana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2783 (if skk-okurigana (skk-set-okurigana)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2784 (skk-unread-event raw-event)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2785 (skk-set-marker skk-kana-start-point nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2786 (setq skk-prefix "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2787 (setq cont nil) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2788
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2789 )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2790 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2791 )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2792 (quit
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2793 (setq skk-prefix "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2794 (skk-erase-prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2795 (skk-set-marker skk-kana-start-point nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2796 (keyboard-quit) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2797 (let ((postfix-rules (skk-check-postfix-rule last-input)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2798 (if postfix-rules
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2799 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2800 (let ((prefix last-kana))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2801 (if skk-isearch-message (skk-isearch-message)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2802 (let* ((raw-event (skk-read-event))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2803 ;; ascii equivallence of raw-event or nil.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2804 (r-char (skk-event-to-character raw-event)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2805 (if r-char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2806 (let ((new-char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2807 (skk-get-postfix-rule
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2808 (concat last-input (skk-char-to-string r-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2809 postfix-rules ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2810 prefix )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2811 (if new-char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2812 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2813 (setq skk-prefix (skk-char-to-string r-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2814 (skk-set-marker skk-kana-start-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2815 (skk-insert-prefix skk-prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2816 ;; XXX for isearch
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2817 (setq prefix (concat last-kana skk-prefix))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2818 (if skk-isearch-message (skk-isearch-message))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2819 (condition-case nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2820 (let* ((raw-event2 (skk-read-event))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2821 (r-char2 (skk-event-to-character raw-event2))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2822 (type (skk-kana-input-char-type r-char2))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2823 (prefix (concat skk-prefix
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2824 (skk-char-to-string r-char2)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2825 (next (skk-get-next-rule prefix) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2826 (cond (next
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2827 ;; rule $B$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2828 (setq skk-prefix "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2829 (skk-erase-prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2830 (skk-set-marker skk-kana-start-point nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2831 (skk-unread-event raw-event2)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2832 (skk-unread-event raw-event) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2833 ((eq type 5)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2834 ;; delete
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2835 (setq skk-prefix "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2836 (skk-erase-prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2837 (skk-set-marker skk-kana-start-point nil) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2838 (t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2839 (skk-erase-prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2840 (skk-insert-str
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2841 (if skk-katakana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2842 (car new-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2843 (cdr new-char)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2844 (skk-unread-event raw-event2) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2845 (quit
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2846 (setq skk-prefix "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2847 (skk-erase-prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2848 (skk-set-marker skk-kana-start-point nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2849 (skk-unread-event raw-event)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2850 (keyboard-quit) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2851 (skk-unread-event raw-event) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2852 (skk-unread-event raw-event) )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2853 )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2854
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2855 (defun skk-translate-okuri-char (okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2856 (if skk-okuri-char-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2857 (cdr (assoc (skk-substring-head-character okurigana) skk-okuri-char-alist)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2858
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2859 (defun skk-set-okurigana ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2860 ;; $B8+=P$78l$+$i(B skk-henkan-okurigana, skk-henkan-key $B$N3FCM$r%;%C%H$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2861 (if skk-katakana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2862 (skk-hiragana-region skk-henkan-start-point (point)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2863 (skk-set-marker skk-henkan-end-point skk-okurigana-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2864 ;; just in case
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2865 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2866 (goto-char skk-okurigana-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2867 (if (not (eq (following-char) ?*)) ;?*
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2868 (insert "*") ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2869 (setq skk-henkan-okurigana (skk-buffer-substring
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2870 (1+ skk-okurigana-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2871 (point) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2872 (setq skk-henkan-key (concat (skk-buffer-substring skk-henkan-start-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2873 skk-henkan-end-point )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2874 (or (skk-translate-okuri-char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2875 skk-henkan-okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2876 skk-okuri-char ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2877 skk-prefix "" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2878 (if skk-debug
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2879 (message "%S %S %S" skk-henkan-okurigana skk-henkan-key skk-okuri-char) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2880 (delete-region skk-okurigana-start-point (1+ skk-okurigana-start-point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2881 (setq skk-henkan-count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2882 (skk-henkan)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2883 (setq skk-okurigana nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2884 (cancel-undo-boundary) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2885
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2886 ;;;; other inputting functions
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2887
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2888 (defun skk-insert-period (count)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2889 "$B8+=P$7$NJd40$r9T$C$F$$$k:GCf$G$"$l$P!"<!$N8uJd$rI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2890 $BJd40$ND>8e$G$J$1$l$P!"(B\".\" $B$rA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2891 SKK abbrev $B%b!<%I$G$O!"(Bskk-abbrev-period $B4X?t$r;HMQ$9$k$3$H!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2892 (interactive "*P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2893 (if (and (eq last-command 'skk-completion) (not skk-henkan-active))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2894 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2895 (setq this-command 'skk-completion)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2896 (skk-completion nil) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2897 (skk-self-insert count)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2898 (setq skk-last-henkan-result nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2899 (skk-set-marker skk-last-henkan-point nil) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2900
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2901 (defun skk-insert-comma (count)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2902 "$B8+=P$7$NJd40$r9T$C$F$$$k:GCf$G$"$l$P!"D>A0$N8uJd$rI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2903 $BJd40$ND>8e$G$J$1$l$P!"(B\",\" $B$rA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2904 SKK abbrev $B%b!<%I$G$O!"(Bskk-abbrev-comma $B4X?t$r;HMQ$9$k$3$H!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2905 (interactive "*P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2906 (if (and (eq last-command 'skk-completion) (not skk-henkan-active))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2907 (skk-previous-completion)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2908 (skk-self-insert count) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2909
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2910 (defun skk-abbrev-period (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2911 "SKK abbrev $B%b!<%I$G8+=P$7$NJd40$r9T$C$F$$$k:GCf$G$"$l$P!"<!$N8uJd$rI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2912 $BJd40$ND>8e$G$J$1$l$P!"%*%j%8%J%k$N%-!<3d$jIU$1$N%3%^%s%I$r%(%_%e%l!<%H$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2913 SKK abbrev $B%b!<%I0J30$G$O!"(Bskk-insert-period $B4X?t$r;HMQ$9$k$3$H!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2914 (interactive "*P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2915 (if (eq last-command 'skk-completion)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2916 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2917 (setq this-command 'skk-completion)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2918 (skk-completion nil) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2919 (skk-emulate-original-map arg) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2920
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2921 (defun skk-abbrev-comma (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2922 "SKK abbrev $B%b!<%I$G8+=P$7$NJd40$r9T$C$F$$$k:GCf$G$"$l$P!"D>A0$N8uJd$rI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2923 $BJd40$ND>8e$G$J$1$l$P!"%*%j%8%J%k$N%-!<3d$jIU$1$N%3%^%s%I$r%(%_%e%l!<%H$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2924 SKK abbrev $B%b!<%I0J30$G$O!"(Bskk-insert-comma $B4X?t$r;HMQ$9$k$3$H!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2925 (interactive "*P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2926 (if (eq last-command 'skk-completion)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2927 (skk-previous-completion)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2928 (skk-emulate-original-map arg) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2929
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2930 (defun skk-self-insert (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2931 "$B$R$i$,$J!"%+%?%+%J!"$b$7$/$O(B ascii $BJ8;z$r%+%l%s%H%P%C%U%!$KA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2932 $B$R$i$,$J%b!<%I$b$7$/$O%+%?%+%J%b!<%I$G$O!"(Bskk-input-vector $B$r%F!<%V%k$H$7$F!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2933 $B:G8e$KF~NO$5$l$?%-!<$KBP1~$9$kJ8;z$rA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2934 ascii $B%b!<%I$G$O!"%-!<F~NO$r$=$N$^$^A^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2935 skk-auto-insert-paren $B$NCM$,(B non-nil $B$N>l9g$G!"(Bskk-auto-paren-string-alist $B$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2936 $BBP1~$9$kJ8;zNs$,$"$k$H$-$O!"$=$NBP1~$9$kJ8;zNs(B ($B$+$C$3N`(B) $B$r<+F0E*$KA^F~$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2937 (interactive "*P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2938 (let ((str (aref skk-input-vector last-command-char)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2939 ;; Overlay $B$r>C$9$?$a$K@h$K3NDj$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2940 (if skk-henkan-active (skk-kakutei))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2941 (if (not str)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2942 (skk-emulate-original-map arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2943 (let* ((count (prefix-numeric-value arg))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2944 (count2 count)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2945 (pair-str
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2946 (and skk-auto-insert-paren
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2947 (cdr (assoc str skk-auto-paren-string-alist)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2948 (pair-str-inserted 0) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2949 (while (> count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2950 (skk-insert-str str)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2951 (setq count (1- count)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2952 (if (not pair-str)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2953 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2954 (while (> count2 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2955 (if (not (string= pair-str (char-to-string (following-char))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2956 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2957 (setq pair-str-inserted (1+ pair-str-inserted))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2958 (skk-insert-str pair-str) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2959 (setq count2 (1- count2)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2960 (if (not (eq pair-str-inserted 0))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2961 (backward-char pair-str-inserted) ))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2962
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2963 (defun skk-zenkaku-insert (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2964 "$BA41QJ8;z$r%+%l%s%H%P%C%U%!$KA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2965 skk-zenkaku-vector $B$r%F!<%V%k$H$7$F!":G8e$KF~NO$5$l$?%-!<$KBP1~$9$kJ8;z$rA^F~(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2966 $B$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2967 skk-auto-insert-paren $B$NCM$,(B non-nil $B$N>l9g$G!"(Bskk-auto-paren-string-alist $B$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2968 $BBP1~$9$kJ8;zNs$,$"$k$H$-$O!"$=$NBP1~$9$kJ8;zNs(B ($B$+$C$3N`(B) $B$r<+F0E*$KA^F~$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2969 (interactive "*p")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2970 (let* ((str (aref skk-zenkaku-vector last-command-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2971 (arg2 arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2972 (pair-str
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2973 (and skk-auto-insert-paren
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2974 (cdr (assoc str skk-auto-paren-string-alist)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2975 (pair-str-inserted 0) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2976 (while (> arg 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2977 (skk-insert-str str)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2978 (setq arg (1- arg)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2979 (if (not pair-str)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2980 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2981 (while (> arg2 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2982 (if (not (string= pair-str (char-to-string (following-char))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2983 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2984 (setq pair-str-inserted (1+ pair-str-inserted))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2985 (skk-insert-str pair-str) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2986 (setq arg2 (1- arg2)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2987 (if (not (eq pair-str-inserted 0))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2988 (backward-char pair-str-inserted) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2989
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2990 ;;;; henkan routines
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2991 (defun skk-henkan ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2992 ;; $B%+%J$r4A;zJQ49$9$k%a%$%s%k!<%A%s!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2993 (let (mark new-word kakutei-henkan)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2994 (if (string= skk-henkan-key "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2995 (skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2996 (if (not (eobp))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2997 ;; we use mark to go back to the correct position after henkan
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2998 (setq mark (skk-save-point (forward-char 1) (point-marker))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2999 (if (not skk-henkan-active)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3000 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3001 (skk-change-marker)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3002 (setq skk-current-search-prog-list skk-search-prog-list) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3003 ;; skk-henkan-1 $B$NCf$+$i%3!<%k$5$l$k(B skk-henkan-show-candidate $B$+$i(B throw
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3004 ;; $B$5$l$k!#$3$3$G%-%c%C%A$7$?>l9g$O!"(B?x $B$,%9%H%j!<%`$KLa$5$l$F$$$k$N$G!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3005 ;; $B$3$N4X?t$r=P$F!"(Bskk-previous-candidates $B$X$f$/!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3006 (catch 'unread
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3007 (setq new-word (or (skk-henkan-1) (skk-henkan-in-minibuff))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3008 kakutei-henkan skk-kakutei-flag )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3009 (if new-word
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3010 (skk-insert-new-word new-word) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3011 (if mark
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3012 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3013 (goto-char mark)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3014 ;; $B;2>H$5$l$F$$$J$$%^!<%+!<$O!"(BGarbage Collection $B$,%3!<%k$5$l$?$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3015 ;; $B$-$K2s<}$5$l$k$,!"$=$l$^$G$N4V!"%F%-%9%H$N$I$3$+$r;X$7$F$$$k$H!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3016 ;; $B%F%-%9%H$N%"%C%W%G!<%H$N:]$K$=$N%^!<%+!<CM$r99?7$9$kI,MW$,$"$k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3017 ;; $B$N$G!"$I$3$b;X$5$J$$$h$&$K$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3018 (skk-set-marker mark nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3019 (backward-char 1) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3020 (goto-char (point-max)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3021 (if kakutei-henkan
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3022 ;; $B3NDj$7$F$bNI$$(B ($B3NDj<-=q$K8uJd$r8+$D$1$?>l9g!"<-(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3023 ;; $B=qEPO?$r9T$C$?>l9g!"$"$k$$$O%_%K%P%C%U%!$+$i8uJd(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3024 ;; $B$rA*Br$7$?>l9g(B) $B$N$J$i!"(BOverlay $B$K$h$kI=<(JQ99$;(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3025 ;; $B$:$K$=$N$^$^3NDj!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3026 (skk-kakutei (if (skk-numeric-p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3027 (skk-get-simply-current-candidate 'noconv)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3028 new-word )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3029 )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3030
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3031 (defun skk-henkan-1 ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3032 ;; skk-henkan $B$N%5%V%k!<%A%s!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3033 (let (new-word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3034 (if (eq skk-henkan-count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3035 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3036 (if (and (eq last-command 'skk-undo-kakutei-henkan)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3037 (eq (car (car skk-current-search-prog-list))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3038 'skk-search-kakutei-jisyo-file ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3039 ;; in this case, we should not search kakutei jisyo.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3040 (setq skk-current-search-prog-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3041 (cdr skk-current-search-prog-list) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3042 (setq skk-henkan-list (skk-search))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3043 (if (null skk-henkan-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3044 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3045 (setq new-word (skk-get-current-candidate))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3046 (if skk-kakutei-flag
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3047 ;; found the unique candidate in kakutei jisyo
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3048 (setq this-command 'skk-kakutei-henkan
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3049 skk-last-kakutei-henkan-key skk-henkan-key ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3050 ;; $BJQ492s?t$,(B 1 $B0J>e$N$H$-!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3051 (setq new-word (skk-get-current-candidate))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3052 (if (not new-word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3053 ;; $B?7$7$$8uJd$r8+$D$1$k$+!"(Bskk-current-search-prog-list $B$,6u$K$J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3054 ;; $B$k$^$G(B skk-search $B$rO"B3$7$F%3!<%k$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3055 (while (and skk-current-search-prog-list (not new-word))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3056 (setq skk-henkan-list (skk-nunion skk-henkan-list (skk-search))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3057 new-word (skk-get-current-candidate) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3058 (if (and new-word (> skk-henkan-count 3))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3059 ;; show candidates in minibuffer
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3060 (setq new-word (skk-henkan-show-candidates) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3061 new-word ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3062
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3063 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3064 (defun skk-get-current-candidate ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3065 (if (skk-numeric-p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3066 (let (val)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3067 (skk-uniq-numerals)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3068 (setq val (skk-numeric-convert (skk-get-simply-current-candidate)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3069 (if (not skk-recompute-numerals-key)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3070 val
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3071 (skk-uniq-numerals)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3072 (skk-numeric-convert (skk-get-simply-current-candidate)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3073 (skk-get-simply-current-candidate) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3074
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3075 (defun skk-henkan-show-candidates ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3076 ;; $B%_%K%P%C%U%!$GJQ49$7$?8uJd72$rI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3077 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3078 (let* ((candidate-keys ; $BI=<(MQ$N%-!<%j%9%H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3079 (mapcar (function (lambda (c) (char-to-string (upcase c))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3080 skk-henkan-show-candidates-keys ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3081 key-num-alist ; $B8uJdA*BrMQ$NO"A[%j%9%H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3082 (key-num-alist1 ; key-num-alist $B$rAH$_N)$F$k$?$a$N:n6HMQO"A[%j%9%H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3083 (let ((count 6))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3084 (mapcar (function (lambda (key) (prog1 (cons key count)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3085 (setq count (1- count)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3086 ;; $B5U$5$^$K$7$F$*$$$F!"I=<($9$k8uJd$N?t$,>/$J$+$C$?$i@h(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3087 ;; $BF,$+$i4v$D$+:o$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3088 (reverse skk-henkan-show-candidates-keys) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3089 (loop 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3090 inhibit-quit
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3091 henkan-list new-one str reverse n )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3092 ;; $BG0$N$?$a!#(Bskk-previous-candidate $B$r;2>H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3093 (if skk-use-face (skk-henkan-face-off))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3094 (delete-region skk-henkan-start-point skk-henkan-end-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3095 (while loop
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3096 (if str
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3097 (let (message-log-max)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3098 (message str) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3099 (cond (reverse
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3100 (setq loop (1- loop)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3101 henkan-list (nthcdr (+ 4 (* loop 7)) skk-henkan-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3102 reverse nil ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3103 (skk-exit-show-candidates
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3104 ;; $B8uJd$,?T$-$F$7$^$C$F!"(Bskk-henkan-show-candidates ->
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3105 ;; skk-henkan-in-minibuff -> skk-henkan
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3106 ;; -> skk-henkan-show-candidates $B$N=g$G!":F$S$3$N4X?t$,8F$P$l(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3107 ;; $B$?$H$-$O!"$3$3$G(B henkan-list $B$H(B loop $B$r7W;;$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3108 (setq henkan-list (nthcdr skk-henkan-count skk-henkan-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3109 loop (car skk-exit-show-candidates)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3110 skk-exit-show-candidates nil ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3111 (t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3112 ;; skk-henkan-show-candidates-keys $B$N:G=*$N%-!<$KBP1~$9$k8uJd(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3113 ;; $B$,=P$F$/$k$^$G%5!<%A$rB3$1$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3114 (if (skk-numeric-p) (skk-uniq-numerals))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3115 (while (and skk-current-search-prog-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3116 (null (nthcdr (+ 11 (* loop 7)) skk-henkan-list)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3117 (setq skk-henkan-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3118 (skk-nunion skk-henkan-list (skk-search)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3119 (if (skk-numeric-p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3120 (skk-uniq-numerals) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3121 (if (skk-numeric-p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3122 (skk-numeric-convert*7) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3123 (setq henkan-list (nthcdr (+ 4 (* loop 7))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3124 skk-henkan-list ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3125 (setq n (skk-henkan-show-candidate-subr candidate-keys henkan-list)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3126 (if (> n 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3127 (condition-case nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3128 (let* ((event (skk-read-event))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3129 (char (skk-event-to-character event))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3130 num )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3131 (if (null char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3132 (skk-unread-event event)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3133 (setq key-num-alist (nthcdr (- 7 n) key-num-alist1))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3134 (if (null key-num-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3135 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3136 (setq num (cdr (or (assq char key-num-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3137 (if (skk-lower-case-p char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3138 (assq (upcase char) key-num-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3139 (assq (downcase char) key-num-alist) )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3140 (cond (num
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3141 (setq new-one (nth num henkan-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3142 skk-henkan-count (+ 4 (* loop 7) num)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3143 skk-kakutei-flag t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3144 loop nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3145 str nil ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3146 ((eq char (skk-int-char 32)) ; space
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3147 (if (or skk-current-search-prog-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3148 (nthcdr 7 henkan-list) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3149 (setq loop (1+ loop)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3150 str nil )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3151 ;; $B8uJd$,?T$-$?!#$3$N4X?t$+$iH4$1$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3152 (let ((last-showed-index (+ 4 (* loop 7))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3153 (setq skk-exit-show-candidates
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3154 ;; cdr $BIt$O!"<-=qEPO?$KF~$kA0$K:G8e$KI=<($7(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3155 ;; $B$?8uJd72$NCf$G:G=i$N8uJd$r;X$9%$%s%G%/%9(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3156 (cons loop last-showed-index) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3157 ;; $B<-=qEPO?$KF~$k!#(Bskk-henkan-count $B$O(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3158 ;; skk-henkan-list $B$N:G8e$N8uJd$N<!(B ($BB8:_$7$J$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3159 ;; --- nil )$B$r;X$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3160 (setq skk-henkan-count (+ last-showed-index n)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3161 loop nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3162 str nil ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3163 ((eq char skk-previous-candidate-char) ; ?x
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3164 (if (eq loop 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3165 ;; skk-henkan-show-candidates $B$r8F$VA0$N>uBV$KLa(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3166 ;; $B$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3167 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3168 (setq skk-henkan-count 4)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3169 (skk-unread-event (skk-character-to-event
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3170 skk-previous-candidate-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3171 ;; skk-henkan $B$^$G0l5$$K(B throw $B$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3172 (throw 'unread nil) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3173 ;; $B0l$DA0$N8uJd72$r%(%3!<%(%j%"$KI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3174 (setq reverse t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3175 str nil )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3176 (t (skk-message "\"%c\" $B$OM-8z$J%-!<$G$O$"$j$^$;$s!*(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3177 "\"%c\" is not valid here!"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3178 char )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3179 (sit-for 1) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3180 (quit
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3181 ;; skk-previous-candidate $B$X(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3182 (setq skk-henkan-count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3183 (skk-unread-event (skk-character-to-event
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3184 skk-previous-candidate-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3185 ;; skk-henkan $B$^$G0l5$$K(B throw $B$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3186 (throw 'unread nil) )))) ; end of while loop
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3187 (if (consp new-one)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3188 (cdr new-one)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3189 new-one ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3190
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3191 (defun skk-henkan-show-candidate-subr (keys candidates)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3192 ;; key $B$H(B candidates $B$rAH$_9g$o$;$F(B 7 $B$D0J2<$N8uJd72(B ($B8uJd?t$,B-$j$J$+$C$?$i(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3193 ;; $B$=$3$GBG$A@Z$k(B) $B$NJ8;zNs$r:n$j!"%_%K%P%C%U%!$KI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3194 (let ((n 0) str cand
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3195 message-log-max )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3196 (if (not (car candidates))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3197 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3198 (setq n 1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3199 ;; $B:G=i$N8uJd$NA0$K6uGr$r$/$C$D$1$J$$$h$&$K:G=i$N8uJd$@$1@h$K<h$j(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3200 ;; $B=P$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3201 str (concat (car keys) ":" (skk-%-to-%%
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3202 (if (consp (car candidates))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3203 (cdr (car candidates))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3204 (car candidates) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3205 ;; $B;D$j$N(B 6 $B$D$r<h$j=P$9!#8uJd$H8uJd$N4V$r6uGr$G$D$J$0!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3206 (while (and (< n 7) (setq cand (nth n candidates)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3207 (setq cand (skk-%-to-%% (if (consp cand) (cdr cand) cand))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3208 str (concat str " " (nth n keys) ":" cand)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3209 n (1+ n) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3210 (message "%s [$B;D$j(B %d%s]"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3211 str (length (nthcdr n candidates))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3212 (make-string (length skk-current-search-prog-list) ?+) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3213 ;; $BI=<($9$k8uJd?t$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3214 n ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3215
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3216 (defun skk-%-to-%% (str)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3217 ;; STR $BCf$K(B % $B$r4^$`J8;z$,$"$C$?$i!"(B%% $B$K$7$F(B message $B$G%(%i!<$K$J$i$J$$$h$&(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3218 ;; $B$K$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3219 (let ((tail str)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3220 temp beg end )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3221 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3222 (while (string-match "%+" tail)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3223 (setq beg (match-beginning 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3224 end (match-end 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3225 temp (concat temp (substring tail 0 beg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3226 (make-string (* 2 (- end beg)) ?%) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3227 tail (substring tail end) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3228 (concat temp tail) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3229
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3230 (defun skk-henkan-in-minibuff ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3231 ;; $B%_%K%P%C%U%!$G<-=qEPO?$r$7!"EPO?$7$?%(%s%H%j$NJ8;zNs$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3232 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3233 (let ((enable-recursive-minibuffers t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3234 ;; $BJQ49Cf$K(B isearch message $B$,=P$J$$$h$&$K$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3235 skk-isearch-message new-one )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3236 (add-hook 'minibuffer-setup-hook 'skk-setup-minibuffer)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3237 (condition-case nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3238 (setq new-one
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3239 (read-from-minibuffer
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3240 (concat (or (if (skk-numeric-p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3241 (skk-numeric-midasi-word) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3242 (if skk-okuri-char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3243 (skk-compute-henkan-key2)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3244 skk-henkan-key ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3245 " " )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3246 (quit
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3247 (setq new-one "") ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3248 (if (string= new-one "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3249 (if skk-exit-show-candidates
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3250 ;; $B%_%K%P%C%U%!$KI=<($7$?8uJd$,?T$-$F<-=qEPO?$KF~$C$?$,!"6uJ8;z(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3251 ;; $BNs$,EPO?$5$l$?>l9g!#:G8e$K%_%K%P%C%U%!$KI=<($7$?8uJd72$r:FI=(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3252 ;; $B<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3253 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3254 (setq skk-henkan-count (cdr skk-exit-show-candidates))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3255 (skk-henkan) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3256 ;; skk-henkan-show-candidates $B$KF~$kA0$K8uJd$,?T$-$?>l9g(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3257 (setq skk-henkan-count (1- skk-henkan-count))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3258 (if (eq skk-henkan-count -1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3259 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3260 ;; $BAw$j$"$j$NJQ49$G<-=qEPO?$KF~$j!"6uJ8;z$rEPO?$7$?8e!"$=$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3261 ;; $B$^$^:FEYAw$j$J$7$H$7$FJQ49$7$?>l9g$O(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3262 ;; skk-henkan-okurigana, skk-okuri-char $B$NCM$r(B nil $B$K$7$J$1(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3263 ;; $B$l$P!"$=$l$>$l$NCM$K8E$$Aw$j2>L>$,F~$C$?$^$^$G8!:w$K<:GT(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3264 ;; $B$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3265 (setq skk-henkan-okurigana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3266 skk-okurigana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3267 skk-okuri-char nil )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3268 (skk-change-marker-to-white) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3269 ;; skk-henkan-count $B$,(B -1 $B$G$J$1$l$P!"%+%l%s%H%P%C%U%!$G$O:G8e$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3270 ;; $B8uJd$rI=<($7$?$^$^$J$N$G(B ($BI=<(4XO"$G$O2?$b$7$J$/$F$b!"$b$&4{(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3271 ;; $B$KK>$_$N>uBV$K$J$C$F$$$k(B) $B2?$b$7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3272 ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3273 ;; $B%_%K%P%C%U%!$GJQ49$7$?J8;zNs$,$"$k(B ($B6uJ8;zNs$G$J$$(B) $B$H$-!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3274 ;; $BKvHx$N6uGr$r<h$j=|$/!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3275 (if (string-match "[ $B!!(B]+$" new-one)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3276 (setq new-one (substring new-one 0 (match-beginning 0))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3277 (if (skk-numeric-p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3278 (setq new-one (skk-adjust-numeric-henkan-data new-one))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3279 ;; $B$9$4$/$?$/$5$s$N8uJd$,$"$k>l9g$K!"$=$N:G8e$K?7$7$$8uJd$r2C$($k$N$O(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3280 ;; $B$1$C$3$&9|$@$,!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3281 (setq skk-henkan-list (nconc skk-henkan-list (list new-one))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3282 ;; $B%U%i%0$r%*%s$K$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3283 skk-kakutei-flag t ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3284 (setq skk-henkan-in-minibuff-flag t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3285 skk-touroku-count (1+ skk-touroku-count) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3286 ;; (nth skk-henkan-count skk-henkan-list) $B$,(B nil $B$@$+$i<-=qEPO?$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3287 ;; $BF~$C$F$$$k!#(Bskk-henkan-count $B$r%$%s%/%j%a%s%H$9$kI,MW$O$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3288 ;; (setq skk-henkan-count (1+ skk-henkan-count))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3289 ;; new-one $B$,6uJ8;zNs$@$C$?$i(B nil $B$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3290 (if (not (string= new-one "")) new-one) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3291
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3292 (defun skk-compute-henkan-key2 ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3293 ;; skk-henkan-okurigana $B$,(B non-nil $B$J$i(B skk-henkan-key $B$+$i!"$+$D$F(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3294 ;; skk-henkan-key2 $B$H8F$P$l$F$$$?$b$N$r:n$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3295 ;; skk-henkan-key2 $B$H$O!"!V4A;zItJ,$NFI$_(B + "*" + $BAw$j2>L>!W$N7A<0$NJ8;zNs$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3296 ;; $B8@$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3297 (if skk-henkan-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3298 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3299 (if (string-match "[a-z]+$" skk-henkan-key)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3300 (concat (substring skk-henkan-key 0 (match-beginning 0))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3301 "*" skk-henkan-okurigana )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3302
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3303 (defun skk-setup-minibuffer ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3304 ;; $B%+%l%s%H%P%C%U%!$NF~NO%b!<%I$K=>$$%_%K%P%C%U%!$NF~NO%b!<%I$r@_Dj$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3305 (let ((mode (skk-spy-origin-buffer-mode)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3306 (if (not mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3307 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3308 (cond ((eq mode 'hirakana) (skk-j-mode-on))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3309 ((eq mode 'katakana) (skk-j-mode-on t))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3310 ((eq mode 'abbrev) (skk-abbrev-mode-on))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3311 ((eq mode 'ascii) (skk-ascii-mode-on))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3312 ((eq mode 'zenkaku) (skk-zenkaku-mode-on))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3313
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3314 (defun skk-spy-origin-buffer-mode ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3315 ;; $B%_%K%P%C%U%!$K5o$k$H$-$K%*%j%8%J%k$N%+%l%s%H%P%C%U%!$NF~NO%b!<%I$rDe;!$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3316 (with-current-buffer (skk-minibuffer-origin)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3317 (if skk-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3318 (cond (skk-abbrev-mode 'abbrev)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3319 (skk-ascii-mode 'ascii)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3320 (skk-zenkaku-mode 'zenkaku)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3321 (skk-katakana 'katakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3322 (t 'hirakana) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3323
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3324 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3325 (defun skk-previous-candidate ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3326 "$B"'%b!<%I$G$"$l$P!"0l$DA0$N8uJd$rI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3327 $B"'%b!<%I0J30$G$O%+%l%s%H%P%C%U%!$K(B \"x\" $B$rA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3328 $B3NDj<-=q$K$h$k3NDj$ND>8e$K8F$V$H3NDj$,%"%s%I%%$5$l$F!"3NDjA0$N>uBV$G(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3329 skk-last-kakutei-henkan-key $B$,%+%l%s%H%P%C%U%!$KA^F~$5$l$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3330 (interactive)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3331 (if (not skk-henkan-active)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3332 (if (not (eq last-command 'skk-kakutei-henkan))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3333 (skk-kana-input)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3334 ;; restore the state just before the last kakutei henkan.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3335 (delete-region skk-henkan-start-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3336 (skk-set-henkan-point-subr)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3337 (insert skk-last-kakutei-henkan-key)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3338 (setq this-command 'skk-undo-kakutei-henkan) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3339 (if (string= skk-henkan-key "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3340 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3341 ;; $B6uGr$rA^F~$7$F$*$$$F!"8e$G(B delete-backward-char $B$r;H$C$F>C$9J}K!$G$O!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3342 ;; overwrite-mode $B$N$H$-$K$=$N6uGr$r>C$;$J$$!#=>$$(B skk-henkan $B$G9T$J$C$F(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3343 ;; $B$$$kJ}K!$HF1$8$b$N$r;H$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3344 ;;(insert " ")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3345 (let ((mark
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3346 (if (not (eobp))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3347 (skk-save-point (forward-char 1) (point-marker)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3348 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3349 (if (eq skk-henkan-count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3350 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3351 (if skk-okuri-char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3352 ;; roman prefix for okurigana should be removed.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3353 (setq skk-henkan-key (substring skk-henkan-key 0 -1)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3354 (setq skk-henkan-count -1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3355 skk-henkan-list nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3356 skk-henkan-okurigana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3357 skk-okuri-char nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3358 skk-okurigana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3359 skk-prefix "" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3360 (if skk-auto-okuri-process
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3361 (skk-init-auto-okuri-variables) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3362 (if (skk-numeric-p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3363 (skk-init-numeric-conversion-variables) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3364 ;; Emacs 19.28 $B$@$H2?8N$+(B Overlay $B$r>C$7$F$*$+$J$$$H!"<!$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3365 ;; insert $B$5$l$k(B skk-henkan-key Overlay $B$,$+$+$C$F$7$^$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3366 (if skk-use-face (skk-henkan-face-off))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3367 (delete-region skk-henkan-start-point skk-henkan-end-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3368 (goto-char skk-henkan-end-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3369 (insert skk-henkan-key)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3370 (skk-change-marker-to-white) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3371 (setq skk-henkan-count (1- skk-henkan-count))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3372 (skk-insert-new-word (skk-get-simply-current-candidate)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3373 ;;(if (and (> (point) 1) (eq (char-after (1- (point))) 32))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3374 ;; delete-backward-char $B$G$O!"(Boverwrite-mode $B$N$H$-$KD>A0$N6uGr$r>C$;(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3375 ;; $B$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3376 ;; (delete-backward-char 1) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3377 (if mark
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3378 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3379 (goto-char mark)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3380 (skk-set-marker mark nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3381 (backward-char 1) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3382 (goto-char (point-max)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3383 (if (and skk-abbrev-mode (eq skk-henkan-count -1))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3384 (skk-abbrev-mode-on) )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3385
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3386 (defun skk-insert-new-word (word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3387 ;; $B8+=P$78l$r>C$7!"$=$N>l=j$XJQ497k2L$NJ8;zNs$rA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3388 (let (func)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3389 ;; $BG0$N$?$a!#2?8N$3$l$rF~$l$k$N$+$K$D$$$F$O!"(Bskk-previous-candidate $B$r;2>H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3390 (if skk-use-face (skk-henkan-face-off))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3391 (delete-region skk-henkan-start-point skk-henkan-end-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3392 (goto-char skk-henkan-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3393 ;; (^_^;) $B$N$h$&$J8+=P$78l$KBP$7!"(Bread-from-string $B$r8F$V$H%(%i!<$K$J$k$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3394 ;; $B$G!"(Bcondition-case $B$G$=$N%(%i!<$rJa$^$($k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3395 (condition-case nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3396 (setq func (car (read-from-string word)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3397 (error (setq func word)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3398 ;; symbolp $B$G(B nil $B$rJV$9$h$&$JC18l$r!"(Bsymbolp $B$G%A%'%C%/$9$k$3$HL5$/$$$-(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3399 ;; $B$J$j(B fboundp $B$G%A%'%C%/$9$k$H!"%(%i!<$K$J$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3400 ;; e.x. "(#0)"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3401 (condition-case nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3402 (if (and (listp func) (symbolp (car func)) (fboundp (car func)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3403 (insert (eval func))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3404 (insert word) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3405 ;; $BJ8;zNs$rJV$5$J$$(B Lisp $B%W%m%0%i%`$rI>2A$7$F$b%(%i!<$K$J$i$J$$J}$,JXMx!)(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3406 (error nil) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3407 (skk-set-marker skk-henkan-end-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3408 (if skk-use-face (skk-henkan-face-on))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3409 (if skk-insert-new-word-function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3410 (funcall skk-insert-new-word-function) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3411
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3412 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3413 (defun skk-kakutei (&optional word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3414 "$B8=:_I=<($5$l$F$$$k8l$G3NDj$7!"<-=q$N99?7$r9T$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3415 $B%*%W%7%g%J%k0z?t$N(B WORD $B$rEO$9$H!"8=:_I=<($5$l$F$$$k8uJd$H$OL54X78$K(B WORD $B$G3N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3416 $BDj$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3417 ;; read only $B$G%(%i!<$K$J$k$h$&$K$9$k$H(B read only $B%P%C%U%!$G(B SKK $B$,5/F0$G$-(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3418 ;; $B$J$/$J$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3419 (interactive)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3420 (let ((inhibit-quit t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3421 converted kakutei-word )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3422 (if skk-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3423 (skk-j-mode-on skk-katakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3424 ;; $B%+%l%s%H%P%C%U%!$G$^$@(B skk-mode $B$,%3!<%k$5$l$F$$$J$+$C$?$i!"%3!<%k$9(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3425 ;; $B$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3426 (skk-mode 1) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3427 (if (not skk-henkan-on)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3428 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3429 (if (not skk-henkan-active)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3430 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3431 (setq kakutei-word
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3432 ;; $B3NDj<-=q$N8l$G3NDj$7$?$H$-$O!"<-=q$K$=$N8l$r=q$-9~$`I,MW$b$J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3433 ;; $B$$$7!"99?7$9$kI,MW$b$J$$$H;W$C$F$$$?$,!"Jd40$r9T$J$&$H$-$O!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3434 ;; $B8D?M<-=q$r;2>H$9$k(B ($B3NDj<-=q$O;2>H$7$J$$(B) $B$N$G!"B?>/;q8;$H;~(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3435 ;; $B4V$rL5BL$K$7$F$b!"8D?M<-=q$K3NDj<-=q$N%(%s%H%j$r=q$-9~$s$G99(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3436 ;; $B?7$b$7$F$*$/!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3437 (or word (skk-get-simply-current-candidate (skk-numeric-p))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3438 (if (or
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3439 (and (not skk-search-excluding-word-pattern-function) kakutei-word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3440 (and
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3441 kakutei-word
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3442 skk-search-excluding-word-pattern-function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3443 (not
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3444 (funcall skk-search-excluding-word-pattern-function kakutei-word) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3445 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3446 (skk-update-jisyo kakutei-word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3447 ;; keep this order
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3448 (setq skk-last-henkan-result kakutei-word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3449 (skk-set-marker skk-last-henkan-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3450 (if (skk-numeric-p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3451 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3452 (setq converted (skk-get-simply-current-candidate))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3453 (skk-update-jisyo-for-numerals kakutei-word converted) )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3454 (skk-kakutei-cleanup-henkan-buffer) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3455 (skk-kakutei-save-and-init-variables
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3456 (if (skk-numeric-p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3457 (cons kakutei-word converted)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3458 kakutei-word ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3459 (skk-do-auto-fill)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3460 (skk-set-cursor-color (if skk-katakana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3461 skk-katakana-cursor-color
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3462 skk-hirakana-cursor-color ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3463
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3464 (defun skk-kakutei-cleanup-henkan-buffer ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3465 ;; $B3NDjD>8e$N%P%C%U%!$N@07A$r9T$J$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3466 ;; $B$3$N4X?t$O!"(Bskk-vip.el $B$G>e=q$-$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3467 (if skk-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3468 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3469 (skk-delete-okuri-mark)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3470 (if (and skk-katakana skk-convert-okurigana-into-katakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3471 (skk-katakana-region skk-henkan-end-point (point)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3472 (skk-delete-henkan-markers)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3473 (if (and (boundp 'self-insert-after-hook) self-insert-after-hook)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3474 (funcall self-insert-after-hook skk-henkan-start-point (point)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3475 (if overwrite-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3476 (skk-del-char-with-pad
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3477 (skk-ovwrt-len
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3478 (string-width
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3479 (skk-buffer-substring skk-henkan-start-point (point)) )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3480
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3481 (defun skk-kakutei-save-and-init-variables (&optional kakutei-word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3482 ;; $B3NDj;~$KJQ?t$N=i4|2=$H%"%s%I%%$N$?$a$NJQ?t$NJ]B8$r9T$J$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3483 (if (and kakutei-word (or (consp kakutei-word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3484 (not (string= kakutei-word "")) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3485 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3486 ;; skk-undo-kakutei $B$N$?$a$K:G8e$NJQ49$N%G!<%?!<$rJ]B8$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3487 (setq skk-last-henkan-key skk-henkan-key
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3488 ;; $B3NDj$7$?8l$r@hF,$K$7$F(B skk-henkan-list $B$NCM$rJ]B8$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3489 skk-last-henkan-list (cons kakutei-word
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3490 (delete kakutei-word skk-henkan-list) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3491 skk-last-henkan-okurigana skk-henkan-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3492 skk-last-okuri-char skk-okuri-char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3493 skk-kakutei-count (1+ skk-kakutei-count) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3494 ;;(if (boundp 'disable-undo)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3495 ;; (setq disable-undo nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3496 ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3497 (setq skk-abbrev-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3498 skk-exit-show-candidates nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3499 skk-henkan-active nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3500 skk-henkan-count -1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3501 skk-henkan-key nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3502 skk-henkan-list nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3503 skk-henkan-okurigana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3504 skk-henkan-on nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3505 skk-kakutei-flag nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3506 skk-okuri-char nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3507 skk-prefix "" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3508 (if skk-auto-okuri-process
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3509 (skk-init-auto-okuri-variables) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3510 (if (skk-numeric-p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3511 (skk-init-numeric-conversion-variables) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3512
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3513 (defun skk-undo-kakutei ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3514 "$B0lHV:G8e$N3NDj$r%"%s%I%%$7!"8+=P$7$KBP$9$k8uJd$rI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3515 $B:G8e$K3NDj$7$?$H$-$N8uJd$O%9%-%C%W$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3516 $B8uJd$,B>$K$J$$$H$-$O!"%_%K%P%C%U%!$G$N<-=qEPO?$KF~$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3517 (interactive)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3518 (cond ((eq last-command 'skk-undo-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3519 (skk-error "$B3NDj%"%s%I%%$OO"B3;HMQ$G$-$^$;$s(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3520 "Cannot undo kakutei repeatedly" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3521 (skk-henkan-active
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3522 (skk-error "$B"'%b!<%I$G$O3NDj%"%s%I%%$G$-$^$;$s(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3523 "Cannot undo kakutei in $B"'(B mode" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3524 ((or (not skk-last-henkan-key) (string= skk-last-henkan-key ""))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3525 ;; skk-last-henkan-key may be nil or "".
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3526 (skk-error "$B%"%s%I%%%G!<%?!<$,$"$j$^$;$s(B" "Lost undo data") ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3527 (condition-case nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3528 (let ((end (if skk-last-henkan-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3529 (+ (length skk-last-henkan-okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3530 skk-henkan-end-point )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3531 skk-henkan-end-point )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3532 (setq skk-henkan-active t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3533 skk-henkan-key skk-last-henkan-key
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3534 skk-henkan-list skk-last-henkan-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3535 skk-henkan-on t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3536 skk-henkan-okurigana skk-last-henkan-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3537 skk-okuri-char skk-last-okuri-char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3538 skk-current-search-prog-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3539 (if (eq (car (car skk-search-prog-list))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3540 'skk-search-kakutei-jisyo-file )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3541 ;; $B3NDj<-=q$OC5$7$F$bL50UL#!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3542 (cdr skk-search-prog-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3543 skk-search-prog-list ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3544 (if (>= (point-max) end)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3545 ;; $B:G8e$NJQ49ItJ,$N%F%-%9%H$r>C$9!#Aw$j2>L>$rGD0.$7$F$$$k$N$J$i(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3546 ;; (skk-process-okuri-early $B$,(B non-nil $B$J$iAw$j2>L>$rGD0.$G$-$J$$(B)$B!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3547 ;; $BAw$j2>L>$r4^$a$?ItJ,$^$G$r>C$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3548 (delete-region skk-henkan-start-point end) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3549 (goto-char skk-henkan-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3550 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3551 (insert "$B"'(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3552 (undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3553 (skk-set-marker skk-henkan-start-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3554 (if skk-okuri-char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3555 ;; $BAw$j$"$j(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3556 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3557 (insert (substring skk-henkan-key 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3558 (1- (length skk-henkan-key)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3559 (skk-set-marker skk-henkan-end-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3560 (if skk-henkan-okurigana (insert skk-henkan-okurigana)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3561 (insert skk-henkan-key)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3562 (skk-set-marker skk-henkan-end-point (point)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3563 ;; $B$5$!!"=`Hw$,@0$$$^$7$?!*(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3564 (skk-message "$B3NDj%"%s%I%%!*(B" "Undo kakutei!")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3565 (setq skk-henkan-count 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3566 (skk-henkan) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3567 ;; skk-kakutei-undo $B$+$iESCf$GH4$1$?>l9g$O!"3F<o%U%i%0$r=i4|2=$7$F$*$+$J$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3568 ;; $B$H<!$NF0:n$r$7$h$&$H$7$?$H$-$K%(%i!<$K$J$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3569 (error (skk-kakutei))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3570 (quit (skk-kakutei)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3571
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3572 (defun skk-downcase (char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3573 (let ((d (cdr (assq char skk-downcase-alist))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3574 (if d
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3575 d
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3576 (downcase char) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3577
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3578 (defun skk-set-henkan-point (&optional arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3579 "$BJQ49$r3+;O$9$k%]%$%s%H$r%^!<%/$7!"BP1~$9$k(B skk-prefix $B$+!"Jl2;$rF~NO$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3580 (interactive "*P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3581 (combine-after-change-calls
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3582 (let* ((last-char (skk-downcase last-command-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3583 (normal (not (eq last-char last-command-char)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3584 (sokuon (and (string= skk-prefix (char-to-string last-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3585 (/= last-char ?o)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3586 (henkan-active skk-henkan-active))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3587 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3588 (if (or (not skk-henkan-on) skk-henkan-active)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3589 (if normal
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3590 (skk-set-henkan-point-subr)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3591 (if skk-henkan-on
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3592 (skk-set-henkan-point-subr) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3593 (if henkan-active
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3594 (skk-emulate-original-map arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3595 (skk-self-insert arg) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3596 (if (not normal)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3597 ;; process special char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3598 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3599 (insert last-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3600 (skk-set-marker skk-henkan-end-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3601 (setq skk-henkan-count 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3602 skk-henkan-key (skk-buffer-substring
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3603 skk-henkan-start-point (point) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3604 skk-prefix "" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3605 (skk-henkan) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3606 ;; prepare for the processing of okurigana if not skk-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3607 ;; and the preceding character is not a numeric character.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3608 ;; if the previous char is a special midashi char or a
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3609 ;; numeric character, we assume that the user intended to type the
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3610 ;; last-command-char in lower case.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3611 (if (and (not skk-okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3612 (or (= skk-henkan-start-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3613 (let ((p (char-after (1- (point)))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3614 (not
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3615 (or
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3616 ;; previous char is a special midashi char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3617 (memq p skk-special-midashi-char-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3618 ;; previous char is an ascii numeric char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3619 (and (<= 48 p) ; ?0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3620 (<= p 57) ) ; ?9
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3621 ;; previous char is a jis numeric char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3622 (and (eq (char-after (- (point) 2)) 163)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3623 (<= 176 p) (<= p 185) ))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3624 (if skk-process-okuri-early
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3625 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3626 (skk-set-marker skk-henkan-end-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3627 (setq skk-okuri-char (char-to-string last-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3628 (if sokuon
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3629 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3630 (setq skk-henkan-key
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3631 (concat (skk-buffer-substring
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3632 skk-henkan-start-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3633 skk-kana-start-point )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3634 (if skk-katakana "$B%C(B" "$B$C(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3635 skk-henkan-okurigana ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3636 (skk-erase-prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3637 (insert (if skk-katakana "$B%C(B " "$B$C(B "))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3638 (setq skk-prefix ""
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3639 skk-henkan-count 0 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3640 (skk-henkan)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3641 ;;(if skk-use-face (skk-henkan-face-off))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3642 (delete-backward-char 2)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3643 ;;(if skk-use-face (skk-henkan-face-on))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3644 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3645 (setq skk-henkan-key (concat
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3646 (skk-buffer-substring
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3647 skk-henkan-start-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3648 (point) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3649 skk-okuri-char ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3650 (insert " ")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3651 (setq skk-prefix ""
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3652 skk-henkan-count 0 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3653 (skk-henkan)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3654 ;;(if skk-use-face (skk-henkan-face-off))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3655 (delete-backward-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3656 ;;(if skk-use-face (skk-henkan-face-on))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3657 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3658 ;; we set skk-kana-start-point here, since the marker may no
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3659 ;; longer point at the correct position after skk-henkan.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3660 (skk-set-marker skk-kana-start-point (point)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3661 (if (= skk-henkan-start-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3662 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3663 (if sokuon
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3664 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3665 (skk-erase-prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3666 (insert (if skk-katakana "$B%C(B" "$B$C(B"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3667 (setq skk-prefix "") ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3668 (skk-set-marker skk-okurigana-start-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3669 (insert "*")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3670 (skk-set-marker skk-kana-start-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3671 (setq skk-okuri-char (char-to-string last-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3672 skk-okurigana t ))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3673 (if normal
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3674 (skk-unread-event
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3675 (skk-character-to-event last-char)) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3676
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3677 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3678 (defun skk-start-henkan (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3679 "$B"&%b!<%I$G$OJQ49$r3+;O$9$k!#"'%b!<%I$G$O<!$N8uJd$rI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3680 $B$=$NB>$N%b!<%I$G$O!"%*%j%8%J%k$N%-!<3d$jIU$1$N%3%^%s%I$r%(%_%e%l!<%H$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3681 (interactive "*p")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3682 (combine-after-change-calls
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3683 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3684 (if (not skk-henkan-on)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3685 (skk-self-insert arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3686 (if skk-henkan-active
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3687 (progn (setq skk-henkan-count (1+ skk-henkan-count))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3688 (skk-henkan) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3689 (let ((pos (point)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3690 (or (string= skk-prefix "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3691 (skk-error "$B%U%#%C%/%9$5$l$F$$$J$$(B skk-prefix $B$,$"$j$^$9(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3692 "Have unfixed skk-prefix" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3693 (if (< pos skk-henkan-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3694 (skk-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3695 "$B%+!<%=%k$,JQ493+;OCOE@$h$jA0$K$"$j$^$9(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3696 "Henkan end point must be after henkan start point" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3697 ;; $B8+=P$78l$,%+%?%+%J$G$"$l$P$R$i$,$J$KJQ49$9$k!#$b$78+=P$78l$NJQ49(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3698 ;; $B$;$:$K$=$N$^$^(B skk-henkan $B$KEO$7$?$1$l$P!"(BC-u SPC (arg $B$,(B 4 $B$K$J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3699 ;; $B$k(B) $B$H%?%$%W$9$l$P$h$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3700 (if (and skk-katakana (eq arg 1))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3701 (skk-hiragana-region skk-henkan-start-point pos) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3702 (setq skk-henkan-key (skk-buffer-substring
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3703 skk-henkan-start-point pos ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3704 (if skk-allow-spaces-newlines-and-tabs
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3705 ;; skk-henkan-key $B$NCf$N(B "[ \n\t]+" $B$r40A4$K<h$j=|$/!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3706 (while (string-match "[ \n\t]+" skk-henkan-key)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3707 (setq skk-henkan-key
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3708 (concat (substring skk-henkan-key 0 (match-beginning 0))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3709 (substring skk-henkan-key (match-end 0)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3710 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3711 (beginning-of-line)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3712 (if (> (point) skk-henkan-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3713 (skk-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3714 "$BJQ49%-!<$K2~9T$,4^$^$l$F$$$^$9(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3715 "Henkan key may not contain a new line character" )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3716 ;; $B:G=i$N%9%Z!<%9$G(B skk-henkan-key $B$r$A$g$s@Z$k$@$1!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3717 (setq skk-henkan-key (substring skk-henkan-key 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3718 (string-match " "
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3719 skk-henkan-key ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3720 (skk-set-marker skk-henkan-end-point pos)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3721 (setq skk-henkan-count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3722 (skk-henkan)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3723 (if (and skk-abbrev-mode skk-henkan-active)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3724 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3725 (skk-j-mode-on)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3726 (setq skk-abbrev-mode t) )))) ;; XXX
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3727 (cancel-undo-boundary) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3728
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3729 (defun skk-backward-and-set-henkan-point (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3730 "$B%]%$%s%H$ND>A0$K$"$kJ8;zNs$N@hF,$KJQ493+;O%]%$%s%H$r<($9(B \"$B"&(B\" $B$rIU$1$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3731 $B%+!<%=%k$ND>A0$K$"$kJ8;z(B \($B%9%Z!<%9J8;z!"%?%VJ8;z!"D92;$rI=$o$9!V!<!W(B $B$OL5>r7o(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3732 $B$K%9%-%C%W$5$l$k(B\) $B$r(B skk-what-char-type $B$K$FH=JL$7!"F1<o$NJ8;zNs$r$R$H$+$?$^(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3733 $B$j$H$7$F8eJ}$X%9%-%C%W$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3734 $BC"$7!"$R$i$+$J$N>l9g$O!V$r!W$ND>A0$G!"%+%?%+%J$N>l9g$O!V%r!W$ND>A0$G;_$^$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3735 C-u ARG $B$G(B ARG $B$rM?$($k$H!"$=$NJ8;zJ,$@$1La$C$FF1$8F0:n$r9T$J$&!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3736 (interactive "*P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3737 (if (not skk-mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3738 (skk-emulate-original-map arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3739 (catch 'exit1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3740 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3741 ;; $B$H$j$"$($::G=i$N(B SPC, TAB, $BA43Q(B SPC $B$@$1%8%c%s%W$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3742 (skip-chars-backward " \t$B!!(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3743 ;; $B0z?t$"$j!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3744 (if arg
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3745 (if (not skk-allow-spaces-newlines-and-tabs)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3746 (skk-backward-char (prefix-numeric-value arg))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3747 (setq arg (prefix-numeric-value arg))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3748 (while (> arg 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3749 (skip-chars-backward " \t$B!!(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3750 (if (bolp)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3751 ;; $B9TF,$@$C$?$i0l9TA0$N9TKv$^$GLa$k$,!"(Barg $B$O8:$i$5$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3752 (skk-backward-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3753 (skk-backward-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3754 (setq arg (1- arg)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3755 ;; $B0z?t$J$7!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3756 (let ((limit
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3757 (if (not skk-allow-spaces-newlines-and-tabs)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3758 (skk-save-point (beginning-of-line) (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3759 (point-min) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3760 ;; $B!2!1!0!/!.!-!,!+!*!)!(!'!&!%!$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3761 (unknown-chars-regexp
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3762 (if skk-allow-spaces-newlines-and-tabs
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3763 "[ $B!!(B\n\t$B!<!7!6!5!4!3(B]"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3764 "[$B!!!<!7!6!5!4!3(B]" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3765 char p )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3766 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3767 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3768 (skk-backward-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3769 (while (and (> (point) limit)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3770 ;; unknown-chars-regexp $B$G$OJ8;z<oJL$,H=JL$G$-$J$$$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3771 ;; $B$G!"$=$NJ8;zNs$,B3$/8B$j%]%$%s%H$r%P%C%U%!$N@hF,(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3772 ;; $BJ}8~$XLa$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3773 (looking-at unknown-chars-regexp) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3774 (skk-backward-char 1) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3775 (setq char (skk-what-char-type))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3776 (if (eq char 'unknown)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3777 (throw 'exit1 nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3778 (skk-backward-and-set-henkan-point-1 char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3779 (setq p (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3780 (if skk-allow-spaces-newlines-and-tabs
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3781 (while (and (> (point) limit) (bolp))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3782 ;; 1 $B9T>e$N9TKv$X!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3783 (skk-backward-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3784 ;; $B%]%$%s%H$,H=JL$G$-$J$$J8;z<oJL$N>e$K$"$k4V$O(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3785 ;; backward $BJ}8~$X%]%$%s%H$rLa$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3786 ;;(while (and (> (point) limit)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3787 ;; (looking-at unknown-chars-regexp) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3788 ;; (skk-backward-char 1) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3789 (if ;;(or
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3790 (> 0 (skk-backward-and-set-henkan-point-1 char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3791 ;;(eq (skk-what-char-type) char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3792 (setq p (point)) ))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3793 (goto-char p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3794 (skip-chars-forward unknown-chars-regexp) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3795 (skk-set-henkan-point-subr) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3796
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3797 (defun skk-backward-and-set-henkan-point-1 (char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3798 ;; skk-backward-and-set-henkan-point $B$N%5%V%k!<%A%s!#(BCHAR $B$N<oN`$K1~$8$?J8;z(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3799 ;; $B$r%9%-%C%W$7$F%P%C%U%!$N@hF,J}8~$XLa$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3800 (cond ((eq char 'hirakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3801 ;; "$B$r(B" $B$NA0$G;_$^$C$?J}$,JXMx!)(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3802 (skip-chars-backward "$B!3!4!5!6!7!<$s$!(B-$B$q(B") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3803 ((eq char 'katakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3804 ;; "$B%r(B" $B$NA0$G;_$^$C$?J}$,JXMx!)(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3805 (skip-chars-backward "$B!3!4!5!6!7!<%s%!(B-$B%q(B") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3806 ((eq char 'zenkaku)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3807 (skip-chars-backward "$B!!(B-$B#z(B") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3808 ((eq char 'ascii)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3809 (skip-chars-backward " -~") )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3810
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3811 (defun skk-what-char-type ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3812 ;; $B8=:_$N%]%$%s%H$K$"$kJ8;z$,$I$s$J<oN`$+$rH=JL$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3813 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3814 (cond ((looking-at "[$B$!(B-$B$s(B]") 'hirakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3815 ((looking-at "[$B%!(B-$B%s(B]") 'katakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3816 ;; "$B!<(B" $B$r=|30$7$F$$$k(B ("$B!<(B" $B$O(B "$B!;(B" $B$H(B "$B!=(B" $B$N4V$KF~$C$F$$$k(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3817 ((looking-at "[$B!!(B-$B!;!=(B-$B#z(B]") 'zenkaku)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3818 ((looking-at "[ -~]") 'ascii)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3819 (t 'unknown) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3820
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3821 (defun skk-set-henkan-point-subr ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3822 "$B$+$J$rF~NO$7$?8e$G!"%]%$%s%H$KJQ493+;O$N%^!<%/(B \($B"&(B\) $B$rIU$1$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3823 $B85!9$O$3$N4X?t$O(B skk-set-henkan-point $B$NFbIt4X?t$G$"$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3824 (interactive "*")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3825 (if skk-henkan-on (skk-kakutei))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3826 ;;(if (boundp 'disable-undo)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3827 ;; (setq disable-undo t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3828 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3829 ;; )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3830 (if (string= skk-prefix "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3831 (insert "$B"&(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3832 (skk-erase-prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3833 (insert "$B"&(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3834 (skk-set-marker skk-kana-start-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3835 (skk-insert-prefix) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3836 ;;(or (boundp 'disable-undo)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3837 (undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3838 ;; )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3839 (setq skk-henkan-on t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3840 (skk-set-marker skk-henkan-start-point (point)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3841
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3842 (defun skk-change-marker ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3843 ;; "$B"&(B"$B$r(B"$B"'(B"$B$KJQ$($k!#(Bskk-henkan-active $B%U%i%0$r(B t $B$K$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3844 (combine-after-change-calls
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3845 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3846 (goto-char (- skk-henkan-start-point skk-kanji-len))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3847 (if (looking-at "$B"&(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3848 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3849 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3850 (let ((buffer-undo-list t))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3851 (insert "$B"'(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3852 (delete-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3853 (setq skk-henkan-active t) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3854 (undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3855 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3856 (skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3857 (skk-error "$B"&$,$"$j$^$;$s(B" "It seems that you have deleted $B"&(B") ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3858
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3859 (defun skk-change-marker-to-white ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3860 ;; "$B"'(B"$B$r(B"$B"&(B"$B$KJQ$($k!#(Bskk-henkan-active $B%U%i%0$r(B nil $B$K$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3861 (combine-after-change-calls
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3862 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3863 (goto-char (- skk-henkan-start-point skk-kanji-len))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3864 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3865 (if (looking-at "$B"'(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3866 (let ((buffer-undo-list t))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3867 (insert "$B"&(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3868 (delete-char 1) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3869 (goto-char skk-henkan-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3870 (insert "$B"&(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3871 ;;(or (boundp 'disable-undo)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3872 ;;(undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3873 ;; )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3874 (skk-set-marker skk-henkan-start-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3875 (skk-message "$B"'$,$"$j$^$;$s(B" "It seems that you have deleted $B"'(B") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3876 (setq skk-henkan-active nil) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3877
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3878 (defun skk-delete-henkan-markers (&optional nomesg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3879 ;; $BJQ49;~$K%+%l%s%H%P%C%U%!$KI=$o$l$k(B `$B"&(B', `$B"'(B' $B%^!<%/$r>C$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3880 (if (not (marker-position skk-henkan-start-point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3881 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3882 (combine-after-change-calls
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3883 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3884 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3885 (goto-char (- skk-henkan-start-point skk-kanji-len))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3886 (if skk-henkan-active
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3887 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3888 (if skk-use-face (skk-henkan-face-off))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3889 (if (looking-at "$B"'(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3890 (delete-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3891 (or nomesg
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3892 (skk-message "$B"'$,$"$j$^$;$s(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3893 "It seems that you have deleted $B"'(B" ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3894 (if (looking-at "$B"&(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3895 (delete-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3896 (or nomesg
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3897 (skk-message "$B"&$,$"$j$^$;$s(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3898 "It seems that you have deleted $B"&(B" )))))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3899
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3900 (defun skk-delete-okuri-mark ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3901 ;; $BAw$j2>L>F~NOCf$K%+%l%s%H%P%C%U%!$KI=$o$l$k(B `*' $B%^!<%/$r>C$7!"Aw$j2>L>4XO"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3902 ;; $B%U%i%0$r(B nil $B$K%;%C%H$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3903 (if (not (marker-position skk-okurigana-start-point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3904 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3905 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3906 (if (eq (char-after skk-okurigana-start-point) ?*) ; ?*
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3907 (delete-region skk-okurigana-start-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3908 (1+ skk-okurigana-start-point) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3909 (setq skk-okurigana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3910 skk-okuri-char nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3911 skk-henkan-okurigana nil ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3912
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3913 ;;;; jisyo related functions
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3914 (defun skk-purge-from-jisyo ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3915 "$B"'%b!<%I$G8=:_$N8uJd$r<-=q%P%C%U%!$+$i>C5n$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3916 (interactive "*")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3917 (if (and skk-henkan-active (not (string= skk-henkan-key "")))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3918 (if (not
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3919 (yes-or-no-p (format
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3920 (if skk-japanese-message-and-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3921 "%s /%s/%s$B$r<-=q$+$i:o=|$7$^$9!#NI$$$G$9$+!)(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3922 "Really purge \"%s /%s/%s\"?" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3923 skk-henkan-key (skk-get-simply-current-candidate)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3924 (if (and skk-henkan-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3925 (or skk-henkan-okuri-strictly
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3926 skk-henkan-strict-okuri-precedence ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3927 (concat
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3928 (if skk-japanese-message-and-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3929 " ($BAw$j2>L>(B: "
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3930 "(okurigana: " )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3931 skk-henkan-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3932 ") " )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3933 " " ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3934 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3935 ;; skk-henkan-start-point $B$+$i(B point $B$^$G:o=|$7$F$7$^$C$F$b!"JQ49D>8e(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3936 ;; $B$K(B ($B%+!<%=%k$rF0$+$9$3$H$J$/(B) skk-purge-from-jisyo $B$r8F$Y$PLdBj$J$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3937 ;; $B$,!"%+!<%=%k$,0c$&>l=j$X0\F0$7$F$$$?>l9g$O!":o=|$9$Y$-$G$J$$$b$N$^(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3938 ;; $B$G:o=|$7$F$7$^$&2DG=@-$,$"$k!#$=$3$G!"Aw$j2>L>$,$"$l$P$=$ND9$5$r4^(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3939 ;; $B$a$?(B end $B$r5a$a!":#2s$NJQ49$K4XO"$7$?8D=j$@$1$r@53N$K@Z$j<h$k$h$&$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3940 ;; $B$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3941 (let ((end (if skk-henkan-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3942 (+ (length skk-henkan-okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3943 skk-henkan-end-point )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3944 skk-henkan-end-point ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3945 (word (skk-get-simply-current-candidate (skk-numeric-p))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3946 ;;(if skk-use-numeric-conversion
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3947 ;; (skk-update-jisyo-for-numerals purge-word 'purge) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3948 (skk-update-jisyo word 'purge)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3949 ;; $BG0$N$?$a!#(Bskk-previous-candidate $B$r;2>H!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3950 (if skk-use-face (skk-henkan-face-off))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3951 (delete-region skk-henkan-start-point end)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3952 (skk-change-marker-to-white)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3953 (skk-kakutei)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3954 (if skk-use-relation
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3955 (skk-update-relation
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3956 (if skk-use-numeric-conversion
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3957 (skk-compute-numeric-henkan-key skk-henkan-key)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3958 skk-henkan-key )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3959 (or skk-henkan-okurigana skk-okuri-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3960 word nil 'purge))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3961 ;;(if (boundp 'skk-attr-alist)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3962 ;; (skk-attr-purge
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3963 ;; (if skk-use-numeric-conversion
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3964 ;; (skk-compute-numeric-henkan-key skk-henkan-key)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3965 ;; skk-henkan-key )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3966 ;; (or skk-henkan-okurigana skk-okuri-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3967 ;; word ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3968 ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3969
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3970 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3971 (defun skk-save-jisyo (&optional quiet)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3972 "SKK $B$N<-=q%P%C%U%!$r%;!<%V$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3973 $B%*%W%7%g%J%k0z?t$N(B QUIET $B$,(B non-nil $B$G$"$l$P!"<-=q%;!<%V;~$N%a%C%;!<%8$r=P$5$J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3974 $B$$!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3975 (interactive "P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3976 (let* ((skk-jisyo (expand-file-name skk-jisyo))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3977 (jisyo-buffer (skk-get-jisyo-buffer skk-jisyo 'nomsg)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3978 (if (or (not jisyo-buffer) (not (buffer-modified-p jisyo-buffer)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3979 (if (not quiet)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3980 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3981 (skk-message "SKK $B<-=q$rJ]B8$9$kI,MW$O$"$j$^$;$s(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3982 "No need to save SKK jisyo" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3983 (sit-for 1) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3984 (with-current-buffer jisyo-buffer
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3985 (let ((inhibit-quit t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3986 (tempo-file (skk-make-temp-jisyo)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3987 (if (not quiet)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3988 (skk-message "SKK $B<-=q$rJ]B8$7$F$$$^$9(B..."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3989 "Saving SKK jisyo..." ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3990 (skk-save-jisyo-1 tempo-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3991 (skk-check-jisyo-size tempo-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3992 ;; $B<-=q$N%;!<%V$K@.8y$7$F=i$a$F(B modified $B%U%i%C%0$r(B nil $B$K$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3993 (set-buffer-modified-p nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3994 (if (not quiet)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3995 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3996 (skk-message "SKK $B<-=q$rJ]B8$7$F$$$^$9(B...$B40N;!*(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3997 "Saving SKK jisyo...done" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3998 (sit-for 1) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3999 (if (eq this-command 'save-buffers-kill-emacs)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4000 (skk-record-jisyo-data jisyo-buffer) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4001 (skk-set-cursor-properly) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4002
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4003 (defun skk-save-jisyo-1 (file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4004 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4005 (let (mc-flag enable-multibyte-characters buffer-read-only)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4006 (goto-char (point-min))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4007 (if (re-search-forward "^;; okuri-ari entries.$" nil 'noerror)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4008 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4009 (skk-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4010 "$BAw$j$"$j%(%s%H%j$N%X%C%@!<$,$"$j$^$;$s!*(B SKK $B<-=q$N%;!<%V$rCf;_$7$^$9(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4011 "Header line for okuri-ari entries is missing! Stop saving SKK jisyo" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4012 ;; $B$*$C!"%3%a%s%H%U%'%$%9$,(B $" $B$G=*$o$i$J$$$>(B > hilit19.el
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4013 (if (re-search-forward "^;; okuri-nasi entries.$" nil 'noerror)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4014 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4015 (skk-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4016 "$BAw$j$J$7%(%s%H%j$N%X%C%@!<$,$"$j$^$;$s(B $B!*(B SKK $B<-=q$N%;!<%V$rCf;_$7$^$9(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4017 "Header line for okuri-nasi entries is missing! Stop saving SKK jisyo" )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4018 (write-region 1 (point-max) file nil 'nomsg) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4019
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4020 (defun skk-check-jisyo-size (new-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4021 (let ((new-size (nth 7 (file-attributes new-file)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4022 old-size )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4023 (if (eq new-size 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4024 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4025 (delete-file new-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4026 (skk-error "SKK $B<-=q$,6u$K$J$C$F$$$^$9!*(B $B<-=q$N%;!<%V$rCf;_$7$^$9(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4027 "Null SKK jisyo! Stop saving jisyo" )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4028 (if (or (not skk-compare-jisyo-size-when-saving)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4029 ;; $B5l<-=q$H$N%5%$%:Hf3S$r9T$J$o$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4030 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4031 ;; (1)skk-jisyo $B$,$J$$$+!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4032 ;; (2)new-file $B$H(B skk-jisyo $B$,F10l$N%5%$%:$+(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4033 ;; (skk-(aux-)large-jisyo $B$+$i?75,$NC18l$rFI$_9~$^$J$+$C$?$j!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4034 ;; $B?75,C18l$NEPO?$r9T$J$o$J$+$C$?>l9g$O%5%$%:$,F1$8(B)$B!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4035 ;; (3)new-file $B$NJ}$,Bg$-$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4036 ;; $B>l9g(B ($B>e5-$N(B 3 $BDL$j$G$"$l$P$$$:$l$b@5>o(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4037 (setq old-size (nth 7 (file-attributes skk-jisyo)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4038 (or (not old-size)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4039 (>= new-size old-size) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4040 (skk-make-new-jisyo new-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4041 ;; yes-or-no-p $B$K2sEz$7!"(Bnewline $B$9$k$H!"(Bthis-command $B$,JQ$C$F$7$^$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4042 (let (this-command this-command-char last-command last-command-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4043 (if (skk-yes-or-no-p
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4044 (format
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4045 "skk-jisyo $B$,(B %dbytes $B>.$5$/$J$j$^$9$,!"%;!<%V$7$FNI$$$G$9$+!)(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4046 (- old-size new-size) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4047 (format
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4048 "New %s will be %dbytes smaller. Save anyway?"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4049 skk-jisyo (- old-size new-size) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4050 ;; $B$H$K$+$/%;!<%V!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4051 (skk-make-new-jisyo new-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4052 ;; $B%;!<%V$H$j;_$a!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4053 (delete-file new-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4054 (with-output-to-temp-buffer "*SKK warning*"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4055 (if skk-japanese-message-and-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4056 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4057 (princ "$B%;!<%V$7$h$&$H$9$k<-=q$N%5%$%:$,85$N$b$N$h$j$b>.$5$J$C$F$7$^$&$N$G!"(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4058 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4059 (princ "$B%;!<%V$rESCf$GCf;_$7$^$7$?!#<-=q$N%5%$%:$,>.$5$/$J$C$?860x$K$ONc$((B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4060 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4061 (princ "$B$P!"(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4062 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4063 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4064 (princ " $B!&(BM-x skk-purge-from-jisyo $B$r<B9T$7$?!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4065 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4066 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4067 (princ " $B!&(B.skk-jisyo $B$N4A;z%3!<%I$H!"(B\" *.skk-jisyo*\" $B%P%C%U%!$N4A;z%3!<%I(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4068 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4069 (princ " $B$,0[$J$C$F$$$k!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4070 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4071 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4072 (princ " $B!&(B\" *.skk-jisyo*\" $B%P%C%U%!$r<+J,$GJT=8$7$?!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4073 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4074 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4075 (princ "$B$J$I$,9M$($i$l$^$9(B ($B:G=i$N(B 2 $B$D$,860x$G$"$l$P!"0[>o$G$O$"$j$^$;$s!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4076 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4077 (princ "$B:G8e$N>l9g$O!"$"$J$?$,$I$N$h$&$JJT=8$r$7$?$+$K$h$j$^$9(B)$B!#860x$r3NG'(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4078 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4079 (princ "$B8e!"?5=E$K<-=q$N%;!<%V$r9T$J$&$3$H$r$*4+$a$7$^$9!#(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4080 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4081 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4082 (princ "$B85$N<-=q$r:FEYFI$_9~$`$K$O!"(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4083 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4084 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4085 (princ " M-x skk-reread-private-jisyo")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4086 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4087 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4088 (princ "$B$r<B9T$7$F2<$5$$!#(B") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4089 (princ "As size of your private JISYO to be saved is smaller than the")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4090 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4091 (princ "original, we have stopped saving JISYO. For example, the following")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4092 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4093 (princ "condition makes a smaller private JISYO;")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4094 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4095 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4096 (princ " (a)You executed M-x skk-purge-from-jisyo,")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4097 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4098 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4099 (princ " (b)Kanji code of .skk-jisyo is different from the one of")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4100 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4101 (princ " \" *.skk-jisyo*\" buffer, or")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4102 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4103 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4104 (princ " (c)You edited \" *.skk-jisyo*\" buffer manually.")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4105 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4106 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4107 (princ "The first two condition is not strange, but the last one depends on")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4108 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4109 (princ "how you edited JISYO. We strongly recommend to save JISYO")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4110 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4111 (princ "carefully after checking what causes this.")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4112 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4113 (princ "If you want to reread your original private JISYO, type")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4114 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4115 (terpri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4116 (princ " M-x skk-reread-private-jisyo")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4117 (terpri) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4118 (skk-error "SKK $B<-=q$N%;!<%V$rCf;_$7$^$7$?!*(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4119 "Stop saving SKK jisyo!" ))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4120
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4121 (defun skk-make-temp-jisyo ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4122 ;; SKK $B8D?M<-=qJ]B8$N$?$a$N:n6HMQ$N%U%!%$%k$r:n$j!"%U%!%$%k$N%b!<%I$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4123 ;; skk-jisyo $B$N$b$N$HF1$8$K@_Dj$9$k!#:n$C$?:n6HMQ%U%!%$%k$NL>A0$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4124 (let ((tempo-name (skk-make-temp-file "skkdic")))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4125 (skk-create-file tempo-name)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4126 (set-file-modes tempo-name (file-modes skk-jisyo))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4127 tempo-name ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4128
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4129 (defun skk-make-temp-file (prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4130 ;; from call-process-region of mule.el. Welcome!
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4131 (make-temp-name
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4132 (if (null (memq system-type '(ms-dos windows-nt)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4133 (concat "/tmp/" prefix)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4134 (let ((tem (or (getenv "TMP") (getenv "TEMP") "/")))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4135 (concat tem
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4136 (if (memq (aref tem (1- (length tem))) '(47 92)) ;?/, ?\\
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4137 "" "/" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4138 prefix )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4139
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4140 (defun skk-make-new-jisyo (tempo-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4141 ;; TEMPO-FILE $B$r?75,$N(B skk-jisyo $B$K$9$k!#(Bskk-backup-jisyo $B$,(B non-nil $B$@$C$?(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4142 ;; $B$i%P%C%/%"%C%W<-=q$r:n$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4143 (if skk-backup-jisyo
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4144 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4145 (if (file-exists-p skk-backup-jisyo)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4146 (delete-file skk-backup-jisyo) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4147 (rename-file skk-jisyo skk-backup-jisyo) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4148 (delete-file skk-jisyo) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4149 (rename-file tempo-file skk-jisyo 'ok-if-already-exists) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4150
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4151 (defun skk-reread-private-jisyo ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4152 "$B%P%C%U%!$KFI$_9~$s$@8D?M<-=q$rGK4~$7!"%U%!%$%k$+$i%P%C%U%!$X:FFI$_9~$_$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4153 (interactive)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4154 (let ((buf (skk-get-jisyo-buffer skk-jisyo 'nomsg)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4155 (if (and buf
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4156 (skk-yes-or-no-p "$BJT=8Cf$N8D?M<-=q$rGK4~$7$^$9$+!)(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4157 "Discard your editing private JISYO?" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4158 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4159 (save-excursion
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4160 (set-buffer buf)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4161 (set-buffer-modified-p nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4162 (kill-buffer buf) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4163 (or
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4164 (skk-get-jisyo-buffer skk-jisyo 'nomsg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4165 (skk-error "$B8D?M<-=q$r:FFI$_9~$_$9$k$3$H$,$G$-$^$;$s!*(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4166 "Cannot reread private JISYO!" ))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4167
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4168 (defun skk-record-jisyo-data (jisyo-buffer)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4169 ;; $B<-=q%G!<%?!<$r<h$j!"(BEmacs $B$N=*N;$N:]$G$"$l$P!"$=$N%G!<%?!<$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4170 ;; skk-record-file $B$KJ]B8$7!"$=$l0J30$G$"$l$P!"$=$l$r%(%3!<$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4171 (if (or (not skk-keep-record) (> 1 skk-kakutei-count))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4172 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4173 (with-temp-file skk-record-file
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4174 (insert-file-contents skk-record-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4175 (goto-char (point-min))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4176 (insert
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4177 (format
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4178 "%s $BEPO?(B: %3d $B3NDj(B: %4d $B3NDjN((B: %3d%% $B8l?t(B:%6d\n"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4179 (current-time-string)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4180 skk-touroku-count skk-kakutei-count
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4181 (/ (* 100 (- skk-kakutei-count skk-touroku-count))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4182 skk-kakutei-count )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4183 (if skk-count-private-jisyo-candidates-exactly
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4184 (skk-count-jisyo-candidates (expand-file-name skk-jisyo))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4185 ;; 1 $B9T(B 1 $B8uJd$H$_$J$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4186 (with-current-buffer jisyo-buffer
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4187 (- (count-lines (point-min) (point-max)) 2) )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4188 (setq skk-touroku-count 0 skk-kakutei-count 0) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4189
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4190 (defun skk-count-jisyo-candidates (file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4191 "SKK $B<-=q$N8uJd?t$r?t$($k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4192 `[' $B$H(B `]' $B$K0O$^$l$?Aw$j2>L>Kh$N%V%m%C%/Fb$O?t$($J$$!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4193 (interactive
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4194 (list (read-file-name
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4195 (format "Jisyo File: (default: %s) " skk-jisyo)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4196 "~/" skk-jisyo 'confirm )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4197 ;; mule@emacs19.31 $B$@$H2<5-$N$h$&$K$9$k$H(B (`$B%!(B' $B$,860x$N$h$&(B) $B2?8N$+(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4198 ;; default-directory $B$NKvHx$K2~9T$,IU$/!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4199 ;; $BDL>o$O5$$,IU$+$J$$$,!"(Brsz-mini.el $B$r;H$C$F(B resize-minibuffer-mode $B$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4200 ;; non-nil $B$K$7$F$$$k$HITMW$J(B 2 $B9TL\$,=P8=$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4201 ;; (interactive "f$B<-=q%U%!%$%k(B: ")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4202 (with-current-buffer (find-file-noselect file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4203 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4204 (let ((count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4205 (min (point-min))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4206 (max (if (interactive-p) (point-max)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4207 (interactive-p (interactive-p))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4208 mc-flag enable-multibyte-characters )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4209 (goto-char min)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4210 (if (or
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4211 ;; $B$3$A$i$O(B skk-save-point $B$r;H$o$:!"%]%$%s%H$r0\F0$5$;$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4212 (not (re-search-forward "^;; okuri-ari entries.$" nil t nil))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4213 (not
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4214 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4215 (re-search-forward "^;; okuri-nasi entries.$" nil t nil) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4216 (skk-error "$B$3$N%U%!%$%k$O(B SKK $B<-=q$G$O$"$j$^$;$s(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4217 "This file is not a SKK dictionary") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4218 (while (search-forward "/" nil t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4219 (cond ((looking-at "\\[")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4220 (forward-line 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4221 (beginning-of-line) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4222 ((not (eolp))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4223 (setq count (1+ count)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4224 (if interactive-p
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4225 (message "Counting jisyo candidates...%3d%% done"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4226 (/ (* 100 (- (point) min)) max) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4227 (if (interactive-p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4228 (message "%d entries" count)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4229 count )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4230
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4231 (defun skk-create-file (file &optional message)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4232 ;; FILE $B$,$J$1$l$P!"(BFILE $B$H$$$&L>A0$N6u%U%!%$%k$r:n$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4233 ;; $B%*%W%7%g%J%k0z?t$N(B MESSAGE $B$r;XDj$9$k$H!"%U%!%$%k:n@.8e$=$N%a%C%;!<%8$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4234 ;; $B%_%K%P%C%U%!$KI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4235 (let ((file (expand-file-name file)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4236 (or (file-exists-p file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4237 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4238 (write-region 1 1 file nil 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4239 (if message
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4240 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4241 (message message)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4242 (sit-for 3) ))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4243
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4244 (defun skk-get-jisyo-buffer (file &optional nomsg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4245 ;; FILE $B$r3+$$$F(B SKK $B<-=q%P%C%U%!$r:n$j!"%P%C%U%!$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4246 ;; $B%*%W%7%g%J%k0z?t$N(B NOMSG $B$r;XDj$9$k$H%U%!%$%kFI$_9~$_$N:]$N%a%C%;!<%8$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4247 ;; $BI=<($7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4248 (if file
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4249 (let ((inhibit-quit t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4250 ;; expand-file-name $B$r8F$s$G$*$+$J$$$H!";H$C$F$$$k(B OS $B>e$"$j$($J$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4251 ;; $B%U%!%$%k%M!<%`$G$b!"$=$N$^$^EO$5$l$F$7$^$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4252 ;; ($BNc(B) MSDOS $B$N>l9g(B ~/_skk-jisyo $B$N<B:]$N%U%!%$%k%M!<%`$O!"(BOS $B>e(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4253 ;; $B$N@)8B$+$i(B ~/_skk-jis $B$H$J$k!#(Bexpand-file-name $B$r8F$P$J$$$H!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4254 ;; " *_skk-jisyo*" $B$H$$$&%P%C%U%!$,$G$-$F$7$^$$!"(Bskk-save-jisyo $B$J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4255 ;; $B$IB>$N4X?t$K1F6A$,=P$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4256 (file (expand-file-name file))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4257 (jisyo-buf (concat " *" (file-name-nondirectory file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4258 "*" )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4259 ;; $B<-=q%P%C%U%!$H$7$F%*!<%W%s$5$l$F$$$k$J$i!"2?$b$7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4260 (or (get-buffer jisyo-buf)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4261 (with-current-buffer (setq jisyo-buf (get-buffer-create jisyo-buf))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4262 (buffer-disable-undo jisyo-buf)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4263 (auto-save-mode -1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4264 ;; $B%o!<%-%s%0%P%C%U%!$N%b!<%I%i%$%s$O%"%C%W%G!<%H$5$l$J$$!)(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4265 ;;(make-local-variable 'line-number-mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4266 ;;(make-local-variable 'column-number-mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4267 (setq buffer-read-only nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4268 case-fold-search nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4269 ;; buffer-file-name $B$r(B nil $B$K$9$k$H!"<-=q%P%C%U%!$KF~$j9~(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4270 ;; $B$s$G(B C-x C-s $B$7$?$H$-$K%U%!%$%k%M!<%`$r?R$M$F$/$k$h$&$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4271 ;; $B$J$k$,!"(BM-x compile $B$J$IFbIt$G(B save-some-buffers $B$r%3!<(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4272 ;; $B%k$7$F$$$k%3%^%s%I$r;H$C$?$H$-$G$b%;!<%V$9$k$+$I$&$+$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4273 ;; $B?R$M$F$3$J$/$J$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4274 ;;buffer-file-name file
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4275 ;;cache-long-line-scans nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4276 ;;column-number-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4277 ;;line-number-mode nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4278 ;; dabbrev $B$N%5!<%A$H$J$k%P%C%U%!$K$J$i$J$$$h$&$KB8:_$7$J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4279 ;; $B$$%b!<%IL>$K$7$F$*$/!#<B32$N$"$kI{:nMQ$O$J$$$O$:!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4280 major-mode 'skk-jisyo-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4281 mode-name "SKK$B<-=q(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4282 (or nomsg
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4283 (skk-message "SKK $B<-=q(B %s $B$r%P%C%U%!$KFI$_9~$s$G$$$^$9(B..."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4284 "Inserting contents of %s ..."
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4285 (file-name-nondirectory file) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4286 (let ((coding-system-for-read 'euc-japan); XXX
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4287 enable-character-unification)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4288 (insert-file-contents file) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4289 (skk-set-jisyo-code)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4290 (or nomsg
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4291 (skk-message
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4292 "SKK $B<-=q(B %s $B$r%P%C%U%!$KFI$_9~$s$G$$$^$9(B...$B40N;!*(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4293 "Inserting contents of %s ...done"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4294 (file-name-nondirectory file) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4295 (skk-setup-jisyo-buffer)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4296 (set-buffer-modified-p nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4297 jisyo-buf )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4298
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4299 (defun skk-set-jisyo-code ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4300 ;; $BJ8;z%3!<%I$r(B CODE $B$K%;%C%H$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4301 (if (not skk-jisyo-code)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4302 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4303 (if (stringp skk-jisyo-code)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4304 (setq skk-jisyo-code (cdr
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4305 (assoc skk-jisyo-code skk-coding-system-alist) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4306 (if (fboundp 'set-buffer-file-coding-system)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4307 (set-buffer-file-coding-system skk-jisyo-code)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4308 (set-file-coding-system skk-jisyo-code) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4309
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4310 (defun skk-setup-jisyo-buffer ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4311 ;; skk-jisyo $B$N<-=q%P%C%U%!$G!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4312 ;; (1)$B6u%P%C%U%!$G$"$l$P!"?7$7$/%X%C%@!<$r:n$j!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4313 ;; (2)$B<-=q%(%s%H%j$,$"$k4{B8$N<-=q%P%C%U%!$J$i$P!"%X%C%@!<$,@5$7$$$+$I$&$+$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4314 ;; $B%A%'%C%/$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4315 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4316 ;; skk-okuri-ari-min $B$H(B skk-okuri-nasi-min $B$N0LCV$rJQ99$7$?!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4317 ;; $B"-(B $B?7$7$$(B skk-okuri-ari-min
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4318 ;; ;; okuri-ari entries.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4319 ;; $B"+(B $B0JA0$N(B skk-okuri-ari-min
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4320 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4321 ;; $B"-(B skk-okuri-ari-max $B"-(B $B?7$7$$(B skk-okuri-nasi-min
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4322 ;; ;; okuri-nasi entries.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4323 ;; $B"+(B $B0JA0$N(B skk-okuri-nasi-min
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4324 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4325 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4326 ;; $BJQ99A0$N0LCV$G$"$l$P!"2<5-$N$h$&$J6u<-=q$N>l9g!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4327 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4328 ;; ;; okuri-ari entries.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4329 ;; ;; okuri-nasi entries.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4330 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4331 ;; skk-okuri-ari-min $B$H(B skk-okuri-ari-max $B$N%^!<%+!<$,=E$J$C$F$7$^$$!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4332 ;; skk-okuri-ari-min $B$N0LCV$KA^F~$7$?%(%s%H%j$,(B skk-okuri-ari-max $B$N%^!<%+!<(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4333 ;; $B$r8eJ}$K2!$7$d$i$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4334 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4335 ;; $B$3$N4X?t$N%*%j%8%J%k$NL>>N$O!"(Bj-check-jisyo $B$@$C$?$,!"(Bskk-check-jisyo $B$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4336 ;; $B$$$&L>A0$K$9$k$H(B skk-tools.el $BFb$N4X?tL>$H=EJ#$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4337 ;; case-fold-search $B$O!"<-=q%P%C%U%!$G$O>o$K(B nil$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4338 (let (mc-flag enable-multibyte-characters)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4339 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4340 (if (eq (buffer-size) 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4341 ;; $B6u%P%C%U%!$@$C$?$i!"%X%C%@!<$N$_A^F~!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4342 (insert ";; okuri-ari entries.\n" ";; okuri-nasi entries.\n") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4343 (goto-char (point-min))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4344 (if (re-search-forward "^;; okuri-ari entries.$" nil 'noerror)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4345 ;; $B8GDj%]%$%s%H$J$N$G!"(B(point) $B$G==J,!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4346 (setq skk-okuri-ari-min (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4347 (skk-error "$BAw$j$"$j%(%s%H%j$N%X%C%@!<$,$"$j$^$;$s!*(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4348 "Header line for okuri-ari entries is missing!" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4349 (if (re-search-forward "^;; okuri-nasi entries.$" nil 'noerror)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4350 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4351 (beginning-of-line)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4352 ;; $B6&M-<-=q$J$i8GDj%]%$%s%H$G$bNI$$$N$@$,!"<-=q%P%C%U%!$GJT=8$r9T(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4353 ;; $B$J$C$?$H$-$N$3$H$rG[N8$7$F%^!<%+!<$K$7$F$*$/!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4354 (setq skk-okuri-ari-max (point-marker))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4355 (forward-line 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4356 (backward-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4357 (setq skk-okuri-nasi-min (point-marker)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4358 (skk-error "$BAw$j$J$7%(%s%H%j$N%X%C%@!<$,$"$j$^$;$s!*(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4359 "Header line for okuri-nasi entries is missing!" )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4360
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4361 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4362 (defun skk-search ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4363 ;; skk-current-search-prog-list $B$NMWAG$K$J$C$F$$$k%W%m%0%i%`$rI>2A$7$F!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4364 ;; skk-henkan-key$B$r%-!<$K$7$F8!:w$r9T$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4365 (let (l)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4366 (while (and (null l) skk-current-search-prog-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4367 (setq l (eval (car skk-current-search-prog-list))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4368 skk-current-search-prog-list (cdr skk-current-search-prog-list) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4369 l ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4370
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4371 (defun skk-search-relation ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4372 (let ((last
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4373 (if (not (and
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4374 skk-last-henkan-result
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4375 (markerp skk-last-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4376 (< skk-last-henkan-point (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4377 (< (- (point) skk-last-henkan-point) skk-relation-length) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4378 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4379 skk-last-henkan-result )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4380 (skk-attr-search-relation
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4381 skk-henkan-key
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4382 (or skk-henkan-okurigana skk-okuri-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4383 last )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4384
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4385 (defun skk-attr-search-relation (midasi okuri last)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4386 (if skk-debug (message "%S" midasi okuri last))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4387 (or skk-attr-alist (skk-attr-read))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4388 (let ((entries (cdr (skk-attr-get-table-for-midasi midasi okuri)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4389 ret rest )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4390 (if skk-debug (message "%S" entries))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4391 (while entries
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4392 (let* ((entry (car entries))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4393 (rel (assq 'relation (cdr entry))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4394 (if (or (null last) (member last (cdr rel)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4395 (setq ret (nconc ret (list (car entry))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4396 (setq rest (nconc rest (list (car entry)))) ) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4397 (setq entries (cdr entries)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4398 (nconc ret rest) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4399
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4400 (defun skk-update-relation (midasi okuri word last &optional purge)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4401 (skk-attr-update-relation midasi okuri word last purge) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4402
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4403 (defun skk-attr-update-relation (midasi okuri word last &optional purge)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4404 (or skk-attr-alist (skk-attr-read))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4405 (if skk-debug (message "update %S %S %S %S" midasi okuri word last))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4406 (if purge
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4407 (skk-attr-purge midasi okuri word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4408 (let* ((table (skk-attr-get-table-for-midasi midasi okuri))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4409 (entry (assoc word (cdr table)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4410 (oldattr (assq 'relation (cdr entry)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4411 (listlast (if last (list last) nil)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4412 (cond (oldattr
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4413 (if last
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4414 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4415 (setcdr oldattr (cons last
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4416 (delete last (cdr oldattr)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4417 (let ((tail (nthcdr skk-relation-record-num oldattr)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4418 (if tail
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4419 (setcdr tail nil) )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4420 (entry
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4421 (setcdr entry (cons (cons 'relation listlast)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4422 (cdr entry))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4423 (table
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4424 (setcdr table (cons (list word
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4425 (list 'okurigana okuri)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4426 (cons 'relation listlast) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4427 (cdr table) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4428 ;; new entry
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4429 (t (skk-attr-put-1 midasi okuri word 'relation listlast)) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4430
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4431 (defun skk-search-jisyo-file (file limit &optional nomsg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4432 ;; SKK $B<-=q%U%)!<%^%C%H$N(B FILE $B$G(B skk-henkan-key $B$r%-!<$K$7$F8!:w$r9T$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4433 ;; $B8!:w%j!<%8%g%s$,(B LIMIT $B0J2<$K$J$k$^$G%P%$%J%j%5!<%A$r9T$$!"$=$N8e%j%K%"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4434 ;; $B%5!<%A$r9T$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4435 ;; LIMIT $B$,(B 0 $B$G$"$l$P!"%j%K%"%5!<%A$N$_$r9T$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4436 ;; $B<-=q$,%=!<%H$5$l$F$$$J$$$N$G$"$l$P!"(BLIMIT $B$r(B 0 $B$9$kI,MW$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4437 ;; $B%*%W%7%g%J%k0z?t$N(B NOMSG $B$,(B non-nil $B$G$"$l$P(B skk-get-jisyo-buffer $B$N%a%C(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4438 ;; $B%;!<%8$r=PNO$7$J$$$h$&$K$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4439 (let ((jisyo-buffer (skk-get-jisyo-buffer file nomsg)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4440 (if jisyo-buffer
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4441 ;; skk-henkan-key $B$H(B skk-henkan-okurigana $B$O%+%l%s%H%P%C%U%!$N%m!<%+%k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4442 ;; $BCM!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4443 (let ((okurigana (or skk-henkan-okurigana skk-okuri-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4444 (midasi
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4445 (if skk-use-numeric-conversion
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4446 ;; skk-henkan-key $B$,(B nil $B$N$3$H$,$"$k!#2?8N(B?
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4447 (skk-compute-numeric-henkan-key skk-henkan-key)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4448 skk-henkan-key ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4449 entry-list entry )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4450 (with-current-buffer jisyo-buffer
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4451 (setq skk-henkan-key midasi
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4452 entry-list (skk-search-jisyo-file-1 okurigana limit) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4453 (if entry-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4454 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4455 (setq entry
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4456 (cond ((and okurigana skk-henkan-okuri-strictly)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4457 ;; $BAw$j2>L>$,F10l$N%(%s%H%j$N$_$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4458 (nth 2 entry-list) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4459 ((and okurigana skk-henkan-strict-okuri-precedence)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4460 ;; $BAw$j2>L>$,F10l$N%(%s%H%j$N$&$7$m$K!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4461 ;; $B$=$NB>$N%(%s%H%j$r$D$1$F$+$($9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4462 (skk-nunion (nth 2 entry-list) (car entry-list)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4463 (t (car entry-list)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4464 (if (and (boundp 'skk-attr-search-function)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4465 skk-attr-search-function )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4466 (funcall skk-attr-search-function midasi okurigana entry)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4467 entry ))))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4468
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4469 (defun skk-search-jisyo-file-1 (okurigana limit &optional delete)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4470 ;; skk-search-jisyo-file $B$N%5%V%k!<%A%s!#(Bskk-compute-henkan-lists $B$r;HMQ$7!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4471 ;; $B8+=P$78l$K$D$$$F$N%(%s%H%j$N>pJs$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4472 ;; DELETE $B$,(B non-nil $B$G$"$l$P!"(BMIDASI $B$K%^%C%A$9$k%(%s%H%j$r:o=|$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4473 (let ((key (concat "\n" skk-henkan-key " /"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4474 min max size p )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4475 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4476 ;; skk-okuri-ari-min $B$H(B skk-okuri-ari-max $B$O<-=q%P%C%U%!$N%m!<%+%kCM!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4477 (if okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4478 (setq min skk-okuri-ari-min
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4479 max skk-okuri-ari-max )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4480 (setq min skk-okuri-nasi-min
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4481 max (point-max) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4482 (if (> limit 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4483 (while (progn (setq size (- max min)) (> size limit))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4484 (goto-char (+ min (/ size 2)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4485 (beginning-of-line)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4486 (setq p (point))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4487 ;; $BAw$j$"$j$J$i5U=g$KHf3S$r9T$J$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4488 (if
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4489 (if okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4490 (string< (skk-buffer-substring p (1- (search-forward " ")))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4491 skk-henkan-key )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4492 (string< skk-henkan-key
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4493 (skk-buffer-substring p (1- (search-forward " "))) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4494 (setq max p)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4495 (setq min p) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4496 (goto-char min)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4497 ;; key $B$,8!:w3+;OCOE@$K$"$C$?>l9g$G$b8!:w2DG=$J$h$&$K0lJ8;zLa$k!#(Bkey $B$,(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4498 ;; $B$=$N@hF,ItJ,$K(B "\n" $B$r4^$s$G$$$k$3$H$KCm0U!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4499 (or (bobp) (backward-char 1))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4500 ;; $B8zN($,NI$$$h$&$K(B kanji-flag, mc-flag, enable-multibyte-characters $B$r(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4501 ;; nil $B$K$7$F$*$/!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4502 ;; case-fold-search $B$O!"<-=q%P%C%U%!$G$O>o$K(B nil$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4503 (let (mc-flag)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4504 ;; enable-multibyte-characters)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4505 (if (search-forward key max 'noerror)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4506 (prog1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4507 (skk-compute-henkan-lists okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4508 (if delete
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4509 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4510 (beginning-of-line)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4511 (delete-region (point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4512 (progn (forward-line 1) (point)) )))))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4513
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4514
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4515 (defun skk-compute-henkan-lists (okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4516 ;; $B<-=q%(%s%H%j$r(B 4 $B$D$N%j%9%H$KJ,2r$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4517 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4518 ;; $BAw$j$J$7(B ($BNc$($P!"<-=q%(%s%H%j(B "$B$F$s$5$$(B /$BE>:\(B/$BE7:R(B/$BE7:M(B/" $B$N=hM}(B)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4519 ;; entry1 := ("$BE>:\(B" "$BE7:R(B" "$BE7:M(B") == $BA4%(%s%H%j(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4520 ;; entry2 := nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4521 ;; entry3 := nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4522 ;; entry4 := nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4523 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4524 ;; $BAw$j$"$j(B ($BNc$($P!"!V5c$/!W$NJQ49$r9T$C$?>l9g$N!"<-=q%(%s%H%j(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4525 ;; "$B$J(Bk /$BK4(B/$BL5(B/$BLD(B/$B5c(B/[$B$/(B/$BL5(B/$BLD(B/$B5c(B/]/[$B$-(B/$BK4(B/]/" $B$N=hM}(B)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4526 ;; entry1 := ("$BK4(B" "$BL5(B" "$BLD(B" "$B5c(B") == $B4A;zItJ,$NA4%(%s%H%j(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4527 ;; entry2 := ("[$B$/(B") == $BB>$NAw$j2>L>$r;H$&4A;z%(%s%H%j(B ($B$"$l(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4528 ;; $B$P(B) + $B:#2s$NJQ49$NAw$j2>L>ItJ,(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4529 ;; entry3 := ("$BL5(B" "$BLD(B" "$B5c(B") == $B:#2s$NJQ49$NAw$j2>L>$r;H$&2DG=@-$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4530 ;; $B$"$kA44A;z%(%s%H%j(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4531 ;; entry4 := ("]" "[$B$-(B" "$BK4(B" "]") == $BB>$NAw$j2>L>$r;H$&4A;z%(%s%H%j(B ($B;D(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4532 ;; $B$j!#$"$l$P(B)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4533 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4534 ;; * "[" $B$OD>8e$KB3$/$R$i$,$J$rAw$j2>L>$K;}$D4A;z$N%(%s%H%j$N=i$^$j$rI=$7!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4535 ;; "]" $B$O!"3:Ev$NAw$j2>L>%0%k!<%W$N=*$j$r<($9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4536 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4537 ;; $B$3$N4X?t$O!"JQ49;~$H!"3NDjD>8e$N<-=q$N%"%C%W%G!<%H;~$N(B 2 $BEY8F$P$l$k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4538 ;; ($BJQ49;~$K8!:w$r9T$C$?<-=q$,!"(Bskk-jisyo $B$H$O8B$i$J$$$N$G!"(B2 $BEY7W;;$;$6$k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4539 ;; $B$rF@$J$$(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4540 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4541 ;; $BJQ49;~$O!"(Bskk-henkan-okuri-strictly $B$,(B non-nil $B$G$"$l$P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4542 ;; $B7W;;7k2L$N(B entry3$B$r!"(Bskk-henkan-okuri-strictly $B$,(B nil $B$G$"$C$F(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4543 ;; $B$+$D(B skk-henkan-strict-okuri-precedence $B$,(B non-nil $B$"$l$P(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4544 ;; (skk-uniion entry3 entry1) $B$r<h$j=P$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4545 ;; $B$U$?$D$NJQ?t$,$H$b$K(B nil $B$N>l9g$O(B entry1 $B$r<h$j=P$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4546 (if (not okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4547 (list (string-split
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4548 "/"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4549 (skk-buffer-substring (point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4550 (progn (end-of-line) (1- (point))) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4551 nil nil nil )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4552 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4553 (let ((stage 1) (q1 (queue-create)) (q2 (queue-create))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4554 (q3 (queue-create)) (q4 (queue-create))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4555 (okuri-key (concat "\[" okurigana)) item headchar )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4556 (catch 'exit
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4557 (while (not (eolp))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4558 (setq item (skk-buffer-substring (point) (1- (search-forward "/")))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4559 headchar (if (string= item "") (skk-int-char 0) (aref item 0)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4560 (cond ((and (eq headchar ?\[) ; ?\[
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4561 (<= stage 2) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4562 (if (string= item okuri-key)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4563 (progn (queue-enqueue q2 item)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4564 (setq stage 3) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4565 (setq stage 2)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4566 (queue-enqueue q2 item) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4567 ((eq stage 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4568 (queue-enqueue q1 item) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4569 ((eq stage 2)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4570 (queue-enqueue q2 item) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4571 ((eq stage 3)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4572 (if (eq headchar ?\]) ; ?\]
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4573 (progn (setq stage 4)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4574 (queue-enqueue q4 item) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4575 (queue-enqueue q3 item) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4576 ((eq stage 4)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4577 (queue-enqueue q4 item) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4578 ;; entry1 entry2 entry3 entry4
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4579 (list (queue-all q1) (queue-all q2) (queue-all q3) (queue-all q4)) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4580
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4581 ;; $B%-%e!<4XO"$N4X?t$N;HMQ$K:]$7$F$O!"!V%W%m%0%i%`$N9=B$$H<B9T!W(B(H. $B%(!<%Y%k%=(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4582 ;; $B%s!"(BG.J.$B%5%9%^%s!"(BJ.$B%5%9%^%sCx!"855HJ8CKLu!#%^%0%m%&%R%k=PHG(B) $B$H(B Elib (the
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4583 ;; GNU emacs lisp library version 1.0) $B$r;29M$K$7$?!#>e5-$NJ88%$G2r@b$5$l$F$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4584 ;; $B$k%-%e!<$NI=8=$O!"(BElib $B$N(B queue-m.el $B$K$*$$$F<B8=$5$l$F$$$k$b$N$H$[$\F1$8<B(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4585 ;; $BAu$H$J$C$F$$$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4586 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4587 ;; $B%j%9%H$G$N%-%e!<$NI=8=$O!"6qBNE*$K$ONc$($P(B ((A B C D E F) F) $B$N$h$&$J7A$K$J$C(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4588 ;; $B$F$*$j!"(Bcar $B$N%j%9%H(B (A B C D E F) $B$,%-%e!<$NA4BN$rI=$o$7!"%-%e!<$N(B nth 1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4589 ;; $B$r<h$C$?$H$-$N(B F $B$,%-%e!<$N:G8eHx$rI=$o$9!#%-%e!<$N(B cdr $B$r<h$C$?$H$-$N(B (F)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4590 ;; $B$H$$$&%j%9%H$O!"%-%e!<$N(B car $B$KBP$7(B nthcdr 5 $B$r<h$C$?$H$-$N%j%9%H(B (F) $B$HF1(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4591 ;; $B$8$b$N$G$"$k!#=>$$!"(Bcdr $B$N%j%9%H$N8e$K?7$7$$MWAG$rDI2C$9$k$3$H$G!"(Bcar $B$GI=(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4592 ;; $B$o$5$l$k%-%e!<$NKvHx$K?7$7$$MWAG$rDI2C$9$k$3$H$,$G$-$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4593 ;; $B0lJ}!"(Bnconc $B$d(B append $B$G$D$J$0$K$O!"$=$l$i$N4X?t$NBh#10z?t$N%j%9%H$NA4$F$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4594 ;; $BMWAG$rAv::$;$M$P$J$i$:!"(BO(n) $B$N;~4V$,$+$+$k$N$G!"D9$$%j%9%H$r$D$J$0$H$-$OHf(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4595 ;; $B3SE*%3%9%H$,$+$+$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4596 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4597 ;; $B$5$F!"6u$N(B queue == (cons nil nil) $B$KBP$7!"?7$7$$MWAG(B A $B$rDI2C$9$kJ}K!$r@b(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4598 ;; $BL@$9$k!#$^$:!"?7$7$$MWAG(B A $B$N$_$r4^$s$@D9$5(B 1 $B$N%j%9%H(B (A) $B$r:n$k(B ($B2>$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4599 ;; new-pair $B$H$$$&JQ?t$K<h$k(B)$B!#<!$K!"(B(setcar queue new-pair) $B$r9T$J$&$3$H$K$h(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4600 ;; $B$j!"(Bqueue $B$,(B ((A)) $B$H$J$k(B (setcar, setcdr $B$NJV$jCM$O!"(Bnew-pair $B$G$"$k$3$H$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4601 ;; $BCm0U(B)$B!#<!$K(B (setcdr queue new-pair) $B$7$F(B ((A) A) $B$H$J$C$?$H$3$m$r?^<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4602 ;; front, rear $B$NN>J}$N%]%$%s%?$,(B (A) $B$r;X$9$h$&$K$9$k(B ($B%-%e!<$NMWAG$,(B A $B$7$+(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4603 ;; $B$J$$$N$G!"(Bfront, rear $B%]%$%s%?$H$b$KF1$8$b$N$r;X$7$F$$$k(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4604 ;; queue
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4605 ;; +-------+-------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4606 ;; | Front | Rear |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4607 ;; +---|---+---|---+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4608 ;; | +---> +---------------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4609 ;; +------------>| o | nil |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4610 ;; +---|---+-------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4611 ;; | +-------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4612 ;; +----> | A |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4613 ;; +-------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4614 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4615 ;; $B>e5-$N(B queue, ((A) A) $B$KBP$7!"99$K?7$7$$MWAG(B B $B$rDI2C$9$k!#Nc$K$h$j(B B $B$N$_(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4616 ;; $B$r4^$`D9$5(B 1 $B$N%j%9%H(B (B) $B$r:n$j!"JQ?t(B new-pair $B$K<h$k!#$3$3$G(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4617 ;; (setcdr (cdr queue) new-pair) $B$rI>2A$9$k$H(B ($BCm(B1)$B!"(B* $B$N8D=j$N%]%$%s%?A`:n$,(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4618 ;; $B9T$J$o$l$k!#%-%e!<$N:G8eJ}$K?7$7$$MWAG$G$"$k(B B $B$,DI2C$5$l$k$3$H$K$J$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4619 ;; queue $B$O(B ((A B) A B) $B$H$J$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4620 ;; queue
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4621 ;; +-------+-------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4622 ;; | Front | Rear |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4623 ;; +---|---+---|---+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4624 ;; | +---> +---------------+ * +---------------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4625 ;; +------------>| o | o --|------->| o | nil |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4626 ;; +---|---+-------+ +-------+-------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4627 ;; | +-------+ | +-------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4628 ;; +----> | A | +----> | B |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4629 ;; +-------+ +-------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4630 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4631 ;; $BCm(B1; $BDI2CA0$N%-%e!<$NMWAG$,(B 1 $B$D$N$H$-$O!"(Bfront $B$b(B rear $B$bF1$8$b$N$r;X$7(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4632 ;; $B$F$$$k$N$G(B (setcdr (car queue) new-pair) $B$G$bEy2A$@$,!"%-%e!<$NMWAG(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4633 ;; $B$,(B 2 $B$D0J>e$N$H$-$O(B (setcdr (cdr queue) new-pair) $B$G$J$$$H$^$:$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4634 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4635 ;; $B:G8e$K(B (setcdr queue new-pair) $B$rI>2A$9$k$3$H$K$h$j!"(Brear $B%]%$%s%?$rD%$jJQ(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4636 ;; $B$($k(B (* $B$N8D=j$N%]%$%s%?A`:n$,9T$J$o$l$k(B)$B!#(Brear $B%]%$%s%?$,%-%e!<$N:G8eJ}$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4637 ;; $BMWAG$r;X$9$h$&$K$9$k!#(Bfront $B%]%$%s%?$,;X$9%j%9%H$O%-%e!<$NA4$F$NMWAG$rI=$o(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4638 ;; $B$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4639 ;; queue
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4640 ;; +-------+-------+ *
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4641 ;; | Front | Rear |---------------------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4642 ;; +---|---+-------+ |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4643 ;; | +---------------+ +--> +---------------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4644 ;; +------------>| o | o --|------->| o | nil |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4645 ;; +---|---+-------+ +-------+-------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4646 ;; | +-------+ | +-------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4647 ;; +----> | A | +----> | B |
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4648 ;; +-------+ +-------+
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4649 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4650 ;; $B$3$N$h$&$K%-%e!<$N:G8eJ}$K?7$7$$MWAG$rDI2C$9$k$3$H(B ($B%j%9%H$N:G8eJ}$KD9$5(B 1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4651 ;; $B$N?7$7$$%j%9%H$r$D$J$2$k$3$H(B) $B$,(B 2 $B2s$N%]%$%s%?A`:n$G2DG=$H$J$k$N$G!"$I$N$h(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4652 ;; $B$&$JD9$$%j%9%H$G$"$C$F$bO"7k$K$+$+$k%3%9%H$O0lDj(B (O(1) $B$N4X?t$G$"$k(B) $B$G$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4653 ;; $B$J$*!"8=>u$G$O!"J?6Q$7$F0B2A$K%j%9%H$N:G8eJ}$KMWAG$r$D$J$2$k!"$H$$$&L\E*$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4654 ;; $B$@$1%-%e!<$r;H$C$F$$$k!#%-%e!<K\Mh$NL\E*$G$O;HMQ$7$F$*$i$J$$$N$G!"Nc$($P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4655 ;; $B2<5-$N$h$&$J4X?t$O;HMQ$7$F$$$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4656 ;; queue-last, queue-first, queue-nth, queue-nthcdr, queue-dequeue
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4657
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4658 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4659 (defun skk-nunion (x y)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4660 ;; X $B$H(B Y $B$NOB=89g$r:n$k!#Ey$7$$$+$I$&$+$NHf3S$O!"(Bequal $B$G9T$o$l$k!#(BX $B$K(B Y
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4661 ;; $B$rGK2uE*$KO"@\$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4662 (cond ((null x) y)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4663 ((null y) x)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4664 (t (let ((e x))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4665 (while e
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4666 (setq y (delete (car e) y)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4667 e (cdr e) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4668 (if y
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4669 ;; $B>e5-$N(B while $B%k!<%W$NCf$N(B delete $B$H2<5-$N(B nconc $B$H$r9g$o$;(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4670 ;; $B$F!"A4It$G(B X $B$r(B 2 $B2s!"(BY $B$r(B X $B2sAv::$7$?$3$H$K$J$k!#%=!<(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4671 ;; $B%H$5$l$F$$$J$$=89gF1;N$+$i=89g$r:n$k0J>e(B ($B8uJd$O%=!<%H$7$F(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4672 ;; $B$O$J$i$J$$(B) $B!"C`<!Av::$K$J$k$N$G$3$l$O;_$`$rF@$J$$$+(B...$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4673 (nconc x y)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4674 x )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4675
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4676 (defun skk-search-kakutei-jisyo-file (file limit &optional nomsg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4677 ;; $B<-=q%U%!%$%k$rC5$7!"8uJd$r%j%9%H$GJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4678 ;; $B8uJd$r8+$D$1$?>l9g$O!"Bg0hJQ?t(B skk-kakutei-flag $B$K(B non-nil $B$rBeF~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4679 ;; $B8uJd$,8+$D$+$i$J$+$C$?>l9g$O!"(Bnil $B$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4680 (setq skk-kakutei-flag (skk-search-jisyo-file file limit nomsg)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4681
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4682 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4683 (defun skk-update-jisyo (word &optional purge)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4684 ;; WORD $B$,<!$NJQ49;~$K:G=i$N8uJd$K$J$k$h$&$K!"%W%i%$%Y!<%H<-=q$r99?7$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4685 ;; PURGE $B$,(B non-nil $B$G(B WORD $B$,6&M-<-=q$K$"$k%(%s%H%j$J$i(B skk-ignore-dic-word
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4686 ;; $B4X?t$G%/%)!<%H$7$?%(%s%H%j$r%W%i%$%Y!<%H<-=q$K:n$j!"<!$NJQ49$+$i=PNO$7$J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4687 ;; $B$$$h$&$K$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4688 ;; WORD $B$,6&M-<-=q$K$J$1$l$P!"%W%i%$%Y!<%H<-=q$N<-=q%(%s%H%j$+$i:o=|$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4689 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4690 ;; SKK 9.x $B$h$j!"%W%i%$%Y!<%H<-=q$N%(%s%H%j$NA^F~$NJ}K!$rJQ99$7$?(B (9.3 $B$N$_(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4691 ;; $B$ONc30(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4692 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4693 ;; $B!ZJQ99A0![(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4694 ;; ;; okuri-ari entries.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4695 ;; $B8+%-(B $B$o$k(Bk /$B0-(B/[$B$+(B/$B0-(B/]/[$B$/(B/$B0-(B/]/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4696 ;; $B=P!<(B $B$o$k(Bi /$B0-(B/[$B$$(B/$B0-(B/]/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4697 ;; $B$7$K(B $B$o$?(Bs /$BEO(B/[$B$5(B/$BEO(B/]/[$B$;(B/$BEO(B/]/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4698 ;; $B8l9_(B $B$o$9(Br /$BK:(B/[$B$l(B/$BK:(B/]/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4699 ;; $B$r=g(B $B$o$+(Bt /$BJ,(B/$BH=(B/[$B$C$?(B/$BJ,(B/$BH=(B/]/[$B$C$F(B/$BJ,(B/]/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4700 ;; $B"-(B .....
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4701 ;; $B$"(Bi /$B9g(B/[$B$$(B/$B9g(B/]/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4702 ;; ;; okuri-nasi entries.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4703 ;; $BJQ$G(B $B$8$g$&$?$$(B /$B>uBV(B/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4704 ;; $B49>:(B $B$=$&$K$e$&(B /$BA^F~(B/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4705 ;; $B=g=g(B $B$+$J(B /$B2>L>(B/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4706 ;; $B"-(B ...
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4707 ;; ...
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4708 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4709 ;; $B!ZJQ998e![(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4710 ;; ;; okuri-ari entries.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4711 ;; $BJQ$G(B $B$G(Bt /$B=P(B/[$B$F(B/$B=P(B/]/[$B$?(B/$B=P(B/]/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4712 ;; $B49>:(B $B$D(Bi /$BIU(B/[$B$$(B/$BIU(B/]/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4713 ;; $B=g=g(B $B$1(Bs /$B>C(B/[$B$9(B/$B>C(B/]/[$B$7(B/$B>C(B/]/[$B$;(B/$B>C(B/]/[$B$5(B/$B>C(B/]/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4714 ;; $B"-(B $B$+$((Bs /$BJV(B/[$B$7(B/$BJV(B/]/[$B$9(B/$BJV(B/]/[$B$5(B/$BJV(B/]/[$B$;(B/$BJV(B/]/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4715 ;; ...
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4716 ;; ...
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4717 ;; $B$J$,(Bs /$BD9(B/$BN.(B/[$B$7(B/$BN.(B/]/[$B$5(B/$BD9(B/]/[$B$=(B/$BN.(B/]/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4718 ;; ;; okuri-nasi entries.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4719 ;; $BJQ$G(B $B$8$g$&$?$$(B /$B>uBV(B/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4720 ;; $B49>:(B $B$=$&$K$e$&(B /$BA^F~(B/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4721 ;; $B=g=g(B $B$+$J(B /$B2>L>(B/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4722 ;; $B"-(B ...
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4723 ;; ...
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4724 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4725 ;; skk-auto-okuri-process $B$,(B non-nil $B$N$H$-$K!"(B(j-okuri-search $B2~$a(B)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4726 ;; skk-okuri-search $B$O8+=P$78l$ND9$$=g$K8uJd$rJV$9I,MW$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4727 ;; SKK 8.6 $B$^$G$O!"(Bskk-okuri-search $B$,(B j-okuri-ari-min $B$+$i(B j-okuri-ari-max
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4728 ;; $B$^$G$r=g$KC5$7!"8+$D$1$?$b$N=g$K8uJd$rJV$9$?$a$K%W%i%$%Y!<%H<-=q$,8+=P$7(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4729 ;; $B8l$r%-!<$H$7$F9_=g$K%=!<%H$5$l$F$$$kI,MW$,$"$C$?!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4730 ;; SKK 9.x $B$G$O!"(Bskk-okuri-search $B$,!"8+IU$1$?8uJd$r8+=P$78l$r%-!<$H$7$F>:=g(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4731 ;; $B$K%=!<%H$7$FJV$9$?$a!"%W%i%$%Y!<%H<-=q$N%=!<%H$OI,MW$G$J$$!#$h$C$F!":G8e(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4732 ;; $B$KJQ49$7$?$b$N$r(B (j-okuri-ari-min $B2~$a(B) skk-okuri-ari-min $B$N0LCV$KA^F~$9(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4733 ;; $B$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4734 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4735 (let ((jisyo-buffer (skk-get-jisyo-buffer skk-jisyo 'nomsg))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4736 (midasi
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4737 (if skk-use-numeric-conversion
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4738 (skk-compute-numeric-henkan-key skk-henkan-key)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4739 skk-henkan-key ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4740 (last skk-last-henkan-result)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4741 (last-point skk-last-henkan-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4742 (here (point)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4743 (if jisyo-buffer
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4744 (let ((inhibit-quit t) buffer-read-only old-entry okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4745 (if skk-auto-okuri-process
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4746 (setq word (skk-remove-common word)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4747 (setq okurigana (or skk-henkan-okurigana skk-okuri-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4748 ;; midasi skk-henkan-key )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4749 (with-current-buffer jisyo-buffer
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4750 ;; $B4{B8%(%s%H%j$r8!:w8e>C5n$9$k!#A^F~$9$Y$-%(%s%H%j$,(B entry1 $B$K(B 1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4751 ;; $B$D$7$+$J$/!"(Bword $B$HF1$8J8;z$G$"$C$F$b!"$$$C$?$s>C$7$F$=$N%(%s%H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4752 ;; $B%j$r(B min $B%]%$%s%H$K0\F0$5$;$J$1$l$P$J$i$J$$(B ($BFI$_$NJd40$r9T$&$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4753 ;; $B$-$O!"(Bmin $B%]%$%s%H$+$i8+=P$7$rC5$9$?$a!"?7$7$$8+=P$7$[$I!"(Bmin
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4754 ;; $B%]%$%s%H$K6a$$$H$3$m$K$J$1$l$P$J$i$J$$(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4755 (setq skk-henkan-key midasi
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4756 old-entry (skk-search-jisyo-file-1 okurigana 0 'delete) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4757 (skk-update-jisyo-1 okurigana word old-entry purge)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4758 (if skk-use-relation
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4759 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4760 (if (not (and
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4761 last
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4762 (markerp last-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4763 (< last-point here)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4764 (< (- here last-point) skk-relation-length) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4765 (setq last nil) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4766 (skk-update-relation
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4767 midasi okurigana word last purge) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4768 (if skk-debug (message "%S %S %S" last last-point here))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4769 ;;(if (featurep 'skk-attr)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4770 ;; (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4771 ;; (and skk-attr-default-update-function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4772 ;; (funcall skk-attr-default-update-function midasi
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4773 ;; okurigana word purge ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4774 ;; (and skk-attr-update-function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4775 ;; (funcall skk-attr-update-function midasi okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4776 ;; word purge ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4777 ;; auto save.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4778 (if skk-jisyo-save-count
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4779 (if (> skk-jisyo-save-count skk-update-jisyo-count)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4780 (setq skk-update-jisyo-count (1+ skk-update-jisyo-count))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4781 (setq skk-update-jisyo-count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4782 (skk-save-jisyo 'quiet) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4783 ;; $B<-=q%P%C%U%!$r%*!<%W%s$7$?$H$-$K(B auto-save-mode $B$r%*%U$K$7$F$*(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4784 ;; $B$1$PKhEY2<5-$N$h$&$JA`:n$r$7$J$/$F:Q$`!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4785 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4786 ;; $B$3$&$7$F$*$1$P!"<-=q%P%C%U%!$O%*!<%H%;!<%V$5$l$J$/$F:Q$`!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4787 ;;(set-buffer-modified-p nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4788 )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4789
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4790 (defun skk-update-jisyo-1 (okurigana word old-entry-list purge)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4791 ;; $B4{B8%(%s%H%j$+$i7W;;$7$?(B entry[1-4] $B$NCM$H!":#2s$NJQ49$N7k2L(B word $B$H$r%^!<(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4792 ;; $B%8$7$F!"?7$?$J%(%s%H%j$r7W;;$7!"A^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4793 (let ((entry1 (car old-entry-list)) (entry2 (nth 1 old-entry-list))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4794 (entry3 (nth 2 old-entry-list)) (entry4 (nth 3 old-entry-list)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4795 (if (not purge)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4796 ;; entry1 $B$N@hF,$N%(%s%H%j$r(B word $B$K$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4797 (setq entry1 (cons word (delete word entry1)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4798 ;; $BAw$j$J$7!"$b$7$/$O(B skk-henkan-okuri-strictly $B$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4799 ;; skk-henkan-strict-okuri-precedence $B$,(B nil $B$N>l9g!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4800 (if (or (not okurigana) (not (or skk-henkan-okuri-strictly
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4801 skk-henkan-strict-okuri-precedence )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4802 ;; entry1 $B$r(B purge$B!#6&MQ<-=q$K$"$k%(%s%H%j$@$C$?$i!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4803 ;; skk-ignore-dic-word $B$G%/%)!<%H$7$F<!$NJQ49$+$i=PNO$7$J$$$h$&$K$9(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4804 ;; $B$k!#6&MQ<-=q$K$J$$J8;zNs$O(B word $B$r>C$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4805 (if (skk-public-jisyo-contains-p okurigana word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4806 (setq entry1 (skk-compose-ignore-entry entry1 word))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4807 (setq entry1 (delete word entry1)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4808 ;; $BAw$j$"$j$G!"$+$D(B skk-henkan-okuri-strictly $B$+(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4809 ;; skk-henkan-strict-okuri-precedence $B$,(B non-nil $B$N>l9g$G!"$+$D(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4810 ;; $B$3$N(B word $B$H%Z%"$K$J$kAw$j2>L>$,(B okurigana $B$7$+$J$$$H$-!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4811 (if (and okurigana (or skk-henkan-okuri-strictly
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4812 skk-henkan-strict-okuri-precedence )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4813 (null (member word entry2)) (null (member word entry4)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4814 (setq entry1 (delete word entry1))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4815 ;; $B$=$NB>$N>l9g$O2?$b$7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4816 )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4817 (if (null entry1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4818 ;; entry1 $B$,(B null $B$G$"$l$P!"$b$&2?$b$9$k$3$H$O$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4819 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4820 (goto-char (if okurigana skk-okuri-ari-min skk-okuri-nasi-min))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4821 (insert "\n" skk-henkan-key " /")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4822 ;; entry1 -- $BA4%(%s%H%j(B ($BAw$j$J$7$N>l9g(B) or $B4A;zItJ,$NA4%(%s%H%j(B ($BAw$j$"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4823 ;; $B$j$N>l9g(B)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4824 (insert (mapconcat 'skk-quote-char entry1 "/") "/")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4825 (if (not okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4826 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4827 ;; entry2 $B0J9_$N%(%s%H%j$r=hM}$9$k$N$O!"Aw$j$"$j$N>l9g$N$_!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4828 ;; $B@h$KA^F~$9$Y$-%(%s%H%j$r7W;;!"D4@0$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4829 (if entry3
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4830 (if (not purge)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4831 (setq entry3 (cons word (delete word entry3)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4832 (setq entry3 (delete word entry3))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4833 (if (null entry3)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4834 ;; entry3 $B$H$7$FA^F~$9$k$b$N$,A4$/$J$1$l$P!"(B"/[$B$/(B/]/" $B$N$h(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4835 ;; $B$&$JAw$j2>L>$N$_$N%(%s%H%j$r:n$i$J$$$h$&$K$9$k(B ($BI,MW$G(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4836 ;; $B$"$l$P!"(Bentry2 $B$N:G8eJ}$H(B) entry4 $B$N@hF,$N%(%s%H%j(B "]"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4837 ;; $B$r:o=|!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4838 (let ((last2 (nthcdr (- (length entry2) 2) entry2)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4839 ;; entry2 $B$N:G8eJ}$O>o$K(B "[$BAw$j2>L>(B" $B$H$O8B$i$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4840 (if (string= (nth 1 last2) (concat "[" okurigana))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4841 (setcdr last2 nil) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4842 ;; entry4 $B$N@hF,$O>o$K(B "]"$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4843 (setq entry4 (cdr entry4)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4844 ;; entry3 $B$,(B null $B$G$"$l$P(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4845 (if (or skk-process-okuri-early purge)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4846 ;; skk-process-okuri-early $B$,(B non-nil $B$J$iAw$j2>L>$,J,$i$J$$$N$G(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4847 ;; $B2?$b$7$J$$!#(B-- $B:#2s;HMQ$7$?Aw$j2>L>$,$o$+$i$J$$$^$^JQ49$7$F$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4848 ;; $B$k$N$G!"A4$F$N%(%s%H%j$,(B entry2 $B$KF~$C$F$$$k(B -- entry3,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4849 ;; entry4 $B$O(B null$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4850 ;; entry3 $B$H$7$FA^F~$9$k$b$N$,A4$/$J$1$l$P!"2?$b$7$J$$(B -- entry3
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4851 ;; $B$,(B purge $BA0$+$i(B null $B$J$i!"(Bentry2 $B$NKvHx$O(B "[" $B$G$J$$$7!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4852 ;; entry4 $B$O(B null $B$@$+$i(B entry[234] $B$NA`:n$OITMW!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4853 nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4854 (setq entry2 (nconc entry2 (list (concat "[" okurigana)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4855 entry3 (list word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4856 ;; purge $BA0$+$i(B entry3 $B$,(B null $B$@$C$?$N$@$+$i(B entry4 $B$b(B null$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4857 entry4 (list "]") ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4858 (if entry2
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4859 ;; entry2 -- $B:#2s;HMQ$7$J$+$C$?Aw$j2>L>$r;H$&4A;z$N8uJd72(B + "[" + $B:#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4860 ;; $B2s;HMQ$7$?Aw$j2>L>(B ($BAw$j2>L>$N$_!#$=$NAw$j2>L>$r;HMQ$9$k4A;z$N8u(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4861 ;; $BJd72$O!"(Bentry3 $B$K4^$^$l$k(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4862 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4863 (insert (mapconcat 'skk-quote-char entry2 "/" ) "/")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4864 ;; entry2 $B$,(B null $B$J$i(B entry3 $B$b(B null$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4865 (if entry3
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4866 ;; entry3 -- $B:#2s;HMQ$7$?Aw$j2>L>$r;H$&A44A;z%(%s%H%j(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4867 (insert (mapconcat 'skk-quote-char entry3 "/") "/") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4868 ;; purge $B$G(B entry3 $B$,(B null $B$K$J$C$?>l9g$O(B entry4 $B$,;D$C$F$$$k$H$-(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4869 ;; $B$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4870 (if entry4
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4871 ;; entry4 -- "]" + $BB>$NAw$j2>L>$r;H$&A44A;z%(%s%H%j(B (entry2 $B$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4872 ;; $B;D$j(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4873 (insert (mapconcat 'skk-quote-char entry4 "/") "/") ))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4874
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4875 (defun skk-quote-char (word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4876 ;; $B<-=q$N@)8B$+$i<-=q%(%s%H%jFb$K4^$a$F$O$J$i$J$$J8;z$,(B WORD $B$NCf$K$"$l$P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4877 ;; $BI>2A$7$?$H$-$K$=$NJ8;z$H$J$k$h$&$J(B Lisp $B%3!<%I$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4878 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4879 (if (and word
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4880 (string-match "[/\n\r\"]" word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4881 ;; we should not quote WORD if it is a symbolic expression
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4882 (not (skk-lisp-prog-p word)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4883 (concat "(concat \""
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4884 (mapconcat (function (lambda (c)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4885 (cond ((eq c ?/) ; ?/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4886 "\\057" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4887 ((eq c ?\n) ; ?\n
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4888 "\\n" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4889 ((eq c ?\r) ; ?\r
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4890 "\\r" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4891 ((eq c ?\") ; ?\"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4892 "\\\"" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4893 ((eq c ?\\) ; ?\\
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4894 "\\\\" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4895 (t (char-to-string c)))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4896 ;; $BJ8;zNs$rBP1~$9$k(B char $B$N%j%9%H$KJ,2r$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4897 (append word nil) "")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4898 "\")")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4899 word )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4900
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4901 (defun skk-lisp-prog-p (word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4902 ;; word $B$,(B Lisp $B%W%m%0%i%`$G$"$l$P!"(Bt $B$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4903 (let ((l (length word)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4904 (and (> l 2)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4905 (eq (aref word 0) ?\() ; ?\(
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4906 (< (aref word 1) 128)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4907 (eq (aref word (1- l)) ?\)) ))) ; ?\)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4908
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4909 (defun skk-public-jisyo-contains-p (okurigana word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4910 ;; $B6&M-<-=q$,(B MIDASHI $B5Z$S$=$l$KBP1~$9$k(B WORDS $B%(%s%H%j$r;}$C$F$$$l$P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4911 ;; non-nil $B$rJV$9!#%W%i%$%Y!<%H<-=q$N%P%C%U%!$G%3!<%k$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4912 (let (fn skk-henkan-okuri-strictly skk-henkan-strict-okuri-precedence)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4913 (if okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4914 (setq skk-henkan-okurigana okurigana) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4915 (if (and (not (featurep 'skk-server))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4916 (or (and (boundp 'skk-server-host) skk-server-host)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4917 (and (boundp 'skk-servers-list) skk-servers-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4918 (getenv "SKKSERVER")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4919 (getenv "SKKSERV") ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4920 (require 'skk-server) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4921 (if (and (featurep 'skk-server)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4922 (or (and skk-server-host skk-server-prog)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4923 skk-servers-list ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4924 (setq fn (assq 'skk-search-server skk-search-prog-list)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4925 ;; skk-search-server $B$+$i;O$^$k%j%9%H$,$J$1$l$P!"$H$K$+$/Bg$-$$<-=q$r0z?t(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4926 ;; $B$K$7$F$$$k(B skk-search-jisyo-file $B%W%m%0%i%`$rC5$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4927 (if (and (not fn) (or skk-aux-large-jisyo skk-large-jisyo))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4928 (let ((spl skk-search-prog-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4929 cell )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4930 (while (setq cell (car spl))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4931 (if (and (eq (car cell) 'skk-search-jisyo-file)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4932 (member (nth 1 cell)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4933 '(skk-aux-large-jisyo skk-large-jisyo) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4934 (setq fn cell
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4935 spl nil )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4936 (setq spl (cdr spl)) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4937 (and fn (member word (eval fn))) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4938
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4939 (defun skk-compose-ignore-entry (entry &optional add)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4940 ;; ENTRY $B$NCf$K(B skk-ignore-dic-word $B4X?t$G%/%)!<%H$7$?%(%s%H%j$,$"$l(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4941 ;; $B$P!"0l$D$N%(%s%H%j$K$^$H$a$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4942 ;; $B%*%W%7%g%J%k0z?t$N(B ADD $B$,;XDj$5$l$F$$$?$i!"(BADD $B$r4^$a$?(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4943 ;; skk-ignore-dic-word $B%(%s%H%j$r:n$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4944 ;; $B?7$7$$(B skk-ignore-dic-word $B%(%s%H%j$r(B car $B$K!"$=$l0J30$N%(%s%H%j(B cdr $B$K$7(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4945 ;; $B$?%j%9%H$rJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4946 (let (l arg e)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4947 (if add (setq entry (delete add entry)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4948 (setq l entry)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4949 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4950 (while l
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4951 (setq e (car l)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4952 l (cdr l) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4953 (if (string-match "(skk-ignore-dic-word +\\([^\)]+\\))" e)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4954 (setq arg (concat arg
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4955 (substring e (1+ (match-beginning 1))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4956 (1- (match-end 1)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4957 "\" \"" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4958 entry (delq e entry) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4959 (if add
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4960 (setq arg (if arg (concat arg add) add))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4961 ;; $BKvHx$N(B " \"" $B$r@Z$jMn$H$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4962 (setq arg (substring arg 0 -2)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4963 (cons (concat "(skk-ignore-dic-word \"" arg "\")") entry) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4964
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4965 (defun skk-katakana-region (start end &optional vcontract)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4966 "$B%j!<%8%g%s$N$R$i$,$J$r%+%?%+%J$KJQ49$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4967 $B%*%W%7%g%J%k0z?t$N(B VCONTRACT $B$,(B non-nil $B$G$"$l$P!"(B\"$B$&!+(B\" $B$r(B \"$B%t(B\" $B$KJQ49$9(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4968 $B$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4969 $B0z?t$N(B START $B$H(B END $B$O?t;z$G$b%^!<%+!<$G$bNI$$!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4970 (interactive "*r\nP")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4971 (let ((diff (if skk-mule (- ?$B%"(B ?$B$"(B)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4972 ch )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4973 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4974 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4975 ;;(if (and skk-henkan-active skk-use-face) (skk-henkan-face-off))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4976 (goto-char start)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4977 (while (re-search-forward "[$B$!(B-$B$s(B]" end 'noerror)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4978 (setq ch (preceding-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4979 ;; firstly insert a new char, secondly delete an old char to save
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4980 ;; the cursor position.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4981 (if skk-mule
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4982 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4983 (backward-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4984 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4985 (insert (+ ch diff)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4986 (backward-char 2)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4987 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4988 (insert ?\245 ch) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4989 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4990 (delete-region (+ (match-beginning 0) skk-kanji-len)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4991 (+ (match-end 0) skk-kanji-len) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4992 (if vcontract
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4993 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4994 (goto-char start)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4995 (while (re-search-forward "$B%&!+(B" end 'noerror)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4996 (if skk-mule
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4997 (backward-char 2)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4998 (backward-char 3) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4999 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5000 (insert "$B%t(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5001 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5002 (delete-region (+ (match-beginning 0) skk-kanji-len)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5003 (+ (match-end 0) skk-kanji-len) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5004 ;;(if (and skk-henkan-active skk-use-face) (skk-henkan-face-on))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5005 (skk-set-cursor-properly)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5006 ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5007
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5008 (defun skk-hiragana-region (start end &optional vexpand)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5009 "$B%j!<%8%g%s$N%+%?%+%J$r$R$i$,$J$KJQ49$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5010 $B%*%W%7%g%J%k0z?t$N(B VEXPAND $B$,(B non-nil $B$G$"$l$P!"(B\"$B%t(B\" $B$r(B \"$B$&!+(B\" $B$KJQ49$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5011 $B0z?t$N(B START $B$H(B END $B$O?t;z$G$b%^!<%+!<$G$bNI$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5012 \"$B%u(B\" $B$H(B \"$B%v(B\" $B$OJQ99$5$l$J$$!#$3$N(B 2 $B$D$NJ8;z$OBP1~$9$k$R$i$,$J$,$J$$$N$G!"%+(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5013 $B%?%+%J$H$7$F$O07$o$l$J$$!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5014 (interactive "*r\nP")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5015 (let ((diff (if skk-mule (- ?$B%"(B ?$B$"(B)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5016 ch )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5017 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5018 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5019 ;;(if (and skk-henkan-active skk-use-face) (skk-henkan-face-off))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5020 (goto-char start)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5021 (while (re-search-forward "[$B%!(B-$B%s(B]" end 'noerror)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5022 (setq ch (preceding-char))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5023 ;; firstly insert a new char, secondly delete an old char to save
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5024 ;; the cursor position.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5025 (if skk-mule
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5026 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5027 (backward-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5028 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5029 (insert (- ch diff)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5030 (backward-char 2)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5031 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5032 (insert ?\244 ch) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5033 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5034 (delete-region (+ (match-beginning 0) skk-kanji-len)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5035 (+ (match-end 0) skk-kanji-len) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5036 (if vexpand
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5037 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5038 (goto-char start)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5039 (while (re-search-forward "$B%t(B" end 'noerror)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5040 (backward-char 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5041 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5042 (insert "$B$&!+(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5043 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5044 (delete-region (+ (match-beginning 0) (* skk-kanji-len 2))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5045 (+ (match-end 0) (* skk-kanji-len 2)) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5046 ;;(if (and skk-henkan-active skk-use-face) (skk-henkan-face-on))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5047 (skk-set-cursor-properly)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5048 ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5049
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5050 (defun skk-zenkaku-region (start end)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5051 "$B%j!<%8%g%s$N(B ascii $BJ8;z$rBP1~$9$kA43QJ8;z$KJQ49$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5052 (interactive "*r")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5053 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5054 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5055 ;;(if (and skk-henkan-active skk-use-face) (skk-henkan-face-off))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5056 (goto-char end)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5057 (while (re-search-backward "[ -~]" start 'noerror)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5058 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5059 ;; firstly insert a new char, secondly delete an old char to save
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5060 ;; the cursor position.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5061 (insert (aref skk-default-zenkaku-vector (following-char)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5062 (cancel-undo-boundary)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5063 (delete-region (+ (match-beginning 0) skk-kanji-len)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5064 (+ (match-end 0) skk-kanji-len) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5065 ;;(if (and skk-henkan-active skk-use-face) (skk-henkan-face-on))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5066 (skk-set-cursor-properly)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5067 )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5068
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5069 (defun skk-ascii-region (start end)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5070 ;; $B%j!<%8%g%s$NA43Q1Q?t;z$rBP1~$9$k(B ascii $BJ8;z$KJQ49$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5071 ;; egg.el 3.09 $B$N(B hankaku-region $B$r;29M$K$7$?!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5072 (interactive "*r")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5073 (skk-save-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5074 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5075 (let (val)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5076 ;;(if (and skk-henkan-active skk-use-face) (skk-henkan-face-off))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5077 (goto-char end)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5078 (while (re-search-backward "\\cS\\|\\cA" start 'noerror)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5079 (setq val (skk-jisx0208-to-ascii (char-to-string (following-char))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5080 (if val
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5081 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5082 (insert val)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5083 (delete-region (+ (match-beginning 0) 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5084 (+ (match-end 0) 1) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5085 ;;(if (and skk-henkan-active skk-use-face) (skk-henkan-face-on))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5086 (skk-set-cursor-properly)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5087 ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5088
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5089 (defun skk-katakana-henkan (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5090 "$B"&%b!<%I$G$"$l$P!"%j!<%8%g%s$N$R$i$,$J$r%+%?%+%J$KJQ49$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5091 $B"'%b!<%I$G$O2?$b$7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5092 $B$=$NB>$N%b!<%I$G$O!"%*%j%8%J%k$N%-!<3d$jIU$1$G%P%$%s%I$5$l$F$$$k%3%^%s%I$r<B9T(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5093 $B$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5094 (interactive "*P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5095 (if skk-henkan-on
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5096 (if (not skk-henkan-active)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5097 (skk-*-henkan-1 'skk-katakana-region skk-henkan-start-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5098 skk-henkan-end-point 'vcontract ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5099 (skk-emulate-original-map arg) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5100
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5101 (defun skk-hiragana-henkan (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5102 "$B"&%b!<%I$G$"$l$P!"%j!<%8%g%s$N%+%?%+%J$r$R$i$,$J$KJQ49$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5103 $B"'%b!<%I$G$O2?$b$7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5104 $B$=$NB>$N%b!<%I$G$O!"%*%j%8%J%k$N%-!<3d$jIU$1$G%P%$%s%I$5$l$F$$$k%3%^%s%I$r<B9T(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5105 $B$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5106 (interactive "*P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5107 (if skk-henkan-on
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5108 (if (not skk-henkan-active)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5109 (skk-*-henkan-1 'skk-hiragana-region skk-henkan-start-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5110 skk-henkan-end-point 'vexpand ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5111 (skk-emulate-original-map arg) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5112
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5113 (defun skk-zenkaku-henkan (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5114 "$B"&%b!<%I$G$"$l$P!"(Bascii $BJ8;z$rBP1~$9$kA43QJ8;z$KJQ49$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5115 $B"'%b!<%I$G$O2?$b$7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5116 $B$=$NB>$N%b!<%I$G$O!"%*%j%8%J%k$N%-!<3d$jIU$1$G%P%$%s%I$5$l$F$$$k%3%^%s%I$r<B9T(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5117 $B$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5118 (interactive "*P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5119 (if skk-henkan-on
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5120 (if (not skk-henkan-active)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5121 (skk-*-henkan-1 'skk-zenkaku-region skk-henkan-start-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5122 skk-henkan-end-point ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5123 (skk-emulate-original-map arg) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5124
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5125 (defun skk-ascii-henkan (arg)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5126 "$B"&%b!<%I$G$"$l$P!"(Bascii $BJ8;z$rBP1~$9$kA43QJ8;z$KJQ49$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5127 $B"'%b!<%I$G$O2?$b$7$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5128 $B$=$NB>$N%b!<%I$G$O!"%*%j%8%J%k$N%-!<3d$jIU$1$G%P%$%s%I$5$l$F$$$k%3%^%s%I$r<B9T(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5129 $B$9$k!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5130 (interactive "*P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5131 (if skk-henkan-on
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5132 (if (not skk-henkan-active)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5133 (skk-*-henkan-1 'skk-ascii-region skk-henkan-start-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5134 skk-henkan-end-point ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5135 (skk-emulate-original-map arg) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5136
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5137 (defun skk-*-henkan-1 (func &rest args)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5138 ;; $BJQ492DG=$+$I$&$+$N%A%'%C%/$r$7$?8e$K(B ARGS $B$r0z?t$H$7$F(B FUNC $B$rE,MQ$7!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5139 ;; skk-henkan-start-point $B$H(B skk-henkan-end-point $B$N4V$NJ8;zNs$rJQ49$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5140 (let ((pos (point)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5141 (cond ((not (string= skk-prefix ""))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5142 (skk-error "$B%U%#%C%/%9$5$l$F$$$J$$(B skk-prefix $B$,$"$j$^$9(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5143 "Have unfixed skk-prefix" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5144 ((< pos skk-henkan-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5145 (skk-error "$B%+!<%=%k$,JQ493+;OCOE@$h$jA0$K$"$j$^$9(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5146 "Henkan end point must be after henkan start point" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5147 ((and (not skk-allow-spaces-newlines-and-tabs)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5148 (skk-save-point (beginning-of-line)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5149 (> (point) skk-henkan-start-point) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5150 (skk-error "$BJQ49%-!<$K2~9T$,4^$^$l$F$$$^$9(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5151 "Henkan key may not contain a new line character" )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5152 (skk-set-marker skk-henkan-end-point pos)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5153 (apply func args)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5154 (skk-kakutei) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5155
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5156 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5157 (defun skk-jisx0208-to-ascii (string)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5158 (let ((char
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5159 (cond (skk-mule3
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5160 (require 'language/japan-util)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5161 (get-char-code-property (string-to-char string) 'ascii) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5162 (skk-mule
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5163 (let* ((ch (string-to-char string))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5164 (ch1 (char-component ch 1)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5165 (cond ((eq 161 ch1) ; ?\241
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5166 (cdr (assq (char-component ch 2) skk-hankaku-alist)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5167 ((eq 163 ch1) ; ?\243
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5168 (- (char-component ch 2) 128) ; ?\200
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5169 ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5170 (t (- (aref string (1- skk-kanji-len)) 128)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5171 (if char (char-to-string char)) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5172
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5173 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5174 (defun skk-middle-list (org offset inserted)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5175 ;; ORG := '(A B C), INSERTED := '(X Y), OFFSET := 1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5176 ;; -> '(A B X Y C)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5177 (let (tmp tail)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5178 (if (>= 0 offset)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5179 (error "Cannot insert!") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5180 (setq tmp (nthcdr (1- offset) org)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5181 tail (cdr tmp) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5182 (setcdr tmp nil) ;cut off
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5183 (setcdr tmp (if tail (nconc inserted tail) inserted))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5184 org ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5185
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5186 ;;(defun skk-chomp (nth list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5187 ;; (let ((l (nthcdr (1- nth) list)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5188 ;; (setcdr l nil)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5189 ;; list ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5190
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5191 ;;(defun skk-cutoff-list (list offset)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5192 ;; ;; LIST := '(A B C), OFFSET := 1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5193 ;; ;; -> '(A B)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5194 ;; (if (< 0 offset)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5195 ;; (setcdr (nthcdr (1- offset) list) nil) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5196 ;; list )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5197
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5198 (defun skk-henkan-face-on ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5199 ;; skk-use-face $B$,(B non-nil $B$N>l9g!"(Bskk-henkan-start-point $B$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5200 ;; skk-henkan-end-point $B$N4V$N(B face $BB0@-$r(B skk-henkan-face $B$NCM$KJQ99$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5201 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5202 ;; SKK 9.4 $B$h$j(B Text Properties $B$r;HMQ$9$k$N$r;_$a$F!"(BOverlays $B$r;HMQ$9$k$h(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5203 ;; $B$&$K$7$?(B (egg.el, canna.el, wnn-egg.el $B$r;29M$K$7$?(B)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5204 ;; Overlays $B$O!"%F%-%9%H$N0lIt$G$O$J$$$N$G!"%P%C%U%!$+$iJ8;z$r@Z$j=P$7$F$b%3(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5205 ;; $B%T!<$NBP>]$K$J$i$J$$$7!"%"%s%I%%;~$bL5;k$5$l$k$N$G!"JQ49$5$l$?8uJd$NI=<((B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5206 ;; $B$r0l;~E*$KJQ99$9$k$K$O(B Text Properties $B$h$j$b9%ET9g$G$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5207 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5208 ;; $BC"$7!"(BOverlays $B$O(B Text Properties $B$h$j07$$$KCm0U$9$Y$-E@$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5209 ;; $B%*!<%P%l%$$NCf$N%^!<%+$rD>@\JQ99$7$F$7$^$&$H!"$[$+$N=EMW$J%G!<%?9=B$$N99(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5210 ;; $B?7$,9T$o$l$:!"<:$o$l$k%*!<%P%l%$$,=P$k$3$H$K$J$j$+$M$J$$(B (Overlay $B$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5211 ;; Buffer$B$NHO0O$rJQ99$9$k$H$-$O!"I,$:(B move-overlay $B$r;HMQ$7$J$1$l$P$J$i$J$$(B)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5212 ;; $B$H$$$&E@$G$"$k!#(Bskk-henkan-face-on $B$GJQ497k2L$N8uJd$K4X$9$k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5213 ;; skk-henkan-overlay $B$r?75,$K:n$C$F$+$i(B ($B$"$k$$$O4{B8$N(B Overlay $B$r3:Ev8D=j(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5214 ;; $B$K0\F0$7$F$+$i(B) skk-henkan-face-off $B$G>C5n$9$k$^$G$N4V$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5215 ;; skk-henkan-start-point $B$H(B skk-henkan-end-point $BCf$N%F%-%9%H$r:o=|$9$k$H!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5216 ;; $B7k2LE*$K(B move-overlay $B$r;HMQ$;$:$=$l$i$N%^!<%+!<CM$r99?7$9$k$3$H$K$J$C$F(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5217 ;; $B$7$^$&!#=>$$!"(Bskk-henkan-start-point $B$H(B skk-henkan-end-point $B$N4V$K$"$k%F(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5218 ;; $B%-%9%H$KJQ99$r2C$($k$H$-$O!"@h$K(B skk-henkan-face-off $B$G0lC6(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5219 ;; skk-henkan-overlay $B$r>C$9I,MW$,$"$k(B (<(skk-e19.el/kill-region)>)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5220 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5221 ;;From: enami tsugutomo <enami@ba2.so-net.or.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5222 ;;Subject: overlay (was Re: SKK-9.4.15)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5223 ;;Date: 23 Oct 1996 16:35:53 +0900
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5224 ;;Message-ID: <87n2xe5e06.fsf@plants-doll.enami.ba2.so-net.or.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5225 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5226 ;;enami> $B4X?t(B skk-henkan-face-on $B$N(B comment $B$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5227 ;;enami>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5228 ;;enami> ;; $BC"$7!"(BOverlays $B$O(B Text Properties $B$h$j07$$$KCm0U$9$Y$-E@$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5229 ;;enami> ;; $B%*!<%P%l%$$NCf$N%^!<%+$rD>@\JQ99$7$F$7$^$&$H!"$[$+$N=EMW$J%G!<%?9=B$$N99(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5230 ;;enami> ;; $B?7$,9T$o$l$:!"<:$o$l$k%*!<%P%l%$$,=P$k$3$H$K$J$j$+$M$J$$(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5231 ;;enami>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5232 ;;enami> ($B5Z$S$=$l0J9_(B) $B$NItJ,$K4X$7$F$G$9$,(B, make-overlay $B$G0LCV$N;XDj$K;H$C(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5233 ;;enami> $B$?(B marker $B$,$=$N$^$^(B overlay $B$N0lIt$H$7$F;H$o$l$k$H(B, $B8m2r$7$F$$$^$;$s(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5234 ;;enami> $B$G$7$g$&$+(B?
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5235 ;;enami>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5236 ;;enami> $B<B:]$K$O(B overlay $B$N0lIt$r0Y$9(B marker $B$rD>@\0\F0$5$;$k$3$H$O$G$-$^$;$s(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5237 ;;enami> $B$7(B, text $B$N:o=|DI2C$K$h$k0\F0$K$OBP=h$7$F$$$^$9$+$iLdBj$J$$$H;W$$$^$9(B.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5238 ;;enami>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5239 ;;enami> # $B$=$&$G$J$+$C$?$i(B overlay $B$C$FL5Cc6lCc;H$$$E$i$$$b$N$K$J$C$F$7$^$$$^(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5240 ;;enami> # $B$9(B.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5241 ;;enami> $B$($J$_(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5242 (let ((inhibit-quit t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5243 cbuf )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5244 (if (and skk-henkan-face
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5245 (setq cbuf (current-buffer))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5246 (eq (marker-buffer skk-henkan-start-point) cbuf)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5247 (eq (marker-buffer skk-henkan-end-point) cbuf)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5248 (marker-position skk-henkan-start-point)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5249 (marker-position skk-henkan-end-point) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5250 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5251 (or skk-henkan-overlay
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5252 (setq skk-henkan-overlay (skk-make-overlay skk-henkan-start-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5253 skk-henkan-end-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5254 cbuf )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5255 (skk-move-overlay skk-henkan-overlay skk-henkan-start-point
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5256 skk-henkan-end-point cbuf )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5257 ;; evaporate $BB0@-$rIU$1$k$Y$-$+(B...$B!#$G$bJQ49$r7+$jJV$9$H$-$O!":FMxMQ(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5258 ;; $B$9$k$N$@$+$i!"$`$7$m!"4{$K:n$C$F$"$kJ}$,NI$$$+$b!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5259 (skk-overlay-put skk-henkan-overlay 'face skk-henkan-face) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5260
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5261 (defun skk-henkan-face-off ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5262 ;; skk-henkan-start-point $B$H(B skk-henkan-end-point $B$N4V$NI=<($rJQ99$7$F$$$k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5263 ;; skk-henkan-overlay $B$r>C$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5264 (and skk-henkan-face
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5265 ;; $B%j%+!<%7%V%_%K%P%C%U%!$KF~$C$?$H$-$O!"(Boverlayp $B$K$h$k8!::$,I,MW!)(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5266 (skk-overlayp skk-henkan-overlay)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5267 (skk-delete-overlay skk-henkan-overlay) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5268
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5269 (defun skk-set-cursor-color (color)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5270 ;; $B%+!<%=%k$N?'$r(B COLOR $B$KJQ99$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5271 (if skk-use-color-cursor
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5272 (condition-case nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5273 (set-cursor-color color)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5274 (error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5275 (set-cursor-color skk-default-cursor-color)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5276 (if skk-report-set-cursor-error
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5277 (skk-message
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5278 "$B%+%i!<%^%C%W@Z$l$G$9!#%G%#%U%)%k%H$N%+%i!<$r;H$$$^$9!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5279 "Color map is exhausting, use default cursor color" ))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5280
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5281 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5282 (defun skk-set-cursor-properly ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5283 ;; $B%+%l%s%H%P%C%U%!$N(B SKK $B$N%b!<%I$K=>$$!"%+!<%=%k$N?'$rJQ99$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5284 (if skk-use-color-cursor
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5285 (if (not skk-mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5286 (skk-set-cursor-color skk-default-cursor-color)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5287 (skk-set-cursor-color (cond (skk-zenkaku-mode skk-zenkaku-cursor-color)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5288 (skk-katakana skk-katakana-cursor-color)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5289 (skk-j-mode skk-hirakana-cursor-color)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5290 (t skk-ascii-cursor-color) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5291 (if skk-use-cursor-change
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5292 (skk-change-cursor-when-ovwrt) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5293
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5294 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5295 (defun skk-change-cursor-when-ovwrt ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5296 (if skk-xemacs
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5297 (setq bar-cursor overwrite-mode)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5298 (if overwrite-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5299 (modify-frame-parameters (selected-frame) '((cursor-type bar . 3)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5300 (modify-frame-parameters (selected-frame) '((cursor-type . box))) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5301
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5302 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5303 (defun skk-make-face (face)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5304 ;; hilit-lookup-face-create $B$N%5%V%;%C%H!#(Btutorial $B$G?'IU$1$r9T$J$&>l9g$G$b(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5305 ;; hilit19 $B$K0MB8$;$:$H$j$"$($:(B face $B$r<+A0$G:n$k$3$H$,$G$-$k$h$&$K!"$H$$$&(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5306 ;; $BL\E*$G:n$C$?$b$N$G!"4JC1$J?'IU$1$7$J$G$-$J$$!#$"$^$j8-$/$O$J$$!#J#;($J(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5307 ;; face $B$r:n$j$?$$?M$O(B hilit-lookup-face-create $BEy$r;H$C$F2<$5$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5308 (or (car (memq face (face-list)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5309 (let ((face-name (symbol-name face))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5310 fore back )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5311 (setq face (make-face face))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5312 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5313 (if (not (string-match "/" face-name))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5314 (set-face-foreground face face-name)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5315 (set-face-foreground
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5316 face
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5317 (substring face-name 0 (match-beginning 0)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5318 (set-face-background
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5319 face
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5320 (substring face-name (1+ (match-beginning 0))) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5321 face ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5322
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5323 ;;(defun skk-reinvoke ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5324 ;; (let ((original-status
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5325 ;; (cond (skk-katakana 'katakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5326 ;; (skk-zenkaku-mode 'zenkaku)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5327 ;; (skk-j-mode 'hirakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5328 ;; (skk-mode 'ascii)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5329 ;; (t 'unkown) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5330 ;; (skk-mode 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5331 ;; (cond ((eq original-status 'katakana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5332 ;; (setq skk-katakana t) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5333 ;; ((eq original-status 'zenkaku)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5334 ;; (setq skk-zenkaku-mode t) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5335 ;; ((eq original-status 'ascii)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5336 ;; (setq skk-j-mode nil) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5337 ;; ((eq original-status 'hirakana)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5338 ;; (skk-kakutei) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5339
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5340 (add-hook 'edit-picture-hook 'skk-misc-for-picture 'append)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5341 (add-hook 'skk-before-kill-emacs-hook
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5342 (function (lambda ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5343 (if skk-menu-modified-user-option
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5344 (skk-menu-save-modified-user-option) ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5345 (add-hook 'after-make-frame-hook 'skk-set-cursor-properly)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5346 (add-hook 'minibuffer-setup-hook
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5347 (function (lambda () (skk-set-cursor-properly))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5348
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5349 (add-hook 'minibuffer-exit-hook
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5350 (function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5351 (lambda ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5352 (remove-hook 'minibuffer-setup-hook 'skk-setup-minibuffer)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5353 (skk-set-cursor-properly) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5354
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5355 (run-hooks 'skk-load-hook)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5356
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5357 (provide 'skk)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5358 ;;; skk.el ends here