Mercurial > emacs
annotate doc/misc/rcirc.texi @ 105951:85397efaf3b5
Add dependencies to lisp.h. Remove dependencies
for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
author | Dan Nicolaescu <dann@ics.uci.edu> |
---|---|
date | Wed, 11 Nov 2009 06:41:07 +0000 |
parents | 328f4b370b74 |
children | 1d1d5d9bd884 |
rev | line source |
---|---|
84311 | 1 \input texinfo |
2 @c %**start of header | |
84329
3d431f1997d8
(setfilename): Go up one more level to ../../info.
Glenn Morris <rgm@gnu.org>
parents:
84311
diff
changeset
|
3 @setfilename ../../info/rcirc |
84311 | 4 @settitle rcirc Manual |
5 @c %**end of header | |
6 | |
7 @copying | |
100974 | 8 Copyright @copyright{} 2006, 2007, 2008, 2009 Free Software Foundation, Inc. |
84311 | 9 |
10 @quotation | |
11 Permission is granted to copy, distribute and/or modify this document | |
99709
6de181810d0f
Relicense all texi files under FDL 1.3 or later.
Glenn Morris <rgm@gnu.org>
parents:
96374
diff
changeset
|
12 under the terms of the GNU Free Documentation License, Version 1.3 or |
84311 | 13 any later version published by the Free Software Foundation; with no |
14 Invariant Sections, with the Front-Cover texts being ``A GNU Manual'', | |
15 and with the Back-Cover Texts as in (a) below. A copy of the license is | |
95937
6f0fce2c3559
Remove references to external license, since doclicense is included.
Glenn Morris <rgm@gnu.org>
parents:
95874
diff
changeset
|
16 included in the section entitled ``GNU Free Documentation License''. |
84311 | 17 |
95874
eafbd7a5c9be
Update Back-Cover Text as per maintain.info.
Glenn Morris <rgm@gnu.org>
parents:
92148
diff
changeset
|
18 (a) The FSF's Back-Cover Text is: ``You have the freedom to copy and |
eafbd7a5c9be
Update Back-Cover Text as per maintain.info.
Glenn Morris <rgm@gnu.org>
parents:
92148
diff
changeset
|
19 modify this GNU manual. Buying copies from the FSF supports it in |
eafbd7a5c9be
Update Back-Cover Text as per maintain.info.
Glenn Morris <rgm@gnu.org>
parents:
92148
diff
changeset
|
20 developing GNU and promoting software freedom.'' |
84311 | 21 @end quotation |
22 @end copying | |
23 | |
24 @dircategory Emacs | |
25 @direntry | |
26 * Rcirc: (rcirc). Internet Relay Chat (IRC) client. | |
27 @end direntry | |
28 | |
29 @titlepage | |
30 @title rcirc Manual | |
31 @page | |
32 @vskip 0pt plus 1filll | |
33 @insertcopying | |
34 @end titlepage | |
35 | |
102059
9bcea07061a8
consistently use @insertcopying, @direntry, @contents
Karl Berry <karl@gnu.org>
parents:
100974
diff
changeset
|
36 @contents |
9bcea07061a8
consistently use @insertcopying, @direntry, @contents
Karl Berry <karl@gnu.org>
parents:
100974
diff
changeset
|
37 |
84311 | 38 @ifnottex |
39 @node Top, Basics, (dir), (dir) | |
40 @top rcirc Manual | |
41 | |
42 @code{rcirc} is an Emacs IRC client. | |
43 | |
44 IRC (Internet Relay Chat) is a multi-user chat protocol. Users | |
45 communicate with each other in real-time. Communication occurs both in | |
46 topic channels which are collections of many users, or privately, with | |
47 just one other user. | |
48 | |
102059
9bcea07061a8
consistently use @insertcopying, @direntry, @contents
Karl Berry <karl@gnu.org>
parents:
100974
diff
changeset
|
49 @insertcopying |
9bcea07061a8
consistently use @insertcopying, @direntry, @contents
Karl Berry <karl@gnu.org>
parents:
100974
diff
changeset
|
50 |
9bcea07061a8
consistently use @insertcopying, @direntry, @contents
Karl Berry <karl@gnu.org>
parents:
100974
diff
changeset
|
51 @end ifnottex |
9bcea07061a8
consistently use @insertcopying, @direntry, @contents
Karl Berry <karl@gnu.org>
parents:
100974
diff
changeset
|
52 |
84311 | 53 @menu |
54 * Basics:: | |
55 * Reference:: | |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
56 * Fighting Information Overload:: |
84311 | 57 * Hacking and Tweaking:: |
58 * GNU Free Documentation License:: | |
59 * Key Index:: | |
60 * Variable Index:: | |
61 * Index:: | |
62 | |
63 @detailmenu | |
64 --- The Detailed Node Listing --- | |
65 | |
66 Basics | |
67 | |
68 * Internet Relay Chat:: | |
69 * Getting started with rcirc:: | |
70 | |
71 Reference | |
72 | |
73 * rcirc commands:: | |
74 * Useful IRC commands:: | |
75 * Configuration:: | |
76 | |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
77 Fighting Information Overload |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
78 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
79 * Channels:: |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
80 * People:: |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
81 * Keywords:: |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
82 * Notices:: |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
83 |
84311 | 84 Hacking and Tweaking |
85 | |
86 * Skipping /away messages using handlers:: | |
87 * Using fly spell mode:: | |
88 * Scrolling conservatively:: | |
89 * Changing the time stamp format:: | |
90 * Defining a new command:: | |
91 * Reconnecting after you have lost the connection:: | |
92 | |
93 @end detailmenu | |
94 @end menu | |
95 | |
96 @node Basics, Reference, Top, Top | |
97 @chapter Basics | |
98 | |
99 This chapter contains a brief introduction to IRC (Internet Relay Chat), | |
100 and a quick tutorial on @code{rcirc}. | |
101 | |
102 @menu | |
103 * Internet Relay Chat:: | |
104 * Getting started with rcirc:: | |
105 @end menu | |
106 | |
107 @node Internet Relay Chat, Getting started with rcirc, Basics, Basics | |
108 @section Internet Relay Chat | |
109 @cindex internet relay chat | |
110 @cindex irc | |
111 | |
112 @cindex channel | |
113 @dfn{Internet Relay Chat} (IRC) is a form of instant communication over the | |
114 Internet. It is mainly designed for group (many-to-many) communication | |
115 in discussion forums called channels, but also allows one-to-one | |
116 communication. | |
117 | |
118 @cindex instant messaging, comparison | |
119 @cindex server | |
120 @cindex network | |
121 Contrary to most Instant Messenger (IM) systems, users usually don't | |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
122 connect to a central server. Instead, users connect to a random |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
123 server in a network, and servers relay messages from one to the next. |
84311 | 124 |
125 Here's a typical example: | |
126 | |
127 @cindex redirection to random servers | |
128 When you connect to the Freenode network | |
129 (@code{http://freenode.net/}), you point your IRC client at the | |
130 server @code{irc.freenode.net}. That server will redirect your client | |
131 to a random server on the network, such as @code{zelazny.freenode.net}. | |
132 | |
133 @cindex channel name | |
134 @cindex # starts a channel name | |
135 Once you're connected, you can send messages to all other users | |
136 connected to the same network, and you can join all channels on the same | |
137 network. You might join the @code{#emacs} and the @code{#rcirc} | |
138 channels, for example. (Typically, channel names begin with a hash | |
139 character.) | |
140 | |
141 Once you have joined a channel, anything you type will be broadcast to | |
142 all the other users on the same channel. | |
143 | |
144 @cindex addressing other people | |
145 @cindex other people, addressing them | |
146 @cindex talk to other people | |
147 If you want to address someone specifically, for example as an answer to | |
148 a question, it is customary to prefix the message with the nick followed | |
149 by a colon, like this: | |
150 | |
151 @example | |
152 deego: fsbot rules! | |
153 @end example | |
154 | |
155 @cindex nick completion | |
156 @cindex completion of nicks | |
157 @kindex TAB | |
158 Since this is so common, you can use @key{TAB} to do nick completion. | |
159 | |
160 @node Getting started with rcirc, , Internet Relay Chat, Basics | |
161 @section Getting started with rcirc | |
162 @cindex getting started | |
163 @cindex connecting to a server | |
164 | |
165 @cindex irc command | |
166 Use the command @kbd{M-x irc} to connect using the defaults. | |
167 @xref{Configuration}, if you want to change the defaults. | |
168 | |
169 Use @kbd{C-u M-x irc} if you don't want to use the defaults, eg. if you | |
170 want to connect to a different network, or connect to the same network | |
171 using a different nick. This will prompt you for four things: | |
172 | |
173 @table @asis | |
174 @cindex server, connecting | |
175 @cindex Freenode network | |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
176 @item IRC Server |
84311 | 177 What server do you want to connect to? All the servers in a particular |
178 network are equivalent. Some networks use a round-robin system where a | |
179 single server redirects new connections to a random server in the | |
180 network. @code{irc.freenode.net} is such a server for the Freenode | |
181 network. Freenode provides the network ``for the Free and Open Source | |
96372
4a78563eb87f
American English spelling fix.
Glenn Morris <rgm@gnu.org>
parents:
95937
diff
changeset
|
182 Software communities, for not-for-profit organizations and for related |
84311 | 183 communities and organizations.'' |
184 | |
185 @cindex port, connecting | |
186 @cindex 6667, default IRC port | |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
187 @item IRC Port |
84311 | 188 All network connections require a port. Just as web servers and clients |
189 use port 80 per default, IRC uses port 6667 per default. You rarely | |
190 have to use a different port. | |
191 | |
192 @cindex nick, connecting | |
193 @cindex changing nick | |
194 @cindex name changes | |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
195 @item IRC Nick |
84311 | 196 @vindex user-login-name |
197 Every users needs a handle on-line. You will automatically be assigned | |
198 a slightly different nick if your chosen nick is already in use. If | |
199 your @code{user-login-name} is @code{alex}, and this nick is already | |
200 in use, you might for example get assigned the nick @code{alex`}. | |
201 | |
202 @cindex channels, connecting | |
203 @cindex initial channels | |
204 @cindex startup channels | |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
205 @item IRC Channels |
84311 | 206 A space separated list of channels you want to join when connecting. |
207 You don't need to join any channels, if you just want to have one-to-one | |
208 conversations with friends on the same network. If you're new to the | |
209 Freenode network, join @code{#emacs}, the channel about all things | |
210 Emacs, or join @code{#rcirc}, the channel about @code{rcirc}. | |
211 @end table | |
212 | |
213 @cindex server buffer | |
214 When you have answered these questions, @code{rcirc} will create a server | |
215 buffer, which will be named something like @code{*irc.freenode.net*}, | |
216 and a channel buffer for each of the channels you wanted to join. | |
217 | |
218 @kindex RET | |
219 @cindex talking | |
220 @cindex communicating | |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
221 To talk in a channel, just type what you want to say in a channel |
84311 | 222 buffer, and press @key{RET}. |
223 | |
224 @kindex C-c C-c | |
225 @cindex multiline messages | |
226 @cindex messages, multiple lines | |
227 @cindex pasting multiple lines | |
228 @cindex edit message before sending | |
229 If you want to paste multiple lines, such as source code, you can use | |
230 @kbd{C-c C-c} to edit your message in a separate buffer. Use @kbd{C-c | |
231 C-c} to finish editing. You still need to press @key{RET} to send it, | |
232 though. Generally, IRC users don't like people pasting more than around | |
233 four lines of code, so use with care. | |
234 | |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
235 @comment This section copied from the Channels section. |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
236 @comment All index markers should point to the original! |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
237 Once you are connected to multiple channels, or once you've turned you |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
238 attention to other buffers in Emacs, you probably want to be notified |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
239 of any activity in channels not currently visible. All you need to do |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
240 is switch channel tracking on using @kbd{M-x rcirc-track-minor-mode}. |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
241 To make this permanent, add the following to your init file: |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
242 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
243 @example |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
244 (rcirc-track-minor-mode 1) |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
245 @end example |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
246 |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
247 Use @kbd{C-c C-@key{SPC}} to switch to these buffers. |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
248 |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
249 @node Reference, Fighting Information Overload, Basics, Top |
84311 | 250 @chapter Reference |
251 @cindex reference | |
252 | |
253 This is the reference section of the manual. It is not complete. For | |
254 complete listings of @code{rcirc} features, use Emacs built-in | |
255 documentation. | |
256 | |
257 @menu | |
258 * rcirc commands:: | |
259 * Useful IRC commands:: | |
260 * Configuration:: | |
261 @end menu | |
262 | |
263 @node rcirc commands, Useful IRC commands, Reference, Reference | |
264 @section rcirc commands | |
265 @cindex rcirc commands | |
266 @cindex commands | |
267 | |
268 @kindex C-h m | |
269 This is a list of commands that you may use in @code{rcirc}. It is not | |
270 complete. For a complete listing, press @kbd{C-h m} in an @code{rcirc} | |
271 buffer. | |
272 | |
273 In addition to using regular Emacs key bindings, you can call them by | |
274 typing them into an @code{rcirc} buffer. | |
275 | |
276 @cindex call commands | |
277 @cindex typing commands | |
278 @cindex commands | |
279 For instance, instead of using the command @kbd{C-c C-j} to join a new | |
280 channel, you may type this in an @code{rcirc} buffer, and press @key{RET}: | |
281 | |
282 @example | |
283 /join #emacs | |
284 @end example | |
285 | |
286 @cindex / starts a command | |
287 @cindex messages starting with a slash disappear | |
288 @cindex disappearing messages if starting with a slash | |
289 @cindex slash hides message | |
290 This is why you cannot start a message with a slash. You will have to | |
291 precede the command with a space, or rewrite your message in order to | |
292 send it to a channel. | |
293 | |
294 @cindex multiple words as parameters | |
295 @cindex string delimiters | |
296 @cindex quotes | |
297 @cindex double-quotes | |
298 Many commands take parameters. IRC commands usually ignore string | |
299 delimiters. Neither quote nor double-quote have special meanings in | |
300 IRC. | |
301 | |
302 @example | |
303 /nick "alex schroeder" | |
304 @end example | |
305 | |
306 This will try to change your nick to @code{"alex}. Usually this will | |
92148 | 307 fail because the double quote character is not a valid character for |
84311 | 308 nicks. |
309 | |
310 @cindex case insensitive commands | |
311 These commands are case insensitive. | |
312 | |
313 @cindex new command | |
314 @cindex unknown command | |
315 @cindex command unknown | |
316 If a command isn't known by @code{rcirc}, it will simply be sent along to the | |
317 server. There is a list of some useful commands like that in the next | |
318 section. | |
319 | |
320 @table @kbd | |
321 @item C-c C-j | |
322 @kindex C-c C-j | |
323 @cindex /join | |
324 @cindex join channels | |
325 @cindex other channels | |
326 @cindex rooms, joining | |
327 @cindex discussion, joining | |
328 This joins a channel such as @code{#rcirc} or @code{#emacs}. On most | |
329 networks, anybody can create new channels. If you want to talk with | |
330 some friends, for example, all you have to do is agree on a valid | |
331 channel name and join that channel. (Also @code{/join #emacs}.) | |
332 | |
333 @item C-c C-p | |
334 @kindex C-c C-p | |
335 @cindex /part | |
336 @cindex part a channel | |
337 @cindex leave a channel | |
338 @cindex disconnect from a channel | |
339 @cindex stop talking on a channel | |
340 @cindex kill channel buffer | |
341 This leaves the current channel. You can optionally provide a reason | |
342 for parting. When you kill a channel buffer, you automatically part the | |
343 corresponding channel. (Also @code{/part you are too weird!}.) | |
344 | |
345 @item C-c C-r | |
346 @kindex C-c C-r | |
347 @cindex /nick | |
348 @cindex change name | |
349 @cindex nick changing | |
350 @cindex rename yourself | |
351 @cindex other name | |
352 This changes your nick to some other name. Your nick must be unique | |
353 across the network. Most networks don't allow too many nick changes in | |
354 quick succession, and have restrictions on the valid characters in nick | |
355 names. (Also @code{/nick alex-test}) | |
356 | |
357 @item C-c C-w | |
358 @kindex C-c C-w | |
359 @cindex /whois | |
360 @cindex who are these people | |
361 @cindex identifying people | |
362 @cindex channels other people are on | |
363 @cindex what channels people are on | |
364 Gives you some basic information about a nick. This often includes what | |
365 other channels people are on. (Also @code{/whois fsbot}.) | |
366 | |
367 @item C-c C-q | |
368 @kindex C-c C-q | |
369 @cindex /query | |
370 @cindex starting a private conversation | |
371 @cindex one-to-one conversation | |
372 @cindex talk privately | |
373 @cindex private conversation | |
374 @cindex contact one person only | |
375 @cindex query a person | |
376 Starts a one-to-one conversation with another person on the same | |
377 network. A new buffer will be created for this conversation. It works | |
378 like a channel with only two members. (Also @code{/query fsbot}.) | |
379 | |
380 @item C-c @key{RET} | |
381 @kindex C-c RET | |
382 @cindex /msg | |
383 @cindex single message | |
384 @cindex message sending | |
385 This sends a single message to a nick. Like with @kbd{C-c C-q}, a new | |
386 buffer is created, where the response from the other party will show | |
387 up. (Also @code{/msg nickserv identify secret}.) | |
388 | |
389 @item C-c C-x | |
390 @kindex C-c C-x | |
391 @cindex /quit | |
392 @cindex quit | |
393 @cindex disconnect | |
394 @cindex kill connection | |
395 @cindex connection end | |
396 @cindex part all channels | |
397 @cindex end connection | |
398 @cindex server buffer killing | |
399 @cindex reason for quitting | |
400 This disconnects from the server and parts all channels. You can | |
401 optionally provide a reason for quitting. When you kill the server | |
402 buffer, you automatically quit the server and part all channels. (Also | |
403 @code{/quit ZZZzzz...}.) | |
404 @end table | |
405 | |
406 @node Useful IRC commands, Configuration, rcirc commands, Reference | |
407 @section Useful IRC commands | |
408 @cindex irc commands | |
409 @cindex commands | |
410 | |
411 As mentioned, if a command isn't known by @code{rcirc}, it will simply be sent | |
412 along to the server. Some such commands are available on nearly all IRC | |
413 servers, such as: | |
414 | |
415 @table @code | |
416 @item /away | |
417 @cindex /away | |
418 @cindex away status | |
419 @cindex pause status | |
420 @cindex unavailable status | |
421 @cindex set away status | |
422 This sets your status as ``being away'' if you provide a reason, or sets | |
423 your status as ``being back'' if you do not. People can use the | |
424 @kbd{C-c C-w} command to check your status. Example: @code{/away food}. | |
425 @end table | |
426 | |
427 @cindex irc resources | |
428 @cindex help about irc | |
429 Typical IRC servers implement many more commands. You can read more | |
430 about the fantastic world of IRC online at | |
431 @uref{http://www.irchelp.org/, the Internet Relay Chat (IRC) help | |
432 archive}. | |
433 | |
434 @node Configuration, , Useful IRC commands, Reference | |
435 @section Configuration | |
436 @cindex configuring rcirc | |
437 | |
438 These are some variables you can change to configure @code{rcirc} to your | |
439 liking. | |
440 | |
441 @table @code | |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
442 @item rcirc-server-alist |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
443 @vindex rcirc-server-alist |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
444 @cindex channels, configuration |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
445 @cindex initial channels, configuration |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
446 @cindex startup channels, configuration |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
447 @cindex servers, configuration |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
448 @cindex initial servers, configuration |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
449 @cindex startup servers, configuration |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
450 This variable contains an alist of servers to connect to by default |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
451 and the keywords parameters to use. The keyword parameters are |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
452 optional. If you don't provide any, the defaults as documented below |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
453 will be used. |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
454 |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
455 The most important parameter is the @code{:channels} parameter. It |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
456 controls which channels you will join by default as soon as you are |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
457 connected to the server. |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
458 |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
459 Here's an example of how to set it: |
84311 | 460 |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
461 @example |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
462 (add-to-list 'rcirc-server-alist |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
463 '("otherworlders.org" |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
464 :channels ("#FUDGE" "#game-design"))) |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
465 @end example |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
466 |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
467 By default you will be connected to the @code{rcirc} support channel: |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
468 @code{#rcirc} on @code{irc.freenode.net}. |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
469 |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
470 @table @code |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
471 @item :nick |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
472 This overrides @code{rcirc-default-nick}. |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
473 |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
474 @item :port |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
475 This overrides @code{rcirc-default-port}. |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
476 |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
477 @item :user-name |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
478 This overrides @code{rcirc-default-user-name}. |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
479 |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
480 @item :full-name |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
481 This overrides @code{rcirc-default-full-name}. |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
482 |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
483 @item :channels |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
484 This describes which channels to join when connecting to the server. |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
485 If absent, no channels will be connected to automatically. |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
486 |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
487 @end table |
84311 | 488 |
489 @item rcirc-default-nick | |
490 @vindex rcirc-default-nick | |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
491 This variable is used for the default nick. It defaults to the login |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
492 name returned by @code{user-login-name}. |
84311 | 493 |
494 @example | |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
495 (setq rcirc-default-nick "kensanata") |
84311 | 496 @end example |
497 | |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
498 @item rcirc-default-port |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
499 @vindex rcirc-default-port |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
500 @cindex port |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
501 This variable contains the default port to connect to. It is 6667 by |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
502 default and rarely needs changing. |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
503 |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
504 @item rcirc-default-user-name |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
505 @vindex rcirc-default-user-name |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
506 @cindex user name |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
507 This variable contains the default user name to report to the server. |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
508 It defaults to the login name returned by @code{user-login-name}, just |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
509 like @code{rcirc-default-nick}. |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
510 |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
511 @item rcirc-default-user-full-name |
84311 | 512 @vindex rcirc-default-user-full-name |
513 @cindex full name | |
514 @cindex real name | |
515 @cindex surname | |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
516 This variable is used to set your ``real name'' on IRC. It defaults |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
517 to the name returned by @code{user-full-name}. If you want to hide |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
518 your full name, you might want to set it to some pseudonym. |
84311 | 519 |
520 @example | |
521 (setq rcirc-default-user-full-name "Curious Minds Want To Know") | |
522 @end example | |
523 | |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
524 @item rcirc-authinfo |
84311 | 525 @vindex rcirc-authinfo |
526 @cindex authentification | |
527 @cindex identification | |
528 @cindex nickserv | |
529 @cindex login | |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
530 This variable is an alist used to automatically identify yourself on |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
531 networks. Each sublist starts with a regular expression that is |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
532 compared to the server address you're connecting to. The second |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
533 element in the list is a symbol representing the method to use, |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
534 followed by the arguments this method requires. |
84311 | 535 |
536 Here is an example to illustrate how you would set it: | |
537 | |
538 @example | |
539 (setq rcirc-authinfo | |
540 '(("freenode" nickserv "bob" "p455w0rd") | |
541 ("freenode" chanserv "bob" "#bobland" "passwd99") | |
542 ("bitlbee" bitlbee "robert" "sekrit"))) | |
543 @end example | |
544 | |
545 And here are the valid method symbols and the arguments they require: | |
546 | |
547 @table @code | |
548 @item nickserv | |
549 @cindex nickserv authentification | |
550 Use this symbol if you need to identify yourself as follows when | |
551 connecting to a network: @code{/msg nickserv identify secret}. The | |
552 necessary arguments are the nickname you want to use this for, and the | |
553 password to use. | |
554 | |
555 Before you can use this method, you will have to register your nick and | |
556 pick a password for it. Contact @code{nickserv} and check out the | |
557 details. (Using @code{/msg nickserv help}, for example.) | |
558 | |
559 @item chanserv | |
560 @cindex chanserv authentification | |
561 Use this symbol if you need to identify yourself as follows if you want | |
562 to join a particular channel: @code{/msg chanserv identify #underground | |
563 secret}. The necessary arguments are the nickname and channel you want | |
564 to use this for, and the password to use. | |
565 | |
566 Before you can use this method, a channel contact must tell you about | |
567 the password to use. Contact @code{chanserv} and check out the details. | |
568 (Using @code{/msg chanserv help}, for example.) | |
569 | |
570 @item bitlbee | |
571 @cindex bitlbee authentification | |
572 Use this symbol if you need to identify yourself in the Bitlbee channel | |
573 as follows: @code{identify secret}. The necessary arguments are the | |
574 nickname you want to use this for, and the password to use. | |
575 | |
576 @cindex gateway to other IM services | |
577 @cindex instant messaging, other services | |
578 @cindex Jabber | |
579 @cindex AIM | |
580 @cindex ICQ | |
581 @cindex MSN | |
582 @cindex Yahoo! | |
583 Bitlbee acts like an IRC server, but in fact it is a gateway to a lot of | |
584 other instant messaging services. You can either install Bitlbee | |
585 locally or use a public Bitlbee server. There, you need to create an | |
586 account with a password. This is the nick and password you need to | |
587 provide for the bitlbee authentification method. | |
588 | |
589 Later, you will tell Bitlbee about your accounts and passwords on all | |
590 the other instant messaging services, and Bitlbee will log you in. All | |
591 @code{rcirc} needs to know, is the login to your Bitlbee account. Don't | |
592 confuse the Bitlbee account with all the other accounts. | |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
593 |
84311 | 594 @end table |
595 | |
87351
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
596 @end table |
ff3b31ef10b4
(Configuration): Document rcirc-server-alist, remove
Alex Schroeder <alex@gnu.org>
parents:
87344
diff
changeset
|
597 |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
598 @node Fighting Information Overload, Hacking and Tweaking, Reference, Top |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
599 @chapter Fighting Information Overload |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
600 @cindex information overload |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
601 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
602 This is the section of the manual that caters to the busy person |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
603 online. There are support channels with several hundred people in |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
604 them. Trying to follow a conversation in these channels can be a |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
605 daunting task. This chapters tells you how @code{rcirc} can help. |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
606 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
607 @menu |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
608 * Channels:: |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
609 * People:: |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
610 * Keywords:: |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
611 * Notices:: |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
612 @end menu |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
613 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
614 @node Channels, People, Fighting Information Overload, Fighting Information Overload |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
615 @section Channels |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
616 @cindex channels |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
617 @cindex modeline |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
618 |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
619 @comment This section copied to the Getting started with rcirc section |
84311 | 620 @kindex C-c C-SPC |
621 @vindex rcirc-track-minor-mode | |
622 @cindex switching channels | |
623 @cindex tracking activity | |
624 @cindex active channel | |
625 @cindex abbreviated channel names | |
626 @cindex modeline tracks activity | |
627 Most people want a notification when something is said on a channel they | |
628 have joined, particularly if they have been addressed directly. There | |
629 is a global minor mode that will do this kind of tracking for you. All | |
630 you need to do is switch it on using @kbd{M-x rcirc-track-minor-mode}. | |
631 To make this permanent, add the following to your init file: | |
632 | |
633 @example | |
634 (rcirc-track-minor-mode 1) | |
635 @end example | |
636 | |
637 When other people say things in buffers that are currently buried (no | |
638 window is showing them), the mode line will now show you the abbreviated | |
639 channel or nick name. Use @kbd{C-c C-@key{SPC}} to switch to these | |
640 buffers. | |
641 | |
642 @vindex rcirc-mode-hook | |
643 If you prefer not to load @code{rcirc} immediately, you can delay the | |
644 activation of this mode: | |
645 | |
646 @example | |
647 (add-hook 'rcirc-mode-hook | |
648 (lambda () | |
649 (rcirc-track-minor-mode 1))) | |
650 @end example | |
651 | |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
652 @cindex busy channels |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
653 If you've joined a very active support channel, tracking activity is |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
654 no longer useful. The channel will be always active. Switching to |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
655 active channels using @kbd{C-c C-@key{SPC}} no longer works as |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
656 expected. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
657 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
658 @kindex C-c C-l |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
659 @cindex low priority channels |
102151
328f4b370b74
Remove duplicate words.
Juanma Barranquero <lekktu@gmail.com>
parents:
102059
diff
changeset
|
660 The solution is to mark this channel as a low priority channel. |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
661 Use @kbd{C-c C-l} to make the current channel a low-priority channel. |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
662 Low priority channels have the modeline indicator ``LowPri''. |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
663 @kbd{C-c C-@key{SPC}} will not switch to low priority channels unless |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
664 you use the @kbd{C-u} prefix. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
665 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
666 @kindex C-c TAB |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
667 @cindex ignored channels |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
668 If you prefer a channel to never show up in the modeline, then you |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
669 have to ignore it. Use @kbd{C-c @key{TAB}} to ignore the current |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
670 channel. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
671 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
672 @node People, Keywords, Channels, Fighting Information Overload |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
673 @section People |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
674 @cindex people, how to ignore |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
675 @cindex nicks, how to ignore |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
676 @cindex friends |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
677 @cindex buddies |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
678 @cindex trolls |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
679 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
680 The most important command available to the discerning IRC user is |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
681 @code{/ignore}. It's the big equalizer online: If people aggravate |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
682 you, just ignore them. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
683 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
684 This is of course a crude all-or-nothing solution. Fear not, |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
685 @code{rcirc} offers alternatives: You can ``brighten'' your buddies |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
686 and ``dim'' certain other nicks that you don't want to ignore |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
687 altogether. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
688 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
689 @table @code |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
690 @item /ignore |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
691 @cindex /ignore |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
692 @cindex ignoring other people |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
693 @cindex trolls, ignoring |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
694 @cindex hide some posts |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
695 @cindex idiots online |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
696 This command toggles the ignore status of a nick, if you provide one. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
697 If you don't provide a nick, the command lists all the nicks you are |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
698 ignoring. All messages by ignored nicks are---you guessed it---ignored. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
699 Since only ``operators'' can kick people from channels, the |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
700 ignore command is often the only way to deal with some of the more |
87357
524874ca5949
(People): Changed /ignore example.
Alex Schroeder <alex@gnu.org>
parents:
87353
diff
changeset
|
701 obnoxious fellows online. Example: @code{/ignore rudybot}. |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
702 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
703 @item /bright |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
704 @cindex /bright |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
705 @cindex highlight other people |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
706 @cindex friends, highlight |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
707 @cindex buddies, highlight |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
708 @cindex nicks, highlight |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
709 @cindex brighten nicks |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
710 This command toggles the bright status of a nick, if you provide one. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
711 If you don't provide a nick, the command lists all the ``brightened'' |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
712 nicks. All messages by brightened nicks are---you guessed |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
713 it---brightened. Use this for your friends. Example: @code{/bright |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
714 rcy}. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
715 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
716 @item /dim |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
717 @cindex /dim |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
718 @cindex soft-ignore other people |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
719 @cindex obnoxious people online |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
720 @cindex rabble online |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
721 This command toggles the dim status of a nick, if you provide one. If |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
722 you don't provide a nick, the command lists all the ``dimmed'' nicks. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
723 All messages by dimmed nicks are---you guessed it---dimmed. Use this |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
724 for boring people and bots. If you are tracking channel activity, |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
725 messages by dimmed nicks will not register as activity. Example: |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
726 @code{/dim fsbot}. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
727 @end table |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
728 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
729 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
730 @node Keywords, Notices, People, Fighting Information Overload |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
731 @section Keywords |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
732 @cindex keywords |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
733 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
734 On a busy channel, you might want to ignore all activity (using |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
735 @kbd{C-c @key{TAB}}) and just watch for certain keywords. The |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
736 following command allows you to highlight certain keywords: |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
737 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
738 @table @code |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
739 @item /keyword |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
740 @cindex /keyword |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
741 This command toggles the highlighting of a keyword, if you provide |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
742 one. If you don't provide a keyword, the current keywords are |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
743 listed. Example: @code{/keyword manual}. |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
744 @end table |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
745 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
746 @node Notices, , Keywords, Fighting Information Overload |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
747 @section Notices |
102151
328f4b370b74
Remove duplicate words.
Juanma Barranquero <lekktu@gmail.com>
parents:
102059
diff
changeset
|
748 @cindex part notices, how to omit |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
749 @cindex join notices, how to omit |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
750 @cindex quit notices, how to omit |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
751 @cindex nick notices, how to omit |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
752 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
753 @kindex C-c C-o |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
754 @cindex low priority channels |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
755 In busy channels you might not be interested in all the joining, |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
756 parting, quitting, and renaming that goes on. You can omit those |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
757 notices using @kbd{C-c C-o}. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
758 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
759 @vindex rcirc-omit-responses |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
760 @cindex away notices, how to omit |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
761 You can control which notices get omitted via the |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
762 @code{rcirc-omit-responses} variable. Here's an example of how to |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
763 omit away messages: |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
764 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
765 @example |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
766 (setq rcirc-omit-responses '("JOIN" "PART" "QUIT" "NICK" "AWAY)) |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
767 @end example |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
768 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
769 @vindex rcirc-omit-threshold |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
770 Notice that these messages will not be omitted if the nick in question |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
771 has recently been active. After all, you don't want to continue a |
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
772 conversation with somebody who just left. That's why @code{rcirc} |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
773 checks recent lines in the buffer to figure out if a nick has been |
87353
941447179902
Changed single spaces after sentence end to double
Alex Schroeder <alex@gnu.org>
parents:
87351
diff
changeset
|
774 active and only omits a message if the nick has not been active. The |
87344
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
775 window @code{rcirc} considers is controlled by the |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
776 @code{rcirc-omit-threshold} variable. |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
777 |
fd687ec7715d
(Top): Fighting Information Overload chapter added.
Alex Schroeder <alex@gnu.org>
parents:
84329
diff
changeset
|
778 @node Hacking and Tweaking, GNU Free Documentation License, Fighting Information Overload, Top |
84311 | 779 @chapter Hacking and Tweaking |
780 @cindex hacking and tweaking | |
781 | |
782 Here are some examples of stuff you can do to configure @code{rcirc}. | |
783 | |
784 @menu | |
785 * Skipping /away messages using handlers:: | |
786 * Using fly spell mode:: | |
787 * Scrolling conservatively:: | |
788 * Changing the time stamp format:: | |
789 * Defining a new command:: | |
790 * Reconnecting after you have lost the connection:: | |
791 @end menu | |
792 | |
793 @node Skipping /away messages using handlers, Using fly spell mode, Hacking and Tweaking, Hacking and Tweaking | |
794 @section Skipping @code{/away} messages using handlers | |
795 @cindex /away messages | |
796 | |
797 @cindex handlers | |
798 @cindex status codes | |
799 The IRC protocol specifies how certain events are signaled from server | |
800 to client. These events have numbers and are dealt with using so-called | |
801 handlers. You can override existing handlers by exploiting the naming | |
802 convention adopted for @code{rcirc}. | |
803 | |
804 Here's how to stop @code{rcirc} from printing @code{/away} messages. | |
805 Since @code{rcirc} doesn't define a 301 handler, you don't need to | |
806 require @code{rcirc} before defining the handler: | |
807 | |
808 @example | |
809 (defun rcirc-handler-301 (process cmd sender args) | |
810 "/away message handler.") | |
811 @end example | |
812 | |
813 @node Using fly spell mode, Scrolling conservatively, Skipping /away messages using handlers, Hacking and Tweaking | |
814 @section Using fly spell mode | |
815 @cindex fly spell | |
816 @cindex spelling | |
817 @cindex spell-checking as you type | |
818 @cindex automatic spelling | |
819 @vindex rcirc-mode-hook | |
820 | |
821 The following code activates Fly Spell Mode | |
822 for @code{rcirc} buffers: | |
823 | |
824 @example | |
825 (add-hook 'rcirc-mode-hook (lambda () | |
826 (flyspell-mode 1))) | |
827 @end example | |
828 | |
829 @xref{Spelling, , Flyspell mode, emacs, The GNU Emacs Manual}, | |
830 for details. | |
831 | |
832 @node Scrolling conservatively, Changing the time stamp format, Using fly spell mode, Hacking and Tweaking | |
833 @section Scrolling conservatively | |
834 @cindex input line | |
835 @cindex scrolling | |
836 @vindex scroll-conservatively | |
837 @vindex rcirc-mode-hook | |
838 | |
839 IRC buffers are constantly growing. If you want to see as much as | |
840 possible at all times, you would want the prompt at the bottom of the | |
841 window when possible. The following snippet uses a local value for | |
842 @code{scroll-conservatively} to achieve this: | |
843 | |
844 @example | |
845 (add-hook 'rcirc-mode-hook | |
846 (lambda () | |
847 (set (make-local-variable 'scroll-conservatively) | |
848 8192))) | |
849 @end example | |
850 | |
851 @xref{Scrolling, , Scrolling conservatively, emacs, The GNU Emacs | |
852 Manual}, for details. | |
853 | |
854 @node Changing the time stamp format, Defining a new command, Scrolling conservatively, Hacking and Tweaking | |
855 @section Changing the time stamp format | |
856 @cindex time stamp | |
857 @cindex date time | |
858 @cindex format time stamp | |
859 @vindex rcirc-time-format | |
860 | |
861 @code{rcirc-time-format} is the format used for the time stamp. Here's | |
862 how to include the date in the time stamp: | |
863 | |
864 @example | |
865 (setq rcirc-time-format "%Y-%m-%d %H:%M ") | |
866 @end example | |
867 | |
868 @node Defining a new command, Reconnecting after you have lost the connection, Changing the time stamp format, Hacking and Tweaking | |
869 @section Defining a new command | |
870 @cindex defining commands | |
871 @cindex commands, defining | |
872 @cindex new commands, defining | |
873 | |
874 Here's a simple new command, @code{/sv}. With it, you can boast about | |
875 your IRC client. It shows how you can use @code{defun-rcirc-command} to | |
876 define new commands. | |
877 | |
878 We're waiting for the definition of this command until @code{rcirc} is loaded | |
879 because @code{defun-rcirc-command} is not yet available, and without | |
880 @code{rcirc} loaded, the command wouldn't do us much good anyway. | |
881 | |
882 @smallexample | |
883 (eval-after-load 'rcirc | |
884 '(defun-rcirc-command sv (arg) | |
885 "Boast about rcirc." | |
886 (interactive "i") | |
887 (rcirc-send-message process target | |
888 (concat "I use " rcirc-id-string)))) | |
889 @end smallexample | |
890 | |
891 @node Reconnecting after you have lost the connection, , Defining a new command, Hacking and Tweaking | |
892 @section Reconnecting after you have lost the connection | |
893 @cindex reconnecting | |
894 @cindex disconnecting servers, reconnecting | |
895 | |
896 If you're chatting from a laptop, then you might be familiar with this | |
897 problem: When your laptop falls asleep and wakes up later, your IRC | |
96374
0f44fb08e72f
American English spelling fix.
Glenn Morris <rgm@gnu.org>
parents:
96372
diff
changeset
|
898 client doesn't realize that it has been disconnected. It takes several |
84311 | 899 minutes until the client decides that the connection has in fact been |
900 lost. The simple solution is to use @kbd{M-x rcirc}. The problem is | |
901 that this opens an @emph{additional} connection, so you'll have two | |
902 copies of every channel buffer --- one dead and one live. | |
903 | |
904 The real answer, therefore, is a @code{/reconnect} command: | |
905 | |
906 @smallexample | |
907 (eval-after-load 'rcirc | |
908 '(defun-rcirc-command reconnect (arg) | |
909 "Reconnect the server process." | |
910 (interactive "i") | |
911 (unless process | |
912 (error "There's no process for this target")) | |
913 (let* ((server (car (process-contact process))) | |
914 (port (process-contact process :service)) | |
915 (nick (rcirc-nick process)) | |
916 channels query-buffers) | |
917 (dolist (buf (buffer-list)) | |
918 (with-current-buffer buf | |
919 (when (eq process (rcirc-buffer-process)) | |
920 (remove-hook 'change-major-mode-hook | |
921 'rcirc-change-major-mode-hook) | |
922 (if (rcirc-channel-p rcirc-target) | |
923 (setq channels (cons rcirc-target channels)) | |
924 (setq query-buffers (cons buf query-buffers)))))) | |
925 (delete-process process) | |
926 (rcirc-connect server port nick | |
927 rcirc-default-user-name | |
928 rcirc-default-user-full-name | |
929 channels)))) | |
930 @end smallexample | |
931 | |
932 @node GNU Free Documentation License, Key Index, Hacking and Tweaking, Top | |
933 @appendix GNU Free Documentation License | |
934 @include doclicense.texi | |
935 | |
936 | |
937 @node Key Index, Variable Index, GNU Free Documentation License, Top | |
938 @unnumbered Key Index | |
939 @printindex ky | |
940 | |
941 @node Variable Index, Index, Key Index, Top | |
942 @unnumbered Variable Index | |
943 @printindex vr | |
944 | |
945 @node Index, , Variable Index, Top | |
946 @unnumbered Index | |
947 @printindex cp | |
948 | |
949 @bye | |
950 | |
951 @ignore | |
952 arch-tag: 2589e562-3843-4ffc-8c2f-477cbad57c01 | |
953 @end ignore |