annotate man/rcirc.texi @ 74809:2ae1c7a27a0a

(Info-fontify-maximum-menu-size): Bump to 1000000. (Info-fontify-node): Do fontify indices.
author Chong Yidong <cyd@stupidchicken.com>
date Fri, 22 Dec 2006 19:49:08 +0000
parents fb1ec0388fdf
children 3d45362f1d38
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1 \input texinfo
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
2 @c %**start of header
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
3 @setfilename ../info/rcirc
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
4 @settitle rcirc Manual
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
5 @c %**end of header
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
6
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
7 @copying
69681
11b616eddda4 @copyright{}, no indentation in @copying{}
Karl Berry <karl@gnu.org>
parents: 68441
diff changeset
8 Copyright @copyright{} 2006 Free Software Foundation, Inc.
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
9
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
10 @quotation
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
11 Permission is granted to copy, distribute and/or modify this document
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
12 under the terms of the GNU Free Documentation License, Version 1.2 or
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
13 any later version published by the Free Software Foundation; with no
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
14 Invariant Sections, with the Front-Cover texts being ``A GNU Manual'',
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
15 and with the Back-Cover Texts as in (a) below. A copy of the license is
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
16 included in the section entitled ``GNU Free Documentation License'' in
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
17 the Emacs manual.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
18
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
19 (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
20 this GNU Manual, like GNU software. Copies published by the Free
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
21 Software Foundation raise funds for GNU development.''
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
22
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
23 This document is part of a collection distributed under the GNU Free
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
24 Documentation License. If you want to distribute this document
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
25 separately from the collection, you can do so by adding a copy of the
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
26 license to the document, as described in section 6 of the license.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
27 @end quotation
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
28 @end copying
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
29
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
30 @dircategory Emacs
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
31 @direntry
68441
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
32 * Rcirc: (rcirc). Internet Relay Chat (IRC) client.
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
33 @end direntry
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
34
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
35 @titlepage
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
36 @title rcirc Manual
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
37 @page
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
38 @vskip 0pt plus 1filll
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
39 @insertcopying
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
40 @end titlepage
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
41
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
42 @ifnottex
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
43 @node Top, Basics, (dir), (dir)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
44 @top rcirc Manual
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
45 @end ifnottex
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
46
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
47 @code{rcirc} is an Emacs IRC client.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
48
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
49 IRC (Internet Relay Chat) is a multi-user chat protocol. Users
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
50 communicate with each other in real-time. Communication occurs both in
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
51 topic channels which are collections of many users, or privately, with
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
52 just one other user.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
53
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
54 @menu
68441
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
55 * Basics::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
56 * Reference::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
57 * Hacking and Tweaking::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
58 * Key Index::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
59 * Variable Index::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
60 * Index::
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
61
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
62 @detailmenu
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
63 --- The Detailed Node Listing ---
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
64
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
65 Basics
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
66
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
67 * Internet Relay Chat::
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
68 * Getting started with rcirc::
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
69
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
70 Reference
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
71
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
72 * rcirc commands::
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
73 * Useful IRC commands::
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
74 * Configuration::
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
75
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
76 Hacking and Tweaking
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
77
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
78 * Skipping /away messages using handlers::
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
79 * Using fly spell mode::
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
80 * Scrolling conservatively::
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
81 * Changing the time stamp format::
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
82 * Defining a new command::
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
83 * Reconnecting after you have lost the connection::
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
84
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
85 @end detailmenu
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
86 @end menu
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
87
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
88 @node Basics, Reference, Top, Top
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
89 @chapter Basics
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
90
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
91 This chapter contains a brief introduction to IRC (Internet Relay Chat),
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
92 and a quick tutorial on @code{rcirc}.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
93
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
94 @menu
68441
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
95 * Internet Relay Chat::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
96 * Getting started with rcirc::
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
97 @end menu
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
98
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
99 @node Internet Relay Chat, Getting started with rcirc, Basics, Basics
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
100 @section Internet Relay Chat
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
101 @cindex internet relay chat
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
102 @cindex irc
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
103
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
104 @cindex channel
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
105 @dfn{Internet Relay Chat} (IRC) is a form of instant communication over the
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
106 Internet. It is mainly designed for group (many-to-many) communication
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
107 in discussion forums called channels, but also allows one-to-one
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
108 communication.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
109
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
110 @cindex instant messaging, comparison
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
111 @cindex server
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
112 @cindex network
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
113 Contrary to most Instant Messenger (IM) systems, users usually don't
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
114 connect to a central server. Instead, users connect to a random server
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
115 in a network, and the servers share information between them.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
116
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
117 Here's a typical example:
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
118
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
119 @cindex redirection to random servers
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
120 When you connect to the Freenode network
72602
fb1ec0388fdf (Internet Relay Chat, Useful IRC commands): Don't use @indicateurl.
Eli Zaretskii <eliz@gnu.org>
parents: 72377
diff changeset
121 (@code{http://freenode.net/}), you point your IRC client at the
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
122 server @code{irc.freenode.net}. That server will redirect your client
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
123 to a random server on the network, such as @code{zelazny.freenode.net}.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
124
68436
945e62b87853 Some @cindex changes, some changes from @kbd to
Alex Schroeder <alex@gnu.org>
parents: 68429
diff changeset
125 @cindex channel name
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
126 @cindex # starts a channel name
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
127 Once you're connected, you can send messages to all other users
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
128 connected to the same network, and you can join all channels on the same
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
129 network. You might join the @code{#emacs} and the @code{#rcirc}
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
130 channels, for example. (Typically, channel names begin with a hash
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
131 character.)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
132
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
133 Once you have joined a channel, anything you type will be broadcast to
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
134 all the other users on the same channel.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
135
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
136 @cindex addressing other people
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
137 @cindex other people, addressing them
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
138 @cindex talk to other people
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
139 If you want to address someone specifically, for example as an answer to
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
140 a question, it is customary to prefix the message with the nick followed
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
141 by a colon, like this:
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
142
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
143 @example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
144 deego: fsbot rules!
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
145 @end example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
146
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
147 @cindex nick completion
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
148 @cindex completion of nicks
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
149 @kindex TAB
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
150 Since this is so common, you can use @key{TAB} to do nick completion.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
151
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
152 @node Getting started with rcirc, , Internet Relay Chat, Basics
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
153 @section Getting started with rcirc
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
154 @cindex getting started
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
155 @cindex connecting to a server
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
156
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
157 @cindex irc command
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
158 Use the command @kbd{M-x irc} to connect using the defaults.
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
159 @xref{Configuration}, if you want to change the defaults.
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
160
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
161 Use @kbd{C-u M-x irc} if you don't want to use the defaults, eg. if you
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
162 want to connect to a different network, or connect to the same network
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
163 using a different nick. This will prompt you for four things:
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
164
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
165 @table @asis
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
166 @cindex server, connecting
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
167 @cindex Freenode network
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
168 @item IRC server
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
169 What server do you want to connect to? All the servers in a particular
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
170 network are equivalent. Some networks use a round-robin system where a
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
171 single server redirects new connections to a random server in the
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
172 network. @code{irc.freenode.net} is such a server for the Freenode
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
173 network. Freenode provides the network ``for the Free and Open Source
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
174 Software communities, for not-for-profit organisations and for related
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
175 communities and organizations.''
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
176
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
177 @cindex port, connecting
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
178 @cindex 6667, default IRC port
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
179 @item IRC port
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
180 All network connections require a port. Just as web servers and clients
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
181 use port 80 per default, IRC uses port 6667 per default. You rarely
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
182 have to use a different port.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
183
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
184 @cindex nick, connecting
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
185 @cindex changing nick
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
186 @cindex name changes
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
187 @item IRC nick
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
188 @vindex user-login-name
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
189 Every users needs a handle on-line. You will automatically be assigned
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
190 a slightly different nick if your chosen nick is already in use. If
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
191 your @code{user-login-name} is @code{alex}, and this nick is already
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
192 in use, you might for example get assigned the nick @code{alex`}.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
193
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
194 @cindex channels, connecting
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
195 @cindex initial channels
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
196 @cindex startup channels
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
197 @item Channels
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
198 A space separated list of channels you want to join when connecting.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
199 You don't need to join any channels, if you just want to have one-to-one
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
200 conversations with friends on the same network. If you're new to the
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
201 Freenode network, join @code{#emacs}, the channel about all things
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
202 Emacs, or join @code{#rcirc}, the channel about @code{rcirc}.
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
203 @end table
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
204
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
205 @cindex server buffer
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
206 When you have answered these questions, @code{rcirc} will create a server
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
207 buffer, which will be named something like @code{*irc.freenode.net*},
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
208 and a channel buffer for each of the channels you wanted to join.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
209
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
210 @kindex RET
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
211 @cindex talking
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
212 @cindex communicating
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
213 To talk in a channel, just type in what you want to say in a channel
68436
945e62b87853 Some @cindex changes, some changes from @kbd to
Alex Schroeder <alex@gnu.org>
parents: 68429
diff changeset
214 buffer, and press @key{RET}.
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
215
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
216 @kindex C-c C-c
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
217 @cindex multiline messages
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
218 @cindex messages, multiple lines
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
219 @cindex pasting multiple lines
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
220 @cindex edit message before sending
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
221 If you want to paste multiple lines, such as source code, you can use
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
222 @kbd{C-c C-c} to edit your message in a separate buffer. Use @kbd{C-c
68436
945e62b87853 Some @cindex changes, some changes from @kbd to
Alex Schroeder <alex@gnu.org>
parents: 68429
diff changeset
223 C-c} to finish editing. You still need to press @key{RET} to send it,
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
224 though. Generally, IRC users don't like people pasting more than around
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
225 four lines of code, so use with care.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
226
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
227 @node Reference, Hacking and Tweaking, Basics, Top
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
228 @chapter Reference
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
229 @cindex reference
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
230
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
231 This is the reference section of the manual. It is not complete. For
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
232 complete listings of @code{rcirc} features, use Emacs built-in
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
233 documentation.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
234
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
235 @menu
68441
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
236 * rcirc commands::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
237 * Useful IRC commands::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
238 * Configuration::
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
239 @end menu
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
240
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
241 @node rcirc commands, Useful IRC commands, Reference, Reference
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
242 @section rcirc commands
68436
945e62b87853 Some @cindex changes, some changes from @kbd to
Alex Schroeder <alex@gnu.org>
parents: 68429
diff changeset
243 @cindex rcirc commands
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
244 @cindex commands
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
245
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
246 @kindex C-h m
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
247 This is a list of commands that you may use in @code{rcirc}. It is not
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
248 complete. For a complete listing, press @kbd{C-h m} in an @code{rcirc}
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
249 buffer.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
250
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
251 In addition to using regular Emacs key bindings, you can call them by
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
252 typing them into an @code{rcirc} buffer.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
253
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
254 @cindex call commands
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
255 @cindex typing commands
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
256 @cindex commands
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
257 For instance, instead of using the command @kbd{C-c C-j} to join a new
68436
945e62b87853 Some @cindex changes, some changes from @kbd to
Alex Schroeder <alex@gnu.org>
parents: 68429
diff changeset
258 channel, you may type this in an @code{rcirc} buffer, and press @key{RET}:
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
259
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
260 @example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
261 /join #emacs
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
262 @end example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
263
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
264 @cindex / starts a command
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
265 @cindex messages starting with a slash disappear
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
266 @cindex disappearing messages if starting with a slash
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
267 @cindex slash hides message
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
268 This is why you cannot start a message with a slash. You will have to
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
269 precede the command with a space, or rewrite your message in order to
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
270 send it to a channel.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
271
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
272 @cindex multiple words as parameters
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
273 @cindex string delimiters
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
274 @cindex quotes
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
275 @cindex double-quotes
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
276 Many commands take parameters. IRC commands usually ignore string
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
277 delimiters. Neither quote nor double-quote have special meanings in
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
278 IRC.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
279
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
280 @example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
281 /nick "alex schroeder"
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
282 @end example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
283
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
284 This will try to change your nick to @code{"alex}. Usually this will
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
285 fail because the double quote character is not a legal character for
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
286 nicks.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
287
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
288 @cindex case insensitive commands
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
289 These commands are case insensitive.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
290
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
291 @cindex new command
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
292 @cindex unknown command
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
293 @cindex command unknown
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
294 If a command isn't known by @code{rcirc}, it will simply be sent along to the
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
295 server. There is a list of some useful commands like that in the next
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
296 section.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
297
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
298 @table @kbd
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
299 @item C-c C-j
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
300 @kindex C-c C-j
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
301 @cindex /join
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
302 @cindex join channels
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
303 @cindex other channels
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
304 @cindex rooms, joining
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
305 @cindex discussion, joining
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
306 This joins a channel such as @code{#rcirc} or @code{#emacs}. On most
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
307 networks, anybody can create new channels. If you want to talk with
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
308 some friends, for example, all you have to do is agree on a valid
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
309 channel name and join that channel. (Also @code{/join #emacs}.)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
310
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
311 @item C-c C-p
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
312 @kindex C-c C-p
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
313 @cindex /part
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
314 @cindex part a channel
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
315 @cindex leave a channel
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
316 @cindex disconnect from a channel
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
317 @cindex stop talking on a channel
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
318 @cindex kill channel buffer
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
319 This leaves the current channel. You can optionally provide a reason
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
320 for parting. When you kill a channel buffer, you automatically part the
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
321 corresponding channel. (Also @code{/part you are too weird!}.)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
322
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
323 @item C-c C-r
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
324 @kindex C-c C-r
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
325 @cindex /nick
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
326 @cindex change name
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
327 @cindex nick changing
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
328 @cindex rename yourself
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
329 @cindex other name
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
330 This changes your nick to some other name. Your nick must be unique
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
331 across the network. Most networks don't allow too many nick changes in
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
332 quick succession, and have restrictions on the valid characters in nick
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
333 names. (Also @code{/nick alex-test})
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
334
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
335 @item C-c C-w
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
336 @kindex C-c C-w
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
337 @cindex /whois
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
338 @cindex who are these people
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
339 @cindex identifying people
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
340 @cindex channels other people are on
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
341 @cindex what channels people are on
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
342 Gives you some basic information about a nick. This often includes what
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
343 other channels people are on. (Also @code{/whois fsbot}.)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
344
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
345 @item C-c C-q
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
346 @kindex C-c C-q
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
347 @cindex /query
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
348 @cindex starting a private conversation
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
349 @cindex one-to-one conversation
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
350 @cindex talk privately
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
351 @cindex private conversation
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
352 @cindex contact one person only
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
353 @cindex query a person
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
354 Starts a one-to-one conversation with another person on the same
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
355 network. A new buffer will be created for this conversation. It works
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
356 like a channel with only two members. (Also @code{/query fsbot}.)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
357
68436
945e62b87853 Some @cindex changes, some changes from @kbd to
Alex Schroeder <alex@gnu.org>
parents: 68429
diff changeset
358 @item C-c @key{RET}
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
359 @kindex C-c RET
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
360 @cindex /msg
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
361 @cindex single message
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
362 @cindex message sending
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
363 This sends a single message to a nick. Like with @kbd{C-c C-q}, a new
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
364 buffer is created, where the response from the other party will show
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
365 up. (Also @code{/msg nickserv identify secret}.)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
366
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
367 @item C-c C-x
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
368 @kindex C-c C-x
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
369 @cindex /quit
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
370 @cindex quit
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
371 @cindex disconnect
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
372 @cindex kill connection
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
373 @cindex connection end
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
374 @cindex part all channels
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
375 @cindex end connection
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
376 @cindex server buffer killing
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
377 @cindex reason for quitting
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
378 This disconnects from the server and parts all channels. You can
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
379 optionally provide a reason for quitting. When you kill the server
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
380 buffer, you automatically quit the server and part all channels. (Also
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
381 @code{/quit ZZZzzz...}.)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
382 @end table
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
383
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
384 Some commands may not have a key binding, but only be available as typed
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
385 commands, such as:
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
386
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
387 @table @code
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
388 @item /ignore
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
389 @cindex /ignore
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
390 @cindex ignoring other people
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
391 @cindex trolls, ignoring
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
392 @cindex hide some posts
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
393 @cindex idiots online
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
394 This command toggles the ignore status of a nick, if you provide one.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
395 If you don't provide a nick, the command lists all the nicks you are
68436
945e62b87853 Some @cindex changes, some changes from @kbd to
Alex Schroeder <alex@gnu.org>
parents: 68429
diff changeset
396 ignoring. All messages by ignored nicks are---you guessed it---ignored.
945e62b87853 Some @cindex changes, some changes from @kbd to
Alex Schroeder <alex@gnu.org>
parents: 68429
diff changeset
397 Since only ``operators'' can kick people from channels, the
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
398 ignore command is often the only way to deal with some of the more
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
399 obnoxious fellows online. Example: @code{/ignore xah}.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
400 @end table
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
401
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
402 @node Useful IRC commands, Configuration, rcirc commands, Reference
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
403 @section Useful IRC commands
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
404 @cindex irc commands
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
405 @cindex commands
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
406
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
407 As mentioned, if a command isn't known by @code{rcirc}, it will simply be sent
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
408 along to the server. Some such commands are available on nearly all IRC
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
409 servers, such as:
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
410
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
411 @table @code
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
412 @item /away
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
413 @cindex /away
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
414 @cindex away status
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
415 @cindex pause status
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
416 @cindex unavailable status
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
417 @cindex set away status
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
418 This sets your status as ``being away'' if you provide a reason, or sets
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
419 your status as ``being back'' if you do not. People can use the
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
420 @kbd{C-c C-w} command to check your status. Example: @code{/away food}.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
421 @end table
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
422
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
423 @cindex irc resources
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
424 @cindex help about irc
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
425 Typical IRC servers implement many more commands. You can read more
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
426 about the fantastic world of IRC online at
72602
fb1ec0388fdf (Internet Relay Chat, Useful IRC commands): Don't use @indicateurl.
Eli Zaretskii <eliz@gnu.org>
parents: 72377
diff changeset
427 @uref{http://www.irchelp.org/, the Internet Relay Chat (IRC) help
fb1ec0388fdf (Internet Relay Chat, Useful IRC commands): Don't use @indicateurl.
Eli Zaretskii <eliz@gnu.org>
parents: 72377
diff changeset
428 archive}.
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
429
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
430 @node Configuration, , Useful IRC commands, Reference
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
431 @section Configuration
68436
945e62b87853 Some @cindex changes, some changes from @kbd to
Alex Schroeder <alex@gnu.org>
parents: 68429
diff changeset
432 @cindex configuring rcirc
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
433
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
434 These are some variables you can change to configure @code{rcirc} to your
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
435 liking.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
436
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
437 @table @code
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
438 @item rcirc-default-server
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
439 @vindex rcirc-default-server
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
440 the default server to connect to.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
441
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
442 @item rcirc-default-port
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
443 @vindex rcirc-default-port
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
444 the default port to connect to.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
445
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
446 @item rcirc-default-nick
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
447 @vindex rcirc-default-nick
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
448 the default nick to use.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
449 @end table
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
450
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
451 @example
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
452 (setq rcirc-default-server "irc.mozilla.org"
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
453 rcirc-default-port 6666
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
454 rcirc-default-nick "alx")
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
455 @end example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
456
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
457 @vindex rcirc-default-user-full-name
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
458 @cindex full name
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
459 @cindex real name
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
460 @cindex surname
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
461 @code{rcirc-default-user-full-name} is used to set your ``real name'' on
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
462 IRC. It defaults to @code{user-full-name}. If you want to hide your
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
463 full name, you might want to set it to some pseudonym.
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
464
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
465 @example
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
466 (setq rcirc-default-user-full-name "Curious Minds Want To Know")
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
467 @end example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
468
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
469 @vindex rcirc-startup-channels-alist
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
470 @cindex channels, configuration
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
471 @cindex initial channels, configuration
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
472 @cindex startup channels, configuration
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
473 @code{rcirc-startup-channels-alist} is the alist of channels to join
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
474 when connecting to a particular network. An alist is a list of lists.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
475 Each sublist starts with a regular expression that is compared to the
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
476 server address you're connecting to. The remaining sublist items are
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
477 the channels to join.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
478
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
479 @example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
480 (setq rcirc-startup-channels-alist
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
481 '(("\\.freenode\\.net$" "#emacs" "#rcirc" "#wiki")))
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
482 @end example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
483
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
484 Note the subtle problem, here --- IRC clients connect to servers, and
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
485 there is no way of knowing which servers belong to a particular network.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
486 In the example above we're exploiting a naming convention used by within
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
487 the Freenode network --- all servers within the network have a host in
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
488 the @code{freenode.net} domain.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
489
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
490 @vindex rcirc-authinfo
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
491 @cindex authentification
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
492 @cindex identification
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
493 @cindex nickserv
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
494 @cindex login
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
495 @code{rcirc-authinfo} is an alist used to automatically identify
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
496 yourself on networks. Each sublist starts with a regular expression
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
497 that is compared to the server address you're connecting to. The second
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
498 element in the list is a symbol representing the method to use, followed
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
499 by the arguments this method requires.
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
500
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
501 Here is an example to illustrate how you would set it:
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
502
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
503 @example
72377
5fd25292c118 (Configuration): Use correct variable in rcirc-authinfo
Alex Schroeder <alex@gnu.org>
parents: 71862
diff changeset
504 (setq rcirc-authinfo
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
505 '(("freenode" nickserv "bob" "p455w0rd")
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
506 ("freenode" chanserv "bob" "#bobland" "passwd99")
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
507 ("bitlbee" bitlbee "robert" "sekrit")))
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
508 @end example
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
509
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
510 And here are the valid method symbols and the arguments they require:
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
511
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
512 @table @code
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
513 @item nickserv
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
514 @cindex nickserv authentification
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
515 Use this symbol if you need to identify yourself as follows when
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
516 connecting to a network: @code{/msg nickserv identify secret}. The
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
517 necessary arguments are the nickname you want to use this for, and the
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
518 password to use.
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
519
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
520 Before you can use this method, you will have to register your nick and
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
521 pick a password for it. Contact @code{nickserv} and check out the
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
522 details. (Using @code{/msg nickserv help}, for example.)
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
523
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
524 @item chanserv
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
525 @cindex chanserv authentification
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
526 Use this symbol if you need to identify yourself as follows if you want
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
527 to join a particular channel: @code{/msg chanserv identify #underground
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
528 secret}. The necessary arguments are the nickname and channel you want
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
529 to use this for, and the password to use.
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
530
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
531 Before you can use this method, a channel contact must tell you about
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
532 the password to use. Contact @code{chanserv} and check out the details.
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
533 (Using @code{/msg chanserv help}, for example.)
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
534
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
535 @item bitlbee
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
536 @cindex bitlbee authentification
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
537 Use this symbol if you need to identify yourself in the Bitlbee channel
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
538 as follows: @code{identify secret}. The necessary arguments are the
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
539 nickname you want to use this for, and the password to use.
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
540
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
541 @cindex gateway to other IM services
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
542 @cindex instant messaging, other services
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
543 @cindex Jabber
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
544 @cindex AIM
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
545 @cindex ICQ
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
546 @cindex MSN
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
547 @cindex Yahoo!
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
548 Bitlbee acts like an IRC server, but in fact it is a gateway to a lot of
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
549 other instant messaging services. You can either install Bitlbee
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
550 locally or use a public Bitlbee server. There, you need to create an
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
551 account with a password. This is the nick and password you need to
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
552 provide for the bitlbee authentification method.
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
553
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
554 Later, you will tell Bitlbee about your accounts and passwords on all
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
555 the other instant messaging services, and Bitlbee will log you in. All
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
556 @code{rcirc} needs to know, is the login to your Bitlbee account. Don't
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
557 confuse the Bitlbee account with all the other accounts.
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
558 @end table
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
559
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
560 @kindex C-c C-SPC
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
561 @vindex rcirc-track-minor-mode
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
562 @cindex switching channels
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
563 @cindex tracking activity
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
564 @cindex active channel
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
565 @cindex abbreviated channel names
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
566 @cindex modeline tracks activity
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
567 Most people want a notification when something is said on a channel they
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
568 have joined, particularly if they have been addressed directly. There
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
569 is a global minor mode that will do this kind of tracking for you. All
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
570 you need to do is switch it on using @kbd{M-x rcirc-track-minor-mode}.
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
571 To make this permanent, add the following to your init file:
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
572
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
573 @example
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
574 (rcirc-track-minor-mode 1)
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
575 @end example
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
576
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
577 When other people say things in buffers that are currently buried (no
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
578 window is showing them), the mode line will now show you the abbreviated
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
579 channel or nick name. Use @kbd{C-c C-@key{SPC}} to switch to these
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
580 buffers.
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
581
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
582 @vindex rcirc-mode-hook
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
583 If you prefer not to load @code{rcirc} immediately, you can delay the
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
584 activation of this mode:
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
585
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
586 @example
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
587 (add-hook 'rcirc-mode-hook
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
588 (lambda ()
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
589 (rcirc-track-minor-mode 1)))
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
590 @end example
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
591
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
592 @node Hacking and Tweaking, Key Index, Reference, Top
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
593 @chapter Hacking and Tweaking
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
594 @cindex hacking and tweaking
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
595
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
596 Here are some examples of stuff you can do to configure @code{rcirc}.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
597
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
598 @menu
68441
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
599 * Skipping /away messages using handlers::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
600 * Using fly spell mode::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
601 * Scrolling conservatively::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
602 * Changing the time stamp format::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
603 * Defining a new command::
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
604 * Reconnecting after you have lost the connection::
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
605 @end menu
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
606
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
607 @node Skipping /away messages using handlers, Using fly spell mode, Hacking and Tweaking, Hacking and Tweaking
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
608 @section Skipping @code{/away} messages using handlers
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
609 @cindex /away messages
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
610
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
611 @cindex handlers
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
612 @cindex status codes
68441
e09d03f931a8 Capitalize dir entry for consistency with the entry
Luc Teirlinck <teirllm@auburn.edu>
parents: 68436
diff changeset
613 The IRC protocol specifies how certain events are signaled from server
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
614 to client. These events have numbers and are dealt with using so-called
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
615 handlers. You can override existing handlers by exploiting the naming
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
616 convention adopted for @code{rcirc}.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
617
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
618 Here's how to stop @code{rcirc} from printing @code{/away} messages.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
619 Since @code{rcirc} doesn't define a 301 handler, you don't need to
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
620 require @code{rcirc} before defining the handler:
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
621
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
622 @example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
623 (defun rcirc-handler-301 (process cmd sender args)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
624 "/away message handler.")
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
625 @end example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
626
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
627 @node Using fly spell mode, Scrolling conservatively, Skipping /away messages using handlers, Hacking and Tweaking
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
628 @section Using fly spell mode
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
629 @cindex fly spell
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
630 @cindex spelling
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
631 @cindex spell-checking as you type
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
632 @cindex automatic spelling
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
633 @vindex rcirc-mode-hook
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
634
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
635 The following code activates Fly Spell Mode
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
636 for @code{rcirc} buffers:
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
637
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
638 @example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
639 (add-hook 'rcirc-mode-hook (lambda ()
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
640 (flyspell-mode 1)))
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
641 @end example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
642
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
643 @xref{Spelling, , Flyspell mode, emacs, The GNU Emacs Manual},
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
644 for details.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
645
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
646 @node Scrolling conservatively, Changing the time stamp format, Using fly spell mode, Hacking and Tweaking
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
647 @section Scrolling conservatively
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
648 @cindex input line
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
649 @cindex scrolling
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
650 @vindex scroll-conservatively
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
651 @vindex rcirc-mode-hook
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
652
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
653 IRC buffers are constantly growing. If you want to see as much as
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
654 possible at all times, you would want the prompt at the bottom of the
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
655 window when possible. The following snippet uses a local value for
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
656 @code{scroll-conservatively} to achieve this:
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
657
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
658 @example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
659 (add-hook 'rcirc-mode-hook
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
660 (lambda ()
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
661 (set (make-local-variable 'scroll-conservatively)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
662 8192)))
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
663 @end example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
664
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
665 @xref{Scrolling, , Scrolling conservatively, emacs, The GNU Emacs
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
666 Manual}, for details.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
667
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
668 @node Changing the time stamp format, Defining a new command, Scrolling conservatively, Hacking and Tweaking
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
669 @section Changing the time stamp format
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
670 @cindex time stamp
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
671 @cindex date time
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
672 @cindex format time stamp
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
673 @vindex rcirc-time-format
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
674
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
675 @code{rcirc-time-format} is the format used for the time stamp. Here's
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
676 how to include the date in the time stamp:
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
677
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
678 @example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
679 (setq rcirc-time-format "%Y-%m-%d %H:%M ")
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
680 @end example
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
681
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
682 @node Defining a new command, Reconnecting after you have lost the connection, Changing the time stamp format, Hacking and Tweaking
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
683 @section Defining a new command
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
684 @cindex defining commands
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
685 @cindex commands, defining
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
686 @cindex new commands, defining
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
687
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
688 Here's a simple new command, @code{/sv}. With it, you can boast about
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
689 your IRC client. It shows how you can use @code{defun-rcirc-command} to
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
690 define new commands.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
691
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
692 We're waiting for the definition of this command until @code{rcirc} is loaded
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
693 because @code{defun-rcirc-command} is not yet available, and without
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
694 @code{rcirc} loaded, the command wouldn't do us much good anyway.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
695
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
696 @smallexample
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
697 (eval-after-load 'rcirc
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
698 '(defun-rcirc-command sv (arg)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
699 "Boast about rcirc."
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
700 (interactive "i")
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
701 (rcirc-send-message process target
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
702 (concat "I use " rcirc-id-string))))
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
703 @end smallexample
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
704
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
705 @node Reconnecting after you have lost the connection, , Defining a new command, Hacking and Tweaking
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
706 @section Reconnecting after you have lost the connection
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
707 @cindex reconnecting
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
708 @cindex disconnecting servers, reconnecting
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
709
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
710 If you're chatting from a laptop, then you might be familiar with this
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
711 problem: When your laptop falls asleep and wakes up later, your IRC
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
712 client doesn't realise that it has been disconnected. It takes several
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
713 minutes until the client decides that the connection has in fact been
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
714 lost. The simple solution is to use @kbd{M-x rcirc}. The problem is
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
715 that this opens an @emph{additional} connection, so you'll have two
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
716 copies of every channel buffer --- one dead and one live.
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
717
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
718 The real answer, therefore, is a @code{/reconnect} command:
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
719
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
720 @smallexample
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
721 (eval-after-load 'rcirc
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
722 '(defun-rcirc-command reconnect (arg)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
723 "Reconnect the server process."
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
724 (interactive "i")
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
725 (unless process
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
726 (error "There's no process for this target"))
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
727 (let* ((server (car (process-contact process)))
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
728 (port (process-contact process :service))
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
729 (nick (rcirc-nick process))
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
730 channels query-buffers)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
731 (dolist (buf (buffer-list))
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
732 (with-current-buffer buf
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
733 (when (eq process (rcirc-buffer-process))
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
734 (remove-hook 'change-major-mode-hook
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
735 'rcirc-change-major-mode-hook)
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
736 (if (rcirc-channel-p rcirc-target)
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
737 (setq channels (cons rcirc-target channels))
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
738 (setq query-buffers (cons buf query-buffers))))))
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
739 (delete-process process)
71862
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
740 (rcirc-connect server port nick
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
741 rcirc-default-user-name
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
742 rcirc-default-user-full-name
99b8c897395e Fix typos.
Alex Schroeder <alex@gnu.org>
parents: 71589
diff changeset
743 channels))))
68411
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
744 @end smallexample
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
745
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
746 @node Key Index, Variable Index, Hacking and Tweaking, Top
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
747 @unnumbered Key Index
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
748 @printindex ky
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
749
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
750 @node Variable Index, Index, Key Index, Top
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
751 @unnumbered Variable Index
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
752 @printindex vr
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
753
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
754 @node Index, , Variable Index, Top
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
755 @unnumbered Index
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
756 @printindex cp
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
757
44be17a30703 New file.
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
758 @bye
68429
df6222347a31 Add arch tagline
Miles Bader <miles@gnu.org>
parents: 68411
diff changeset
759
df6222347a31 Add arch tagline
Miles Bader <miles@gnu.org>
parents: 68411
diff changeset
760 @ignore
df6222347a31 Add arch tagline
Miles Bader <miles@gnu.org>
parents: 68411
diff changeset
761 arch-tag: 2589e562-3843-4ffc-8c2f-477cbad57c01
df6222347a31 Add arch tagline
Miles Bader <miles@gnu.org>
parents: 68411
diff changeset
762 @end ignore