Fixed.
[riece] / doc / riece-ja.texi
index ebe8770..b6fddc6 100644 (file)
@@ -3,7 +3,7 @@
 @setfilename riece-ja.info
 @settitle Riece -- An IRC client for Emacsen --
 @c %**end of header
-@set VERSION 0.1.4
+@set VERSION 1.0.8
 @c @documentlanguage ja
 
 @dircategory GNU Emacs Lisp
@@ -14,7 +14,7 @@
 @ifinfo
 This file describes Riece.
 
-Copyright (C) 2003 Daiki Ueno.
+Copyright (C) 2003,2004,2005 Daiki Ueno.
 
 Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.1 or
@@ -33,7 +33,7 @@ Free Documentation License".
 @page
 
 @vskip 0pt plus 1filll
-Copyright @copyright{} 2003 Daiki Ueno.
+Copyright @copyright{} 2003,2004,2005 Daiki Ueno.
 
 Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.1 or
@@ -49,14 +49,16 @@ Free Documentation License".
 @node Top, Overview, (dir), (dir)
 @top Riece user's manual
 
-Riece \e$B$O\e(B Emacs \e$B$G\e(B IRC (Internet Relay Chat) \e$B$K;22C$9$k$?$a$N%W%m%0%i%`$G$9!#\e(B
+\e$B$3$N%^%K%e%"%k$G$O!"\e(BRiece \e$B%P!<%8%g%s\e(B @value{VERSION} \e$B$K$D$$$F2r@b$7$^$9!#\e(B
+\e$B$3$N%^%K%e%"%k$G07$&HO0O$r1[$($?>pJs$O\e(B Riece \e$B$N8x<0%[!<%`%Z!<%8\e(B 
+@uref{http://www.nongnu.org/riece/} \e$B$+$iF@$i$l$k$+$b$7$l$^$;$s!#\e(B
 
 @menu
-* Overview::                    Riece \e$B$H$O2?$+\e(B
-* Getting started::             
-* Basic usage::                 \e$B4pK\E*$J$D$+$$$+$?\e(B
-* Advanced usage::              \e$B?J$s$@$D$+$$$+$?\e(B
-* Development::                 \e$B3+H/<T8~$1>pJs\e(B
+* Overview::                    \e$B$O$8$a$KFI$s$G$M\e(B
+* Getting started::             IRC \e$B%5!<%P$K@\B3$7$F2qOC$7$F$_$h$&\e(B
+* Basic usage::                 \e$B4pK\E*$J;H$$J}\e(B
+* Advanced usage::              \e$B?J$s$@;H$$J}\e(B
+* Tips::                        \e$BJXMx$J@_Dj\e(B
 * Index::                       
 * Function Index::              
 * Variable Index::              
@@ -65,138 +67,97 @@ Riece \e$B$O\e(B Emacs \e$B$G\e(B IRC (Internet Relay Chat) \e$B$K;22C$9$k$?$a$N%W%m%
 @node Overview, Getting started, Top, Top
 @chapter Overview
 
-Riece \e$B$O!"D9$$4V%a%s%F%J%s%9IT2DG=$J>uBV$K$"$C$?\e(B Liece \e$B$N%3!<%I$r40A4$K\e(B
-\e$B=q$-D>$7$?$b$N$G$9!#%$%s%?!<%U%'!<%9$O!"\e(BLiece \e$B$+$i$[$H$s$I$=$N$^$^F'=1$7\e(B
-\e$B$F$$$^$9!#\e(B
+Riece \e$B$O\e(B IRC (Internet Relay Chat) \e$B$N@$3&$G%A%c%C%H$r3Z$7$`$?$a$N%f!<%6\e(B
+\e$B%$%s%?!<%U%'!<%9$G$9!#\e(BRiece \e$B$O!V$j!<$9!W$HFI$_$^$9!#\e(B
 
-\e$B8=:_$N$H$3$m\e(B IRC \e$B%/%i%$%"%s%H$H$7$F$N5!G=$O==J,$G$O$"$j$^$;$s$,!"\e(BLiece 
-\e$B$K$O$J$$FCD9$,$$$/$D$+$"$j$^$9!#0J2<$K$=$l$i$N0lIt$r5s$2$^$9!#\e(B
+Riece \e$B$N<g$JFCD9$O0J2<$NDL$j$G$9!#\e(B
 
 @itemize @bullet
-@item \e$BJ#?t$N%5!<%P$KF1;~$K$D$J$2$k\e(B
-@item \e$B0l1~\e(B API \e$B$i$7$$\e(B API \e$B$,MQ0U$5$l$F$$$k\e(B
-@item \e$B%3!<%I%5%$%:$,>.$5$$\e(B (Liece \e$B$NH>J,DxEY\e(B)
-@item \e$B%"%I%*%s$K$h$k3HD%$,2DG=\e(B
-@item APEL \e$B$,$$$i$J$$\e(B
-@end itemize
-
-\e$B$h$j>\$7$$>pJs$O!"0J2<$N%Z!<%8$r8fMw$/$@$5$$!#\e(B
-
-@itemize @bullet
-@item http://wiliki.designflaw.org/index.cgi?Riece&l=jp
-@item http://www.unixuser.org/~ueno/liece/
+@item \e$BJ#?t$N\e(B IRC \e$B%5!<%P$KF1;~$K@\B32DG=\e(B
+@item \e$B%"%I%*%s$K$h$j5!G=$NDI2C$d<h$j30$7$,MF0W\e(B
+@item \e$BB>$N\e(B elisp \e$B%Q%C%1!<%8$K0MB8$7$J$$$?$a!"%$%s%9%H!<%k$,4JC1\e(B
+@item \e$B@_Dj$,4JC1$G!"A02s5/F0;~$N@_Dj$r5-O?!&I|85$9$k;EAH$_$rDs6!\e(B
+@item \e$BCJ3,E*$JA`:n@bL@=q$,ImB0\e(B
+@item \e$B:G?7$N\e(B IRC \e$B$N%/%i%$%"%s%H%W%m%H%3%k\e(B (RFC2812) \e$B$K=`5r\e(B
 @end itemize
 
 @node Getting started, Basic usage, Overview, Top
 @chapter Getting started
 
-@menu
-* Required Environments::       \e$BF0:n4D6-\e(B
-* Installation::                \e$B%$%s%9%H!<%kJ}K!\e(B
-* Startup File::                \e$B@_Dj%U%!%$%k\e(B
-@end menu
-
-@node Required Environments, Installation, Getting started, Getting started
-@section Required Environments
+Riece \e$B$r5/F0$9$k<j=g$O<!$NDL$j$G$9!#\e(B
 
-\e$B<!$K5s$2$k4D6-$GF0:n$r3NG'$7$F$$$^$9!#\e(B
+@enumerate
+@item
+@kbd{M-x load-library riece}
 
-@itemize @bullet
-@item Emacs 20.7 \e$B0J>e\e(B
-@item XEmacs 21.4 \e$B0J>e\e(B
-@end itemize
+@item
+@kbd{M-x riece}
+@end enumerate
 
-@node Installation, Startup File, Required Environments, Getting started
-@section Installation
+\e$B$b$7\e(B (1) \e$B$G\e(B @samp{Cannot open load file: riece} \e$B$N%(%i!<$,H/@8$9$k>l9g$K\e(B
+\e$B$O%$%s%9%H!<%k$K<:GT$7$F$$$^$9!#<+J,$G%=!<%9$+$i%$%s%9%H!<%k$7$?>l9g$K$O\e(B 
+README \e$B$r$b$&0lEYFI$_D>$7$F$/$@$5$$!#\e(BOS\e$B!&%G%#%9%H%j%S%e!<%7%g%s$N%Q%C%1!<\e(B
+\e$B%8$+$i%$%s%9%H!<%k$7$?>l9g$K$O!"%Q%C%1!<%8$K4^$^$l$kJ8=q$r$43NG'$/$@$5$$!#\e(B
 
-Riece \e$B$N:G?7HG$O!"\e(B
-@uref{http://wiliki.designflaw.org/riece.cgi} \e$B$GG[I[$7$F$$$^\e(B
-\e$B$9!#E83+$7$?$i!"0J2<$N%3%^%s%I$r<B9T$9$k$3$H$G<j85$N4D6-$K%$%s%9%H!<%k$G\e(B
-\e$B$-$^$9\e(B
+Riece \e$B$r5/F0$9$k$H!"\e(BIRC \e$B%5!<%P$NL>A0$rJ9$+$l$^$9!#8x6&$KMxMQ2DG=$J\e(B IRC 
+\e$B%5!<%P$N0lMw$O\e(B Web \e$B%Z!<%8$J$I$+$iF@$k$3$H$,$G$-$^$9!#\e(B
 
-@example
-./configure
-make
-make install
-@end example
+@itemize @bullet
+@item http://irc.kyoto-u.ac.jp
+@item http://freenode.net
+@end itemize
 
-XEmacs \e$B$N%Q%C%1!<%8$H$7$F%$%s%9%H!<%k$9$k>l9g$K$O0J2<$N$h$&$K$7$^$9!#\e(B
+\e$B$^$?!"0J2<$N$h$&$J%a%C%;!<%8$,I=<($5$l$k$+$b$7$l$^$;$s!#\e(B
 
 @example
-./configure --with-xemacs[=xemacs-21.4.13]
-make package
-make install-package
+Nickname "ueno" already in use.  Choose a new one: 
 @end example
 
-XEmacs \e$B$N%Q%C%1!<%8$H$7$F%$%s%9%H!<%k$7$?>l9g$K$OI,MW$"$j$^$;$s$,!"\e(B
-@kbd{M-x riece} \e$B$G5/F0$9$k$?$a$K$O!"\e(Bautoload \e$B$N@_Dj$r8f<+J,$N\e(B Emacs \e$B$N@_\e(B
-\e$BDj%U%!%$%k$K2C$($kI,MW$,$"$j$^$9!#\e(B
-
-@lisp
-(autoload 'riece "riece" "Start Riece" t)
-@end lisp
+IRC \e$B$G$O!";22C<T$rI=$9$N$K\e(B@emph{\e$B%K%C%/%M!<%`\e(B}\e$B$H8F$P$l$kC;$$8F>N$,;H$o$l\e(B
+\e$B$^$9!#$b$74uK>$N%K%C%/%M!<%`$,B>$NC/$+$K;HMQ$5$l$F$$$k>l9g!"JL$N%K%C%/%M!<\e(B
+\e$B%`$rA*$VI,MW$,$"$j$^$9!#\e(B
 
-@node Startup File,  , Installation, Getting started
-@section Startup file
-
-\e$B$O$8$a$F$D$+$&>l9g$K$O!"$H$/$K2?$b@_Dj$9$kI,MW$O$"$j$^$;$s!#\e(B
-\e$B$3$N>O$OFI$_Ht$P$7$F$/$@$5$$!#\e(B
+IRC \e$B%5!<%P$K@\B3$G$-$?$i!"<!$O2qOC$r$7$F$_$^$7$g$&!#\e(BIRC \e$B$G$O\e(B@emph{\e$B%A%c%s%M%k\e(B}
+\e$B$H8F$P$l$k2>A[E*$J2q5D<<$K;22C$7$F2qOC$r9T$J$$$^$9!#%A%c%s%M%k$KF~$k$K$O\e(B 
+@kbd{C-c j} \e$B$H%?%$%W$7$^$9!#;22C$9$k%A%c%s%M%kL>$r?R$M$i$l$?$i!"E,@Z$J%A%c\e(B
+\e$B%s%M%kL>$rF~NO$7$^$7$g$&!#\e(BIRCnet \e$B$K$O\e(B @samp{#Riece} \e$B$H$$$&%A%c%s%M%k$,$"\e(B
+\e$B$k$N$G!"%F%9%H$r$7$?$$>l9g$K$O<+M3$K$*;H$$$/$@$5$$!#\e(B
 
-Riece \e$B$O@_Dj%U%!%$%k$rJQ?t\e(B @code{riece-directory} \e$B$G;X<($5$l$k%G%#%l%/%H\e(B
-\e$B%j\e(B (\e$B%G%U%)%k%H$O\e(B @file{~/.riece/}) \e$B$+$iFI$_9~$_$^$9!#$3$N%G%#%l%/%H%j$K\e(B
-\e$B$O0J2<$NFs<oN`$N@_Dj%U%!%$%k$,3JG<$5$l$^$9!#\e(B
+\e$B%A%c%s%M%k$KF~$k$H!"2<$N?^$K<($9$h$&$J\e(B 5 \e$B$D$N%&%#%s%I%&\e(B
+@footnote{\e$B$^$.$i$o$7$$$G$9$,!"\e(BEmacs \e$B$N@$3&$G$O%P%C%U%!$rI=<($9$kNN0h$r%&%#\e(B
+\e$B%s%I%&$H8F$S$^$9!#\e(B}\e$B$+$i$J$k2hLL$K@Z$jBX$o$j$^$9!#\e(B
 
-@table @code
-@item riece-saved-variables-file
-@vindex riece-saved-variables-file
-\e$BA02s$N%;%C%7%g%s$N>pJs$r3JG<$7$^$9\e(B(\e$B%G%U%)%k%H$O\e(B @file{~/.riece/save})
-@item riece-variables-file
-@vindex riece-variables-file
-\e$B%f!<%6$K8GM-$N@_Dj$r5-=R$7$^$9\e(B(\e$B%G%U%)%k%H$O\e(B @file{~/.riece/init})
-@end table
+@example
++-----+-----------------+
+|     |                 |
+|     |                 |
+| (1) |       (2)       |
+|     |                 |
+|     |                 |
++-----+-----------------+
+|     |       (4)       |
+|     +-----------------+
+| (3) |                 |
+|     |       (5)       |
+|     |                 |
++-----+-----------------+
+@end example
 
-\e$B5/F0;~$K$O!":G=i$K\e(B @code{riece-saved-variables-file} \e$B$r!"<!$K\e(B 
-@code{riece-variables-file} \e$B$rFI$_9~$_$^$9!#%U%!%$%k$,B8:_$7$J$1$l$P2?$b\e(B
-\e$B$7$^$;$s!#\e(B
+(4) \e$B$N%&%#%s%I%&$KI=<($5$l$k%P%C%U%!$KJ8>O$rF~NO$7$F%j%?!<%s%-!<$r2!$9$H\e(B
+\e$BH/8@$G$-$^$9!#B>$N;22C<T$NH/8@$O\e(B (2) \e$B$N%&%#%s%I%&$KI=<($5$l$^$9!#\e(B
 
 @node Basic usage, Advanced usage, Getting started, Top
 @chapter Basic usage
 
-@kbd{M-x riece} \e$B$H$9$k$3$H$G5/F0$7$^$9!#%5!<%PL>$rJ9$+$l$k$N$GEz$($^$9!#\e(B
-\e$B@\B32DG=$J\e(B IRC \e$B%5!<%P$O3F\e(B IRC \e$B%M%C%H%o!<%/Kh$K0[$J$j$^$9$,!"BgDq$O\e(B Web 
-\e$B%Z!<%8$K0lMw$,$^$H$a$F$"$k$3$H$,B?$$$G$7$g$&!#\e(B
-
-@itemize @bullet
-@item http://irc.kyoto-u.ac.jp
-@item http://freenode.net
-@end itemize
-
-\e$B$b$7%K%C%/%M!<%`$,4{$K;HMQ$5$l$F$$$k>l9g!"JL$N%K%C%/%M!<%`$NF~NO$rB%$5$l$^$9!#\e(B
-\e$B%K%C%/%M!<%`$N=i4|CM$O\e(B @code{riece-nickname} \e$B$G@_Dj$7$^$9!#%G%U%)%k%H$G$O!"\e(B
-\e$B%f!<%6$N%m%0%$%sL>$,$=$N$^$^;H$o$l$^$9!#\e(B
-@vindex riece-nickname
-
-\e$BL5;v$K@\B3$G$-$?$J$i!"<!$O%A%c%s%M%k$K;22C$7$F2qOC$r$7$F$_$^$7$g$&!#\e(B
-@kbd{C-c j} \e$B$H%?%$%W$9$k$H!"%A%c%s%M%kL>$r?R$M$i$l$k$N$G!"E,Ev$J%A%c%s%M\e(B
-\e$B%kL>$rF~NO$7$^$7$g$&!#$?$H$($P\e(B IRCnet \e$B$K$O\e(B @samp{#Liece} \e$B$H$$$&%A%c%s%M\e(B
-\e$B%k$,$"$k$N$G!"%F%9%H$K$*;H$$$/$@$5$$!#\e(B
-
-\e$B%A%c%s%M%k$KF~$k$3$H$,$G$-$?$i!"J8>O$rF~NO$7$F%j%?!<%s%-!<$r2!$9$HH/8@$9\e(B
-\e$B$k$3$H$,$G$-$^$9!#B>$N?M$N2qOC$O2hLL1&>e$N%P%C%U%!$KI=<($5$l$^$9!#\e(B
-
 @menu
 * Windows::                     \e$B2hLL9=@.\e(B
 * Indicators::                  \e$B<+J,$N>uBV$NI=<(\e(B
 * Commands::                    \e$B%3%^%s%I$N0lMw\e(B
-* Connecting to multiple servers::  \e$BJ#?t$N%5!<%P$K$D$J$0$K$O\e(B
 @end menu
 
-@node Windows, Commands, Basic usage, Basic usage
+@node Windows, Indicators, Basic usage, Basic usage
 @section Windows
 
-\e$B%G%U%)%k%H$N@_Dj$G$O!"%A%c%s%M%k$KF~$k$H!"2<$N?^$K<($9$h$&$J8^$D$N%&%#%s\e(B
-\e$B%I%&$+$i$J$k2hLL$K@Z$jBX$o$j$^$9!#\e(B
-
 @example
 +-----+-----------------+
 |     |                 |
@@ -213,59 +174,68 @@ Riece \e$B$O@_Dj%U%!%$%k$rJQ?t\e(B @code{riece-directory} \e$B$G;X<($5$l$k%G%#%l%/%
 +-----+-----------------+
 @end example
 
-\e$B$3$l$i$N3F%&%#%s%I%&$KI=<($5$l$k%P%C%U%!$NLr3d$O0J2<$NDL$j$G$9!#\e(B
+\e$B3F%&%#%s%I%&$KI=<($5$l$k%P%C%U%!$NLr3d$O0J2<$NDL$j$G$9!#\e(B
 
 @enumerate
 @item
-\e$B%f!<%6%j%9%H%P%C%U%!\e(B (@samp{*Users XXX*})\e$B!#%A%c%s%M%k$K$$$k%f!<%6$N0lMw\e(B
-\e$B$,I=<($5$l$^$9!#\e(B
+\e$B%f!<%6%j%9%H%P%C%U%!\e(B (@samp{ *Users*})\e$B!#%A%c%s%M%k$K;22C$7$F$$$k%f!<\e(B
+\e$B%6$N%K%C%/%M!<%`$N0lMw$,I=<($5$l$^$9!#\e(B
 
 @item
-\e$B%A%c%s%M%k%P%C%U%!\e(B (@samp{*Channel XXX*})\e$B!#%A%c%s%M%kFb$N2qOC$,I=<($5$l\e(B
+\e$B%A%c%s%M%k%P%C%U%!\e(B (@samp{ *Channel:XXX*})\e$B!#%A%c%s%M%kFb$N2qOC$,I=<($5$l\e(B
 \e$B$^$9!#\e(B
 
 @item
-\e$B%A%c%s%M%k%j%9%H%P%C%U%!\e(B (@samp{*Channels*})\e$B!#;22C$7$F$$$k%A%c%s%M%k$N0l\e(B
-\e$BMw$,I=<($5$l$^$9!#\e(B
+\e$B%A%c%s%M%k%j%9%H%P%C%U%!\e(B (@samp{ *Channels*})\e$B!#<+J,$,;22C$7$F$$$k%A%c%s%M\e(B
+\e$B%k$N0lMw$,I=<($5$l$^$9!#\e(B
 
 @item
-\e$B%3%^%s%I%P%C%U%!\e(B (@samp{*Commands*})\e$B!#J8>O$d%3%^%s%I$rAw?.$9$k$?$a$K;H$$\e(B
+\e$B%3%^%s%I%P%C%U%!\e(B (@samp{*Command*})\e$B!#J8>O$d%3%^%s%I$rAw?.$9$k$?$a$K;H$$\e(B
 \e$B$^$9!#\e(B
 
 @item
-\e$B%"%6!<%:%P%C%U%!\e(B (@samp{*Others*})\e$B!#8=:_$N%A%c%s%M%k0J30$N2qOC$,N.$l$^$9!#\e(B
+\e$B%"%6!<%:%P%C%U%!\e(B (@samp{ *Others*})\e$B!#8=:_A*BrCf$N%A%c%s%M%k0J30$N2qOC$,N.\e(B
+\e$B$l$^$9!#\e(B
 @end enumerate
 
-@node Indicators
+@node Indicators, Commands, Windows, Basic usage
 @section Indicators
 
-\e$B%3%^%s%I%P%C%U%!$d%A%c%s%M%k%P%C%U%!$N%b!<%I%i%$%s$N:8C<$K$O!"\e(B
-\e$B<+J,$N8=:_$N>uBV$r<($90u$,I=<($5$l$^$9!#\e(B
+\e$B%b!<%I%i%$%s$N:8C<$K$O!"8=:_$N<+J,$N>uBV$r<($90u$,I=<($5$l$^$9!#\e(B
+@footnote{\e$B$b$72hA|$rI=<($G$-$k\e(B Emacs \e$B$r$*;H$$$J$i!":8C<$K\e(B "R" \e$B$N%"%$%3%s\e(B
+\e$B$,I=<($5$l$^$9!#\e(B}
 
 @example
-Riece: --- ueno #Liece [n]
+Riece: ---- ueno #Riece [n]
 @end example
 
-\e$B$3$3$G!"\e(B@samp{---} \e$B$NItJ,$K$O:8$+$i=g$K0J2<$N0UL#$,$"$j$^$9!#\e(B
+\e$B$3$3$G!"\e(B@samp{----\e$B$NItJ,$K$O:8$+$i=g$K0J2<$N0UL#$,$"$j$^$9!#\e(B
 
 @enumerate
 @item
 \e$BN%@J>uBV\e(B (\e$BN%@J$7$F$$$l$P\e(B @samp{A})
 
 @item
-\e$B%*%Z%l!<%?>uBV\e(B (IRC \e$B%*%Z%l!<%?$G$"$l$P\e(B @samp{O})
+IRC \e$B%*%Z%l!<%?>uBV\e(B (IRC \e$B%M%C%H%o!<%/$N4IM}<T8"8B$r;}$C$F$$$l$P\e(B @samp{O})
+
+@item
+\e$B%&%#%s%I%&$N<+F0%9%/%m!<%k$N6X;_\e(B (\e$B40A4$K6X;_$7$F$$$l$P\e(B @samp{F}\e$B!"<+J,$N\e(B
+\e$B<!2s$NH/8@$^$G6X;_$7$F$$$k$N$G$"$l$P\e(B @samp{f})
 
 @item
-\e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$N%9%/%m!<%k6X;_>uBV\e(B
-(\e$B40A4$K6X;_$7$F$$$l$P\e(B @samp{F}\e$B!"<+J,$N<!2s$NH/8@$^$G6X;_$7$F$$$k$N$G$"$l\e(B
-\e$B$P\e(B @samp{f})
+\e$B%A%c%s%M%k%*%Z%l!<%?>uBV\e(B (\e$B%A%c%s%M%k$N4IM}<T8"8B$r;}$C$F$$$l$P\e(B @samp{@@})
 @end enumerate
 
-@node Commands, Connecting to multiple servers, Windows, Basic usage
+@node Commands,  , Indicators, Basic usage
 @section Commands
 
-\e$BJ8>O$rF~NO$7$?%P%C%U%!$O!"%3%^%s%I%P%C%U%!$H8F$P$l!"%3%^%s%I%P%C%U%!$+$i\e(B
-\e$B$OMM!9$J%3%^%s%I$rH/9T$9$k$3$H$,$G$-$^$9!#0J2<$K0lIt$r5s$2$^$9!#\e(B
+@ref{Basic usage}\e$B$GJ8>O$rF~NO$7$?%P%C%U%!$O%3%^%s%I%P%C%U%!$H8F$P$l$^$9!#\e(B
+\e$B%3%^%s%I%P%C%U%!$+$i$OJ8>O$rAw?.$9$k0J30$K!"MM!9$J%3%^%s%I$rH/9T$9$k$3$H\e(B
+\e$B$,$G$-$^$9!#0J2<$K0lIt$r5s$2$^$9!#\e(B
+
+\e$B:G=i$O$J$+$J$+3P$($K$/$$$G$9$,!"\e(B@kbd{C-h b}
+ (@kbd{M-x describe-bindings}) \e$B$G;HMQ2DG=$J%-!<A`:n$N0lMw$,I=<($5$l$k$N\e(B
+\e$B$G>/$7$:$D3P$($F$$$/$HNI$$$G$7$g$&!#\e(B
 
 @subsection IRC commands
 @table @kbd
@@ -316,41 +286,44 @@ IRC \e$B$r$d$a$^$9\e(B(@code{riece-command-quit})
 \e$B%A%c%s%M%k$N%b!<%I$r@_Dj$7$^$9\e(B(@code{riece-command-change-mode})
 @item C-c o
 @findex riece-command-set-operators
-\e$B%f!<%6$K%*%Z%l!<%?8"8B$rM?$($^$9!#A0CV0z?t\e(B (@kbd{C-u}) \e$B$rM?$($k$H!"%f!<%6$+$iH/8@8"$rC%$$$^$9\e(B(@code{riece-command-set-operators})
+\e$B%f!<%6$K%A%c%s%M%k$N4IM}<T8"8B$rM?$($^$9!#\e(B@kbd{C-u C-c o} \e$B$G$O5U$K!"%f!<%6$+$i%A%c%s%M%k$N4IM}<T8"8B$rC%$$$^$9\e(B(@code{riece-command-set-operators})
 @item C-c v
 @findex riece-command-set-speakers
-\e$B%f!<%6$KH/8@8"$rM?$($^$9!#A0CV0z?t\e(B (@kbd{C-u}) \e$B$rM?$($k$H!"%f!<%6$+$iH/8@8"$rC%$$$^$9\e(B(@code{riece-command-set-speakers})
+\e$B%f!<%6$K%A%c%s%M%k$G$NH/8@8"$rM?$($^$9!#\e(B@kbd{C-u C-c v} \e$B$G$O5U$K!"%f!<%6$+$i%A%c%s%M%k$G$NH/8@8"$rC%$$$^$9\e(B(@code{riece-command-set-speakers})
 @item C-c V
 @findex riece-version
-Riece \e$B$N%P!<%8%g%s$rI=<($7$^$9!#\e(B
+Riece \e$B$N%P!<%8%g%s$rI=<($7$^$9!#\e(B(@kbd{C-u C-c V}) \e$B$G!"$h$j>\:Y$J>pJs$rI=<($7$^$9!#\e(B
 @item C-c /
 @findex riece-command-raw
-\e$B@8$N\e(B IRC \e$B%3%^%s%I$rAw$j$^$9\e(B(@code{riece-command-raw})
+IRC \e$B%3%^%s%I$rD>@\Aw$j$^$9\e(B(@code{riece-command-raw})
 @end table
 
 @subsection Window manipulating commands
 @table @kbd
 @item C-c r
 @findex riece-command-configure-windows
-\e$B%&%#%s%I%&$r:FIA2h$7$^$9\e(B(@code{riece-command-configure-windows})
-@item C-c C-j
+\e$B%U%l!<%`A4BN$r:FIA2h$7$^$9\e(B(@code{riece-command-configure-windows})
+@item C-c C-j \e$B$^$?$O\e(B C-c >
 @findex riece-command-next-channel
-\e$B<!$N%A%c%s%M%k$K0\$j$^$9\e(B(@code{riece-command-next-channel})
+\e$B%A%c%s%M%k0lMw$G<!$N%A%c%s%M%k$rA*Br$7$^$9\e(B(@code{riece-command-next-channel})
 @item C-c <
 @findex riece-command-previous-channel
-\e$BA0$N%A%c%s%M%k$K0\$j$^$9\e(B(@code{riece-command-previous-channel})
-@item C-c >
-@findex riece-command-next-channel
-\e$B<!$N%A%c%s%M%k$K0\$j$^$9\e(B(@code{riece-command-next-channel})
+\e$B%A%c%s%M%k0lMw$GA0$N%A%c%s%M%k$rA*Br$7$^$9\e(B(@code{riece-command-previous-channel})
+@item C-c ^
+@findex riece-command-list-addons
+\e$B%"%I%*%s$N0lMw$rI=<($7$^$9\e(B(@code{riece-command-list-addons})
 @item C-c \e$B?t;z\e(B
 @findex riece-command-switch-to-channel-by-number
-@var{n}\e$BHVL\$N%A%c%s%M%k$K0\F0$7$^$9\e(B(@code{riece-command-switch-to-channel-by-number})
+\e$B%A%c%s%M%k0lMw$G\e(B @var{n}\e$BHVL\$N%A%c%s%M%k$rA*Br$7$^$9\e(B(@code{riece-command-switch-to-channel-by-number})
 @item C-c C-c \e$B?t;z\e(B
 @findex riece-command-switch-to-channel-by-number
-@var{n} + 10\e$BHVL\$N%A%c%s%M%k$K0\F0$7$^$9\e(B(@code{riece-command-switch-to-channel-by-number})
+\e$B%A%c%s%M%k0lMw$G\e(B @var{n} + 10\e$BHVL\$N%A%c%s%M%k$rA*Br$7$^$9\e(B(@code{riece-command-switch-to-channel-by-number})
+@item C-c Home
+@findex riece-command-beginning-of-buffer
+\e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$r>eC<$^$G%9%/%m!<%k$7$^$9\e(B(@code{riece-command-beginning-of-buffer})
 @item C-c $
 @findex riece-command-end-of-buffer
-\e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$N%S%e!<$r2<C<$^$G0\F0$7$^$9\e(B(@code{riece-command-end-of-buffer})
+\e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$r2<C<$^$G%9%/%m!<%k$7$^$9\e(B(@code{riece-command-end-of-buffer})
 @item C-c SPC
 @findex riece-command-scroll-up
 \e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$r>eJ}8~$K%9%/%m!<%k$7$^$9\e(B(@code{riece-command-scroll-up})
@@ -372,98 +345,85 @@ Riece \e$B$N%P!<%8%g%s$rI=<($7$^$9!#\e(B
 \e$B%f!<%6%j%9%H%P%C%U%!$NI=<(!&HsI=<($r@Z$jBX$($^$9\e(B(@code{riece-command-toggle-user-list-buffer-mode})
 @item C-c C-t f
 @findex riece-command-toggle-freeze
-\e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$N%9%/%m!<%k$r6X;_$7$^$9\e(B(@code{riece-command-toggle-freeze})
+\e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$N<+F0%9%/%m!<%k$r6X;_$7$^\e(B
+\e$B$9\e(B(@code{riece-command-toggle-freeze})
 @item C-c C-t o
 @findex riece-command-toggle-own-freeze
-\e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$N%9%/%m!<%k$r!"<+J,$,H/8@$9$k$^$G6X;_$7$^$9\e(B(@code{riece-command-toggle-own-freeze})
+\e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$r!"<+J,$,H/8@$9$k$^$G!"<+F0\e(B
+\e$B%9%/%m!<%k$r6X;_$7$^$9\e(B(@code{riece-command-toggle-own-freeze})
 @item C-c C-t a
 @findex riece-command-toggle-away
 \e$B<+J,$NN%@J>uBV$r@Z$jBX$($^$9\e(B(@code{riece-command-toggle-away})
 @end table
 
-@node Connecting to multiple servers,  , Commands, Basic usage
-@section Connecting to multiple servers
-
-Riece \e$B$NBg$-$JFCD9$K!"J#?t$N%5!<%P$KF1;~$K@\B3$9$k5!G=$,$"$j$^$9!#\e(B
-
-\e$B?7$?$J%5!<%P$K@\B3$7!"$=$N%5!<%P>e$N%A%c%s%M%k$K;22C$9$k<j=g$O0J2<$N$h$&\e(B
-\e$B$K$J$j$^$9!#\e(B
-
-@enumerate
-@item
-@kbd{C-c O} (@code{riece-command-open-server}) \e$B$H$7$^$9!#%5!<%PL>$rJ9$+$l$k$N$GEz$($^$9!#\e(B
-
-@item
-@kbd{C-c j} (@code{riece-command-join}) \e$B$G%A%c%s%M%k$K;22C$7$^$9!#$3$3$G!"\e(B
-\e$B%A%c%s%M%kL>$N8e$K6uGr$G6h@Z$C$F%5!<%PL>$rB3$1$^$9!#6uGr$rF~NO$9$k$K$O!"\e(B
-@kbd{C-q} \e$B$r;H$$$^$9!#$?$H$($P!"%5!<%P\e(B @samp{irc6} \e$B>e$N\e(B @samp{#Liece} \e$B$K;22C$9$k$K$O\e(B @kbd{C-c j #Liece C-q SPC irc6} \e$B$H%?%$%W$9$k$3$H$K$J$j$^$9!#\e(B
-@end enumerate
-
-\e$B%A%c%s%M%k$KF~$i$:$K%3%^%s%I$rAw$k$K$O!"\e(B@kbd{C-c M}
-(@code{riece-command-universal-server-name-argument}) \e$B$,JXMx$G$9!#\e(B
-
-\e$B%5!<%P$H$N@\B3$K4X$9$k%3%^%s%I$O0J2<$NDL$j$G$9!#\e(B
-
-@table @kbd
-@item C-c O
-@findex riece-command-open-server
-\e$BJL$N%5!<%P$K@\B3$7$^$9\e(B(@code{riece-command-open-server})
-@item C-c C
-@findex riece-command-close-server
-\e$B%5!<%P$H$N@\B3$r@ZCG$7$^$9\e(B(@code{riece-command-close-server})
-@item C-c M
-@findex riece-command-universal-server-name-argument
-\e$BFCDj$N%5!<%P$KBP$7$F!"B3$/%3%^%s%I$rH/9T$7$^$9\e(B(@code{riece-command-universal-server-name-argument})
-@end table
-
-@node Advanced usage, Development, Basic usage, Top
+@node Advanced usage, Tips, Basic usage, Top
 @chapter Advanced usage
 
 \e$B$3$N>O$G$O!"$b$C$H?J$s$@;H$$J}$r2r@b$7$^$9!#\e(B
 
 @menu
+* Startup File::                \e$B@_Dj%U%!%$%k\e(B
 * Server settings::             \e$B%5!<%P$N>\:Y@_Dj\e(B
+* Connecting to multiple servers::  \e$BF1;~$KJ#?t$N%5!<%P$K@\B3$9$k$K$O\e(B
 * Add-ons::                     \e$B%"%I%*%s$H$O\e(B
-* Writing add-ons::             \e$B@lMQ$N%"%I%*%s$r=q$/$K$O\e(B
-* Handler hooks::               \e$B%O%s%I%i$N?6Iq$$$NJQ99\e(B
 @end menu
 
-@node Server settings, Add-ons, Advanced usage, Advanced usage
+@node Startup File, Server settings, Advanced usage, Advanced usage
+@section Startup file
+
+\e$B$3$N>O$G$O!"@_Dj%U%!%$%k$K$D$$$F2r@b$7$^$9!#\e(BRiece \e$B$N@_Dj$O\e(B Emacs \e$B$N@_Dj\e(B
+\e$B%U%!%$%k$K=q$$$F$bNI$$$G$9$,!"\e(BRiece \e$B$K8GM-$N@_Dj$O$J$k$Y$/\e(B 
+@file{~/.riece/init} \e$B$K=q$/$3$H$r4+$a$^$9!#\e(B
+
+\e$B$^$?!"\e(BRiece \e$B$r;H$$;O$a$k$H\e(B @file{~/.riece/save} \e$B$H$$$&%U%!%$%k$,:n@.$5$l\e(B
+\e$B$^$9!#$3$N%U%!%$%k$K$OA02s5/F0;~$N@_Dj$N0lIt\e(B(\e$B%&%#%s%I%&9=@.Ey\e(B)\e$B$,<+F0E*$K\e(B
+\e$BJ]B8$5$l$^$9!#\e(B
+
+\e$B5/F0;~$K$O!":G=i$K\e(B @file{~/.riece/save} \e$B$r!"<!$K\e(B @file{~/.riece/init}\e$B$r\e(B
+\e$BFI$_9~$_$^$9!#$D$^$j!"A02s5/F0;~$K\e(B @file{~/.riece/save} \e$B$KJ]B8$5$l$?FbMF\e(B
+\e$B$O!"\e(B@file{~/.riece/init} \e$B$NFbMF$G>e=q$-$5$l$^$9!#\e(B
+
+@node Server settings, Connecting to multiple servers, Startup File, Advanced usage
 @section Server settings
 
-IRC \e$B%5!<%P$O\e(B @code{riece-server} \e$BJ8;zNs$H$7$F;XDj$7$^$9!#\e(B
-\e$B$3$3$G\e(B @code{riece-server} \e$B$N%U%)!<%^%C%H$O\e(B "<\e$B%5!<%P$N%[%9%HL>\e(B>:<\e$B%]!<%HHV9f\e(B>[:<\e$B%Q%9%o!<%I\e(B>]" \e$B$H$J$j$^$9!#\e(B
+\e$B5/F0;~$K@\B3$9$k\e(B IRC \e$B%5!<%P$NL>A0$OJQ?t\e(B @code{riece-server} \e$B$G;XDj$7$^$9!#\e(B
 @vindex riece-server
 
-@code{riece-server-alist} \e$B$rE,@Z$K@_Dj$9$k$H!"%-!<%o!<%I$r;H$C$F!"$h$j>\\e(B
-\e$B:Y$J;XDj$,2DG=$K$J$j$^$9!#0J2<$OI.<T$N@_Dj$+$iH4$-=P$7$?Nc$G$9!#\e(B
+@code{riece-server} \e$B$N7A<0$O<!$NDL$j$G$9!#\e(B
+@example
+<\e$B%5!<%P$N%[%9%HL>\e(B>:<\e$B%]!<%HHV9f\e(B>[:<\e$B%Q%9%o!<%I\e(B>]
+@end example
+
+@code{riece-server-alist} \e$B$r@_Dj$9$k$H!"$h$jJ#;($J;XDj$,2DG=$K$J$j$^$9!#\e(B
 @vindex riece-server-alist
 
+\e$B0J2<$NNc$r9M$($^$9!#\e(B
+
 @example
 (setq riece-server-alist
-      '(("irc6" :host "irc6.nara.wide.ad.jp")
-        ("plum" :host "localhost" :service 26667
-         :function relay-open-network-stream))
-      riece-server "irc6")
+      '(("foo" :host "irc.example.com" :coding shift_jis)
+        ("bar" :host "irc.example.net" :nickname "baz")))
+
+(setq riece-server "foo")
 @end example
 
-@code{riece-server-alist} \e$B$N3FMWAG$N0UL#$O0J2<$NDL$j$G$9!#\e(B
+\e$B$3$N@_Dj$N0UL#$O0J2<$NDL$j$G$9!#\e(B
 
 @itemize
 @item
-@samp{irc6} \e$B$H$$$&N,5-L>$G\e(B @samp{irc6.nara.wide.ad.jp} \e$B$K@\B3\e(B
+@samp{foo} \e$B$H$$$&L>A0$N\e(B IRC \e$B%5!<%P$N%[%9%HL>$O\e(B @samp{irc.example.com} \e$B$G!";HMQ$9$kJ8;z%3!<%I$O\e(B Shift_JIS
 
 @item
-@samp{plum} \e$B$H$$$&N,5-L>$G\e(B @code{relay-open-network-stream} \e$B$rDL$8$F\e(B (SSH \e$B7PM3$G\e(B) \e$B@\B3\e(B
+@samp{bar} \e$B$H$$$&L>A0$N\e(B IRC \e$B%5!<%P$N%[%9%HL>$O\e(B @samp{irc.example.com} \e$B$G!"$3$N%5!<%P$G$O%K%C%/%M!<%`\e(B @samp{baz} \e$B$r;H$&\e(B
 @end itemize
 
-\e$B;XDj2DG=$J%-!<%o!<%I$O0J2<$NDL$j$G$9!#\e(B
+\e$B;XDj$G$-$k%-!<%o!<%I$N0lMw$O0J2<$NDL$j$G$9!#\e(B
 
 @table @code
 @item :host
 \e$B%5!<%P$N%[%9%HL>$^$?$O\e(B IP \e$B%"%I%l%9\e(B
 @item :service
-\e$B%5!<%P$N%5!<%S%9L>$^$?$O%]!<%HHV9f\e(B (\e$B%G%U%)%k%H$O\e(B 6667)
+\e$B%5!<%P$N%5!<%S%9L>$^$?$O%]!<%HHV9f\e(B
 @item :nickname
 \e$B@\B3;~$N%K%C%/%M!<%`\e(B
 @item :username
@@ -473,10 +433,39 @@ IRC \e$B%5!<%P$O\e(B @code{riece-server} \e$BJ8;zNs$H$7$F;XDj$7$^$9!#\e(B
 @item :function
 \e$B@\B3MQ4X?t\e(B
 @item :coding
-\e$B%3!<%G%#%s%0%7%9%F%`\e(B (\e$B%G%U%)%k%H$O\e(B @code{riece-default-coding-system} \e$B$NCM\e(B)
+\e$BJ8;z%3!<%I\e(B
+@end table
+
+@node Connecting to multiple servers, Add-ons, Server settings, Advanced usage
+@section Connecting to multiple servers
+
+\e$BF1;~$KJ#?t$N%5!<%P$K@\B3$9$k<j=g$r0J2<$K<($7$^$9!#\e(B
+
+\e$B4{$KFCDj$N%5!<%P$K@\B3$7$F$$$k>uBV$G!"JL$N%5!<%P$K@\B3$9$k$K$O\e(B @kbd{C-c O} (@code{riece-command-open-server}) \e$B$r;H$$$^$9!#\e(B
+
+\e$BJL$N%5!<%P>e$N%A%c%s%M%k$K;22C$9$k$K$O!"\e(B@kbd{C-c j} (@code{riece-command-join})\e$B$G%A%c%s%M%kL>$K%5!<%PL>$rB3$1$^$9!#\e(B
+
+\e$B$?$H$($P!"%5!<%P\e(B @samp{irc.freenode.net} \e$B>e$N\e(B @samp{#Riece} \e$B$O<!$N$h$&$KI=5-$7$^$9!#\e(B
+
+@example
+#Riece@@irc.freenode.net
+@end example
+
+\e$BJ#?t$N@\B3$rA`:n$9$k%3%^%s%I$r0J2<$K$^$H$a$^$9!#\e(B
+
+@table @kbd
+@item C-c O
+@findex riece-command-open-server
+\e$BJL$N%5!<%P$K@\B3$7$^$9\e(B(@code{riece-command-open-server})
+@item C-c C
+@findex riece-command-close-server
+\e$B%5!<%P$H$N@\B3$r@ZCG$7$^$9\e(B(@code{riece-command-close-server})
+@item C-c M
+@findex riece-command-universal-server-name-argument
+\e$BFCDj$N%5!<%P$KBP$7$F!"B3$/%3%^%s%I$rH/9T$7$^$9\e(B(@code{riece-command-universal-server-name-argument})
 @end table
 
-@node Add-ons, Writing add-ons, Server settings, Advanced usage
+@node Add-ons,  , Connecting to multiple servers, Advanced usage
 @section Add-ons
 
 Riece \e$B$G$O!"%f!<%6$,?7$?$J5!G=$rDI2C$7!"<+M3$K<h$j30$7$G$-$k$h$&!"%"%I%*\e(B
@@ -511,6 +500,8 @@ doctor.el \e$B$HO"7H$7$F@:?@2J0e$K$J$j$9$^$9\e(B
 \e$B%A%c%s%M%kL>$d%K%C%/%M!<%`$NJLL>$rDj5A\e(B
 @item riece-skk-kakutei
 SKK \e$B;HMQ;~$KJQ49%b!<%I$N0u$rH/8@$+$i<h$j=|$/\e(B
+@item riece-foolproof
+\e$B%A%c%s%M%k%_%9$rKI$0\e(B
 @item riece-guess
 \e$B?'!9$JJ}K!$G0\F0@h$N%A%c%s%M%k$r?dB,\e(B
 @item riece-history
@@ -521,342 +512,241 @@ SKK \e$B;HMQ;~$KJQ49%b!<%I$N0u$rH/8@$+$i<h$j=|$/\e(B
 \e$B%-!<%o!<%I$N6/D4I=<(\e(B
 @item riece-menu
 \e$B%a%K%e!<%P!<$K%a%K%e!<$rEPO?\e(B
+@item riece-async
+Emacs \e$B$,\e(B busy or suspend \e$B>uBV$K$J$k$3$H$KHw$(!"\e(B
+PING \e$B$K1~Ez$9$k\e(B local proxy \e$B7PM3$G\e(B IRC \e$B%5!<%P$K@\B3\e(B
+@item riece-lsdb
+\e$B%"%I%l%9D"\e(B LSDB (Lovely Sister Database)
+@uref{http://lsdb.sourceforge.jp} \e$B$HO"7H\e(B
+@item riece-xface
+\e$B%f!<%6%j%9%H%P%C%U%!$K%f!<%6$N\e(B X-Face \e$B$rI=<(\e(B
+@item riece-ctlseq
+\e$B%3%s%H%m!<%k%7!<%1%s%9\e(B (^B \e$B$J$I\e(B) \e$B$K$h$k6/D4I=<(\e(B
+@item riece-ignore
+\e$B;XDj$7$?%f!<%6$NH/8@$rL5;k\e(B
+@item reice-hangman
+\e$B%A%c%s%M%kFb$G\e(B hangman(6) \e$B$GM7$V\e(B
+@item riece-biff
+\e$BB>$N%P%C%U%!$K$$$k;~$KH/8@$,$"$k$H%b!<%I%i%$%s$K0u\e(B ("[R]") \e$B$rI=<(\e(B
+@item riece-kakasi
+\e$BF|K\8l$NDL$i$J$$C<Kv$G!"F|K\8l$r%m!<%^;z$GI=<(\e(B
+@item riece-yank
+@kbd{C-c y} \e$B$G\e(B kill-ring \e$B$+$iJ8;zNs$rAw?.\e(B
+@item riece-toolbar
+\e$B%D!<%k%P!<$rI=<(\e(B
+@item riece-eval
+\e$BF~NO$5$l$?J8;zNs$r\e(B lisp \e$B%*%V%8%'%/%H$H$7$FI>2A\e(B
+@item riece-google
+\e$B%-!<%o!<%I$r\e(B Google \e$B$G8!:w\e(B
+@item riece-keepalive
+IRC \e$B%5!<%P$H$N@\B3$rJ];}\e(B
+@item riece-eval-ruby
+\e$BF~NO$5$l$?J8;zNs$r\e(B Ruby \e$B$N<0$H$7$FI>2A\e(B
 @end table
 
 \e$B$3$l$i$N$&$A!"\e(B@samp{riece-highlight} \e$B$H\e(B @samp{riece-ctcp}\e$B!"\e(B
 @samp{riece-url}\e$B!"\e(B @samp{riece-unread}\e$B!"\e(B @samp{riece-guess}\e$B!"\e(B
-@samp{riece-history}\e$B!"\e(B @samp{riece-button}\e$B!"\e(B@samp{riece-menu} \e$B$O%G%U%)%k\e(B
-\e$B%H$GAH$_9~$^$l$F$$$^$9!#\e(B
+@samp{riece-history}\e$B!"\e(B @samp{riece-button}\e$B!"\e(B@samp{riece-menu}\e$B!"\e(B
+@samp{riece-ignore}\e$B!"\e(B@samp{riece-log}\e$B!"\e(B@samp{riece-alias}\e$B!"\e(B
+@samp{riece-ctlseq}\e$B!"\e(B@samp{riece-keyword} \e$B$OI8=`$GAH$_9~$^$l$F$$$^$9!#\e(B
 
 \e$B%"%I%*%s$rAH$_9~$`$K$O\e(B @code{riece-addons} \e$B$r@_Dj$7$^$9!#$?$H$($P\e(B 
-@samp{riece-alias} \e$B$rAH$_9~$`>l9g$K$O!"\e(B@file{~/.riece/init.el\e$B$K0J2<$N$h\e(B
+@samp{riece-alias} \e$B$rAH$_9~$`>l9g$K$O!"\e(B@file{~/.riece/init} \e$B$K0J2<$N$h\e(B
 \e$B$&$K5-=R$7$^$9!#\e(B
 @vindex riece-addons
 
 @example
-(add-to-list 'riece-addons 'riece-alias)
+(add-to-list 'riece-addons 'riece-keyword)
 @end example
 
-@node Writing add-ons, Handler hooks, Add-ons, Advanced usage
-@section Writing add-ons
-
-\e$B%"%I%*%s$N>r7o$rK~$?$9%b%8%e!<%k$O0J2<$N4X?t$rDs6!$7$^$9!#\e(B
-
-@table @samp
-@item <\e$B%b%8%e!<%kL>\e(B>-requires
-\e$B0MB8$9$kB>$N%"%I%*%s\e(B(\e$B%7%s%\%k$N%j%9%H\e(B)\e$B$rJV$7$^$9\e(B(\e$B%*%W%7%g%s\e(B)
-@item <\e$B%b%8%e!<%kL>\e(B>-insinuate
-\e$B=i4|2==hM}$r9T$$$^$9\e(B
-@end table
-
-Riece \e$BB&$G$O0J2<$N=hM}$r9T$$$^$9!#\e(B
-
-@enumerate
-@item
-\e$BJQ?t\e(B @code{riece-addons} \e$B$KNs5s$5$l$?%b%8%e!<%k$rFI$_9~$`\e(B
-
-@item
-\e$B$=$l$>$l$N%b%8%e!<%k$KBP$7!"\e(B@samp{<\e$B%b%8%e!<%kL>\e(B>-requires} \e$B$,MQ0U$5$l$F$$$l$P8F$S=P$7$F0MB8%0%i%U$r:n$k\e(B
-
-@item
-\e$B0MB8%0%i%U$KBP$7$F%H%]%m%8%+%k%=!<%H\e(B (cf. tsort(1)) \e$B$r9T$&\e(B
-
-@item
-\e$BF@$?0MB8=g=x$K=>$C$F\e(B @samp{<\e$B%b%8%e!<%kL>\e(B>-insinuate} \e$B8F$S=P$9\e(B
-@end enumerate
-
-\e$B:n@.$7$?%"%I%*%s$O!"\e(B@code{load-path} \e$B$NDL$C$?%G%#%l%/%H%j!"$^$?$O\e(B 
-@code{riece-addon-directory} (\e$B%G%U%)%k%H$G$O\e(B @file{~/.riece/addons/}) \e$B$K\e(B
-\e$BCV$/$3$H$GAH$_9~$_2DG=$J>uBV$K$J$j$^$9!#\e(B
-@vindex riece-addon-directory
-
-@node Handler hooks,  , Writing add-ons, Advanced usage
-@section Handler hooks
+@node Tips, Index, Advanced usage, Top
+@comment  node-name,  next,  previous,  up
+@chapter Tips
 
-Riece \e$B$K$O!"%O%s%I%i%U%C%/$H8F$P$l$kFC<l$J%U%C%/$,$"$j$^$9!#$3$l$i$O\e(B IRC 
-\e$B$N%a%C%;!<%8$r<u$1<h$C$?A08e$G<B9T$5$l$k%U%C%/$G$9!#\e(B
-
-\e$B@bL@$N$?$a$K\e(B @samp{message} \e$B$r\e(B IRC \e$B$N%a%C%;!<%8L>\e(B(PRIVMSG \e$B$J$I\e(B)\e$B$rA4$F>.\e(B
-\e$BJ8;z$K$7$?$b$N$H$7$^$9!#\e(B
-
-@table @code
-@item riece-<message>-hook
-@samp{message} \e$B$,FO$$$?$H$-$K:G=i$K8F$P$l$k%U%C%/\e(B
-@item riece-after-<message>-hook
-@samp{message} \e$B$N=hM}$,=*$o$C$?8e$K8F$P$l$k%U%C%/\e(B
-@end table
+\e$B$3$N>O$G$O!"$h$/J9$+$l$k<ALd$KBP$9$kEz$($HJXMx$J@_DjNc$r>R2p$7$^$9!#\e(B
 
-\e$B$3$3$G\e(B @code{riece-<message>-hook} \e$B$NJV$jCM$K$O0UL#$,$"$j!"Hs\e(B nil \e$B$rJV$9\e(B
-\e$B$b$N$,$"$l$P!"$=$N8e$N=hM}$r$*$3$J$$$^$;$s!#$^$?!"$=$N>l9g$K$O\e(B 
-@code{riece-after-<message>-hook} \e$B$b8F$S=P$5$l$^$;$s!#\e(B
+@section \e$BD>A0$KA*Br$7$F$$$?%A%c%s%M%k$K0\F0$7$?$$\e(B
+@vindex riece-guess-channel-try-functions
 
-\e$B%U%C%/$N0z?t$O\e(B RFC2812 \e$B$N\e(B @samp{prefix} \e$B$H\e(B @samp{Parameters} \e$B$KAjEv$9$k\e(B 
-2 \e$B$D$N0z?t$,EO$j$^$9!#\e(B
+\e$B0J2<$N9T$r\e(B @file{~/.riece/init} \e$B$KDI2C$9$k$3$H$G!"\e(B@kbd{C-c g} \e$B$GMzNr$rC)\e(B
+\e$B$j$D$D0\F0$G$-$^$9!#\e(B@samp{riece-guess} \e$B%"%I%*%s$O!"%A%c%s%M%kA*Br$NMzNr\e(B
+\e$B$dL$FI%a%C%;!<%8$NM-L5$J$I$+$i<!$KA*Br$9$k%A%c%s%M%k$r?dB,$7$F$/$l$k%"%I\e(B
+\e$B%*%s$G!"I8=`$GAH$_9~$^$l$F$$$^$9!#\e(B
 
-@node Development, Index, Advanced usage, Top
-@chapter Development
+@example
+(add-hook 'riece-guess-channel-try-functions
+          'riece-guess-channel-from-history)
+@end example
 
-\e$B3+H/<TJg=8Cf!#\e(B
+@section \e$BH/8@$,$"$k$H%P%C%U%!$,%9%/%m!<%k$9$k$N$r;_$a$?$$\e(B
 
-@menu
-* CVS::                         
-* Debugging::                   
-* Modules::                     
-* Namespace management::        
-@end menu
+@kbd{C-c C-t f} \e$B$G$9!#\e(B@emph{t}oggle @emph{f}reeze \e$B$H3P$($k$HNI$$$G$7$g$&!#\e(B
 
-@node CVS, Debugging, Development, Development
-@section CVS
+@section \e$BAu>~$rM^@)$7$?$$\e(B
 
-Riece \e$B$N3+H/$O\e(B CVS \e$B$rMxMQ$7$F9T$C$F$$$^$9!#\e(BCVS \e$B%5!<%P$+$i:G?7$N%9%J%C%W\e(B
-\e$B%7%g%C%H$r<hF@$9$k$K$O0J2<$N$h$&$K$7$^$9!#\e(B
+@code{riece-addons} \e$B$+$iAu>~$N$?$a$N%"%I%*%s$r=|30$7$^$9!#\e(B
+\e$BDL>oM-8z$K$J$C$F$$$kAu>~$N$?$a$N%"%I%*%s$O<!$NDL$j$G$9!#\e(B
 
-@enumerate
+@itemize
 @item
-CVS \e$B%5!<%P$X$N%m%0%$%s\e(B
+\e$B?'IU$1\e(B (@samp{riece-highlight})
 
-@example
-cvs -d :pserver:anonymous@@cvs.m17n.org:/cvs/root login
-CVS password: [CR] # NULL string
-@end example
+@item
+\e$B%\%?%sI=<(\e(B (@samp{riece-button})
 
 @item
-\e$B%b%8%e!<%k$N%A%'%C%/%"%&%H\e(B
+\e$B%"%$%3%s2hA|$NI=<(\e(B (@samp{riece-icon})
+@end itemize
+
+\e$B$?$H$($P?'IU$1$r$d$a$?$$$N$G$"$l$P!"0J2<$N9T$r\e(B @file{~/.riece/init} \e$B$KDI\e(B
+\e$B2C$7$^$9!'\e(B
 
 @example
-cvs -d :pserver:anonymous@@cvs.m17n.org:/cvs/root checkout riece
+(setq riece-addons (delq 'riece-highlight riece-addons))
 @end example
 
-@item
-@file{configure} \e$B$N@8@.\e(B
+@section \e$BFCDj$NJ8;zNs$r<u?.$7$?$i2;$rLD$i$7$?$$\e(B
+@vindex riece-keyword-notify-functions
+
+\e$B0J2<$N@_Dj$r\e(B @file{~/.riece/init} \e$B$K2C$($^$9!#\e(B@samp{riece-keywords} \e$B%"%I\e(B
+\e$B%*%s$r;H$&$HFCDj$NJ8;zNs$r<u?.$7$?:]$NF0:n$r;XDj$G$-$^$9!#\e(B
 
 @example
-autoreconf -f -i -v
+(setq riece-keywords '("\e$B$[$2\e(B" "\e$B$U$,\e(B"))
+(add-hook 'riece-keyword-notify-functions
+          (lambda (keyword message) (ding)))
 @end example
-@end enumerate
 
-@node Debugging, Modules, CVS, Development
-@section Debugging
+@section SKK \e$B$r;H$C$F$$$F!"JQ49Cf$N0u\e(B (\e$B"&\e(B) \e$B$rAw?.$7$F$7$^$&$3$H$,$"$k\e(B
 
-@code{riece-debug} \e$B$r\e(B @code{t} \e$B$K@_Dj$9$k$H!"%G%P%C%0=PNO$,M-8z$K$J$j$^\e(B
-\e$B$9!#$^$?!"%5!<%P$+$i$N@8$N=PNO$,\e(B " *IRC*[<\e$B%5!<%PL>\e(B>]" \e$B%P%C%U%!$K>C$5$l$:\e(B
-\e$B$K;D$j$^$9!#\e(B
-@vindex riece-debug
+\e$B0J2<$N9T$r\e(B @file{~/.riece/init} \e$B$KDI2C$7$^$9!#\e(B
 
-@node Modules, Namespace management, Debugging, Development
-@section Modules
-
-\e$B4pK\E*$K0MB84X78$N>e0L$K$"$k$b$N$+$i!'\e(B
-
-@subsection Core modules
-@table @samp
-@item riece-globals
-\e$BBg0hJQ?t$NDj5A\e(B 
-@item riece-options
-\e$B%f!<%6%*%W%7%g%s$NDj5A\e(B 
-@item riece-version
-\e$B%P!<%8%g%s$NDj5A\e(B 
-@item riece-inlines
-\e$B;(B?$J%$%s%i%$%s4X?t$NDj5A\e(B 
-@item riece-coding
-\e$B%3!<%G%#%s%0%7%9%F%`4XO"$N4X?t$NDj5A\e(B 
-@item riece-complete
-\e$B%_%K%P%C%U%!$G$NJd40$r=u$1$k4X?t$NDj5A\e(B 
-
-@item riece-identity
-channel/user object \e$B$NBg0hI=5-$rA`:n$9$k4X?t$NDj5A\e(B 
-@item riece-channel
-channel object \e$B4XO"$NDj5A\e(B 
-@item riece-user
-user object \e$B4XO"$NDj5A\e(B 
-
-@item riece-misc
-\e$B;(B?$J4X?t$NDj5A\e(B(\e$B%$%s%i%$%s4X?t$r=|$/\e(B) 
-@item riece-display
-\e$BI=<(MQ%P%C%U%!$N4IM}\e(B 
-@item riece-server
-IRC\e$B%5!<%P$H$N@\B34IM}\e(B 
-
-@item riece-naming
-\e$BL>A04IM}$N$?$a$N\e(B mediator \e$B$N$h$&$J$b$N\e(B 
-@item riece-message
-message object \e$B4XO"$NDj5A\e(B 
-
-@item riece-filter
-\e$B%W%m%;%9%U%#%k%?$N%(%s%H%j%]%$%s%H\e(B 
-@item riece-handle
-\e$BDL>o$N%a%C%;!<%8$N%O%s%I%i!#\e(Briece-filter \e$B$N$_$+$i8F$P$l$k\e(B 
-@item riece-000
-000\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$N$_$+$i8F$P$l$k\e(B 
-@item riece-200
-200\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$N$_$+$i8F$P$l$k\e(B 
-@item riece-300
-300\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$N$_$+$i8F$P$l$k\e(B 
-@item riece-400
-400\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$N$_$+$i8F$P$l$k\e(B 
-@item riece-500
-500\e$BHVBf$N\e(B numeric reply \e$B$N%O%s%I%i!#\e(Briece-filter \e$B$N$_$+$i8F$P$l$k\e(B 
-
-@item riece-commands
-\e$B%3%^%s%I$NDj5A\e(B 
-@item riece
-\e$B%(%s%H%j%]%$%s%H!#3F%P%C%U%!$N%b!<%IDj5A$J$I\e(B 
-@end table
+@example
+(add-to-list 'riece-addons 'riece-skk-kakutei)
+@end example
 
-@subsection Add-ons
-@table @samp
-@item riece-highlight
-\e$B%P%C%U%!$N?'IU$1\e(B
-@item riece-ctcp
-CTCP (Client To Client Protocol)
-@item riece-url
-\e$B2qOC$K8=$l$?\e(B URL \e$B$N<}=8\e(B
-@item riece-unread
-\e$BH/8@$N$"$C$?%A%c%s%M%k$K\e(B@samp{!}\e$B%^!<%/$r$D$1$k\e(B
-@item riece-rdcc
-DCC (Direct Client to Client protocol) \e$B$K$h$k%U%!%$%kE>Aw\e(B (Ruby \e$B$K$h$k<BAu\e(B)
-@item riece-ndcc
-DCC (Direct Client to Client protocol) \e$B$K$h$k%U%!%$%kE>Aw\e(B (Emacs 21.3 \e$B$N\e(B 
-@code{make-network-connection} \e$B$K$h$k<BAu\e(B)
-@end table
+@section \e$B%A%c%s%M%k0lMw$NJB$S=g$r8GDj$7$?$$\e(B
+@vindex riece-default-channel-binding
 
-@node Namespace management,  , Modules, Development
-@section Namespace management
+\e$B0J2<$N9T$r\e(B @file{~/.riece/init} \e$B$KDI2C$7$^$9!#\e(B
 
-Riece \e$B$OJ#?t$N%5!<%P$KF1;~$K@\B3$9$k$?$a!"%5!<%PKh$KJL!9$NL>A06u4V$r4IM}\e(B
-\e$B$7$F$$$^$9!#$3$NL>A06u4V$K$O!"%5!<%P$N%W%m%;%9$K7k$SIU$1$i$l$?%P%C%U%!$N\e(B
-\e$B%m!<%+%kJQ?t$r2p$7$F%"%/%;%9$7$^$9!#\e(B
+@example
+(setq riece-default-channel-binding
+     '("#Riece" "#emacsen" nil "#debianjp"))
+@end example
 
-@subsection Obtaining server buffer
-\e$B%5!<%P$N%W%m%;%9$rF@$k$K$O!"$^$:$O$8$a$K%5!<%P$NL>A0$rF@$kI,MW$,$"$j\e(B
-\e$B$^$9!#%5!<%P$NL>A0$O0J2<$K5s$2$k$$$/$D$+$NJ}K!$G<hF@$G$-$^$9!#\e(B
+\e$B$3$N@_DjNc$G$O!"%A%c%s%M%k0lMw$NJB$S=g$O<!$N$h$&$K$J$j$^$9!#\e(B
 
 @enumerate
 @item
-@vindex riece-overrinding-server-name
-\e$BBg0hJQ?t\e(B @code{riece-overrinding-server-name} \e$B$NCM\e(B
-
+#Riece
 @item
-@vindex riece-server-name
-@code{riece-server-name} \e$B$,%+%l%s%H%P%C%U%!$N%m!<%+%kJQ?t$G$"$k$J$i$P!"\e(B
-\e$B4{$K%W%m%;%9$N%P%C%U%!$K$$$k$H$_$J$;$k$N$G!"\e(B@code{riece-server-name} \e$B$N\e(B
-\e$BCM$=$N$b$N\e(B
-
+#emacsen
+@item
+\e$B$J$7\e(B
 @item
-@samp{riece-identity} \e$B%*%V%8%'%/%H$K7k$SIU$1$i$l$?%5!<%PL>\e(B(\e$B8e=R\e(B)
+#debianjp
 @end enumerate
 
-\e$B$3$&$7$FF@$?%5!<%PL>$G\e(B @code{riece-server-process} \e$B$r8F=P$7!"%5!<%P$N\e(B
-\e$B%W%m%;%9$r<hF@$7$^$9!#\e(B
-@findex riece-server-process
+3 \e$BHVL\$N%A%c%s%M%k$,6u@J$H$J$C$F$$$k$3$H$K$4Cm0U$/$@$5$$!#?7$?$J%A%c%s%M\e(B
+\e$B%k$K;22C$7$?>l9g!"$=$N%A%c%s%M%k$,\e(B 3 \e$BHVL\$N0LCV$K3dEv$F$i$l$^$9!#\e(B
 
-@subsection Identity
-\e$BJ#?t$N%5!<%P$K7R$$$@>l9g!"%A%c%s%M%kL>$d%K%C%/$r\e(B(\e$B%5!<%P$N%P%C%U%!>e$@\e(B
-\e$B$1$G$O$J$/\e(B)\e$BBg0hE*$K6hJL$9$kI,MW$,@8$8$^$9!#$3$N$h$&$JL>A0$rI=8=$9$k$N\e(B
-\e$B$,\e(B @samp{riece-identity} \e$B%*%V%8%'%/%H$G$9!#\e(B
+@section \e$B5/F0;~$K<+F0E*$K%A%c%s%M%k$K;22C$7$?$$\e(B
+@vindex riece-startup-channel-list
 
-@samp{riece-identity} \e$B%*%V%8%'%/%H$O0J2<$N\e(B 2 \e$B$D$NMWAG$r$b$D%Y%/%?!<$G$9!#\e(B
+\e$BJQ?t\e(B @samp{riece-startup-channel-list} \e$B$r@_Dj$7$^$9!#\e(B
 
-@table @samp
-@item prefix
-\e$B%5!<%P%m!<%+%k$JL>A0\e(B
-@item server
-\e$B%5!<%P$NL>A0\e(B
-@end table
+@example
+(setq riece-startup-channel-list
+     '("#Riece" "#public"))
+@end example
 
-@samp{riece-identity} \e$B%*%V%8%'%/%H$KBP$9$kA`:n$K$O0J2<$N$h$&$J$b$N$,$"$j$^$9!#\e(B
+\e$B$3$N@_DjNc$O!"\e(B@samp{#Riece} \e$B$H\e(B @samp{#public} \e$B$K;22C$9$k$3$H$r0UL#$7$F$$\e(B
+\e$B$^$9!#%A%c%s%M%k$K;22C$9$k:]$K%Q%9%o!<%I$,I,MW$J>l9g$K$O<!$N$h$&$K@_Dj$7\e(B
+\e$B$^$9!#\e(B
 
-@defun riece-make-identity prefix &optional server
-@samp{riece-identity} \e$B%*%V%8%'%/%H$r:n@.$7$^$9!#\e(Bserver \e$B$,>JN,$5$l$?>l9g$K$O!"\e(B
-riece-find-server-name \e$B$r;H$C$F<hF@$7$?%5!<%PL>$r;H$$$^$9\e(B
-@end defun
+@example
+(setq riece-startup-channel-list
+     '("#Riece" "#public" ("#private" "password")))
+@end example
 
-@defun riece-identity-prefix identity
-@samp{riece-identity} \e$B%*%V%8%'%/%H$+$i%5!<%P%m!<%+%k$JL>A0$r<h$j=P$7$^$9!#\e(B
-@end defun
+\e$B5/F0;~$K!"J#?t$N\e(B IRC \e$B%5!<%P$N%A%c%s%M%k$K;22C$9$k>l9g$K$O!"\e(B
+\e$BJQ?t\e(B @samp{riece-startup-server-list} \e$B$bF1;~$K@_Dj$9$kI,MW$,$"$j$^$9!#\e(B
 
-@defun riece-identity-server identity
-@samp{riece-identity} \e$B%*%V%8%'%/%H$+$i%5!<%P$NL>A0$r<h$j=P$7$^$9!#\e(B
-@end defun
+@section \e$B5/F0;~$K<+F0E*$KJ#?t$N\e(B IRC \e$B%5!<%P$K@\B3$7$?$$\e(B
+@vindex riece-startup-server-list
 
-@defun riece-identity-equal ident1 ident2
-2 \e$B$D$N\e(B@samp{riece-identity} \e$B%*%V%8%'%/%H$,F1Ey$+D4$Y$^$9!#\e(B
-@end defun
+\e$BJQ?t\e(B @samp{riece-startup-server-list} \e$B$r@_Dj$7$^$9!#\e(B
 
-@defun riece-identity-equal-no-server ident1 ident2
-2 \e$B$D$N\e(B@samp{riece-identity} \e$B%*%V%8%'%/%H$N%5!<%P%m!<%+%k$JL>A0$,F1Ey$+\e(B
-\e$BD4$Y$^$9!#\e(B
-@end defun
+@example
+(setq riece-server "ircnet"
+      riece-server-alist '(("ircnet" :host "irc.tokyo.wide.ad.jp")
+                           ("freenode" :host "irc.ipv6.freenode.net")))
+@end example
 
-@defun riece-identity-member elt list
-@samp{riece-identity} \e$B%*%V%8%'%/%H\e(B @var{elt} \e$B$,\e(B @var{list} \e$B$K4^$^$l$k\e(B
-\e$B$+8!::$7$^$9!#\e(B
-@end defun
+\e$B$3$N@_DjNc$G$O!"5/F0;~$K\e(B "ircnet" \e$B$K@\B3$7$^$9!#\e(B
+@samp{riece-startup-server-list} \e$B$r0J2<$N$h$&$K@_Dj$9$k$H!"\e(B
+"freenode" \e$B$K$b@\B3$9$k$h$&$K$J$j$^$9!#\e(B
 
-@subsection Channel and user management
-@samp{riece-identity} \e$B%*%V%8%'%/%H$K$h$C$F<1JL$5$l$k\e(B IRC \e$B$N%A%c%s%M%k\e(B
-\e$B$H%f!<%6$O$=$l$>$l\e(B @samp{riece-channel} \e$B%*%V%8%'%/%H$H\e(B 
-@samp{riee-user} \e$B%*%V%8%'%/%H$K$h$jI=8=$5$l$^$9!#\e(B
+@example
+(setq riece-startup-server-list '("freenode"))
+@end example
 
-@subsubsection Channels
-@code{riece-channel} \e$B$O!"\e(BIRC \e$B$N%A%c%s%M%k$rI=$9%*%V%8%'%/%H$G$9!#0J2<$N\e(B
-\e$BMWAG$r;}$A$^$9!#\e(B
+\e$B5/F0;~$K!"J#?t$N\e(B IRC \e$B%5!<%P$N%A%c%s%M%k$K;22C$9$k>l9g$K$O!"\e(B
+\e$BJQ?t\e(B @samp{riece-startup-channel-list} \e$B$bF1;~$K@_Dj$9$kI,MW$,$"$j$^$9!#\e(B
 
-@table @samp
-@item users
-\e$B;22C$7$F$$$k%f!<%6$NL>A0\e(B(\e$B6I=jL>\e(B)\e$B$N%j%9%H\e(B 
-@item operators
-\e$B%*%Z%l!<%?8"8B$r$b$D%f!<%6$NL>A0$N%j%9%H\e(B 
-@item speakers
-\e$BH/8@8"$r$b$D%f!<%6$NL>A0$N%j%9%H\e(B 
-@item modes
-\e$B%A%c%s%M%k$N%b!<%I\e(B(\e$BJ8;z$N%j%9%H\e(B) 
-@item banned
-@samp{MODE +b} \e$B$G;XDj$5$l$?%Q%?!<%s$N0lMw\e(B 
-@item invited
-@samp{MODE +I} \e$B$G;XDj$5$l$?%Q%?!<%s$N0lMw\e(B 
-@item uninvited
-@samp{MODE +e} \e$B$G;XDj$5$l$?%Q%?!<%s$N0lMw\e(B
-@end table
+@section HTTP \e$B%W%m%-%7$r2p$7$F\e(B IRC \e$B%5!<%P$K@\B3$7$?$$\e(B
+@file{relay.el} \e$B$H\e(B @file{connect.c} \e$B$r;H$&$H!"\e(B
+HTTP \e$B%W%m%-%7$r2p$7$F\e(B IRC \e$B%5!<%P$K@\B3$9$k$3$H$,$G$-$^$9!#\e(B
 
-@subsubsection Users
-@code{riece-user} \e$B$O!"\e(BIRC \e$B$K;22C$7$F$$$k%f!<%6$rI=$9%*%V%8%'%/%H$G$9!#0J\e(B
-\e$B2<$NMWAG$r;}$A$^$9!#\e(B
+@table @asis
+@item relay.el
+@uref{http://www.taiyo.co.jp/~gotoh/lisp/relay.el}
 
-@table @samp
-@item channels
-\e$B;22C$7$F$$$k%A%c%s%M%k$NL>A0\e(B(\e$B6I=jL>\e(B)\e$B$N%j%9%H\e(B 
-@item user-at-host
-"<user>@@<host>" \e$B$N7A$GM?$($i$l$k%f!<%6$N>pJs\e(B 
-@item modes
-\e$B%f!<%6$N%b!<%I\e(B(\e$BJ8;z$N%j%9%H\e(B) 
-@item away
-AWAY \e$BCf$+$I$&$+\e(B 
+@item connect.c
+@uref{http://www.taiyo.co.jp/~gotoh/ssh/connect.html}
 @end table
 
-@subsubsection Mediator
-\e$B%A%c%s%M%k$H%f!<%6$N;22C!&N%C&$r4IM}$9$k$?$a$K!"\e(B @code{riece-naming} 
-\e$B$H$$$&>e0L$N%b%8%e!<%k$rMQ0U$7$F$$$^$9!#$3$l$O!"%G%6%$%s%Q%?!<%s$G$$$&\e(B
-\e$B$H$3$m$N\e(B Mediator \e$B%Q%?!<%s$KAjEv$9$k$b$N$G$9!#\e(B
+\e$B$?$H$($P!"\e(B@samp{proxy.example.com:8080} \e$B7PM3$G\e(B 
+@samp{irc.tokyo.wide.ad.jp} \e$B$K@\B3$9$k>l9g$K$O!"0J2<$N9T$r\e(B 
+@file{~/.riece/init} \e$B$KDI2C$7$^$9!#\e(B
 
-@code{riece-naming} \e$B$r2p$9$k$3$H$G!"A0=R$N%A%c%s%M%k!&%f!<%6%*%V%8%'%/%H\e(B
-\e$B$KD>@\<j$r?($l$k$3$H$J$/!"L>A06u4V$K0BA4$K%"%/%;%9$9$k$3$H$,$G$-$^$9!#\e(B
+@example
+(require 'relay)
+(setq relay-command-alist (cons '("^irc\.tokyo\.wide\.ad\.jp$"
+                                  "connect" "-H" "proxy.example.com:8080"
+                                  host service)
+                                relay-command-alist)
+      riece-server-alist (cons '("proxy-tokyo" :host "irc.tokyo.wide.ad.jp"
+                                 :function relay-open-network-stream)
+                               riece-server-alist))
+@end example
 
-\e$BDs6!$9$k<g$J4X?t$O0J2<$N\e(B 3 \e$B$D$G$9!#\e(B
+@section \e$B2qOC$N%m%0$r%U%!%$%k$KJ]B8$7$?$$\e(B
+@vindex riece-log-directory-map
 
-@defun riece-naming-assert-join user-name channel-name
-\e$B%f!<%6$,%A%c%s%M%k$K;22C$7$?$3$H$rI=L@$7$^$9\e(B
-@end defun
+@samp{riece-log} \e$B%"%I%*%s$r;H$&$H!"2qOC$N%m%0$r%U%!%$%k$KJ]B8$7!":F5/F0\e(B
+\e$B;~$K;2>H$G$-$^$9!#\e(B@samp{riece-log} \e$B%"%I%*%s$OI8=`$GAH$_9~$^$l$F$$$^$9!#\e(B
+
+\e$BDL>o$O\e(B @file{~/.riece/log} \e$B$N2<$K\e(B IRC \e$B%5!<%P$NL>A0!"%A%c%s%M%kL>$N%G%#%l\e(B
+\e$B%/%j$,:n@.$5$l!"$=$NCf$KF|$K$AKh$KJ,JL$5$l$FJ]B8$5$l$^$9!#\e(B
+
+\e$B%G%#%l%/%H%jL>$,J8;z2=$1$9$k>l9g$K$O!"\e(B
+@code{file-name-coding-system} \e$B$NCM$rE,@Z$K@_Dj$9$k$+!"$"$k$$$O\e(B 
+@code{riece-log-directory-map} \e$B$r;H$C$F%A%c%s%M%kL>$r\e(B US-ASCII \e$BJ8;zNs$K\e(B
+\e$BJQ49$9$kI,MW$,$"$j$^$9!#\e(B
+
+@example
+(setq riece-log-directory-map '(("#\e$B$j!<$9\e(B" . "riece")))
+@end example
 
-@defun 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 
-@end defun
+@section \e$B%&%#%s%I%&4V$r<+M3$K0\F0$7$?$$\e(B
 
-@defun 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 
-@end defun
+GNU Emacs \e$B$KImB0$N\e(B @samp{windmove.el} \e$B$r;H$&$HJXMx$G$9!#>\:Y$O\e(B 
+@samp{windmove.el} \e$B$N%3%a%s%H$r;2>H$/$@$5$$!#\e(B@samp{windmove.el} \e$B$O\e(B 
+\e$B:n<T$N%Z!<%8\e(B (@uref{http://hovav.net/elisp/}) \e$B$+$i$b<hF@$G$-$^$9!#\e(B
 
-@node Index, Function Index, Development, Top
+@node Index, Function Index, Tips, Top
 @chapter Index
 @printindex cp