Article View: fj.editor.xemacs
Article #950Problem: M-x hankaku-katakana-region
From: TSUTOMU NAKAMURA
Date: Thu, 21 Aug 1997 00:00
Date: Thu, 21 Aug 1997 00:00
70 lines
2892 bytes
2892 bytes
$BCfB<EX$G$9(B
$B$J$<$+H>3Q%+%?%+%JF~NO$r$9$kI,MW$,=P$F$-$^$7$?$N$G!"(BXEmacs-20.3-b18
$B$r$D$+$C$F!"$d$C$F$_$^$7$?$,$I$&$b$&$^$/$$$+$J$$$N$G<ALd$7$^$9!#(B
mule-19.34 $B$@$H(B
(1) $B%U%'%s%9%b!<%I(B
M-x load-library (RET)
its/han-kata (RET) $B$3$l$GH>3Q%+%?%+%J$NF~NO$,2DG=$H$J$j!"!"(B
|$B$"$$$&$($*(B| $B$N$H$3$m$G(B M-x $B$H$9$k$HH>3Q%+%?%+%J$K(B
(2) region $B$N;XDj(B
region $B$N;XDj$G(B hankaku-katakana-region $B$GH>3Q%+%?%+%J$K(B
$BF1MM$N$3$H$r(B XEMACS-20.3-b18 $B$G$9$k$H(B (1),(2) $B$H$bL5H?1~$H$J$j$^$9!#(B
XEmacs $B$N(B $xemacsdir/lisp/egg/egg-jisx0201.el $B$K$"$k(B
hankaku-katakana-region $B$r%G%P%C%0$7$F$_$k$H(B
----------------------------------------------------------------------
(defun hankaku-katakana-region (start end &optional arg)
(interactive "r\nP")
(save-restriction
(narrow-to-region start end)
(goto-char (point-min))
(let ((regexp (if arg "\\cS\\|\\cK\\|\\cH" "\\cS\\|\\cK")))
(while (re-search-forward regexp (point-max) (point-max))
(let* ((ch (preceding-char))
(ch1 (char-octet ch 0))
(ch2 (char-octet ch 1)))
(cond ((= ?\241 ch1)
(let ((val (cdr (assq ch2 *katakana-kigou-alist*))))
(if val (progn
(delete-char -1)
(insert val)))))
((or (= ?\242 ch1) (= ?\250 ch1))
nil)
(t
(let ((val (cdr (assq ch2 *katakana-alist*)))) <--- $B$3$3(B
(if val (progn
(delete-char -1)
(insert val)))))))))))
----------------------------------------------------------------------
$BJQ4985$N$?$H$($P!V%J!W$KBP1~$9$k(B katakana-alist $B$KEPO?$5$l$F$$$kH>3Q(B
$B%+%?%+%J$r0z$CD%$C$F$/$k$h$&$K$J$C$F$$$k$_$?$$$G$9$,!"(Bch2 $B$O(B
XEmacs-20.3-b18 74 -> nil ----------> $BJQ49$,9T$o$l$J$$(B
Mule-19.34 202 -> '$B%J(B'($BH>3Q$G$9(B) --> $BJQ49$,9T$o$l$k(B
$B$N$h$&$K0[$J$C$F$$$k$3$H$,$o$+$j$^$7$?!#(B
$B$H$$$&$3$H$O!"(B
(1) katakana-alist $B$NFbMF$r(B XEmacs $BMQ$KJQ99$9$k(B
(2) ch2 $B$r%;%C%H$9$k(B char-octet $B$NF0$-$,JQ!"$"$k$$$O;HMQJ}K!$,4V0c$C$F(B
$B$$$k(B
(3) $B$=$NB>(B
$B$N$&$A$$$C$?$$$I$l$,@5$7$$$N$G$7$g$&$+!)(B $B$I$J$?$+$4=u8@D:$1$l$P9,$G$9!#(B
-- | | | __/_ ----
+---+---+ --+-- --+-- (/ \/
| | | /|\ | /\ /\
+---+---+ / | _ | --+---+
| | _| __/ _|
Technical Details
Message-ID:
<sye90xv3j9r.fsf@hrs145.rs.kyoto.omronsoft.co.jp>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS X-Google-Thread: 1107f7,bd11f54fbd5cdc7c,start X-Google-Attributes: gid1107f7,public From: TSUTOMU NAKAMURA <tsutomu@rs.kyoto.omronsoft.co.jp> Subject: Problem: M-x hankaku-katakana-region Date: 1997/08/21 Message-ID: <sye90xv3j9r.fsf@hrs145.rs.kyoto.omronsoft.co.jp> X-Deja-AN: 265686350 Sender: tsutomu@hrs145.rs.kyoto.omronsoft.co.jp Organization: OMRON SOFTWARE Co., Ltd. Kyoto, Japan. Newsgroups: fj.editor.xemacs