ERC: Sync with upstream.
[bpt/emacs.git] / lisp / erc / ChangeLog
CommitLineData
688d0744
GM
12008-11-19 Glenn Morris <rgm@gnu.org>
2
3 * erc-compat.el (help-function-arglist): Autoload it.
4
1c86baa4
MO
52008-10-03 Michael Olson <mwolson@gnu.org>
6
7 * erc-dcc.el (english): Increase size heading by two places.
8 (erc-dcc-byte-count): Move higher.
9 (erc-dcc-do-LIST-command): Use erc-dcc-byte-count to get accurate
10 count. Coerce byte total to floating point before performing
11 computation, otherwise division will truncate to 0.
12 (erc-dcc-append-contents): Update erc-dcc-byte-count.
13 (erc-dcc-get-filter): Don't update erc-dcc-byte-count, because
14 that will give incorrect size totals. Instead, figure out how
15 much we have by summing byte count and current buffer size.
16 (erc-dcc-get-sentinel): Don't update erc-dcc-byte-count.
17
182008-10-01 Michael Olson <mwolson@gnu.org>
19
20 * erc-dcc.el (erc-pack-int): Make sure returned string is within 4
21 bytes. Always return a 4-byte string, so that we conform to the
22 CTCP spec.
23 (erc-most-positive-int-bytes): New constant representing the
24 number of bytes that most-positive-fixnum can be stored in.
25 (erc-most-positive-int-msb): New constant representing the
26 contents of the most significant byte of most-positive-fixnum.
27 (erc-unpack-int): Make sure that the integer we get back can be
28 represented in Emacs.
29 (erc-dcc-do-CLOSE-command): Update docstring. Don't use the line
30 variable. Try to disambiguate between type and nick when only one
31 is provided. Validate both type and nick arguments. Allow
32 matching by just nick.
33 (erc-dcc-append-contents): Set inhibit-read-only to t. Prevent
34 auto-compression from triggering when we write the contents to a
35 file.
36 (erc-dcc-get-file): Prevent auto-compression from triggering when
37 we truncate a file.
38
9e2a2647
DN
392008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
40
41 * erc.el: Remove code for Carbon.
42
07da87e9
GM
432008-06-07 Glenn Morris <rgm@gnu.org>
44
45 * erc/erc-autoaway.el, erc/erc-ibuffer.el, erc/erc-menu.el:
46 * erc/erc-stamp.el, erc/erc.el: Remove unnecessary eval-when-compiles.
47
40ef8242
MO
482008-05-30 Diane Murray <disumu@x3y2z1.net>
49
50 * erc-backend.el (328): New response handler.
51
ba60bd44 52 * erc.el (english): Add 328 to catalog.
40ef8242
MO
53
542008-05-29 Diane Murray <disumu@x3y2z1.net>
55
ba60bd44 56 * erc-services.el (erc-nickserv-alist): Update REGEXP and
40ef8242
MO
57 SUCCESS-REGEXP for freenode.
58
f44407aa
JB
592008-05-05 Juanma Barranquero <lekktu@gmail.com>
60
61 * erc-goodies.el (erc-noncommands-list, noncommands)
62 (erc-control-characters, erc-interpret-controls-p)
63 (erc-interpret-mirc-color): Fix typos in docstrings.
64 (erc-controls-highlight): Reflow docstring.
65
40ef8242 662008-04-26 Johan Bockgård <bojohan@gnu.org>
eb89b1a2 67
40ef8242
MO
68 * erc.el (erc-put-text-properties): Don't use mapcar*.
69 (erc-display-line-1): Fix argument order in call to
70 erc-put-text-properties.
eb89b1a2 71
b5fa335a
MO
722008-04-14 Michael Olson <mwolson@gnu.org>
73
74 * erc.el (erc-remove-text-properties-region): Disable this command
75 by default. Thanks to e1f for the suggestion.
76
2a927019
MO
772008-02-20 Michael Olson <mwolson@gnu.org>
78
79 * erc.el (erc-notice-face): Fix this face for Emacs 21 users.
80
4f9c00e2
JB
812008-02-05 Juanma Barranquero <lekktu@gmail.com>
82
83 * erc.el (erc-valid-nick-regexp):
84 * erc-button.el (erc-button-syntax-table):
85 * erc-match.el (erc-match-syntax-table): Replace `legal' with `valid'.
86
2a927019
MO
872008-02-04 Jeremy Maitin-Shepard <jbms@cmu.edu>
88
89 * erc.el (erc-cmd-QUERY): Bind the value of `erc-auto-query' to
90 `erc-query-display' rather than `erc-join-buffer'. This fixes a
91 bug where the value of erc-auto-query was being ignored.
92
932008-01-31 Michael Olson <mwolson@gnu.org>
94
95 * erc-dcc.el (erc-dcc-do-GET-command, erc-dcc-do-SEND-command):
96 Improve docstring. If FILE argument is split into multiple
97 arguments, re-join them into a single string, separated by a
98 space. This fixes an issue where the user wants to send or
99 receive a file with spaces in its name. It is assumed that no one
100 will try sending or receiving a file with multiple consecutive
101 spaces in its name, otherwise this fix will fail.
102
103 * erc.el (erc-mode-map): Add binding for C-c C-x to
104 erc-quit-server, since rcirc.el binds its quit command in a
105 similar manner. Thanks to Jari Aalto for the suggestion.
106
1072008-01-28 Diane Murray <disumu@x3y2z1.net>
108
109 * erc-list-old.el (list-old): Define module as list-old, not list.
110 This fixes a bug where an unknown module error would occur when
111 starting ERC and using the list-old module.
112
113 * erc-track.el (erc-track-find-face): If no choice was found
114 return nil to use the default mode-line faces.
115
15db4a13
MO
1162008-01-26 Michael Olson <mwolson@gnu.org>
117
118 * erc.el (erc-version-string): Release ERC 5.3.
119
120 * Makefile (VERSION): Update.
121 (EXTRAS): Remove erc-list.el after all, because this is mainly for
122 users of the version that comes with Emacs, and they will have
123 erc-list.el by Emacs 23.
124 (MISC): Add ChangeLog.07.
2a927019 125 (elpa): Fix build issue. Add proper version to erc-pkg.el.
15db4a13
MO
126
127 * README.extras: Mention Emacs 23.
128
2a927019
MO
129 * erc-pkg.el: Make the version string a template.
130
15db4a13 131 * erc.texi (Obtaining ERC): Update extras URLs for 5.3.
ba60bd44 132 (Development): Write instructions for git, and remove those for Arch.
15db4a13
MO
133 (History): Mention the switch to git.
134
5e56b3fb
MO
1352008-01-25 Michael Olson <mwolson@gnu.org>
136
137 * NEWS: Update.
138
139 * erc-goodies.el (keep-place): New module which keeps your place
140 in unvisited ERC buffers when new messages arrive. This is mostly
141 taken from Johan Bockgård's init file.
142 (erc-noncommands-list): Move to correct place.
143
144 * erc-networks.el: Add a module definition.
145
146 * erc-services.el (erc-nickserv-identify-mode): Force-enable the
147 networks module, because we need it to set erc-network for us.
148
149 * erc-track.el (erc-track-faces-normal-list): Indicate in the
150 docstring that this variable can be set to nil.
151
152 * erc.el: On second thought, don't load erc-networks. Just enable
153 the networks module by default.
154 (erc-modules): Add option for keep-place and networks. Enable
155 networks by default.
156 (erc-version-string): Make release candidate 1 available.
157
1582008-01-24 Michael Olson <mwolson@gnu.org>
159
160 * erc.el: Load erc-networks.el so that functions get access to the
161 `erc-network-name' function.
162
163 * erc-track.el (erc-track-faces-normal-list): Add
164 erc-dangerous-host-face.
165 (erc-track-exclude-types): Add 333 and 353 to the default list of
166 things to ignore, and explain what they are in the docstring.
167
1682008-01-23 Michael Olson <mwolson@gnu.org>
169
170 * erc-track.el (erc-track-faces-priority-list): Move
171 erc-nick-default-face higher, so that it can be used for the
172 activity indication effect. Add erc-current-nick-face,
173 erc-pal-face, erc-dangerous-host-face, and erc-fool-face by
174 themselves.
175 (erc-track-faces-normal-list): New option that contains a list of
176 faces to consider "normal".
177 (erc-track-position-in-mode-line): Minor docfix.
178 (erc-track-find-face): Use erc-track-faces-normal-list to produce
179 a sort of blinking activity effect.
180
1812008-01-22 Michael Olson <mwolson@gnu.org>
182
183 * erc-button.el (erc-button-add-nickname-buttons): When in a
184 channel buffer, only look at nicks from the current channel.
185 Thanks to e1f for the report.
186
1872008-01-21 Michael Olson <mwolson@gnu.org>
188
189 * erc-compat.el (erc-const-expr-p, erc-list*, erc-assert): Remove,
190 since we can use the default `assert' function without it causing
191 us any problems, even in Emacs 21. Thanks to bojohan for the
192 suggestion.
193
194 * erc-goodies.el (move-to-prompt): Use the "XEmacs" method
195 instead, because the [remap ...] method interferes with
196 delete-selection-mode.
197 (erc-move-to-prompt): Rename from erc-move-to-prompt-xemacs.
198 Deactivate mark and call push-mark before moving point. Thanks to
199 bojohan for the suggestion.
200 (erc-move-to-prompt-setup): Rename from
201 erc-move-to-prompt-init-xemacs.
202
203 * erc-track.el (erc-track-faces-priority-list): Replace erc-button
204 with '(erc-button erc-default-face) so that we only care about
205 buttons that are part of normal text. Adjust customization type
206 to handle this case. Make erc-nick-default-face a list. Handle
207 pals, fools, current nick, and dangerous hosts.
208 (erc-track-find-face): Simplify. Adapt for list of faces case.
209 (erc-faces-in): Don't deflate lists of faces. Add them as-is.
210 (erc-track-face-priority): Use equal instead of eq.
211
2122008-01-20 Michael Olson <mwolson@gnu.org>
213
214 * erc-goodies.el (erc-move-to-prompt, erc-move-to-prompt-xemacs):
215 Fix off-by-one error that caused the point to move when placed at
216 the beginning of some already-typed text. Thanks to e1f for the
217 report.
218
219 * erc-dcc.el, erc-xdcc.el: Add simple module definitions.
220
221 * erc.el (erc-modules): Add dcc and xdcc.
222
2232008-01-19 Michael Olson <mwolson@gnu.org>
224
225 * erc-bbdb.el (erc-bbdb-insinuate-and-show-entry): Work around bug
226 in XEmacs 21.4 that throws an error when the first argument to
227 run-at-time is nil.
228
229 * erc-button.el (button): Undo XEmacs-specific change to all ERC
230 buffers when module is removed.
231 (erc-button-setup): Rename from erc-button-add-keys, and move
232 XEmacs-specific stuff here.
233
234 * erc-goodies.el (erc-unmorse): Improve regexp for detecting
235 morse. Deal with the morse style that has "/ " at the end of
236 every letter.
237 (erc-imenu-setup): New function that sets up Imenu support. Add
238 it instead of a lambda form to erc-mode-hook.
239 (scrolltobottom): Remove erc-scroll-to-bottom from all ERC buffers
240 when module is removed. Activate the functionality in all ERC
241 buffers when the module is activated, rather than leaving it up to
242 the user.
243 (move-to-prompt): New module that moves to the ERC prompt if a
244 user tries to type elsewhere in the buffer, and then inserts their
245 keystrokes there. This is mostly taken from Johan Bockgård's init
246 file.
247 (erc-move-to-prompt): New function that implements this.
248 (erc-move-to-prompt-xemacs): New function that implements this for
249 XEmacs.
250 (erc-move-to-prompt-init-xemacs): New function to perform the
251 extra initialization step needed for XEmacs.
252
253 * erc-page.el, erc-replace.el: Fix header and footer.
254
255 * erc-track.el (erc-track-minor-mode-maybe): Take an optional
256 buffer arg so that we can put this in erc-connect-pre-hook. If
257 given this argument, include it in the check to determine whether
258 to activate erc-track-minor-mode.
259 (track): Add erc-track-minor-mode-maybe to erc-connect-pre-hook,
260 so that we can use it as soon as a connection is attempted.
261
262 * erc.el (erc-format-network, erc-format-target-and/or-network):
263 Use erc-network-name function instead, and check to see whether
264 that function is bound. This fixes an error in process filter for
265 people who did not have erc-services or erc-networks loaded.
266 (erc-modules): Add move-to-prompt module and enable it by
267 default. Thanks to e1f for the suggestion.
268
2692008-01-18 Michael Olson <mwolson@gnu.org>
270
271 * Makefile (EXTRAS): Include erc-list-old.el.
272
273 * erc-dcc.el (erc-dcc-verbose): Rename from erc-verbose-dcc.
274 (erc-pack-int): Rewrite to not depend on a count argument.
275 (erc-unpack-int): Rewrite to remove 4-character limitation.
276 (erc-dcc-server): Call set-process-coding-system and
277 set-process-filter-multibyte so that the contents get sent out
278 without modification.
279 (erc-dcc-send-filter): Don't take a substring -- just pass the
280 whole string to erc-unpack-int.
281 (erc-dcc-receive-cache): New option that indicates the number of
282 bytes to let the receive buffer grow before flushing it.
283 (erc-dcc-file-name): New buffer-local variable to keep track of
284 the filename of the currently-received file.
285 (erc-dcc-get-file): Disable undo for a speed increase. Set
286 erc-dcc-file-name. Truncate the file before writing to it.
287 (erc-dcc-append-contents): New function to append the contents of
288 a buffer to a file and then erase the contents of the buffer.
289 (erc-dcc-get-filter): Flush buffer contents after exceeding
290 erc-dcc-receive-cache. This allows large files to be downloaded
291 without storing the whole thing in memory.
292 (erc-dcc-get-sentinel): Flush any remaining contents before
293 closing. No need to save buffer.
294 (erc-dcc-listen-host): New option that determines which IP address
295 to listen on.
296 (erc-dcc-public-host): New option that determines which IP address
297 to advertise when sending a file. This is useful for people who
298 are on a local subnet. Together, these two options replace
299 erc-dcc-host.
300
301 * erc.el (erc-mode-line-format): Add %N and %S. %N is the name of
302 the network, and %S is much like %s but with the network name
303 trumping the server name. Default to "%S %a". Thanks to e1f for
304 the suggestion.
305 (erc-format-network): New function that formats the network name.
306 (erc-format-target-and/or-network): New function that formats both
307 the network name and target, falling back on the server name if
308 the network name is not available.
309 (erc-update-mode-line-buffer): Add the new format spec items.
310
3112008-01-17 Michael Olson <mwolson@gnu.org>
312
313 * erc.el (erc-join-buffer): Improve documentation.
314 (erc-query-display): New option indicating how to display a query
315 buffer that is made by using the /QUERY command. The default is
316 to display the query in a new window.
317 (erc-cmd-QUERY): Use it. Improve docstring.
318 (erc-auto-query): Default this to 'window-noselect instead,
319 because I've already seen bug reports about new users thinking
320 that ERC didn't display their test messages. Improve
321 customization type.
322 (erc-notice-face): Make this work with XEmacs.
323 (erc-join-buffer): Mention 'buffer in docstring. Improve
324 customization type.
325
326 * erc-dcc.el (erc-dcc-send-sentinel): Better handle case where elt
327 is nil, in order to avoid an error. Thanks to Brent Goodrick for
328 the initial patch.
329 (erc-dcc-display-send): New function split from erc-dcc-send-hook.
330 (erc-dcc-send-connect-hook): Use it -- we don't like lambda forms
331 in hooks.
332 (erc-dcc-send-filter): Display byte count if the client confirmed
333 too much, and kill the buffer. Otherwise a DoS might be possible
334 by making Emacs run out of RAM.
335
336 * erc-backend.el (erc-server-connect): Detect early on whether the
337 connection attempt has failed in order to avoid confusing error
338 messages.
339
340 * erc-networks.el (erc-server-alist): Add Rizon network.
341
342 * erc-services.el (erc-nickserv-passwords): Add Rizon to options.
343 (erc-nickserv-alist): Add support for Rizon.
344
345 * erc-track.el (erc-track-find-face): Don't let buttons in notices
346 trump default text. Use catch/throw. Default to first element of
347 FACES is nothing is found.
348
349 * erc-xdcc.el: Add local variables for proper indentation setup.
350
3512008-01-15 Michael Olson <mwolson@gnu.org>
352
353 * erc-backend.el (erc-server-coding-system): Docfix.
354 (erc-coding-system-for-target): Pass the `target' argument along
355 as the first and only argument. It's not good to just depend on a
356 dynamic binding.
357
3582008-01-10 Michael Olson <mwolson@gnu.org>
359
360 * erc-backend.el (321, 322): Split message-displaying parts into
361 new functions, which are added to each response's respective
362 hook. This makes them easier to disable.
363
364 * erc-list.el: New file from Tom Tromey. Use erc-propertize
365 instead of propertize. Require 'erc.
366 (list): New module definition. Remove message-displaying
367 functions for 321 and 322 response handlers when enabling the
368 module, and restore them when disabling. As a sanity check,
369 remove the erc-list-handle-322 function when disabling the module.
370 (erc-list-handle-322): Handle the case where we run the LIST
371 command, but do not go through the normal steps.
372 (erc-cmd-LIST): Add docstring. Strip initial space from line if
373 it is non-nil. Use make-local-variable to silence compiler
374 warning. Capture current buffer and pass it to
375 erc-list-install-322-handler.
376 (erc-list-install-322-handler): Take server-buffer argument, so
377 that we are certain of being in the right buffer. Use 4th
378 argument to add-hook, so that erc-server-322-functions is only
379 modified in one buffer.
380
381 * erc-list-old.el: Renamed from old erc-list.el.
382
383 * erc.el (erc-modules): Add list-old.
384 (erc-set-topic): Handle case where there are no newlines in the
385 existing topic, which happens when /LIST is run.
386 (erc-notice-face): If we have less than 88 colors, make this
387 blue. Otherwise the text will be pink in a tty, which looks
388 dreadful. Thanks to e1f for the report.
389 (erc-remove-parsed-property): New option that determines whether
390 to remove the erc-parsed property after displaying a message.
391 This should have the effect of making ERC take up less memory.
392 (erc-display-line-1): Use it.
393
48d33090
SM
3942008-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
395
396 * erc-ibuffer.el (erc-channel-modes):
397 Pass mode-name through format-mode-line
398
c2e5c939 399
5e56b3fb 400See ChangeLog.07 for earlier changes.
c2e5c939 401
5e56b3fb 402 Copyright (C) 2008 Free Software Foundation, Inc.
5b87ad55
GM
403
404 This file is part of GNU Emacs.
405
4ee57b2a 406 GNU Emacs is free software: you can redistribute it and/or modify
5b87ad55 407 it under the terms of the GNU General Public License as published by
4ee57b2a
GM
408 the Free Software Foundation, either version 3 of the License, or
409 (at your option) any later version.
5b87ad55
GM
410
411 GNU Emacs is distributed in the hope that it will be useful,
412 but WITHOUT ANY WARRANTY; without even the implied warranty of
413 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
414 GNU General Public License for more details.
415
416 You should have received a copy of the GNU General Public License
4ee57b2a 417 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
597993cf 418
19750a72
MB
419;; Local Variables:
420;; coding: utf-8
33462dfa 421;; add-log-time-zone-rule: t
19750a72 422;; End:
f187f57d
MB
423
424;; arch-tag: 15787dfd-e091-4c8c-8b88-747b474e1ac7