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