annotate lisp/skk/skk-gadget.el @ 219:262b8bb4a523 r20-4b8

Import from CVS: tag r20-4b8
author cvs
date Mon, 13 Aug 2007 10:09:35 +0200
parents
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 ;; skk-gadget.el -- $B<B9TJQ49$N$?$a$N%W%m%0%i%`(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
2 ;; Copyright (C) 1995, 1996, 1997 Masahiko Sato <masahiko@kuis.kyoto-u.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
3
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
4 ;; Author: Masahiko Sato <masahiko@kuis.kyoto-u.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
5 ;; Maintainer: Murata Shuuichirou <mrt@mickey.ai.kyutech.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
6 ;; Mikio Nakajima <minakaji@osaka.email.ne.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
7 ;; Version: $Id: skk-gadget.el,v 1.1 1997/12/02 08:48:37 steve Exp $
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
8 ;; Keywords: japanese
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
9 ;; Last Modified: $Date: 1997/12/02 08:48:37 $
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
10
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
11 ;; This program is free software; you can redistribute it and/or modify
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
12 ;; it under the terms of the GNU General Public License as published by
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
13 ;; the Free Software Foundation; either versions 2, or (at your option)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
14 ;; any later version.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
15
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
16 ;; This program is distributed in the hope that it will be useful
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
17 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
18 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
19 ;; GNU General Public License for more details.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
20
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
21 ;; You should have received a copy of the GNU General Public License
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
22 ;; along with SKK, see the file COPYING. If not, write to the Free
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
23 ;; Software Foundation Inc., 59 Temple Place - Suite 330, Boston,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
24 ;; MA 02111-1307, USA.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
25
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
26 ;;; Commentary:
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
27 ;; Following people contributed to skk-gadget.el (Alphabetical order):
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
28 ;; Kazuo Hirokawa <hirokawa@rics.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
29 ;; Kiyotaka Sakai <ksakai@netwk.ntt-at.co.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
30 ;; Koichi MORI <kmori@onsei2.rilp.m.u-tokyo.ac.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
31 ;; Mikio Nakajima <minakaji@osaka.email.ne.jp>
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
32 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
33 ;; $B%W%m%0%i%`<B9TJQ49$H$O(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
34 ;; ======================
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
35 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
36 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
37 ;; $BAw$j2>L>$N$J$$<-=q$NJQ49$N8uJd$K(B Emacs Lisp $B$N%3!<%I$,=q$$$F$"$l$P(B,
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
38 ;; SKK $B$O$=$N%3!<%I$r(B Lisp $B$N%W%m%0%i%`$H$7$F<B9T$7(B, $B$=$N7k2L$NJ8;zNs$r2h(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
39 ;; $BLL$KA^F~$9$k(B. $BNc$($P(B, $B<-=q$K(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
40 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
41 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
42 ;; now /(current-time-string)/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
43 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
44 ;; $B$H$$$&9T$,$"$k$H$-(B, $B!X(B`/now '$B!Y$H%?%$%W$9$l$P2hLL$K$O8=:_$N;~9o$,(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
45 ;; $BI=<($5$l(B, $B!Z"'(BFri Apr 10 11:41:43 1992$B![$N$h$&$K$J$k(B. $B$3$N$h$&$J9`L\$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
46 ;; $BEPO?$ODL>o$N<-=qEPO?$K$h$j9T$&$3$H$,$G$-$k(B.
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
47 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
48 ;; $B$3$3$G;H$($k(B Lisp $B$N%3!<%I$O2~9T$r4^$s$G$$$J$$$b$N$K8B$i$l$k(B. $B$^$?$3$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
49 ;; $B%3!<%I$O7k2L$H$7$FJ8;zNs$rJV$9$h$&$J$b$N$G$J$1$l$P$J$i$J$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
50 ;;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
51 ;; $B$3$N%U%!%$%k$O<B9TJQ49%W%m%0%i%`$r=8$a$?$b$N$G$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
52
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
53 ;;; Change log:
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
54 ;; version 1.2.3 released 1997.2.4 (derived from the skk.el 8.6)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
55
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
56 ;;; Code:
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
57 (require 'skk-foreword)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
58 (require 'skk-vars)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
59 ;; -- user variables
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
60
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
61 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
62 (defvar skk-date-ad nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
63 "*Non-nil $B$G$"$l$P!"(Bskk-today, skk-clock $B$G@>NqI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
64 nil $B$G$"$l$P!"859fI=<($9$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
65
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
66 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
67 (defvar skk-number-style 1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
68 "*nil $B$b$7$/$O(B 0 $B$G$"$l$P!"(Bskk-today, skk-clock $B$N?t;z$rH>3Q$GI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
69 t $B$b$7$/$O!"(B1 $B$G$"$l$P!"A43QI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
70 t, 0, 1 $B0J30$N(B non-nil $BCM$G$"$l$P!"4A?t;z$GI=<($9$k!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
71
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
72 (defvar skk-gadget-load-hook nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
73 "*skk-gadget.el $B$r%m!<%I$7$?8e$K%3!<%k$5$l$k%U%C%/!#(B" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
74
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
75 ;; --internal variables
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
76 (defconst skk-week-alist
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
77 '(("Sun" . "$BF|(B") ("Mon" . "$B7n(B") ("Tue" . "$B2P(B") ("Wed" . "$B?e(B") ("Thu" . "$BLZ(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
78 ("Fri" . "$B6b(B") ("Sat" . "$BEZ(B") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
79 "$BMKF|L>$NO"A[%j%9%H!#(B\($B1Q8lI=5-J8;zNs(B . $BF|K\8lI=5-J8;zNs(B\)" )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
80
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
81 ;; -- programs
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
82 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
83 (defun skk-date (&optional and-time)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
84 ;; $B8=:_$NF|;~$rF|K\8l$GJV$9!#(Bskk-today $B$H(B skk-clock $B$N%5%V%k!<%A%s!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
85 ;; $B%*%W%7%g%J%k0z?t$N(B AND-TIME $B$r;XDj$9$k$H!";~4V$bJV$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
86 (let* ((str (current-time-string))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
87 (year (if skk-date-ad
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
88 (skk-num (substring str 20 24))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
89 (let ((y (- (string-to-number (substring str 20 24)) 1988)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
90 (if (eq y 1) "$B85(B" (skk-num (int-to-string y))) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
91 (month (skk-num (cdr (assoc (substring str 4 7) skk-month-alist))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
92 (day (substring str 8 10))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
93 (day-of-week (cdr (assoc (substring str 0 3) skk-week-alist)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
94 hour minute second )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
95 (if (eq (aref day 0) 32) (setq day (substring day 1)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
96 (setq day (skk-num day))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
97 (concat (if skk-date-ad "" "$BJ?@.(B") year "$BG/(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
98 month "$B7n(B" day "$BF|(B" "\(" day-of-week "\)"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
99 (if and-time
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
100 (progn
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
101 (setq hour (skk-num (substring str 11 13))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
102 minute (skk-num (substring str 14 16))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
103 second (skk-num (substring str 17 19)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
104 (concat " " hour "$B;~(B" minute "$BJ,(B" second "$BIC(B") ))) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
105
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
106 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
107 (defun skk-today (&optional and-time)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
108 "$B%$%s%?%i%/%F%#%V$K5/F0$9$k$H8=:_$NF|;~$rF|K\8lI=5-$G%]%$%s%H$KA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
109 $B%*%W%7%g%J%k0z?t$N(B AND-TIME $B$r;XDj$9$k$H!"F|;~$K2C$(!";~4V$bA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
110 skk-date-ad $B$H(B skk-number-style $B$K$h$C$FI=<(J}K!$N%+%9%?%^%$%:$,2DG=!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
111 (interactive "*P")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
112 (insert (skk-date and-time)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
113
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
114 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
115 (defun skk-clock (&optional kakutei-when-quit time-signal)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
116 "$B%G%8%?%k;~7W$r%_%K%P%C%U%!$KI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
117 quit $B$9$k$H$=$N;~E@$NF|;~$r8uJd$H$7$FA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
118 quit $B$7$?$H$-$K5/F0$7$F$+$i$N7P2a;~4V$r%_%K%P%C%U%!$KI=<($9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
119 interactive $B$K5/F0$9$kB>!"(B\"clock /(skk-clock)/\" $B$J$I$N%(%s%H%j$r(B SKK $B$N<-=q(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
120 $B$K2C$(!"(B\"/clock\"+ SPC $B$GJQ49$9$k$3$H$K$h$C$F$b5/F02D!#(BC-g $B$G;_$^$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
121 $B<B9TJQ49$G5/F0$7$?>l9g$O!"(BC-g $B$7$?;~E@$N;~E@$NF|;~$rA^F~$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
122 $B%*%W%7%g%J%k0z?t$N(B KAKUTEI-WHEN-QUIT $B$,(B non-nil $B$G$"$l$P(B C-g $B$7$?$H$-$K3N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
123 $BDj$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
124 $B%*%W%7%g%J%k0z?t$N(B TIME-SIGNAL $B$,(B non-nil $B$G$"$l$P!"(BNTT $B$N;~JsIw$K(B ding $B$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
125 $B$=$l$>$l!"(B\"clock /(skk-clock nil t)/\" $B$N$h$&$J%(%s%H%j$r<-=q$KA^F~$9$l$PNI$$!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
126 skk-date-ad $B$H(B skk-number-style $B$K$h$C$FI=<(J}K!$N%+%9%?%^%$%:$,2DG=!#(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
127 (interactive "*")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
128 (let ((start (current-time-string))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
129 ;; Hit any key $B$H$7$?$$$H$3$m$@$,!"2?8N$+>e<j$/$f$+$J$$(B (;_;)...$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
130 ;;(now-map (if skk-emacs19
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
131 ;; '(keymap (t . keyboard-quit))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
132 ;; (fillarray (make-keymap) 'keyboard-quit) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
133 (overriding-terminal-local-map
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
134 (fillarray (setcar (cdr (make-keymap)) (make-vector 256 nil))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
135 'keyboard-quit ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
136 finish mes expr1 expr2 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
137 (cond ((or (not skk-number-style)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
138 (eq skk-number-style 0) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
139 (setq expr1 "[789]$BIC(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
140 expr2 "0$BIC(B" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
141 ((or (eq skk-number-style t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
142 ;; skk-number-style $B$K(B $B?t;z$H(B t $B0J30$N(B non-nil $BCM$rF~$l$F$$$k>l(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
143 ;; $B9g!"(B= $B$r;H$&$H(B Wrong type argument: number-or-marker-p, xxxx
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
144 ;; $B$K$J$C$F$7$^$&!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
145 (eq skk-number-style 1) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
146 (setq expr1 "[$B#7#8#9(B]$BIC(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
147 expr2 "$B#0IC(B" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
148 (t
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
149 (setq expr1 "[$B<7H,6e(B]$BIC(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
150 expr2 "$B!;IC(B" )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
151 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
152 (condition-case nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
153 (let (case-fold-search
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
154 inhibit-quit visible-bell
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
155 skk-mode skk-ascii-mode
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
156 skk-j-mode skk-abbrev-mode skk-zenkaku-mode )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
157 (while (not quit-flag)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
158 (setq mes (skk-date t))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
159 ;;(message (concat mes " Hit C-g quit"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
160 (message (concat mes " Hit any key to quit"))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
161 (if time-signal
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
162 (if (string-match expr1 mes)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
163 ;; [7890] $B$N$h$&$K@55,I=8=$r;H$o$:!"(B7 $B$@$1$GA4$F$N%^%7%s$,(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
164 ;; $BCe$$$F$f$1$PNI$$$N$@$,(B...$B!#CzEY$3$N4X?t<B9T;~$K(B Garbage
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
165 ;; collection $B$,8F$P$l$F$bI=<($5$l$k?t;z$,Ht$V>l9g$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
166 (ding)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
167 (if (string-match expr2 mes)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
168 ;; 0 $B$@$1!V%]!A%s!W$H$$$-$?$$$H$3$m$G$9$,!"%^%7%s$K$h$C(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
169 ;; $B$F:9$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
170 ;; 386SX 25Mhz + Mule-2.x $B$@$H!V%T%C!"%T%C!W$H$$$&46$8!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
171 ;; $BIU$$$F$f$/$N$,Hs>o$K?I$$!#(B68LC040 33Mhz + NEmacs $B$@$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
172 ;; $B!V%T%T%C!W$H$J$j!"2;$N%?%$%_%s%0$ONI$$$N$@$,!"$H$-(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
173 ;; $B$I$-(B 1 $BICJ,$D$$$F$$$1$J$/$J$k!#(BPentium 90Mhz +
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
174 ;; Mule-2.x$B$@$H!V%T%C!W$H$$$&C12;$K$J$C$F$7$^$&(B... (;_;)$B!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
175 (progn (ding)(ding)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
176 (sit-for 1) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
177 (quit
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
178 (prog2
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
179 (setq finish (current-time-string))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
180 (skk-date t)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
181 (if kakutei-when-quit
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
182 (setq skk-kakutei-flag t) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
183 (message (concat "$B7P2a;~4V(B :" (skk-time-diff start finish))) ))))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
184
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
185 (defun skk-time-diff (start finish)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
186 ;; (current-time-string) $B$NJV$jCM(B START $B$H(B FINISH $B$N;~4V:9$r5a$a!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
187 ;; "$B;~4V(B:$BJ,(B:$BIC(B" $B$N7A<0$GJV$9!#(Bskk-clock $B$N%5%V%k!<%A%s!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
188 (let ((s-hour (string-to-number (substring start 11 13)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
189 (s-minute (string-to-number (substring start 14 16)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
190 (s-second (string-to-number (substring start 17 19)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
191 (f-hour (string-to-number (substring finish 11 13)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
192 (f-minute (string-to-number (substring finish 14 16)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
193 (f-second (string-to-number (substring finish 17 19)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
194 second-diff minute-diff hour-diff )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
195 (if (not (string= (substring start 20) (substring finish 20)))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
196 (skk-error "$B0c$&G/$N;~4V:9$O7W;;$G$-$^$;$s(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
197 "Year should be same" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
198 (setq second-diff (- f-second s-second))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
199 (if (> 0 second-diff)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
200 (setq f-minute (1- f-minute)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
201 second-diff (- (+ f-second 60) s-second) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
202 (setq minute-diff (- f-minute s-minute))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
203 (if (> 0 minute-diff)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
204 (setq f-hour (1- f-hour)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
205 minute-diff (- (+ f-minute 60) s-minute) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
206 (setq hour-diff (- f-hour s-hour))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
207 (if (> 0 hour-diff)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
208 (skk-error "$BBh#20z?t$OBh#10z?t$h$j8e$N;~4V$G$J$1$l$P$J$j$^$;$s(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
209 "2nd arg should be later than 1st arg" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
210 (format "%02d:%02d:%02d" hour-diff minute-diff second-diff) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
211
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
212 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
213 (defun skk-convert-ad-to-gengo (&optional fstr lstr)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
214 ;; $B@>Nq$r859f$KJQ49$9$k!#%*%W%7%g%s0z?t$N(B fstr $B$,;XDj$5$l$F$$$l$P!"G/9f$H(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
215 ;; $B?t;z$N4V$K!"(Blstr $B$,;XDj$5$l$F$$$l$P!"?t;z$NKvHx$K!"$=$l$>$l$NJ8;zNs$rO"7k(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
216 ;; $B$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
217 ;; $B<-=q8+=P$7Nc(B;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
218 ;; $B$;$$$l$-(B#$B$M$s(B /(skk-convert-ad-to-gengo nil "$BG/(B")/(skk-convert-ad-to-gengo " " " $BG/(B")/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
219 (let ((ad (string-to-number (car skk-num-list))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
220 (concat (cond ((>= 1866 ad)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
221 (skk-error "$BJ,$j$^$;$s(B" "Unkown year") )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
222 ((>= 1911 ad)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
223 (concat "$BL@<#(B" fstr (int-to-string (- ad 1867))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
224 ((>= 1925 ad)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
225 (concat "$BBg@5(B" fstr (int-to-string (- ad 1911))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
226 ((>= 1988 ad)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
227 (concat "$B><OB(B" fstr (int-to-string (- ad 1925))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
228 (t (concat "$BJ?@.(B" fstr (int-to-string (- ad 1988)))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
229 lstr )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
230
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
231 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
232 (defun skk-convert-gengo-to-ad (&optional string)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
233 ;; $B859f$r@>Nq$KJQ49$9$k!#%*%W%7%g%s0z?t$N(B string $B$,;XDj$5$l$F$$$l$P!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
234 ;; $B$=$NJ8;zNs$rKvHx$KO"7k$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
235 ;; $B<-=q8+=P$7Nc(B;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
236 ;; $B$7$g$&$o(B#$B$M$s(B /(skk-convert-gengo-to-ad "$BG/(B")/(skk-convert-gengo-to-ad " $BG/(B")/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
237 (save-match-data
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
238 (let ((num (car skk-num-list))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
239 gengo )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
240 (string-match num skk-henkan-key)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
241 (setq gengo (substring skk-henkan-key 0 (match-beginning 0))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
242 num (string-to-number num) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
243 (concat (int-to-string
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
244 (+ num
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
245 (cond ((eq num 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
246 (skk-error "0 $BG/$O$"$jF@$J$$(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
247 "Cannot convert 0 year" ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
248 ((string= gengo "$B$X$$$;$$(B") 1988)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
249 ((string= gengo "$B$7$g$&$o(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
250 (if (> 64 num)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
251 1925
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
252 (skk-error "$B><OB$O(B 63 $BG/$^$G$G$9(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
253 "The last year of Showa is 63" )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
254 ((string= gengo "$B$?$$$7$g$&(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
255 (if (> 15 num)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
256 1911
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
257 (skk-error "$BBg@5$O!"(B14 $BG/$^$G$G$9(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
258 "The last year of Taisyo is 14" )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
259 ((string= gengo "$B$a$$$8(B")
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
260 (if (> 45 num)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
261 1867
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
262 (skk-error "$BL@<#$O!"(B44 $BG/$^$G$G$9(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
263 "The last year of Meiji is 44" )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
264 (t (skk-error "$BH=JLITG=$J859f$G$9!*(B"
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
265 "Unknown Gengo!" )))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
266 string ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
267
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
268 ;(defun skk-calc (operator)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
269 ; ;; 2 $B$D$N0z?t$r<h$C$F(B operator $B$N7W;;$r$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
270 ; ;; $BCm0U(B: '/ $B$O0z?t$H$7$FEO$;$J$$$N$G(B (defalias 'div '/) $B$J$I$H$7!"JL$N7A$G(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
271 ; ;; skk-calc $B$KEO$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
272 ; ;; $B<-=q8+=P$7Nc(B; #*# /(skk-calc '*)/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
273 ; (int-to-string
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
274 ; (funcall operator (string-to-number (car skk-num-list))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
275 ; (string-to-number (nth 1 skk-num-list)) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
276
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
277 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
278 (defun skk-calc (operator)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
279 ;; 2 $B$D$N0z?t$r<h$C$F(B operator $B$N7W;;$r$9$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
280 ;; $BCm0U(B: '/ $B$O0z?t$H$7$FEO$;$J$$$N$G(B (defalias 'div '/) $B$J$I$H$7!"JL$N7A$G(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
281 ;; skk-calc $B$KEO$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
282 ;; $B<-=q8+=P$7Nc(B; #*# /(skk-calc '*)/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
283 (int-to-string (apply operator (mapcar 'string-to-number skk-num-list))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
284
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
285 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
286 (defun skk-plus ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
287 ;; $B<-=q8+=P$7Nc(B; #+#+# /(skk-plus)/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
288 (int-to-string
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
289 (apply '+ (mapcar 'string-to-number skk-num-list))))
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-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
292 (defun skk-minus ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
293 (int-to-string
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
294 (apply '- (mapcar 'string-to-number skk-num-list))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
295
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
296 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
297 (defun skk-times ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
298 (int-to-string
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
299 (apply '* (mapcar 'string-to-number skk-num-list))))
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 (defun skk-ignore-dic-word (&rest no-show-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
303 ;; $B6&MQ<-=q$KEPO?$5$l$F$$$k!"0c$C$F$$$k(B/$B5$$KF~$i$J$$JQ49$r=P$5$J$$$h$&$K$9(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
304 ;; $B$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
305 ;; $B<-=q8+=P$7Nc(B;
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
306 ;; $B$k$9$P$s(B /$BN1<iHV(B/(skk-ignore-dic-word "$BN1<iEE(B")/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
307 ;; $B$+$/$F$$(B /(skk-ignore-dic-word "$B3NDj(B")/
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
308 (let (new-word save-okurigana)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
309 ;; skk-ignore-dic-word $B<+?H$N%(%s%H%j$r>C$9!#>C$9$Y$-8uJd$O(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
310 ;; skk-henkan-list $B$+$iD>@\Cj=P$7$F$$$k$N$G(B delete $B$G$O$J$/(B delq $B$G==J,!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
311 (setq skk-henkan-list (delq (nth skk-henkan-count skk-henkan-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
312 skk-henkan-list ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
313 ;; $BA48uJd$r(B skk-henkan-list $B$KF~$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
314 (while skk-current-search-prog-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
315 (setq skk-henkan-list (skk-nunion skk-henkan-list (skk-search))) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
316 ;; $BITMW$J8uJd$r<N$F$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
317 (while no-show-list
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
318 (setq skk-henkan-list (delete (car no-show-list) skk-henkan-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
319 no-show-list (cdr no-show-list) ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
320 ;; $B%+%l%s%H$N8uJd(B (skk-ignore-dic-word $B<+?H$N%(%s%H%j(B) $B$r>C$7$?$N$G!"(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
321 ;; skk-henkan-count $B$O<!$N8uJd$r;X$7$F$$$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
322 (setq new-word (or (nth skk-henkan-count skk-henkan-list)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
323 (progn (setq save-okurigana skk-okuri-char)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
324 (skk-henkan-in-minibuff) )))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
325 ;; $B8uJd$,$J$$$H$-!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
326 (if (not new-word)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
327 ;; $B6uJ8;zNs$,EPO?$5$l$?$i<-=qEPO?$NA0$N>uBV$KLa$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
328 ;; (nth -1 '(A B C)) $B$O!"(BA $B$rJV$9$N$G!"(Bn $B$,Ii$N?t$G$J$$$3$H$r%A%'%C%/(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
329 ;; $B$7$F$*$/I,MW$,$"$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
330 (if (> skk-henkan-count 0)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
331 (setq skk-henkan-count (- skk-henkan-count 1)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
332 new-word (nth skk-henkan-count skk-henkan-list) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
333 ;; (1- skk-henkan-count) == -1 $B$K$J$k!#"&%b!<%I$KLa$9!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
334 (setq new-word (if save-okurigana
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
335 (substring skk-henkan-key 0
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
336 (1- (length skk-henkan-key)) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
337 skk-henkan-key )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
338 skk-henkan-count -1
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
339 ;; $B2<5-$NJQ?t$O!"(Bskk-henkan-in-minibuff $B$NCf$GD4@0$5$l$k!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
340 ;; skk-henkan-active nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
341 ;; skk-okuri-char nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
342 ;; skk-henkan-okurigana nil
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
343 )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
344 (if skk-use-face
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
345 (setq skk-insert-new-word-function
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
346 'skk-henkan-face-off-and-remove-itself ))))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
347 new-word ))
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
348
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
349 ;;;###skk-autoload
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
350 (defun skk-henkan-face-off-and-remove-itself ()
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
351 ;; skk-insert-new-word-function $B$K%;%C%H$9$k$?$a$N4X?t!#%+%l%s%H%P%C%U%!$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
352 ;; $BJQ49ItJ,$,(B Overlay $B$N(B face $BB0@-$K$h$C$FI=<($,JQ99$5$l$F$$$k$N$rLa$7!"$=$N(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
353 ;; $B8e<+J,<+?H$r(B skk-insert-new-word-function $B$+$i<h$j=|$/<+Gz4X?t!#(B
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
354 (skk-henkan-face-off)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
355 (setq skk-insert-new-word-function nil) )
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
356
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
357 (run-hooks 'skk-gadget-load-hook)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
358
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
359 (provide 'skk-gadget)
262b8bb4a523 Import from CVS: tag r20-4b8
cvs
parents:
diff changeset
360 ;;; skk-gadget.el ends here