* Riece: Version 1.0.4 released.
[riece] / doc / riece-ja.texi
1 \input texinfo                  @c -*- mode: texinfo; coding: iso-2022-jp -*-
2 @c %**start of header
3 @setfilename riece-ja.info
4 @settitle Riece -- An IRC client for Emacsen --
5 @c %**end of header
6 @set VERSION 1.0.4
7 @c @documentlanguage ja
8
9 @dircategory GNU Emacs Lisp
10 @direntry
11 * Riece-ja: (riece-ja).   An IRC client for Emacsen
12 @end direntry
13
14 @ifinfo
15 This file describes Riece.
16
17 Copyright (C) 2003,2004 Daiki Ueno.
18
19 Permission is granted to copy, distribute and/or modify this document
20 under the terms of the GNU Free Documentation License, Version 1.1 or
21 any later version published by the Free Software Foundation; with no
22 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
23 Texts.  A copy of the license is included in the section entitled "GNU
24 Free Documentation License".
25 @end ifinfo
26
27 @tex
28
29 @titlepage
30 @title Riece
31
32 @author by Daiki Ueno
33 @page
34
35 @vskip 0pt plus 1filll
36 Copyright @copyright{} 2003 Daiki Ueno.
37
38 Permission is granted to copy, distribute and/or modify this document
39 under the terms of the GNU Free Documentation License, Version 1.1 or
40 any later version published by the Free Software Foundation; with no
41 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
42 Texts.  A copy of the license is included in the section entitled "GNU
43 Free Documentation License".
44 @end titlepage
45 @page
46
47 @end tex
48
49 @node Top, Overview, (dir), (dir)
50 @top Riece user's manual
51
52 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
53
54 @menu
55 * Overview::                    Riece \e$B$H$O2?$+\e(B
56 * Getting started::             
57 * Basic usage::                 \e$B4pK\E*$J;H$$J}\e(B
58 * Advanced usage::              \e$B?J$s$@;H$$J}\e(B
59 * Tips::                        \e$BJXMx$J@_Dj\e(B
60 * Development::                 \e$B3+H/<T8~$1>pJs\e(B
61 * Index::                       
62 * Function Index::              
63 * Variable Index::              
64 @end menu
65
66 @node Overview, Getting started, Top, Top
67 @chapter Overview
68
69 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
70 \e$B=q$-D>$7$?$b$N$G$9!#%f!<%6%$%s%?!<%U%'!<%9$NBgItJ,$O\e(B Liece \e$B$N$b$N$rF'=1\e(B
71 \e$B$7$F$$$^$9!#\e(B
72
73 \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 
74 \e$B$K$O$J$$FCD9$,$$$/$D$+$"$j$^$9!#0J2<$K$=$l$i$N0lIt$r5s$2$^$9!#\e(B
75
76 @itemize @bullet
77 @item \e$BJ#?t$N\e(B IRC \e$B%5!<%P$KF1;~$K@\B32DG=\e(B
78 @item \e$B%"%I%*%s$K$h$j5!G=$NDI2C$d<h$j30$7$,2DG=\e(B
79 @item \e$BB>$N\e(B elisp \e$B%Q%C%1!<%8$K0MB8$7$J$$$?$a!"%$%s%9%H!<%k$,4JC1\e(B
80 @item \e$B@_Dj$,4JC1$G!"A02s5/F0;~$N@_Dj$r5-O?!&I|85$9$k;EAH$_$rDs6!\e(B
81 @item \e$BCJ3,E*$JA`:n@bL@=q\e(B(\e$B8=:_$OF|K\8l$N$_\e(B)\e$B$,ImB0\e(B
82 @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
83 @end itemize
84
85 \e$B$h$j>\$7$$>pJs$O!"0J2<$N%Z!<%8$r8fMw$/$@$5$$!#\e(B
86
87 @itemize @bullet
88 @item http://www.nongnu.org/riece/
89 @item http://wiliki.designflaw.org/index.cgi?Riece&l=jp
90 @item http://www.unixuser.org/~ueno/liece/
91 @end itemize
92
93 @node Getting started, Basic usage, Overview, Top
94 @chapter Getting started
95
96 @menu
97 * Required Environments::       \e$BF0:n4D6-\e(B
98 * Installation::                \e$B%$%s%9%H!<%kJ}K!\e(B
99 * Startup File::                \e$B@_Dj%U%!%$%k\e(B
100 @end menu
101
102 @node Required Environments, Installation, Getting started, Getting started
103 @section Required Environments
104
105 \e$B<!$K5s$2$k4D6-$GF0:n$r3NG'$7$F$$$^$9!#\e(B
106
107 @itemize @bullet
108 @item Emacs 20.7 \e$B0J>e\e(B
109 @item XEmacs 21.4 \e$B0J>e\e(B
110 @end itemize
111
112 @node Installation, Startup File, Required Environments, Getting started
113 @section Installation
114
115 Riece \e$B$N:G?7HG$O!"\e(B
116 @uref{http://wiliki.designflaw.org/riece.cgi} \e$B$GG[I[$7$F$$$^\e(B
117 \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
118 \e$B$-$^$9\e(B
119
120 @example
121 ./configure
122 make
123 make install
124 @end example
125
126 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
127
128 @example
129 ./configure --with-xemacs[=xemacs-21.4.15]
130 make package
131 make install-package
132 @end example
133
134 XEmacs \e$B$N%Q%C%1!<%8$H$7$F%$%s%9%H!<%k$7$?>l9g$K$OI,MW$"$j$^$;$s$,!"\e(B
135 @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
136 \e$BDj%U%!%$%k$K2C$($kI,MW$,$"$j$^$9!#\e(B
137
138 @lisp
139 (autoload 'riece "riece" "Start Riece" t)
140 @end lisp
141
142 @node Startup File,  , Installation, Getting started
143 @section Startup file
144
145 \e$B$3$N>O$G$O!"@_Dj%U%!%$%k$K$D$$$F2r@b$7$^$9!#\e(B
146
147 \e$B;n$7$K;H$C$F$_$k>l9g$K$O!"FC$K2?$b@_Dj$9$kI,MW$O$"$j$^$;$s!#\e(B
148 \e$B$3$N>O$OFI$_Ht$P$7$F$b9=$$$^$;$s!#\e(B
149
150 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
151 \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
152 \e$B$O0J2<$N\e(B 2 \e$B$D$N@_Dj%U%!%$%k$,G[CV$5$l$^$9!#\e(B
153
154 @table @code
155 @item riece-saved-variables-file
156 @vindex riece-saved-variables-file
157 \e$BA02s$N%;%C%7%g%s$G99?7$5$l$?@_Dj$,<+F0E*$KJ]B8$5$l$^$9\e(B(\e$B%G%U%)%k%H$O\e(B @file{~/.riece/save})
158 @item riece-variables-file
159 @vindex riece-variables-file
160 \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})
161 @end table
162
163 \e$B5/F0;~$K$O!":G=i$K\e(B @code{riece-saved-variables-file} \e$B$r!"<!$K\e(B 
164 @code{riece-variables-file} \e$B$rFI$_9~$_$^$9!#$D$^$j!"\e(B
165 @file{~/.riece/save} \e$B$K<+F0E*$KJ]B8$5$l$?FbMF$O!"\e(B@file{~/.riece/init} \e$B$K\e(B
166 \e$B5-=R$5$l$?FbMF$G>e=q$-$5$l$^$9!#\e(B
167
168 @node Basic usage, Advanced usage, Getting started, Top
169 @chapter Basic usage
170
171 @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
172 \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 
173 \e$B%Z!<%8$K0lMw$,$^$H$a$F$"$k$3$H$,B?$$$G$7$g$&!#\e(B
174
175 @itemize @bullet
176 @item http://irc.kyoto-u.ac.jp
177 @item http://freenode.net
178 @end itemize
179
180 \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
181 \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
182 \e$B%f!<%6$N%m%0%$%sL>$,$=$N$^$^;H$o$l$^$9!#\e(B
183 @vindex riece-nickname
184
185 \e$BL5;v$K@\B3$G$-$?$i!"<!$O%A%c%s%M%k$K;22C$7$F2qOC$r$7$F$_$^$7$g$&!#\e(B
186 @kbd{C-c j} \e$B$H%?%$%W$9$k$H;22C$9$k%A%c%s%M%kL>$r?R$M$i$l$k$N$G!"E,Ev$J%A%c\e(B
187 \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
188 \e$B$k$N$G!"%F%9%H$K$*;H$$$/$@$5$$!#\e(B
189
190 \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
191 \e$B$k$3$H$,$G$-$^$9!#B>$N?M$N2qOC$O2hLL1&>e$N%P%C%U%!$KI=<($5$l$^$9!#\e(B
192
193 @menu
194 * Windows::                     \e$B2hLL9=@.\e(B
195 * Indicators::                  \e$B<+J,$N>uBV$NI=<(\e(B
196 * Commands::                    \e$B%3%^%s%I$N0lMw\e(B
197 * Connecting to multiple servers::  \e$BJ#?t$N%5!<%P$K$D$J$0$K$O\e(B
198 @end menu
199
200 @node Windows, Indicators, Basic usage, Basic usage
201 @section Windows
202
203 \e$B%G%U%)%k%H$N@_Dj$G$O!"%A%c%s%M%k$KF~$k$H!"2<$N?^$K<($9$h$&$J\e(B 5 \e$B$D$N%&%#%s\e(B
204 \e$B%I%&$+$i$J$k2hLL$K@Z$jBX$o$j$^$9!#\e(B
205
206 @example
207 +-----+-----------------+
208 |     |                 |
209 |     |                 |
210 | (1) |       (2)       |
211 |     |                 |
212 |     |                 |
213 +-----+-----------------+
214 |     |       (4)       |
215 |     +-----------------+
216 | (3) |                 |
217 |     |       (5)       |
218 |     |                 |
219 +-----+-----------------+
220 @end example
221
222 \e$B$3$l$i$N3F%&%#%s%I%&$KI=<($5$l$k%P%C%U%!$NLr3d$O0J2<$NDL$j$G$9!#\e(B
223
224 @enumerate
225 @item
226 \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
227 \e$B$,I=<($5$l$^$9!#\e(B
228
229 @item
230 \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
231 \e$B$^$9!#\e(B
232
233 @item
234 \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
235 \e$BMw$,I=<($5$l$^$9!#\e(B
236
237 @item
238 \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
239 \e$B$^$9!#\e(B
240
241 @item
242 \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
243 @end enumerate
244
245 @node Indicators, Commands, Windows, Basic usage
246 @section Indicators
247
248 \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
249 \e$B<+J,$N8=:_$N>uBV$r<($90u$,I=<($5$l$^$9!#\e(B
250
251 @example
252 Riece: --- ueno #Liece [n]
253 @end example
254
255 \e$B$3$3$G!"\e(B@samp{---} \e$B$NItJ,$K$O:8$+$i=g$K0J2<$N0UL#$,$"$j$^$9!#\e(B
256
257 @enumerate
258 @item
259 \e$BN%@J>uBV\e(B (\e$BN%@J$7$F$$$l$P\e(B @samp{A})
260
261 @item
262 \e$B%*%Z%l!<%?>uBV\e(B (IRC \e$B%*%Z%l!<%?$G$"$l$P\e(B @samp{O})
263
264 @item
265 \e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$N%9%/%m!<%k6X;_>uBV\e(B
266 (\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
267 \e$B$P\e(B @samp{f})
268 @end enumerate
269
270 @node Commands, Connecting to multiple servers, Indicators, Basic usage
271 @section Commands
272
273 \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
274 \e$B$OMM!9$J%3%^%s%I$rH/9T$9$k$3$H$,$G$-$^$9!#0J2<$K0lIt$r5s$2$^$9!#\e(B
275
276 @subsection IRC commands
277 @table @kbd
278 @item RET
279 @findex riece-command-enter-message
280 \e$BJ8>O$rAw$j$^$9\e(B(@code{riece-command-enter-message})
281 @item C-RET
282 @findex riece-command-enter-message-as-notice
283 \e$BJ8>O$r\e(B NOTICE \e$B$H$7$FAw$j$^$9\e(B(@code{riece-command-enter-message-as-notice})
284 @item C-c j
285 @findex riece-command-join
286 \e$B%A%c%s%M%k$K;22C$7$^$9\e(B(@code{riece-command-join})
287 @item C-c C-p
288 @findex riece-command-part
289 \e$B%A%c%s%M%k$+$iN%C&$7$^$9\e(B(@code{riece-command-part})
290 @item C-c p
291 @findex riece-command-enter-message-to-user
292 \e$B08@h$r;XDj$7$F8=:_$N9T$rAw$j$^$9\e(B(@code{riece-command-enter-message-to-user})
293 @item C-c q
294 @findex riece-command-quit
295 IRC \e$B$r$d$a$^$9\e(B(@code{riece-command-quit})
296 @item C-c n
297 @findex riece-command-change-nickname
298 \e$B<+J,$N%K%C%/%M!<%`$rJQ99$7$^$9\e(B(@code{riece-command-change-nickname})
299 @item C-c f
300 @findex riece-command-finger
301 \e$B%f!<%6$N>pJs$rD4$Y$^$9\e(B(@code{riece-command-finger})
302 @item C-c C-k
303 @findex riece-command-kick
304 \e$B%f!<%6$r%A%c%s%M%k$+$i=3$j=P$7$^$9\e(B(@code{riece-command-kick})
305 @item C-c i
306 @findex riece-command-invite
307 \e$B%f!<%6$r%A%c%s%M%k$K>7BT$7$^$9\e(B(@code{riece-command-invite})
308 @item C-c l
309 @findex riece-command-list
310 \e$B%Q%?!<%s$KBP$7$F\e(B LIST \e$B$rH/9T$7$^$9\e(B(@code{riece-command-list})
311 @item C-c C-n
312 @findex riece-command-names
313 \e$B%Q%?!<%s$KBP$7$F\e(B NAMES \e$B$rH/9T$7$^$9\e(B(@code{riece-command-names})
314 @item C-c w
315 @findex riece-command-who
316 \e$B%Q%?!<%s$KBP$7$F\e(B WHO \e$B$rH/9T$7$^$9\e(B(@code{riece-command-who})
317 @item C-c t
318 @findex riece-command-topic
319 \e$B%A%c%s%M%k$N%H%T%C%/$r@_Dj$7$^$9\e(B(@code{riece-command-topic})
320 @item C-c C-m
321 @findex riece-command-change-mode
322 \e$B%A%c%s%M%k$N%b!<%I$r@_Dj$7$^$9\e(B(@code{riece-command-change-mode})
323 @item C-c o
324 @findex riece-command-set-operators
325 \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})
326 @item C-c v
327 @findex riece-command-set-speakers
328 \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})
329 @item C-c V
330 @findex riece-version
331 Riece \e$B$N%P!<%8%g%s$rI=<($7$^$9!#A0CV0z?t\e(B (@kbd{C-u}) \e$B$rM?$($k$H!"$h$j>\:Y$J>pJs$rI=<($7$^$9!#\e(B
332 @item C-c /
333 @findex riece-command-raw
334 \e$B@8$N\e(B IRC \e$B%3%^%s%I$rAw$j$^$9\e(B(@code{riece-command-raw})
335 @end table
336
337 @subsection Window manipulating commands
338 @table @kbd
339 @item C-c r
340 @findex riece-command-configure-windows
341 \e$B%&%#%s%I%&$r:FIA2h$7$^$9\e(B(@code{riece-command-configure-windows})
342 @item C-c C-j
343 @findex riece-command-next-channel
344 \e$B<!$N%A%c%s%M%k$K0\$j$^$9\e(B(@code{riece-command-next-channel})
345 @item C-c <
346 @findex riece-command-previous-channel
347 \e$BA0$N%A%c%s%M%k$K0\$j$^$9\e(B(@code{riece-command-previous-channel})
348 @item C-c >
349 @findex riece-command-next-channel
350 \e$B<!$N%A%c%s%M%k$K0\$j$^$9\e(B(@code{riece-command-next-channel})
351 @item C-c ^
352 @findex riece-command-list-addons
353 \e$B%"%I%*%s$N0lMw$rI=<($7$^$9\e(B(@code{riece-command-list-addons})
354 @item C-c \e$B?t;z\e(B
355 @findex riece-command-switch-to-channel-by-number
356 @var{n}\e$BHVL\$N%A%c%s%M%k$K0\F0$7$^$9\e(B(@code{riece-command-switch-to-channel-by-number})
357 @item C-c C-c \e$B?t;z\e(B
358 @findex riece-command-switch-to-channel-by-number
359 @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})
360 @item C-c Home
361 @findex riece-command-beginning-of-buffer
362 \e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$N%S%e!<$r>eC<$^$G0\F0$7$^$9\e(B(@code{riece-command-beginning-of-buffer})
363 @item C-c $
364 @findex riece-command-end-of-buffer
365 \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})
366 @item C-c SPC
367 @findex riece-command-scroll-up
368 \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})
369 @item C-c DEL
370 @findex riece-command-scroll-down
371 \e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$r2<J}8~$K%9%/%m!<%k$7$^$9\e(B(@code{riece-command-scroll-down})
372 @end table
373
374 @subsection Status toggle commands
375 @table @kbd
376 @item C-c C-t c
377 @findex riece-command-toggle-channel-buffer-mode
378 \e$B%A%c%s%M%k%P%C%U%!$NI=<(!&HsI=<($r@Z$jBX$($^$9\e(B(@code{riece-command-toggle-channel-buffer-mode})
379 @item C-c C-t C
380 @findex riece-command-toggle-channel-list-buffer-mode
381 \e$B%A%c%s%M%k%j%9%H%P%C%U%!$NI=<(!&HsI=<($r@Z$jBX$($^$9\e(B(@code{riece-command-toggle-channel-list-buffer-mode})
382 @item C-c C-t u
383 @findex riece-command-toggle-user-list-buffer-mode
384 \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})
385 @item C-c C-t f
386 @findex riece-command-toggle-freeze
387 \e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$rE`7k\e(B(\e$B%9%/%m!<%k$r6X;_\e(B)\e$B$7$^\e(B
388 \e$B$9\e(B(@code{riece-command-toggle-freeze})
389 @item C-c C-t o
390 @findex riece-command-toggle-own-freeze
391 \e$B%A%c%s%M%k%P%C%U%!!"$^$?$O%@%$%"%m%0%P%C%U%!$r!"<+J,$,H/8@$9$k$^$GE`7k$7\e(B
392 \e$B$^$9\e(B(@code{riece-command-toggle-own-freeze})
393 @item C-c C-t a
394 @findex riece-command-toggle-away
395 \e$B<+J,$NN%@J>uBV$r@Z$jBX$($^$9\e(B(@code{riece-command-toggle-away})
396 @end table
397
398 @node Connecting to multiple servers,  , Commands, Basic usage
399 @section Connecting to multiple servers
400
401 Riece \e$B$NBg$-$JFCD9$K!"J#?t$N%5!<%P$KF1;~$K@\B3$9$k5!G=$,$"$j$^$9!#\e(B
402
403 \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
404 \e$B$K$J$j$^$9!#\e(B
405
406 @enumerate
407 @item
408 @kbd{C-c O} (@code{riece-command-open-server}) \e$B$H$7$^$9!#%5!<%PL>$rJ9$+$l$k$N$GEz$($^$9!#\e(B
409
410 @item
411 @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
412 \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
413 @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
414 @end enumerate
415
416 \e$B%A%c%s%M%k$KF~$i$:$K%3%^%s%I$rAw$k$K$O!"\e(B@kbd{C-c M}
417 (@code{riece-command-universal-server-name-argument}) \e$B$,JXMx$G$9!#\e(B
418
419 \e$B%5!<%P$H$N@\B3$K4X$9$k%3%^%s%I$O0J2<$NDL$j$G$9!#\e(B
420
421 @table @kbd
422 @item C-c O
423 @findex riece-command-open-server
424 \e$BJL$N%5!<%P$K@\B3$7$^$9\e(B(@code{riece-command-open-server})
425 @item C-c C
426 @findex riece-command-close-server
427 \e$B%5!<%P$H$N@\B3$r@ZCG$7$^$9\e(B(@code{riece-command-close-server})
428 @item C-c M
429 @findex riece-command-universal-server-name-argument
430 \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})
431 @end table
432
433 @node Advanced usage, Tips, Basic usage, Top
434 @chapter Advanced usage
435
436 \e$B$3$N>O$G$O!"$b$C$H?J$s$@;H$$J}$r2r@b$7$^$9!#\e(B
437
438 @menu
439 * Server settings::             \e$B%5!<%P$N>\:Y@_Dj\e(B
440 * Add-ons::                     \e$B%"%I%*%s$H$O\e(B
441 @end menu
442
443 @node Server settings, Add-ons, Advanced usage, Advanced usage
444 @section Server settings
445
446 \e$B5/F0;~$K%G%U%)%k%H$G@\B3$9$k\e(B IRC \e$B%5!<%P$O\e(B @code{riece-server} \e$B$G;XDj$7$^$9!#\e(B
447 @vindex riece-server
448
449 \e$B$3$3$G\e(B @code{riece-server} \e$B$OJ8;zNs$G$"$j!"$=$N%U%)!<%^%C%H$O<!$N$h$&$K\e(B
450 \e$B$J$j$^$9!#\e(B
451 @example
452  "<\e$B%5!<%P$N%[%9%HL>\e(B>:<\e$B%]!<%HHV9f\e(B>[:<\e$B%Q%9%o!<%I\e(B>]"
453 @end example
454
455 @code{riece-server-alist} \e$B$rE,@Z$K@_Dj$9$k$H!"%-!<%o!<%I$r;H$C$F!"$h$j>\\e(B
456 \e$B:Y$J;XDj$,2DG=$K$J$j$^$9!#0J2<$OI.<T$N@_Dj$+$iH4$-=P$7$?Nc$G$9!#\e(B
457 @vindex riece-server-alist
458
459 @example
460 (setq riece-server-alist
461       '(("irc6" :host "irc6.nara.wide.ad.jp")
462         ("plum" :host "localhost" :service 26667
463          :function relay-open-network-stream))
464       riece-server "irc6")
465 @end example
466
467 @code{riece-server-alist} \e$B$N3FMWAG$N0UL#$O0J2<$NDL$j$G$9!#\e(B
468
469 @itemize
470 @item
471 @samp{irc6} \e$B$H$$$&N,5-L>$G\e(B @samp{irc6.nara.wide.ad.jp} \e$B$K@\B3\e(B
472
473 @item
474 @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
475 @end itemize
476
477 \e$B;XDj2DG=$J%-!<%o!<%I$O0J2<$NDL$j$G$9!#\e(B
478
479 @table @code
480 @item :host
481 \e$B%5!<%P$N%[%9%HL>$^$?$O\e(B IP \e$B%"%I%l%9\e(B
482 @item :service
483 \e$B%5!<%P$N%5!<%S%9L>$^$?$O%]!<%HHV9f\e(B (\e$B%G%U%)%k%H$O\e(B 6667)
484 @item :nickname
485 \e$B@\B3;~$N%K%C%/%M!<%`\e(B
486 @item :username
487 \e$B@\B3;~$N%f!<%6%M!<%`\e(B
488 @item :password
489 \e$B@\B3;~$N%Q%9%o!<%I\e(B
490 @item :function
491 \e$B@\B3MQ4X?t\e(B
492 @item :coding
493 \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)
494 @end table
495
496 @node Add-ons,  , Server settings, Advanced usage
497 @section Add-ons
498
499 Riece \e$B$G$O!"%f!<%6$,?7$?$J5!G=$rDI2C$7!"<+M3$K<h$j30$7$G$-$k$h$&!"%"%I%*\e(B
500 \e$B%s$H8F$P$l$k5!9=$rMQ0U$7$F$$$^$9!#%"%I%*%s$ODL>o$N\e(B elisp \e$B%b%8%e!<%k$r3H\e(B
501 \e$BD%$7$?$b$N$G!"%m!<%I$N=gHV$@$1$G$O$J$/!"=i4|2==hM}$N0MB84X78$b5-=R$9$k$3\e(B
502 \e$B$H$,$G$-$^$9!#\e(B
503
504 \e$B8=:_!"0J2<$N%b%8%e!<%k$,%"%I%*%s$H$7$F<BAu$5$l$F$$$^$9!'\e(B
505
506 @table @samp
507 @item riece-highlight
508 \e$B%P%C%U%!$N?'IU$1\e(B
509 @item riece-ctcp
510 CTCP (Client To Client Protocol)
511 @item riece-url
512 \e$B2qOC$K8=$l$?\e(B URL \e$B$N<}=8\e(B
513 @item riece-unread
514 \e$BH/8@$N$"$C$?%A%c%s%M%k$K\e(B@samp{!}\e$B%^!<%/$r$D$1$k\e(B
515 @item riece-rdcc
516 DCC (Direct Client to Client protocol) \e$B$K$h$k%U%!%$%kE>Aw\e(B
517 (Ruby \e$B$K$h$k<BAu\e(B)
518 @item riece-ndcc
519 DCC (Direct Client to Client protocol) \e$B$K$h$k%U%!%$%kE>Aw\e(B
520 (Emacs 21.3 \e$B$N\e(B make-network-process \e$B$K$h$k<BAu\e(B)
521 @item riece-mini
522 \e$B%_%K%P%C%U%!$N$_$G\e(B IRC \e$B$r$9$k\e(B
523 @item riece-log
524 \e$B2qOC$N%m%0$N<}=8\e(B
525 @item riece-doctor
526 doctor.el \e$B$HO"7H$7$F@:?@2J0e$K$J$j$9$^$9\e(B
527 @item riece-alias
528 \e$B%A%c%s%M%kL>$d%K%C%/%M!<%`$NJLL>$rDj5A\e(B
529 @item riece-skk-kakutei
530 SKK \e$B;HMQ;~$KJQ49%b!<%I$N0u$rH/8@$+$i<h$j=|$/\e(B
531 @item riece-foolproof
532 \e$B%A%c%s%M%k%_%9$rKI$0\e(B
533 @item riece-guess
534 \e$B?'!9$JJ}K!$G0\F0@h$N%A%c%s%M%k$r?dB,\e(B
535 @item riece-history
536 \e$B%A%c%s%M%k0\F0$NMzNr4IM}\e(B
537 @item riece-button
538 \e$B%\%?%s$d%]%C%W%"%C%W%a%K%e!<$NI=<(\e(B
539 @item riece-keyword
540 \e$B%-!<%o!<%I$N6/D4I=<(\e(B
541 @item riece-menu
542 \e$B%a%K%e!<%P!<$K%a%K%e!<$rEPO?\e(B
543 @item riece-async
544 Emacs \e$B$,\e(B busy or suspend \e$B>uBV$K$J$k$3$H$KHw$(!"\e(B
545 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
546 @item riece-lsdb
547 \e$B%"%I%l%9D"\e(B LSDB (Lovely Sister Database)
548 @uref{http://lsdb.sourceforge.jp} \e$B$HO"7H\e(B
549 @item riece-xface
550 \e$B%f!<%6%j%9%H%P%C%U%!$K%f!<%6$N\e(B X-Face \e$B$rI=<(\e(B
551 @item riece-ctlseq
552 \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
553 @item riece-ignore
554 \e$B;XDj$7$?%f!<%6$NH/8@$rL5;k\e(B
555 @item reice-hangman
556 \e$B%A%c%s%M%kFb$G\e(B hangman(6) \e$B$GM7$V\e(B
557 @item riece-biff
558 \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
559 @item riece-kakasi
560 \e$BF|K\8l$NDL$i$J$$C<Kv$G!"F|K\8l$r%m!<%^;z$GI=<(\e(B
561 @end table
562
563 \e$B$3$l$i$N$&$A!"\e(B@samp{riece-highlight} \e$B$H\e(B @samp{riece-ctcp}\e$B!"\e(B
564 @samp{riece-url}\e$B!"\e(B @samp{riece-unread}\e$B!"\e(B @samp{riece-guess}\e$B!"\e(B
565 @samp{riece-history}\e$B!"\e(B @samp{riece-button}\e$B!"\e(B@samp{riece-menu}\e$B!"\e(B
566 @samp{riece-ignore} \e$B$O%G%U%)%k%H$GAH$_9~$^$l$F$$$^$9!#\e(B
567
568 \e$B%"%I%*%s$rAH$_9~$`$K$O\e(B @code{riece-addons} \e$B$r@_Dj$7$^$9!#$?$H$($P\e(B 
569 @samp{riece-alias} \e$B$rAH$_9~$`>l9g$K$O!"\e(B@file{~/.riece/init.el} \e$B$K0J2<$N$h\e(B
570 \e$B$&$K5-=R$7$^$9!#\e(B
571 @vindex riece-addons
572
573 @example
574 (add-to-list 'riece-addons 'riece-alias)
575 @end example
576
577 @node Tips, Development, Advanced usage, Top
578 @comment  node-name,  next,  previous,  up
579 @chapter Tips
580
581 \e$B$3$N>O$G$O!"$h$/J9$+$l$k<ALd$KBP$9$kEz$($d!"JXMx$J@_Dj$r>R2p$7$^$9!#\e(B
582
583 @section \e$B%A%c%s%M%kL>!V\e(B#\e$B$[$2\e(B:*.jp\e$B!W$r!V\e(B%\e$B$[$2!W$HN,5-$7$?$$\e(B
584
585 \e$B0J2<$N9T$r\e(B @file{~/.riece/init.el} \e$B$KDI2C$7$^$9!'\e(B
586
587 @example
588 (add-to-list 'riece-addons 'riece-alias)
589 @end example
590
591 @section \e$BD>A0$K$$$?%A%c%s%M%k$KLa$j$?$$\e(B
592 @vindex riece-guess-channel-try-functions
593
594 \e$B0J2<$N9T$r\e(B @file{~/.riece/init.el} \e$B$KDI2C$9$k$3$H$G!"\e(B
595 @kbd{C-c g} \e$B$GMzNr$rC)$j$D$D0\F0$G$-$^$9!#\e(B
596
597 @example
598 (add-hook 'riece-guess-channel-try-functions
599           'riece-guess-channel-from-history)
600 @end example
601
602 @section \e$BH/8@$,$"$k$H%P%C%U%!$,%9%/%m!<%k$9$k$N$r;_$a$?$$\e(B
603
604 @kbd{C-c C-t f} \e$B$G$9!#\e(B(irchat \e$B$G$O\e(B @kbd{C-c C-f}) "t"oggle "f"reeze \e$B$H3P\e(B
605 \e$B$($^$7$g$&!#\e(B
606
607 @section \e$BGI<j$JAu>~$rM^@)$7$?$$\e(B
608
609 @code{riece-addons} \e$B$+$i!"?'IU$1\e(B (@samp{riece-highlight})\e$B!"%\%?%s\e(B 
610 (@samp{riece-button})\e$B!"%"%$%3%s\e(B (@samp{riece-icon}) \e$B$r=|$-$^$9!#\e(B
611
612 \e$B$?$H$($P?'IU$1$r$d$a$?$$$N$G$"$l$P!"0J2<$N9T$r\e(B @file{~/.riece/init.el} 
613 \e$B$KDI2C$7$^$9!'\e(B
614
615 @example
616 (setq riece-addons (delq 'riece-highlight riece-addons))
617 @end example
618
619 @section \e$B%-!<%o!<%I$KH?1~$7$F2;$rLD$i$7$?$$\e(B
620 @vindex riece-keyword-notify-functions
621
622 XEmacs \e$B$G$O!"0J2<$N@_Dj$r\e(B @file{~/.riece/init.el} \e$B$K2C$($k$3$H$G!"\e(B"\e$B$[$2\e(B" 
623 \e$B$d\e(B "\e$B$U$,\e(B" \e$B$KH?1~$7$F8z2L2;\e(B(\e$B$3$NNc$G$O!"%+%C%3!<$NLD$-@<\e(B)\e$B$rLD$i$9$3$H$,$G\e(B
624 \e$B$-$^$9!#\e(B
625
626 @example
627 (load-default-sounds)
628 (setq riece-keywords '("\e$B$[$2\e(B" "\e$B$U$,\e(B"))
629 (add-hook 'riece-keyword-notify-functions
630           (lambda (keyword message) (play-sound 'cuckoo)))
631 @end example
632
633 Emacs \e$B$N>l9g$O\e(B,\e$B0J2<$N@_Dj$r\e(B @file{~/.riece/init.el} \e$B$K2C$($k$3$H$G\e(B,
634 "\e$B$[$2\e(B" \e$B$d\e(B "\e$B$U$,\e(B" \e$B$KH?1~$7$F2;$rLD$i$9$3$H$,$G$-$^$9!#\e(B
635
636 @example
637 (defun cuckoo ()
638   "play cuckoo.au"
639   (call-process "play" nil 0 t
640                 ".../cuckoo.au"))
641   (setq riece-keywords '("\e$B$[$2\e(B" "\e$B$U$,\e(B"))
642   (add-hook 'riece-keyword-notify-functions
643             (lambda (keyword message) (cuckoo)))
644 @end example
645
646 \e$B8z2L2;$G$O$J$/%7%s%W%k$K%S!<%W2;$rLD$i$7$?$$>l9g$O!"0J2<$N@_Dj$r\e(B 
647 @file{~/.riece/init.el} \e$B$K2C$($^$9!#\e(B
648
649 @example
650 (setq riece-keywords '("\e$B$[$2\e(B" "\e$B$U$,\e(B"))
651 (add-hook 'riece-keyword-notify-functions
652           (lambda (keyword message) (ding)))
653 @end example
654
655 @section SKK \e$B$r;H$C$F$$$F!"JQ49%b!<%I$N0u\e(B (\e$B"&\e(B) \e$B$rAw?.$7$?$/$J$$\e(B
656
657 \e$B0J2<$N9T$r\e(B @file{~/.riece/init.el} \e$B$KDI2C$7$^$9!'\e(B
658
659 @example
660 (add-to-list 'riece-addons 'riece-skk-kakutei)
661 @end example
662
663 @section \e$B%A%c%s%M%k$NHV9f$r8GDj$7$?$$\e(B
664 @vindex riece-default-channel-binding
665
666 \e$B0J2<$N9T$r\e(B @file{~/.riece/init.el} \e$B$KDI2C$7$^$9!'\e(B
667
668 @example
669 (setq riece-default-channel-binding
670      '("#Liece" "#emacsen" nil "#debianjp"))
671 @end example
672
673 1: #Liece, 2: #emacsen, 4: #debianjp \e$B$N$h$&$K3dEv$F$i$l$^$9!#\e(Bnil \e$B$O%G%U%)\e(B
674 \e$B%k%H$G$O<+F03dEv$F$NBP>]$K$J$i$J$$$3$H0UL#$7!"?7$?$J%A%c%s%M%k$K;22C$7$?\e(B
675 \e$B>l9g!"$=$N%A%c%s%M%k$,\e(B 3 \e$BHVL\$N%A%c%s%M%k$H$7$F07$o$l$^$9!#\e(B
676
677 @section \e$B5/F0;~$K%Q%9%o!<%I$D$-$N%A%c%s%M%k$K;22C$7$?$$\e(B
678 @vindex riece-startup-channel-list
679 @vindex riece-startup-server-list
680
681 \e$B0J2<$N9T$r\e(B @file{~/.riece/init.el} \e$B$KDI2C$7$^$9!'\e(B
682
683 @example
684 (setq riece-startup-channel-list
685      '(("#secret" "password") "#Liece"))
686 @end example
687
688 \e$BJ#?t$N%5!<%P>e$N%A%c%s%M%k$K;22C$9$k$K$O!"\e(B
689 @code{riece-startup-server-list} \e$B$bJ;$;$F@_Dj$9$kI,MW$,$"$j$^$9!#\e(B
690
691 \e$BNc$H$7$F!"\e(B@code{riece-server} \e$B$H\e(B @code{riece-server-alist} \e$B$r0J2<$N$h$&\e(B
692 \e$B$K@_Dj$7$?$H$7$^$9!#\e(B
693
694 @example
695 (setq riece-server "ircnet"
696       riece-server-alist '(("ircnet" :host "irc6.nara.wide.ad.jp")
697                            ("freenode" :host "irc.ipv6.freenode.net")))
698 @end example
699
700 \e$B$3$N>l9g!"%G%U%)%k%H$G$O\e(B "ircnet" \e$B$@$1$K@\B3$7$^$9$,!"\e(B
701 @code{riece-startup-server-list} \e$B$r0J2<$N$h$&$K@_Dj$9$k$3$H$G!"\e(B
702 "freenode" \e$B$K$b@\B3$9$k$h$&$K$J$j$^$9!#\e(B
703
704 @example
705 (setq riece-startup-server-list '("freenode"))
706 @end example
707
708 @section HTTP \e$B%W%m%-%71[$7$K\e(B IRC \e$B%5!<%P$K@\B3$7$?$$\e(B
709 relay.el \e$B$H\e(B connect.c \e$B$r;H$&$H!"\e(B
710 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
711
712 @table @asis
713 @item relay.el
714 @uref{http://www.taiyo.co.jp/~gotoh/lisp/relay.el}
715
716 @item connect.c
717 @uref{http://www.taiyo.co.jp/~gotoh/ssh/connect.html}
718 @end table
719
720 \e$B$?$H$($P!"\e(B"proxy.example.com:8080" \e$B7PM3$G\e(B irc.tokyo.wide.ad.jp \e$B$K@\B3$9\e(B
721 \e$B$k>l9g$K$O!"0J2<$N9T$r\e(B @file{~/.riece/init.el} \e$B$KDI2C$7$^$9!'\e(B
722
723 @example
724 (require 'relay)
725 (setq relay-command-alist (cons '("^irc\.tokyo\.wide\.ad\.jp$"
726                                   "connect" "-H" "proxy.example.com:8080"
727                                   host service)
728                                 relay-command-alist)
729       riece-server-alist (cons '("proxy-tokyo" :host "irc.tokyo.wide.ad.jp"
730                                  :function relay-open-network-stream)
731                                riece-server-alist))
732 @end example
733
734 @section IRC \e$B%m%0$r%U%!%$%k$KJ]B8$7$?$$\e(B
735 @vindex riece-log-directory-map
736
737 \e$B0J2<$N9T$r\e(B @file{~/.riece/init.el} \e$B$KDI2C$7$^$9!'\e(B
738
739 @example
740 (add-to-list 'riece-addons 'riece-log)
741 @end example
742
743 \e$B%m%0%U%!%$%k$O%G%U%)%k%H$G$O\e(B @file{~/.riece/log} \e$B$N2<$K%5!<%PL>!"%A%c%s\e(B
744 \e$B%M%kL>$N%G%#%l%/%j$,:n@.$5$l!"$=$NCf$KF|$K$AKh$KJ]B8$5$l$^$9!#$?$@$7%G%U%)\e(B
745 \e$B%k%H$N%5!<%P$N>l9g$O!"%5!<%PL>$N%G%#%l%/%H%j$O>JN,$5$l$^$9!#\e(B
746
747 US-ASCII \e$B0J30$N%G%#%l%/%H%jL>$,J8;z2=$1$9$k$H$$$&?M$O!"\e(B
748 @code{file-name-coding-system} \e$B$NCM$rE,@Z$K@_Dj$9$k$+!"$"$k$$$O\e(B 
749 @code{riece-log-directory-map} \e$B$G%A%c%s%M%kL>$HJ]B8@h$N%G%#%l%/%H%jL>$H\e(B
750 \e$B$NBP1~%j%9%H$r0J2<$NNc$N$h$&$K!"\e(BUS-ASCII \e$B$N$_$r;HMQ$7$?%G%#%l%/%H%jL>$K\e(B
751 \e$B$J$k$h$&$K@_Dj$9$k;v$G2sHr=PMh$^$9!'\e(B
752
753 @example
754 (setq riece-log-directory-map '(("#\e$B$j!<$9\e(B" . "riece")))
755 @end example
756
757 @node Development, Index, Tips, Top
758 @chapter Development
759
760 \e$B3+H/<TJg=8Cf!#\e(B
761
762 @menu
763 * CVS::                         \e$B3+H/Cf$N%=!<%9$N<hF@\e(B
764 * Debugging::                   \e$B%G%P%C%0$N$?$a$N@_Dj\e(B
765 * Modules::                     \e$B9=@.%b%8%e!<%k$N@bL@\e(B
766 * Namespace management::        
767 * Signals::                     
768 * Writing add-ons::             \e$B%"%I%*%s$N=q$-$+$?\e(B
769 * Handler hooks::               
770 @end menu
771
772 @node CVS, Debugging, Development, Development
773 @section CVS
774
775 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
776 \e$B%7%g%C%H$r<hF@$9$k$K$O0J2<$N$h$&$K$7$^$9!#\e(B
777
778 @enumerate
779 @item
780 CVS \e$B%5!<%P$X$N%m%0%$%s\e(B
781
782 @example
783 cvs -d :pserver:anonymous@@cvs.m17n.org:/cvs/root login
784 CVS password: [CR] # NULL string
785 @end example
786
787 @item
788 \e$B%b%8%e!<%k$N%A%'%C%/%"%&%H\e(B
789
790 @example
791 cvs -d :pserver:anonymous@@cvs.m17n.org:/cvs/root checkout riece
792 @end example
793
794 @item
795 @file{configure} \e$B$N@8@.\e(B
796
797 @example
798 autoreconf -f -i -v
799 @end example
800 @end enumerate
801
802 @node Debugging, Modules, CVS, Development
803 @section Debugging
804
805 @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
806 \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
807 \e$B$K;D$j$^$9!#\e(B
808 @vindex riece-debug
809
810 @node Modules, Namespace management, Debugging, Development
811 @section Modules
812
813 \e$B4pK\E*$K0MB84X78$N>e0L$K$"$k$b$N$+$i!'\e(B
814
815 @table @samp
816 @item riece-globals
817 \e$BBg0hJQ?t$NDj5A\e(B 
818 @item riece-options
819 \e$B%f!<%6%*%W%7%g%s$NDj5A\e(B 
820 @item riece-version
821 \e$B%P!<%8%g%s$NDj5A\e(B 
822 @item riece-coding
823 \e$B%3!<%G%#%s%0%7%9%F%`4XO"$N4X?t$NDj5A\e(B 
824 @item riece-complete
825 \e$B%_%K%P%C%U%!$G$NJd40$r=u$1$k4X?t$NDj5A\e(B 
826 @item riece-addon
827 \e$B%"%I%*%s4IM}\e(B
828
829 @item riece-mode
830 channel/user \e$B$N%b!<%I4IM}\e(B
831 @item riece-identity
832 channel/user object \e$B$NBg0hI=5-$rA`:n$9$k4X?t$NDj5A\e(B 
833 @item riece-channel
834 channel object \e$B4XO"$NDj5A\e(B 
835 @item riece-user
836 user object \e$B4XO"$NDj5A\e(B 
837
838 @item riece-misc
839 \e$B;(B?$J4X?t$NDj5A\e(B
840 @item riece-signal
841 \e$B%7%0%J%k\e(B(@pxref{Signals})\e$B4IM}\e(B
842
843 @item riece-layout
844 \e$B%&%#%s%I%&%l%$%"%&%H4IM}\e(B
845 @item riece-display
846 \e$BI=<(MQ%P%C%U%!$N4IM}\e(B 
847 @item riece-server
848 IRC\e$B%5!<%P$H$N@\B34IM}\e(B 
849
850 @item riece-naming
851 \e$BL>A04IM}$N$?$a$N\e(B mediator \e$B$N$h$&$J$b$N\e(B 
852 @item riece-message
853 message object \e$B4XO"$NDj5A\e(B 
854
855 @item riece-filter
856 \e$B%W%m%;%9%U%#%k%?$N%(%s%H%j%]%$%s%H\e(B 
857 @item riece-handle
858 \e$BDL>o$N%a%C%;!<%8$N%O%s%I%i!#\e(Briece-filter \e$B$+$i8F$P$l$k\e(B 
859 @item riece-000
860 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 
861 @item riece-200
862 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 
863 @item riece-300
864 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 
865 @item riece-400
866 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 
867 @item riece-500
868 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 
869
870 @item riece-commands
871 \e$B%3%^%s%I$NDj5A\e(B 
872 @item riece-irc
873 IRC \e$B%W%m%H%3%k%$%s%?!<%U%'!<%9\e(B
874 @item riece
875 \e$B%(%s%H%j%]%$%s%H!#3F%P%C%U%!$N%b!<%IDj5A$J$I\e(B 
876 @end table
877
878 @node Namespace management, Signals, Modules, Development
879 @section Namespace management
880
881 Riece \e$B$OJ#?t$N%5!<%P$KF1;~$K@\B3$9$k$?$a!"%5!<%PKh$KJL!9$NL>A06u4V$r4IM}\e(B
882 \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
883 \e$B%m!<%+%kJQ?t$r2p$7$F%"%/%;%9$7$^$9!#\e(B
884
885 @subsection Obtaining server buffer
886 \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
887 \e$B$^$9!#%5!<%P$NL>A0$O0J2<$K5s$2$k$$$/$D$+$NJ}K!$G<hF@$G$-$^$9!#\e(B
888
889 @enumerate
890 @item
891 @vindex riece-overrinding-server-name
892 \e$BBg0hJQ?t\e(B @code{riece-overrinding-server-name} \e$B$NCM\e(B
893
894 @item
895 @vindex riece-server-name
896 @code{riece-server-name} \e$B$,%+%l%s%H%P%C%U%!$N%m!<%+%kJQ?t$G$"$k$J$i$P!"\e(B
897 \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
898 \e$BCM$=$N$b$N\e(B
899
900 @item
901 @samp{riece-identity} \e$B%*%V%8%'%/%H$K7k$SIU$1$i$l$?%5!<%PL>\e(B(\e$B8e=R\e(B)
902 @end enumerate
903
904 \e$B$3$&$7$FF@$?%5!<%PL>$G\e(B @code{riece-server-process} \e$B$r8F=P$7!"%5!<%P$N\e(B
905 \e$B%W%m%;%9$r<hF@$7$^$9!#\e(B
906 @findex riece-server-process
907
908 @subsection Identity
909 \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
910 \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
911 \e$B$,\e(B @samp{riece-identity} \e$B%*%V%8%'%/%H$G$9!#\e(B
912
913 @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
914
915 @table @samp
916 @item prefix
917 \e$B%5!<%P%m!<%+%k$JL>A0\e(B
918 @item server
919 \e$B%5!<%P$NL>A0\e(B
920 @end table
921
922 @samp{riece-identity} \e$B%*%V%8%'%/%H$KBP$9$kA`:n$K$O0J2<$N$h$&$J$b$N$,$"$j$^$9!#\e(B
923
924 @defun riece-make-identity prefix &optional server
925 @samp{riece-identity} \e$B%*%V%8%'%/%H$r:n@.$7$^$9!#\e(Bserver \e$B$,>JN,$5$l$?>l9g$K$O!"\e(B
926 riece-find-server-name \e$B$r;H$C$F<hF@$7$?%5!<%PL>$r;H$$$^$9\e(B
927 @end defun
928
929 @defun riece-identity-prefix identity
930 @samp{riece-identity} \e$B%*%V%8%'%/%H$+$i%5!<%P%m!<%+%k$JL>A0$r<h$j=P$7$^$9!#\e(B
931 @end defun
932
933 @defun riece-identity-server identity
934 @samp{riece-identity} \e$B%*%V%8%'%/%H$+$i%5!<%P$NL>A0$r<h$j=P$7$^$9!#\e(B
935 @end defun
936
937 @defun riece-identity-equal ident1 ident2
938\e$B$D$N\e(B@samp{riece-identity} \e$B%*%V%8%'%/%H$,F1Ey$+D4$Y$^$9!#\e(B
939 @end defun
940
941 @defun riece-identity-equal-no-server ident1 ident2
942\e$B$D$N\e(B@samp{riece-identity} \e$B%*%V%8%'%/%H$N%5!<%P%m!<%+%k$JL>A0$,F1Ey$+\e(B
943 \e$BD4$Y$^$9!#\e(B
944 @end defun
945
946 @defun riece-identity-member elt list
947 @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
948 \e$B$+8!::$7$^$9!#\e(B
949 @end defun
950
951 @subsection Channel and user management
952 @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
953 \e$B$H%f!<%6$O$=$l$>$l\e(B @samp{riece-channel} \e$B%*%V%8%'%/%H$H\e(B 
954 @samp{riee-user} \e$B%*%V%8%'%/%H$K$h$jI=8=$5$l$^$9!#\e(B
955
956 @subsubsection Channels
957 @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
958 \e$BMWAG$r;}$A$^$9!#\e(B
959
960 @table @samp
961 @item users
962 \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 
963 @item operators
964 \e$B%*%Z%l!<%?8"8B$r$b$D%f!<%6$NL>A0$N%j%9%H\e(B 
965 @item speakers
966 \e$BH/8@8"$r$b$D%f!<%6$NL>A0$N%j%9%H\e(B 
967 @item modes
968 \e$B%A%c%s%M%k$N%b!<%I\e(B(\e$BJ8;z$N%j%9%H\e(B) 
969 @item banned
970 @samp{MODE +b} \e$B$G;XDj$5$l$?%Q%?!<%s$N0lMw\e(B 
971 @item invited
972 @samp{MODE +I} \e$B$G;XDj$5$l$?%Q%?!<%s$N0lMw\e(B 
973 @item uninvited
974 @samp{MODE +e} \e$B$G;XDj$5$l$?%Q%?!<%s$N0lMw\e(B
975 @end table
976
977 @subsubsection Users
978 @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
979 \e$B2<$NMWAG$r;}$A$^$9!#\e(B
980
981 @table @samp
982 @item channels
983 \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 
984 @item user-at-host
985 "<user>@@<host>" \e$B$N7A$GM?$($i$l$k%f!<%6$N>pJs\e(B 
986 @item modes
987 \e$B%f!<%6$N%b!<%I\e(B(\e$BJ8;z$N%j%9%H\e(B) 
988 @item away
989 AWAY \e$BCf$+$I$&$+\e(B 
990 @end table
991
992 @subsubsection Mediator
993 \e$B%A%c%s%M%k$H%f!<%6$N;22C!&N%C&$r4IM}$9$k$?$a$K!"\e(B @code{riece-naming} 
994 \e$B$H$$$&>e0L$N%b%8%e!<%k$rMQ0U$7$F$$$^$9!#$3$l$O!"%G%6%$%s%Q%?!<%s$G$$$&\e(B
995 \e$B$H$3$m$N\e(B Mediator \e$B%Q%?!<%s$KAjEv$9$k$b$N$G$9!#\e(B
996
997 @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
998 \e$B$KD>@\<j$r?($l$k$3$H$J$/!"L>A06u4V$K0BA4$K%"%/%;%9$9$k$3$H$,$G$-$^$9!#\e(B
999
1000 \e$BDs6!$9$k<g$J4X?t$O0J2<$N\e(B 3 \e$B$D$G$9!#\e(B
1001
1002 @defun riece-naming-assert-join user-name channel-name
1003 \e$B%f!<%6$,%A%c%s%M%k$K;22C$7$?$3$H$rI=L@$7$^$9\e(B
1004 @end defun
1005
1006 @defun riece-naming-assert-part user-name channel-name
1007 \e$B%f!<%6$,%A%c%s%M%k$+$iN%C&$7$?$3$H$rI=L@$7$^$9\e(B 
1008 @end defun
1009
1010 @defun riece-naming-assert-rename old-name new-name
1011 \e$B%f!<%6$NL>A0$,JQ99$5$l$?$3$H$rI=L@$7$^$9\e(B 
1012 @end defun
1013
1014 @node Signals, Writing add-ons, Namespace management, Development
1015 @section Signals
1016
1017 \e$B2hLL$N:FIA2h$r8zN(NI$/9T$&$?$a$K!"%$%Y%s%H$HIA2hBP>]$N%*%V%8%'%/%H\e(B(\e$B%P%C\e(B
1018 \e$B%U%!$d!"%b!<%I%i%$%s$N0u\e(B @pxref{Indicators})\e$B$r7k$SIU$1$k%a%+%K%:%`$rMQ0U\e(B
1019 \e$B$7$F$$$^$9!#\e(B
1020
1021 \e$B2?$i$+$N%$%Y%s%H$,H/@8$9$k$H!"%7%0%J%k$,Aw=P$5$l$^$9!#%7%0%J%k$N35G0$O!"\e(B
1022 Qt \e$B$d\e(B GTK+ \e$B$H$$$C$?\e(B GUI \e$B%D!<%k%-%C%H$KMQ0U$5$l$F$$$k$b$N$HF1MM$G$9!#\e(B
1023
1024 \e$B%7%0%J%k$rAw=P$9$k$K$O!"\e(B@samp{riece-emit-signal} \e$B$r;H$$$^$9!#\e(B
1025
1026 @defun riece-emit-signal signal-name &rest args
1027 @var{signal-name} \e$B$G;X<($5$l$k%7%0%J%k$r!"0z?t\e(B @var{args} \e$B$H$H$b$KAw=P$7$^$9\e(B
1028 @end defun
1029
1030 \e$B%7%0%J%k$K1~Ez$9$k$K$O!"\e(B@samp{riece-connect-signal} \e$B$r;H$$$^$9!#\e(B
1031
1032 @defun riece-connect-signal signal-name slot-function &optional filter-function handback
1033 @var{signal-name} \e$B$G;X<($5$l$k%7%0%J%k$K1~Ez$9$k4X?t\e(B @var{slot-function} 
1034 \e$B$r7k$SIU$1$^$9!#\e(B@var{slot-function} \e$B$K;XDj$5$l$?4X?t$O\e(B 2 \e$B$D$N0z?t$r<h$j$^\e(B
1035 \e$B$9!#Bh\e(B1\e$B$N0z?t$O$O%7%0%J%k$rI=$7$^$9!#$^$?!"Bh\e(B2\e$B$N0z?t$H$7$F!"\e(B
1036 @var{handback} \e$B0z?t$KM?$($i$l$?%*%V%8%'%/%H$,$=$N$^$^EO$5$l$^$9!#\e(B
1037
1038 @var{filter-function} \e$B$O!"<u?.$7$?%7%0%J%k$K1~Ez$9$Y$-$+$I$&$+$rH=Dj$9$k\e(B
1039 \e$B4X?t$G$9!#$3$N4X?t$O0z?t$H$7$F%7%0%J%k%*%V%8%'%/%H$r<u$1<h$j!"\e(B@samp{nil}
1040 \e$B$^$?$O\e(B @samp{t} \e$B$rJV$9$3$H$,4|BT$5$l$^$9!#JV$jCM$,\e(B @samp{nil} \e$B$N>l9g$K$O!"\e(B
1041 @var{slot-function} \e$B$,8F$P$l$k$3$H$O$"$j$^$;$s!#\e(B
1042 @end defun
1043
1044 \e$B%7%0%J%k%*%V%8%'%/%H$K%"%/%;%9$9$k$K$O!"0J2<$N4X?t$r;H$$$^$9!#\e(B
1045
1046 @defun riece-signal-name
1047 \e$B%7%0%J%k$NL>A0\e(B(\e$B%7%s%\%k\e(B)\e$B$rJV$7$^$9!#\e(B
1048 @end defun
1049
1050 @defun riece-signal-args
1051 \e$B%7%0%J%kAw=P;~$KM?$($i$l$?0z?t$rJV$7$^$9!#\e(B
1052 @end defun
1053
1054 \e$B8=:_!"0J2<$N%7%0%J%k$,I8=`$GEPO?$5$l$F$$$^$9!'\e(B
1055
1056 @table @samp
1057 @item channel-list-changed
1058 \e$B;22C$7$F$$$k%A%c%s%M%k$N0lMw$NJQ2=\e(B
1059 @item user-list-changed
1060 \e$B%A%c%s%M%k$N;22C<T0lMw$NJQ2=\e(B
1061 (\e$B0z?t$O%A%c%s%M%k$KAjEv$9$k\e(B @samp{riece-identity} \e$B%*%V%8%'%/%H\e(B)
1062 @item channel-switched
1063 \e$B8=:_$N%A%c%s%M%k$r0\F0\e(B
1064 @item user-joined-channel
1065 \e$B%f!<%6$,%A%c%s%M%k$K;22C\e(B
1066 (\e$B0z?t$O!"%f!<%6$*$h$S%A%c%s%M%k$KAjEv$9$k\e(B @samp{riece-identity} \e$B%*%V%8%'%/%H\e(B)
1067 @item user-left-channel
1068 \e$B%f!<%6$,%A%c%s%M%k$+$iN%C&\e(B
1069 (\e$B0z?t$O!"%f!<%6$*$h$S%A%c%s%M%k$KAjEv$9$k\e(B @samp{riece-identity} \e$B%*%V%8%'%/%H\e(B)
1070 @item user-renamed
1071 \e$B%f!<%6$,L>A0$rJQ99\e(B
1072 (\e$B0z?t$O!"0JA0$H8=:_$NL>A0$KAjEv$9$k\e(B @samp{riece-identity} \e$B%*%V%8%'%/%H\e(B)
1073 @item user-away-changed
1074 \e$B%f!<%6$NN%@J>uBV$NJQ2=\e(B
1075 (\e$B0z?t$O!"%f!<%6$KAjEv$9$k\e(B @samp{riece-identity} \e$B%*%V%8%'%/%H\e(B)
1076 @item user-operator-changed
1077 \e$B%f!<%6$N%*%Z%l!<%?>uBV$NJQ2=\e(B
1078 (\e$B0z?t$O!"%f!<%6$KAjEv$9$k\e(B @samp{riece-identity} \e$B%*%V%8%'%/%H\e(B)
1079 @item channel-topic-changed
1080 \e$B%A%c%s%M%k$N%H%T%C%/$NJQ2=\e(B
1081 (\e$B0z?t$O!"%A%c%s%M%k$KAjEv$9$k\e(B @samp{riece-identity} \e$B%*%V%8%'%/%H\e(B)
1082 @item channel-modes-changed
1083 \e$B%A%c%s%M%k$N%b!<%I$NJQ2=\e(B
1084 (\e$B0z?t$O!"%A%c%s%M%k$KAjEv$9$k\e(B @samp{riece-identity} \e$B%*%V%8%'%/%H\e(B)
1085 @item channel-operators-changed
1086 \e$B%A%c%s%M%k$G%*%Z%l!<%?8"8B$r;}$D%f!<%6$N0lMw$NJQ2=\e(B
1087 (\e$B0z?t$O!"%A%c%s%M%k$KAjEv$9$k\e(B @samp{riece-identity} \e$B%*%V%8%'%/%H\e(B)
1088 @item channel-speakers-changed
1089 \e$B%A%c%s%M%k$GH/8@8"$r;}$D%f!<%6$N0lMw$NJQ2=\e(B
1090 (\e$B0z?t$O!"%A%c%s%M%k$KAjEv$9$k\e(B @samp{riece-identity} \e$B%*%V%8%'%/%H\e(B)
1091 @item buffer-freeze-changed
1092 \e$B%P%C%U%!$NE`7k>uBV$NJQ2=\e(B
1093 (\e$B0z?t$O%P%C%U%!\e(B)
1094 @end table
1095
1096 @node Writing add-ons, Handler hooks, Signals, Development
1097 @section Writing add-ons
1098
1099 \e$B%"%I%*%s$N>r7o$rK~$?$9%b%8%e!<%k$O0J2<$N4X?t$rDs6!$7$^$9!#\e(B
1100
1101 @table @samp
1102 @item <\e$B%b%8%e!<%kL>\e(B>-requires
1103 \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)
1104 @item <\e$B%b%8%e!<%kL>\e(B>-insinuate
1105 \e$B=i4|2==hM}$r9T$$$^$9\e(B
1106 @end table
1107
1108 \e$B$^$?!"%"%I%*%s$N@bL@$r!"JQ?t\e(B @samp{<\e$B%b%8%e!<%kL>\e(B>-description} \e$B$K@_Dj$9\e(B
1109 \e$B$k$3$H$b$G$-$^$9!#$3$NJ8;zNs$O\e(B @kbd{M-x riece-command-list-addons} \e$B$K$h\e(B
1110 \e$B$k%"%I%*%s$N0lMwI=<($K;H$o$l$^$9!#\e(B
1111
1112 \e$BM-8z2=!&L58z2=$KBP1~$7$?%"%I%*%s$O!"JQ?t\e(B @samp{<\e$B%b%8%e!<%kL>\e(B>-enabled} 
1113 \e$B$K8=:_$N>uBV$rJ];}$7$^$9!#CM$,\e(B @samp{nil} \e$B$G$"$l$PL58z!"\e(B@samp{t} \e$B$G$"$l\e(B
1114 \e$B$PM-8z$G$9!#2C$($F!"0J2<$N4X?t$rDs6!$7$^$9!#\e(B
1115
1116 @table @samp
1117 @item <\e$B%b%8%e!<%kL>\e(B>-enable
1118 \e$B%"%I%*%s$rM-8z$K$7$^$9\e(B
1119 @item <\e$B%b%8%e!<%kL>\e(B>-disable
1120 \e$B%"%I%*%s$rL58z$K$7$^$9\e(B
1121 @end table
1122
1123 Riece \e$B$O5/F0;~$K0J2<$N=hM}$r9T$$$^$9!#\e(B
1124
1125 @enumerate
1126 @item
1127 \e$BJQ?t\e(B @code{riece-addons} \e$B$KNs5s$5$l$?%b%8%e!<%k$rFI$_9~$`\e(B
1128
1129 @item
1130 \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
1131
1132 @item
1133 \e$B0MB8%0%i%U$KBP$7$F%H%]%m%8%+%k%=!<%H\e(B (cf. tsort(1)) \e$B$r9T$&\e(B
1134
1135 @item
1136 \e$BF@$i$l$?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
1137
1138 @item
1139 \e$B$b$7!"%"%I%*%s$,M-8z2=!&L58z2=$KBP1~$7$F$*$j!"L@<(E*$KL58z2=$5$l$F$$$J$1$l$P!"\e(B
1140 @samp{<\e$B%b%8%e!<%kL>\e(B>-enable}\e$B$r8F$S=P$9!#\e(B
1141 @end enumerate
1142
1143 \e$B:n@.$7$?%"%I%*%s$O!"\e(B@code{load-path} \e$B$NDL$C$?%G%#%l%/%H%j!"$^$?$O\e(B 
1144 @code{riece-addon-directory} (\e$B%G%U%)%k%H$G$O\e(B @file{~/.riece/addons/}) \e$B$K\e(B
1145 \e$BCV$/$3$H$GAH$_9~$_2DG=$J>uBV$K$J$j$^$9!#\e(B
1146 @vindex riece-addon-directory
1147
1148 @node Handler hooks,  , Writing add-ons, Development
1149 @section Handler hooks
1150
1151 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 
1152 \e$B$N%a%C%;!<%8$r<u$1<h$C$?A08e$G<B9T$5$l$k%U%C%/$G$9!#\e(B
1153
1154 \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
1155 \e$BJ8;z$K$7$?$b$N$H$7$^$9!#\e(B
1156
1157 @table @code
1158 @item riece-<message>-hook
1159 @samp{message} \e$B$,FO$$$?$H$-$K:G=i$K8F$P$l$k%U%C%/\e(B
1160 @item riece-after-<message>-hook
1161 @samp{message} \e$B$N=hM}$,=*$o$C$?8e$K8F$P$l$k%U%C%/\e(B
1162 @end table
1163
1164 \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
1165 \e$B$b$N$,$"$l$P!"$=$N8e$N=hM}$r$*$3$J$$$^$;$s!#$^$?!"$=$N>l9g$K$O\e(B 
1166 @code{riece-after-<message>-hook} \e$B$b8F$S=P$5$l$^$;$s!#\e(B
1167
1168 \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 
1169\e$B$D$N0z?t$,EO$j$^$9!#\e(B
1170
1171 @node Index, Function Index, Development, Top
1172 @chapter Index
1173 @printindex cp
1174
1175 @node Function Index, Variable Index, Index, Top
1176 @chapter Function Index
1177 @printindex fn
1178
1179 @node Variable Index,  , Function Index, Top
1180 @chapter Variable Index
1181 @printindex vr
1182
1183 @summarycontents
1184 @contents
1185 @bye
1186
1187 @c End: