Revised.
[riece] / HACKING.ja
index 4c1e0a4..d43c0e4 100644 (file)
@@ -3,7 +3,7 @@
 \e$B$3$NJ8=q$G$O!"\e(BRiece \e$B$N3+H/%W%m%;%9$dFbIt9=B$$J$I!"3+H/$KI,MW$J>pJs$r$^\e(B
 \e$B$H$a$F$$$^$9!#3+H/$K;22C$7$F$$$?$@$1$kJ}$O;29M$K$7$F$/$@$5$$!#\e(B
 
-* Development process
+* \e$B3+H/%W%m%;%9\e(B
 
 ** CVS
 
@@ -28,7 +28,13 @@ CVS \e$BHG$N%=!<%9%3!<%I$O!"$"$/$^$G3+H/ES>e$N$b$N$G$"$j!"MxMQ$O8D?M$N@UG$\e(B
 
 \e$B$3$N:n6H$K$O:G?7$N\e(B GNU Automake \e$B$,I,MW$+$b$7$l$^$;$s!#\e(B
 
-** Debug output
+** \e$B%P%0Js9p\e(B
+
+\e$B%P%0Js9p$O!"%D!<%k%P!<$NCn$N%"%$%3%s$r%/%j%C%/$9$k$+!"\e(BM-x
+riece-submit-bug-report\e$B$G:n@.$7$F$/$@$5$$!#$^$?!"%P%0Js9p$N:n@.$NA0$K\e(B 
+riece-debug \e$B$r\e(B t \e$B$K@_Dj$9$kI,MW$,$"$j$^$9!#\e(B
+
+** \e$B%G%P%C%0=PNO\e(B
 
 \e$BJQ?t\e(B riece-debug \e$B$r\e(B t \e$B$K@_Dj$9$k$H!"\e(BRiece \e$B$N<B9TCf$K%G%P%C%0>pJs$,=PNO\e(B
 \e$B$5$l$k$h$&$K$J$j$^$9!#%G%P%C%0>pJs$O\e(B *Debug* \e$B%P%C%U%!$KC_@Q$5$l$^$9!#\e(B
@@ -36,33 +42,27 @@ CVS \e$BHG$N%=!<%9%3!<%I$O!"$"$/$^$G3+H/ES>e$N$b$N$G$"$j!"MxMQ$O8D?M$N@UG$\e(B
 \e$B$^$?!"\e(BIRC \e$B%5!<%P$H$N$d$j$H$j$,\e(B " *IRC*<IRC \e$B%5!<%P$NL>A0\e(B>" \e$B%P%C%U%!$KC_\e(B
 \e$B@Q$5$l$^$9!#%P%C%U%!$NL>A0$,6uGr\e(B " " \e$B$G;O$^$k$3$H$K$4Cm0U$/$@$5$$!#\e(B
 
-** Bug report
-
-\e$B%P%0Js9p$O!"%D!<%k%P!<$NCn%\%?%s$r2!$9$+!"\e(BM-x riece-submit-bug-report 
-\e$B$G:n@.$7$F$/$@$5$$!#$^$?!"%P%0Js9p$N:n@.$NA0$K\e(B riece-debug \e$B$r\e(B t \e$B$K@_Dj\e(B
-\e$B$9$kI,MW$,$"$j$^$9!#\e(B
-
-* Internals
+* \e$BFbIt9=B$\e(B
 
-** Modules
+** \e$B%b%8%e!<%k$N9=@.\e(B
 
 Riece \e$B$r9=@.$9$k\e(B elisp \e$B%b%8%e!<%k$r0J2<$KNs5s$7$^$9!#0MB84X78$N>e0L$K\e(B
 \e$B$"$k$b$N$r@h$K5s$2$^$9!#\e(B
 
 - riece-globals
-  \e$BBg0hJQ?t$NDj5A\e(B 
+  \e$BBg0hJQ?t$NDj5A\e(B
 
 - riece-options
-  \e$B%f!<%6%*%W%7%g%s$NDj5A\e(B 
+  \e$B%f!<%6%*%W%7%g%s$NDj5A\e(B
 
 - riece-version
-  \e$B%P!<%8%g%s$NDj5A\e(B 
+  \e$B%P!<%8%g%s$NDj5A\e(B
 
 - riece-coding
-  \e$B%3!<%G%#%s%0%7%9%F%`4XO"$N4X?t$NDj5A\e(B 
+  \e$B%3!<%G%#%s%0%7%9%F%`4XO"$N4X?t$NDj5A\e(B
 
 - riece-complete
-  \e$B%_%K%P%C%U%!$G$NJd40$r=u$1$k4X?t$NDj5A\e(B 
+  \e$B%_%K%P%C%U%!$G$NJd40$r=u$1$k4X?t$NDj5A\e(B
 
 - riece-addon
   \e$B%"%I%*%s4IM}\e(B
@@ -71,13 +71,13 @@ Riece \e$B$r9=@.$9$k\e(B elisp \e$B%b%8%e!<%k$r0J2<$KNs5s$7$^$9!#0MB84X78$N>e0L$K\e(
   riece-channel/riece-user \e$B%*%V%8%'%/%H$N%b!<%I4IM}\e(B
 
 - riece-identity
-  riece-channel/riece-user \e$B%*%V%8%'%/%H\e(B \e$B$NBg0hI=5-$rA`:n$9$k4X?t$NDj5A\e(B 
+  riece-channel/riece-user \e$B%*%V%8%'%/%H\e(B \e$B$NBg0hI=5-$rA`:n$9$k4X?t$NDj5A\e(B
 
 - riece-channel
-  riece-channel \e$B%*%V%8%'%/%H\e(B \e$B4XO"$NDj5A\e(B 
+  riece-channel \e$B%*%V%8%'%/%H\e(B \e$B4XO"$NDj5A\e(B
 
 - riece-user
-  riece-user \e$B%*%V%8%'%/%H\e(B \e$B4XO"$NDj5A\e(B 
+  riece-user \e$B%*%V%8%'%/%H\e(B \e$B4XO"$NDj5A\e(B
 
 - riece-misc
   \e$B;(B?$J4X?t$NDj5A\e(B
@@ -89,40 +89,40 @@ Riece \e$B$r9=@.$9$k\e(B elisp \e$B%b%8%e!<%k$r0J2<$KNs5s$7$^$9!#0MB84X78$N>e0L$K\e(
   \e$B%&%#%s%I%&%l%$%"%&%H4IM}\e(B
 
 - riece-display
-  \e$BI=<(MQ%P%C%U%!$N4IM}\e(B 
+  \e$BI=<(MQ%P%C%U%!$N4IM}\e(B
 
 - riece-server
-  IRC \e$B%5!<%P$H$N@\B34IM}\e(B 
+  IRC \e$B%5!<%P$H$N@\B34IM}\e(B
 
 - riece-naming
   \e$B%A%c%s%M%k$X$N%f!<%6$N;22C!&N%C&$r4IM}$9$k\e(B mediator
 
 - riece-message
-  riece-message \e$B%*%V%8%'%/%H\e(B \e$B4XO"$NDj5A\e(B 
+  riece-message \e$B%*%V%8%'%/%H\e(B \e$B4XO"$NDj5A\e(B
 
 - riece-filter
-  \e$B%W%m%;%9%U%#%k%?$N%(%s%H%j%]%$%s%H\e(B 
+  \e$B%W%m%;%9%U%#%k%?$N%(%s%H%j%]%$%s%H\e(B
 
 - riece-handle
-  \e$BDL>o$N%a%C%;!<%8$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B 
+  \e$BDL>o$N%a%C%;!<%8$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B
 
 - riece-000
-  000\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B 
+  000\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B
 
 - riece-200
-  200\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B 
+  200\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B
 
 - riece-300
-  300\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B 
+  300\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B
 
 - riece-400
-  400\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B 
+  400\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B
 
 - riece-500
-  500\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B 
+  500\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B
 
 - riece-commands
-  \e$B%3%^%s%I$NDj5A\e(B 
+  \e$B%3%^%s%I$NDj5A\e(B
 
 - riece-irc
   IRC \e$B%W%m%H%3%k$KBP1~$7$?\e(B process-filter \e$B$J$I$N@_Dj\e(B
@@ -130,14 +130,14 @@ Riece \e$B$r9=@.$9$k\e(B elisp \e$B%b%8%e!<%k$r0J2<$KNs5s$7$^$9!#0MB84X78$N>e0L$K\e(
 - riece
   \e$B5/F0;~$N%(%s%H%j%]%$%s%H!#3F%P%C%U%!$N%a%8%c!<%b!<%I$N@_Dj$J$I\e(B
 
-** Namespace management
+** \e$BL>A06u4V$N4IM}\e(B
 
 Riece \e$B$OF1;~$KJ#?t$N\e(B IRC \e$B%5!<%P$K@\B3$G$-$k$N$G!"\e(BIRC \e$B%5!<%PKh$KJL!9$N\e(B
 \e$BL>A06u4V$r4IM}$9$kI,MW$,$"$j$^$9!#$3$N$h$&$JL>A06u4V$K$O!"\e(BIRC \e$B%5!<%P$H\e(B
 \e$B$N@\B3%W%m%;%9$K7k$SIU$1$i$l$?%P%C%U%!$N%m!<%+%kJQ?t$r2p$7$F%"%/%;%9$7\e(B
 \e$B$^$9!#\e(B
 
-*** Obtaining server buffer
+*** \e$B%W%m%;%9%P%C%U%!$N<hF@\e(B
 
 IRC \e$B%5!<%P$H$N@\B3%W%m%;%9$r<hF@$9$k$K$O\e(B IRC \e$B%5!<%P$NL>A0$rCN$kI,MW$,\e(B
 \e$B$"$j$^$9!#\e(BIRC \e$B%5!<%P$NL>A0$O0J2<$K5s$2$k$$$/$D$+$NJ}K!$G<hF@$G$-$^$9!#\e(B
@@ -146,18 +146,19 @@ IRC \e$B%5!<%P$H$N@\B3%W%m%;%9$r<hF@$9$k$K$O\e(B IRC \e$B%5!<%P$NL>A0$rCN$kI,MW$,\e(
 
 (2) \e$BJQ?t\e(B riece-server-name \e$B$NCM\e(B
 
-riece-server-name \e$B$,%+%l%s%H%P%C%U%!$N%m!<%+%kJQ?t$G$"$k$J$i$P!"4{$K%W\e(B
-\e$B%m%;%9$N%P%C%U%!$K$$$k$H$_$J$;$k$N$G!"\e(Briece-server-name \e$B$NCM$=$N$b$N\e(B
+    riece-server-name \e$B$,%+%l%s%H%P%C%U%!$N%m!<%+%kJQ?t$G$"$k$J$i$P!"4{$K%W\e(B
+    \e$B%m%;%9$N%P%C%U%!$K$$$k$H$_$J$;$k$N$G!"\e(Briece-server-name \e$B$NCM$=$N$b$N\e(B
 
-(3) riece-identity \e$B%*%V%8%'%/%H$+$i@Z$j=P$7$?\e(B IRC \e$B%5!<%P$NL>A0\e(B
+(3) \e$BA*BrCf$N%A%c%s%M%k$rI=$9\e(B riece-identity \e$B%*%V%8%'%/%H$+$i@Z$j=P$7$?\e(B 
+    IRC \e$B%5!<%P$NL>A0\e(B
 
 \e$B$3$&$7$F<hF@$7$?\e(B IRC \e$B%5!<%P$NL>A0$r0z?t$K4X?t\e(B riece-server-process \e$B$r\e(B
 \e$B8F=P$7!"%5!<%P$N%W%m%;%9$r<hF@$7$^$9!#\e(B
 
-*** Identity
+*** riece-identity \e$B%*%V%8%'%/%H\e(B
 
 \e$BJ#?t$N\e(B IRC \e$B%5!<%P$K@\B3$7$F$$$k>l9g!"%A%c%s%M%kL>$d%K%C%/%M!<%`$rBg0h\e(B
-\e$BE*$K6hJL$9$kI,MW$,@8$8$^$9!#$3$N$h$&$JL>A0$rI=8=$9$k$N$,\e(B 
+\e$BE*$K6hJL$9$kI,MW$,@8$8$^$9!#$3$N$h$&$JL>A0$rI=8=$9$k$N$,\e(B
 riece-identity \e$B%*%V%8%'%/%H$G$9!#\e(B
 
 riece-identity \e$B%*%V%8%'%/%H$O0J2<$N\e(B 2 \e$B$D$NMWAG$r$b$D%Y%/%?!<$G$9!#\e(B
@@ -189,14 +190,14 @@ riece-identity \e$B%*%V%8%'%/%H$KE,MQ2DG=$JA`:n$K$O0J2<$N$h$&$J$b$N$,$"$j$^$9!#\e(
 - riece-identity-member elt list
   riece-identity \e$B%*%V%8%'%/%H\e(B elt \e$B$,\e(B list \e$B$K4^$^$l$k$+D4$Y$^$9!#\e(B
 
-*** Channel and user management
+*** \e$B%A%c%s%M%k$H%f!<%6$N4IM}\e(B
 
 riece-identity \e$B%*%V%8%'%/%H$+$i@Z$j=P$5$l$?\e(B IRC \e$B%5!<%P$K8GM-$NL>A0!"$9\e(B
 \e$B$J$o$A%A%c%s%M%kL>$H$H%K%C%/%M!<%`$K$h$jI=$o$5$l$k%A%c%s%M%k$H%f!<%6$N\e(B
 \e$B<BBN$O$=$l$>$l\e(B riece-channel \e$B%*%V%8%'%/%H$H\e(B riece-user \e$B%*%V%8%'%/%H$G\e(B
 \e$BI=8=$5$l$^$9!#\e(B
 
-**** Channels
+**** riece-channel \e$B%*%V%8%'%/%H\e(B
 
 riece-channel \e$B$O%A%c%s%M%k$rI=$9%*%V%8%'%/%H$G!"0J2<$NMWAG$r;}$A$^$9!#\e(B
 
@@ -216,12 +217,12 @@ riece-channel \e$B$O%A%c%s%M%k$rI=$9%*%V%8%'%/%H$G!"0J2<$NMWAG$r;}$A$^$9!#\e(B
   MODE +b \e$B$G;XDj$5$l$?%Q%?!<%s$N0lMw\e(B
 
 - invited
-  MODE +I \e$B$G;XDj$5$l$?%Q%?!<%s$N0lMw\e(B 
+  MODE +I \e$B$G;XDj$5$l$?%Q%?!<%s$N0lMw\e(B
 
 - uninvited
   MODE +e \e$B$G;XDj$5$l$?%Q%?!<%s$N0lMw\e(B
 
-**** Users
+**** riece-user \e$B%*%V%8%'%/%H\e(B
 
 riece-user \e$B$O!"\e(BIRC \e$B$K;22C$7$F$$$k%f!<%6$rI=$9%*%V%8%'%/%H$G!"0J2<$NMW\e(B
 \e$BAG$r;}$A$^$9!#\e(B
@@ -236,12 +237,12 @@ riece-user \e$B$O!"\e(BIRC \e$B$K;22C$7$F$$$k%f!<%6$rI=$9%*%V%8%'%/%H$G!"0J2<$NMW\e(
   \e$B%f!<%6$N%b!<%I\e(B
 
 - away
-  \e$BN%@JCf$+$I$&$+\e(B 
+  \e$BN%@JCf$+$I$&$+\e(B
 
-**** Mediator pattern
+**** Mediator \e$B%Q%?!<%s\e(B
 
 \e$B%A%c%s%M%k$X$N%f!<%6$N;22C!&N%C&$r4IM}$9$k$?$a$K!"\e(B riece-naming \e$B%b%8%e!<\e(B
-\e$B%k$r;H$$$^$9!#\e(Briece-naming \e$B$O!"%G%6%$%s%Q%?!<%s$G$$$&$H$3$m$N\e(B Mediator 
+\e$B%k$r;H$$$^$9!#\e(Briece-naming \e$B$O!"%G%6%$%s%Q%?!<%s$G$$$&$H$3$m$N\e(B Mediator
 \e$B%Q%?!<%s$KAjEv$9$k$b$N$G$9!#\e(B
 
 riece-naming \e$B$r2p$9$k$3$H$G!"A0=R$N\e(B riece-channel, riece-user \e$B%*%V%8%'\e(B
@@ -253,12 +254,12 @@ riece-naming \e$B$,Ds6!$9$k<g$J4X?t$O0J2<$N\e(B 3 \e$B$D$G$9!#\e(B
   \e$B%f!<%6$,%A%c%s%M%k$K;22C$7$?$3$H$rI=L@$7$^$9\e(B
 
 - riece-naming-assert-part user-name channel-name
-  \e$B%f!<%6$,%A%c%s%M%k$+$iN%C&$7$?$3$H$rI=L@$7$^$9\e(B 
+  \e$B%f!<%6$,%A%c%s%M%k$+$iN%C&$7$?$3$H$rI=L@$7$^$9\e(B
 
 - riece-naming-assert-rename old-name new-name
-  \e$B%f!<%6$NL>A0$,JQ99$5$l$?$3$H$rI=L@$7$^$9\e(B 
+  \e$B%f!<%6$NL>A0$,JQ99$5$l$?$3$H$rI=L@$7$^$9\e(B
 
-** Signals
+** \e$B%7%0%J%k\e(B
 
 \e$B%7%0%J%k$H$O!"2hLL$N:FIA2h$r8zN(NI$/9T$&$?$a$K!"%$%Y%s%H$HIA2hBP>]$N%*\e(B
 \e$B%V%8%'%/%H\e(B(\e$B%P%C%U%!$d!"%b!<%I%i%$%s$N0u\e(B)\e$B$r7k$SIU$1$k5!9=$G$9!#\e(B
@@ -347,7 +348,7 @@ riece-naming \e$B$,Ds6!$9$k<g$J4X?t$O0J2<$N\e(B 3 \e$B$D$G$9!#\e(B
   \e$B%P%C%U%!$NE`7k>uBV$NJQ2=\e(B
   (\e$B0z?t$O%P%C%U%!\e(B)
 
-** Writing add-ons
+** \e$B%"%I%*%s$N=q$-J}\e(B
 
 \e$B%"%I%*%s$N>r7o$rK~$?$9%b%8%e!<%k$O0J2<$N4X?t$rDs6!$7$^$9!#\e(B
 
@@ -358,7 +359,7 @@ riece-naming \e$B$,Ds6!$9$k<g$J4X?t$O0J2<$N\e(B 3 \e$B$D$G$9!#\e(B
   \e$B=i4|2==hM}$r9T$$$^$9\e(B
 
 \e$B$^$?!"%"%I%*%s$N4JC1$J@bL@$r!"JQ?t\e(B <\e$B%b%8%e!<%kL>\e(B>-description \e$B$K@_Dj$9\e(B
-\e$B$k$HNI$$$G$7$g$&!#$3$NJ8;zNs$O\e(B C-c ^ (M-x riece-command-list-addons) 
+\e$B$k$HNI$$$G$7$g$&!#$3$NJ8;zNs$O\e(B C-c ^ (M-x riece-command-list-addons)
 \e$B$K$h$k%"%I%*%s$N0lMw$GI=<($5$l$^$9!#\e(B
 
 \e$BM-8z2=!&L58z2=$KBP1~$7$?%"%I%*%s$O!"JQ?t\e(B <\e$B%b%8%e!<%kL>\e(B>-enabled \e$B$K8=:_\e(B
@@ -388,7 +389,7 @@ Riece \e$B$O5/F0;~$K0J2<$N=hM}$r9T$$$^$9!#\e(B
 \e$B:n@.$7$?%"%I%*%s$O!"\e(Bload-path \e$B$NDL$C$?%G%#%l%/%H%j$+!"\e(B
 ~/.riece/addons/ \e$B0J2<$KG[CV$9$k$HAH$_9~$_2DG=$J>uBV$K$J$j$^$9!#\e(B
 
-** Handler hooks
+** \e$B%O%s%I%i%U%C%/\e(B
 
 Riece \e$B$K$O!"%O%s%I%i%U%C%/$H8F$P$l$kFCJL$J0UL#$r;}$D%U%C%/$,$"$j$^$9!#\e(B
 \e$B%O%s%I%i%U%C%/$O\e(B IRC \e$B$N%a%C%;!<%8$r<u$1<h$C$?A08e$G<B9T$5$l$^$9!#\e(B
@@ -403,7 +404,7 @@ Riece \e$B$K$O!"%O%s%I%i%U%C%/$H8F$P$l$kFCJL$J0UL#$r;}$D%U%C%/$,$"$j$^$9!#\e(B
   message \e$B$N=hM}$,=*$o$C$?8e$K8F$P$l$k%U%C%/\e(B
 
 \e$B$3$3$G\e(B riece-<message>-hook \e$B$NJV$jCM$K$O0UL#$,$"$j!"\e(Bt \e$B$rJV$9$b$N$,$"$l\e(B
-\e$B$P!"$=$N8e$N=hM}$r$*$3$J$$$^$;$s!#$^$?!"$=$N>l9g$K$O\e(B 
+\e$B$P!"$=$N8e$N=hM}$r$*$3$J$$$^$;$s!#$^$?!"$=$N>l9g$K$O\e(B
 riece-after-<message>-hook \e$B$b8F$S=P$5$l$^$;$s!#\e(B
 
 \e$B%U%C%/$N0z?t$K$O\e(B RFC2812 \e$B$N\e(B prefix \e$B$H\e(B parameters \e$B$,EO$j$^$9!#\e(B
\ No newline at end of file