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