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