annotate man/rcirc.texi @ 79527:fbf1ae5bfff7

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