🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fj.editor.xemacs
Article #950

Problem: M-x hankaku-katakana-region

#950
From: TSUTOMU NAKAMURA
Date: Thu, 21 Aug 1997 00:00
70 lines
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-mail

Show 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