Newsgroups: fj.editor.emacs
Path: galaxy.trc.rwcp.or.jp!coconuts.jaist!wnoc-tyo-news!tokyonet.ad.jp!wincgw1!wnc-kyoto-news!nintengw!red!shirai
From: shirai@red.nintendo.co.jp (Takashi SHIRAI)
Subject: Re: defrule in emacs
Message-ID: <DMA8Gv.MHn@yellow.nintendo.co.jp>
Sender: news@yellow.nintendo.co.jp
Nntp-Posting-Host: red
Organization: Nintendo Co. Ltd., Japan
References: <DLq726.IEw@uecgw.cs.uec.ac.jp> <ONONO.96Feb4231218@nochin.fuka.info.waseda.ac.jp>
Date: Mon, 5 Feb 1996 03:02:55 GMT
Lines: 60
Xref: galaxy.trc.rwcp.or.jp fj.editor.emacs:5950
X-originally-archived-at: http://galaxy.rwcp.or.jp/text/cgi-bin/newsarticle2?ng=fj.editor.emacs&nb=5950&hd=a
X-reformat-date: Mon, 18 Oct 2004 15:18:22 +0900
X-reformat-comment: Tabs were expanded into 4 column tabstops by the Galaxy's archiver. See http://katsu.watanabe.name/ancientfj/galaxy-format.html for more info.

$B!!#N#e#c#o!wG$E7F2$G$9!#(B

In article <ONONO.96Feb4231218@nochin.fuka.info.waseda.ac.jp>,
ONO Kouichi <onono@fuka.info.waseda.ac.jp> wrote:
>> $B$3$NFs$D0J30$OJQ$($?$/$J$$$N$G!$(B
>> egg-rk.el$B$NCf$r$3$3$@$1JQ$($F(B.emacs$B$G:F$S%m!<%I$9$k$C$F$$$&$N$,!$(B
>> emacs$B$r5/F0$9$k$?$S$K;~4V$,$+$+$C$F$$$d$J$N$G<ALd$7$^$7$?!%(B
>
>my-egg-rk.el$B$C$F$N$r:n$C$F%m!<%I$7!"$=$l$r(B
>dump-egg-mode-map$B$7$F(Bmy-egg-rkdump.el$B$C$F%U%!%$%k$K%;!<(B
>$B%V$7!"$=$l$r(Bbyte-compile-file$B$7$F(Bmy-egg-rkdump.elc$B$r:n$C(B
>$B$F$*$-!"5/F0;~$K$O(B(load "my-egg-rkdump")$B$9$k$h$&$K$7$F$*(B
>$B$1$P!"5/F0;~4V$O$1$C$3$&C;$/$J$k$O$:$G$9!#(B

$B!!JQ49%F!<%V%k$rF0E*$K=q$-49$($k$h$&$J(B EMACS Lisp $B%3!<%I$r=q(B
$B$$$F$d$l$P$$$$$@$1$G$9$h$M!#L^O@!"$=$N$h$&$K@EE*$KMQ0U$7$F$d(B
$B$C$F$b9=$$$^$;$s$,!#(B

---- Cut Here ----
(defun shirai:toggle-punctuation-mode ()
  "Change whether key-bind of \",.\" is \"$B!"!#(B\" or \"$B!$!%(B\"."
  (interactive)
  (let ((mapplace (egg:get-mode-map "roma-kana")))
       (if (null (car mapplace))
           (egg:set-mode-map "roma-kana"
           (let ((l (cdr mapplace))
                 (map (cons nil nil))
                 (punct nil))
             (while l
               (let ((ch (car (car l)))
                     (action (cdr (car l))))
                 (if (or (= ch 44) (= ch 46))
                   (let ((submap (action-get-map action))
                         (output (action-get-output action)))
                     (cond ((equal output "$B!"(B") (setq output "$B!$(B"))
                           ((equal output "$B!$(B") (setq output "$B!"(B"))
                           ((equal output "$B!#(B") (setq output "$B!%(B"))
                           ((equal output "$B!%(B") (setq output "$B!#(B")))
                     (setq action (list submap output)
                           punct (concat punct output))))
                 (setf-key-action map ch action))
               (setq l (cdr l)))
             (message "Punctuation mark is changed to \"%s\"." punct) map))
       (error "ARG map is not toprevel.")))
  nil)
---- Cut Here ----

$B!!$3$l!";d$,IaCJ$+$i;H$C$F$k$b$N$G$9$,!"(B",." $B$NF~NO$KBP$7!"(B
$BIaCJ$O(B "$B!"!#(B" $B$G$9$1$I!"(BM-x shirai:toggle-punctuation-mode
$B$9$k$H(B "$B!$!%(B" $B$K$J$j$^$9!#(B
$B!!%F!<%V%k%5%$%:$K$b$h$j$^$9$,!"%U%!%$%k%"%/%;%9$N$J$$J,$@$1!"(B
$BF0E*$KJQ99$7$?J}$,B.$$$h$&$J5$$b$7$^$9!#<BB,$7$F$$$J$$$N$GJ](B
$B>Z$O$77s$M$^$9$,!#(B

$B!t!!(BEMACS Lisp $B<+BN$OBg@N$K:n$C$?$b$N$J$N$G!">\:Y$N%F%/%K%+(B
$B!t%k$JOC$K$J$k$H4{$K2r@b$9$i$G$-$^$;$s$,(B :-)
-- 
$B!s(B $B!!&+&+(B -^^^^$B!3!!!!G$E7F23t<02q<R(B $B3+H/5;=QIt(B $B3+H/5;=Q2](B $B!s(B
$B!s(B $B!?!!!!!@(B $B!J!!(B $B!K!!!!!!!!!!Gr0f(B $BN4(B $B!!(B (as $B#N#e#c#o(B)$B!!!!(B $B!s(B
$B!s(B $B!@!3!c!@!!!2(B $B!d(B $B$D!!!!!!!!(Bshirai@red.nintendo.co.jp $B!!(B $B!s(B
