1 2006-02-19 Michael Olson <mwolson@gnu.org>
3 * erc-capab.el (erc-capab-send-identify-messages): Make sure some
4 parameters are strings before using them. Thanks to Alejandro
5 Benitez for the report.
7 * erc.el (erc-version-string): Release ERC 5.1.2.
9 2006-02-19 Diane Murray <disumu@x3y2z1.net>
11 * erc-button.el (erc-button-keymap): Bind `erc-button-previous' to
13 (erc-button-previous): New function.
15 2006-02-15 Michael Olson <mwolson@gnu.org>
17 * NEWS: Add category for ERC 5.2.
19 * erc.el (erc): Move to the end of the buffer when a continued
20 session is detected. Thanks to e1f and indio for the report and
21 testing a potential fix.
23 2006-02-14 Michael Olson <mwolson@gnu.org>
25 * debian/changelog: Prepare a new Debian package.
27 * Makefile (debprepare): New rule that creates an ERC snapshot
28 directory for use in both new Debian releases and revisions for
30 (debrelease, debrevision-mwolson): Use debprepare.
32 * NEWS: Bring up-to-date.
34 * erc-stamp.el (erc-insert-timestamp-right): For now, put
35 timestamps before rather than after erc-fill-column when
36 erc-timestamp-right-column is nil. This way we won't surprise
37 anyone unpleasantly, or so it is hoped.
39 2006-02-13 Michael Olson <mwolson@gnu.org>
41 * erc-dcc.el: Use (eval-when-compile (require 'cl)).
43 2006-02-12 Michael Olson <mwolson@gnu.org>
45 * erc-autoaway.el, erc-dcc.el, erc-ezbounce.el, erc-fill.el,
46 erc-goodies.el, erc-hecomplete.el, erc-ibuffer.el, erc-identd.el,
47 erc-imenu.el, erc-join.el, erc-lang.el, erc-list.el, erc-log.el,
48 erc-match.el, erc-menu.el, erc-netsplit.el, erc-networks.el,
49 erc-notify.el, erc-page.el, erc-pcomplete.el, erc-replace.el,
50 erc-ring.el, erc-services.el, erc-sound.el, erc-speedbar.el,
51 erc-spelling.el, erc-track.el, erc-truncate.el, erc-xdcc.el: Add
52 2006 to copyright years, to comply with the changed guidelines.
54 2006-02-11 Michael Olson <mwolson@gnu.org>
56 * erc.el (erc-update-modules): Make some requirements shorter, so
57 that it's easier to see why they are needed.
59 * erc-stamp.el (erc-timestamp-use-align-to): Renamed from
60 `erc-timestamp-right-align-by-pixel'. Set the default based on
61 whether we are in Emacs 22, and using X. Improve documentation.
62 (erc-insert-aligned): Remove calculation of offset, since
63 :align-to pos works after all. Unlike the previous solution, this
64 one works when erc-stamp.el is compiled.
65 (erc-insert-timestamp-right): Don't add length of string, and then
66 later remove its displayed width. This puts timestamps after
67 erc-fill-column when erc-timestamp-right-column is nil, rather
68 than before it. It also fixes a subtle bug. Remove use of
69 `current-window', since there is no variable by that name in
70 Emacs21, Emacs22, or XEmacs21 beta. Check to see whether
71 `erc-fill-column' is non-nil before using it.
73 2006-02-11 Diane Murray <disumu@x3y2z1.net>
75 * erc-list.el: Define `list' module which sets the alias
76 `erc-cmd-LIST' to `erc-list-channels' when enabled and
77 `erc-list-channels-simple' when disabled.
78 (erc-list-channels): Was `erc-cmd-LIST', renamed.
79 (erc-list-channels-simple): New function.
81 * erc.el (erc-modules): Added `list' to enabled modules. Moved
82 customization options left in source code.
84 * erc-menu.el (erc-menu-definition): Use `erc-list-channels'.
86 * erc-spelling.el (define-erc-module): Make sure there's a buffer
87 before calling `with-current-buffer'.
89 2006-02-10 Michael Olson <mwolson@gnu.org>
91 * Makefile (debbuild): Split from debrelease.
92 (debrevision-mwolson): New rule that causes a Debian revision to
95 * erc.el (erc-migrate-modules): Use a better algorithm. Thanks to
97 (erc-modules): Change use of 'pcomplete to 'completion.
99 2006-02-09 Diane Murray <disumu@x3y2z1.net>
101 * erc.el (erc-get-parsed-vector, erc-get-parsed-vector-nick)
102 (erc-get-parsed-vector-type): Moved here from erc-match.el.
104 * erc-match.el (erc-get-parsed-vector, erc-get-parsed-vector-nick)
105 (erc-get-parsed-vector-type): Moved these functions to erc.el
106 since they can be useful outside of the text matching module.
108 * erc-dcc.el, erc-stamp.el, erc-xdcc.el: Changed "Emacs IRC Client"
111 2006-02-07 Michael Olson <mwolson@gnu.org>
113 * ChangeLog.01, ChangeLog.02, ChangeLog.03, ChangeLog.04,
114 ChangeLog.05: Rename from ChangeLog.NNNN in order to disambiguate
115 the filenames in DOS.
117 * erc-goodies.el: Comment fix.
119 * erc-hecomplete.el: Rename from erc-complete.el. Update
120 commentary. Use define-erc-module so that it's possible to
122 (erc-hecomplete): Rename function from `erc-complete'.
123 (erc-hecomplete): Rename group from `erc-old-complete'. Docfix.
125 * erc-join.el: Rename from erc-autojoin.el.
127 * erc-networks.el: Rename from erc-nets.el.
129 * erc-services.el: Rename from erc-nickserv.el.
131 * erc-stamp.el (erc-insert-aligned): Don't take 3rd argument. Use
132 the simpler `indent-to' function when
133 `erc-timestamp-right-align-by-pixel' is nil.
134 (erc-insert-timestamp-right): If the timestamp goes on the
135 following line, don't add timestamp properties to the spaces in
138 * erc.el (erc-migrate-modules): New function that eases migration
140 (erc-modules): Call erc-migrate-modules in the :get accessor.
141 (erc-modules, erc-update-modules): Update for new modules names.
142 (erc-cmd-SMV): Remove, since this does not give useful output due
143 to the version strings being removed from ERC modules.
145 2006-02-05 Michael Olson <mwolson@gnu.org>
147 * erc-spelling.el (erc-spelling-init): If
148 `erc-spelling-dictionaries' is nil, do not set
149 ispell-local-dictionary. Before, it was being set to nil, which
150 was causing a long delay while the ispell process restarted.
151 (erc-spelling-unhighlight-word): New function that removes
152 flyspell properties from a spell-checked word.
153 (erc-spelling-flyspell-verify): Don't spell-check nicks or words
154 that have '/' before them.
156 2006-02-04 Michael Olson <mwolson@gnu.org>
158 * erc-autojoin.el: Use (eval-when-compile (require 'cl)).
160 * erc-complete.el (erc-nick-completion-exclude-myself)
161 (erc-try-complete-nick): Use better function for getting list of
164 * erc-goodies.el: Docfix.
166 * erc-stamp.el: Use new arch tagline, since the other one wasn't
167 being treated properly.
169 * erc.el (erc-version-string): Release ERC 5.1.1.
171 2006-02-03 Zhang Wei <id.brep@gmail.com> (tiny change)
173 * erc.el (erc-version-string): Don't hard-code Emacs version.
174 (erc-version): Use emacs-version.
176 2006-01-31 Michael Olson <mwolson@gnu.org>
178 * erc-stamp.el: Update copyright years.
180 2006-01-30 Simon Josefsson <jas@extundo.com>
182 * erc.el (erc-open-ssl-stream): Use tls.el.
184 2006-01-30 Michael Olson <mwolson@gnu.org>
186 * erc-stamp.el (erc-timestamp-right-align-by-pixel): New option
187 that determines whether to use pixel values to align right
188 timestamps. The default is not to do so, since it only works with
189 Emacs22 on X, and even then some people have trouble.
190 (erc-insert-aligned): Use `erc-timestamp-right-align-by-pixel'.
192 2006-01-29 Michael Olson <mwolson@gnu.org>
194 * ChangeLog, ChangeLog.2005, ChangeLog.2004, ChangeLog.2003,
195 ChangeLog.2002, ChangeLog.2001: Add "See ChangeLog.NNNN" line for
196 earlier changes. Use utf-8 encoding. Fix some accent typos.
198 * erc-speedbar.el (erc-speedbar-buttons): Fix reference to free
200 (erc-speedbar-goto-buffer): Fix compiler warning.
202 * erc-ibuffer.el: Use `define-ibuffer-filter' instead of
203 `ibuffer-degine-limiter'. Use `define-ibuffer-column' instead of
204 `ibuffer-define-column'. Require 'ibuf-ext so that the macros
205 work without compiler warnings.
207 * man/erc.texi (Obtaining ERC, Installation): Note that these
208 sections may be skipped if using the version of ERC that comes
211 2006-01-29 Edward O'Connor <ted@oconnor.cx>
213 * erc-viper.el: Remove. Now that ERC is included in Emacs, these
214 work-arounds live in Viper itself.
216 2006-01-28 Michael Olson <mwolson@gnu.org>
218 * erc-*.el, erc.texi, NEWS: Add Arch taglines as per Emacs
221 * erc-*.el: Space out copyright years like the rest of Emacs. Use
222 the Emacs copyright statement. Refer to ourselves as ERC rather
223 than "Emacs IRC Client", since there are now several IRC clients
226 * erc-compat.el (erc-emacs-build-time): Define as a variable.
228 * erc-log.el (erc-log-setup-logging): Use write-file-functions.
230 * erc-ibuffer.el: Require 'erc.
232 * erc-stamp.el (erc-insert-aligned): Only use the special text
233 property when window-system is X.
235 * erc.texi: Adapt for inclusion in Emacs.
237 2006-01-28 Johan Bockgård <bojohan@users.sourceforge.net>
239 * erc.el (erc-format-message): More `cl' breakage; don't use
242 2006-01-27 Michael Olson <mwolson@gnu.org>
244 * debian/changelog: Update for new release.
246 * debian/control (Description): Update.
248 * debian/rules: Concatenate ChangeLog for 2005.
250 * Makefile (MISC): Include ChangeLog.2005 and erc.texi.
251 (debrelease, release): Copy images directory.
253 * NEWS: Spelling fixes. Add items for recent changes.
255 * erc.el (erc): Move call to erc-update-modules before the call to
256 erc-mode. This should fix a timestamp display issue.
257 (erc-version-string): Release ERC 5.1.
259 2006-01-26 Michael Olson <mwolson@gnu.org>
261 * erc-stamp.el (erc-insert-aligned): New function that inserts
262 text in an perfectly-aligned way relative to the right margin. It
263 only works well with Emacs22. A sane fallback is provided for
264 other versions of Emacs.
265 (erc-insert-timestamp-right): Use the new function.
267 2006-01-25 Edward O'Connor <ted@oconnor.cx>
269 * erc.el (erc-modules): Ensure that `erc-button-mode' gets enabled
270 before `erc-match-mode'.
272 * erc-match.el (match): Append `erc-match-message' to
273 `erc-insert-modify-hook'.
275 2006-01-25 Michael Olson <mwolson@gnu.org>
277 * FOR-RELEASE: Mark last release requirement as done.
279 * Makefile (realclean, distclean): Remove docs.
281 * erc.texi: Take care of all pre-5.1 items.
283 * erc-backend.el (erc-server-send, erc-server-send-queue): Wrap
284 `process-send-string' in `condition-case' to avoid an error when
287 * erc-stamp.el (erc-insert-timestamp-right): Try to deal with
288 variable-width characters in the timestamp and on the same line.
289 The latter is a kludge, but it seems to work with most of the
290 input I've thrown at it so far. It's certainly better than going
291 past the end of line consistently when we have variable-width
292 characters on the same line. When `erc-timestamp-intangible' is
293 non-nil, add intangible properties to the whitespace as well, so
294 that hitting <end> does what you'd expect.
296 * erc.el (erc-flood-protect, erc-toggle-flood-control): Update
297 this to only use boolean values for `erc-flood-protect'. Update
299 (erc-cmd-QUIT): Set the active buffer to be the server buffer, so
300 that any QUIT-related messages go there.
301 (erc): Try to be more clever about re-using channel buffers when
302 automatically re-connecting. Thanks to e1f for noticing.
304 2006-01-23 Michael Olson <mwolson@gnu.org>
306 * ChangeLog.2005: Remove erroneous line.
308 * FOR-RELEASE: Make that the Makefile tweaking is complete.
309 (NEWS): Mark as done.
311 * Makefile (MANUAL): New option indicating the name of the manual.
312 (PREFIX, ELISPDIR, INFODIR): New options that specify the
313 directories to install lisp code and info manuals to. PREFIX is
314 used only by ELISPDIR and INFODIR.
315 (all): Call `lisp' and create the manual.
316 (lisp): Compile lisp code.
317 (%.info, %.html): New rules that make Info files and HTML files,
318 respectively, from a TexInfo source.
319 (doc): Create both the Info and HTML versions of the manual. This
320 is for the user -- we never call it automatically.
321 (install-info): Install Info files.
322 (install-bin): Install compiled and source Lisp files.
323 (todo): Remove, since it seems pointless.
327 * README: Add Installation instructions. Tweak layout.
329 * erc.texi: Work on some pre-5.1 items.
331 * erc-stamp.el, erc-track.el: Move some functions and options in
332 order to get rid of a few compiler warnings.
334 * erc.el (erc-modules): Enable readonly by default. This will
335 prevent new users from accidentally removing old messages, which
336 could be disconcerting. Also enable stamp by default, since
337 timestamps are a fairly standard feature among IRC clients.
339 * erc-button.el: Munge whitespace.
341 * erc-identd.el (erc-identd-start): Instead of throwing an error,
342 just try to use the obsolete function.
344 2006-01-22 Michael Olson <mwolson@gnu.org>
346 * erc-backend.el (erc-decode-string-from-target): Make sure that
347 we have a string as an argument. If not, coerce it to the empty
348 string. Hopefully, this will work painlessly around an edge case
349 related to quitting ERC around the same time a message comes in.
351 2006-01-22 Johan Bockgård <bojohan@users.sourceforge.net>
353 * erc-track.el: Use `(eval-when-compile (require 'cl))' (for
355 (erc-find-parsed-property): Simplify.
356 (erc-track-get-active-buffer): Fix logic. Simplify.
357 (erc-track-switch-buffer): Remove unused variable `dir'. Simplify.
359 * erc-speak.el: Doc fixes.
360 (erc-speak-region): `propertize' --> `erc-propertize'.
362 * erc-dcc.el (erc-dcc-chat-parse-output): `propertize' -->
365 * erc-button.el (erc-button-add-button): Take erc-fill-prefix into
366 account when wrapping URLs.
368 * erc-bbdb.el (erc-bbdb-elide-display): Doc fix.
370 * erc-backend.el (define-erc-response-handler): Doc fix.
372 2006-01-22 Michael Olson <mwolson@gnu.org>
374 * erc.el (erc-update-modules): Use `require' instead of `load',
375 but prevent it from causing errors, in order to preserve the
378 2006-01-21 Michael Olson <mwolson@gnu.org>
380 * FOR-RELEASE (Source): Mark cl task as done.
382 * Makefile (erc-auto.el): Call erc-generate-autoloads rather than
384 (erc-auto.el, %.elc): Don't show command, just its output.
386 * NEWS: Add items from 2005-01-01 to 2005-08-13.
388 * debian/copyright (Copyright): Update.
390 * erc-auto.in (erc-generate-autoloads): Rename from
393 * erc.el, erc-autoaway.el, erc-backend.el: Use
394 erc-server-process-alive instead of erc-process-alive.
396 * erc.el, erc-backend.el, erc-ezbounce.el, erc-list.el,
397 erc-log.el, erc-match.el, erc-nets.el, erc-netsplit.el,
398 erc-nicklist.el, erc-nickserv.el, erc-notify.el, erc-pcomplete.el:
399 Use (eval-when-compile (require 'cl)), so that compilation doesn't
402 * erc-fill.el, erc-truncate.el: Whitespace munging.
404 * erc.el: Update copyright notice. Remove eval-after-load code.
405 (erc-with-buffer): Docfix.
406 (erc-once-with-server-event, erc-once-with-server-event-global)
407 (erc-with-buffer, erc-with-all-buffers-of-server): Use erc-gensym
409 (erc-banlist-update): Use erc-delete-if instead of delete-if.
410 (erc): Call `erc-update-modules' here.
412 * erc-backend.el: Require 'erc-compat to minimize compiler
414 (erc-decode-parsed-server-response): Docfix.
415 (erc-server-process-alive): Move here from erc.el and rename from
417 (erc-server-send, erc-remove-channel-users): Make sure process is
418 alive before sending data to it.
420 * erc-bbdb.el: Update copyright years.
421 (erc-bbdb-whois): Remove overexuberant comment.
423 * erc-button.el: Require erc-fill, since we make liberal use of
426 * erc-compat.el (erc-const-expr-p, erc-list*, erc-assert): New
427 functions, the latter of which provides an `assert' equivalent.
428 (erc-remove-if-not): New function that provides a simple
429 implementation of `remove-if-not'.
430 (erc-gensym): New function that provides a simple implementation
432 (erc-delete-if): New function that provides a simple
433 implementation of `delete-if'.
434 (erc-member-if): New function that provides a simple
435 implementation of `member-if'.
436 (field-end): Remove this, since it is unused, and later versions
437 of XEmacs have this function already.
438 (erc-function-arglist): Moved here from erc.el.
439 (erc-delete-dups): New compatibility function for dealing with
441 (erc-subseq): New function copied from cl-extra.el.
443 * erc-dcc.el: Require pcomplete during compilation to avoid
445 (erc-unpack-int, erc-dcc-send-filter)
446 (erc-dcc-get-filter): Use erc-assert instead of assert.
447 (pcomplete/erc-mode/DCC): Use erc-remove-if-not instead of
450 * erc-match.el (erc-log-matches): Fix compiler warning.
452 * erc-nicklist.el: Update copyright notice.
453 (erc-nicklist-menu): Change use of caadr to (car (cadr ...)).
454 (erc-nicklist-bitlbee-connected-p): Remove.
455 (erc-nicklist-insert-medium-name-or-icon): Accept channel
456 argument. Use it to determine whether we are on bitlbee. Now
457 that bitlbee names its channel "&bitlbee", this is trivial.
458 (erc-nicklist-insert-contents): Pass channel as specified above.
459 Don't try to determine whether we are on bitlbee here.
460 (erc-nicklist-channel-users-info): Use erc-remove-if-not instead
462 (erc-nicklist-search-for-nick): Use erc-member-if instead of
465 * erc-notify.el (erc-notify-QUIT): Use erc-delete-if with a
466 partially-evaluated lambda expression instead of `delete' and
469 * erc-track.el: Use erc-assert.
470 (erc-track-modified-channels): Remove use of `return'.
471 (erc-track-modified-channels): Use `cadr' instead of `second',
472 since otherwise we would need yet another eval-when-compile line.
474 2006-01-19 Michael Olson <mwolson@gnu.org>
476 * erc-backend.el (erc-process-sentinel-1): Remove attempt to
477 detect SIGPIPE, since it doesn't work.
479 2006-01-10 Diane Murray <disumu@x3y2z1.net>
481 * erc-spelling.el: Updated copyright years.
482 (define-erc-module): Enable/disable `flyspell-mode' for all open
484 (erc-spelling-dictionaries): Reworded customize description.
486 * erc.el (erc-command-symbol): New function.
487 (erc-extract-command-from-line): Use `erc-command-symbol'. This
488 fixes a bug where "Symbol's function definition is void:
489 erc-cmd-LIST" would be shown after typing /list at the prompt (the
490 command was interned because erc-menu.el uses it and is enabled by
491 default whereas erc-list.el is not).
493 * NEWS: Started a list of renamed variables.
495 * erc.el: Reworded the message sent when defining variable
497 (erc-command-indicator-face): Doc fix.
498 (erc-modules): Enable the match module by default which makes
499 current nickname highlighting on as the default.
501 * erc-button.el: Updated copyright years.
502 (erc-button): New face.
503 (erc-button-face): Use `erc-button'.
504 (erc-button-nickname-face): New customizable variable.
505 (erc-button-add-nickname-buttons, erc-button-add-buttons-1): Send
506 new argument to `erc-button-add-button'.
507 (erc-button-add-button): Doc fix. Added new argument to function
508 definition, NICK-P. If it's a nickname, use
509 `erc-button-nickname-face', otherwise use `erc-button-face'. This
510 makes channel tracking and buttons work better together when
511 `erc-button-buttonize-nicks' is enabled, since there is a nickname
512 on just about every line.
514 * erc-track.el (erc-track-use-faces): Doc fix.
515 (erc-track-faces-priority-list): Added `erc-button' to list.
516 (erc-track-priority-faces-only): Doc fix.
518 2006-01-09 Diane Murray <disumu@x3y2z1.net>
520 * erc-button.el (erc-button-url-regexp): Use `concat' so the
521 regexp is not one long line.
522 (erc-button-alist): Fixed so that customizing works correctly.
523 Reorganized. Removed lambda functions with more than two lines.
525 (erc-button-describe-symbol, erc-button-beats-to-time): New
526 functions. Moved from `erc-button-alist'.
528 2006-01-07 Michael Olson <mwolson@gnu.org>
530 * erc-backend.el (erc-process-sentinel-1): Don't try to re-open a
531 process if a SIGPIPE occurs. This happens when a new message
532 comes in at the same time a /quit is requested.
533 (erc-process-sentinel): Use string-match rather than string= to do
534 these comparisons. Matching literal newlines makes me nervous.
536 * erc-track.el (erc-track-remove-from-mode-line): Handle case
537 where global-mode-string is not a list. Emacs22 permits this.
540 See ChangeLog.05 for earlier changes.
542 Copyright (C) 2006 Free Software Foundation, Inc.
543 Copying and distribution of this file, with or without modification,
544 are permitted provided the copyright notice and this notice are preserved.
550 ;; arch-tag: 865a75f6-2bcb-46df-bf0c-b514dadf688a