1 2006-03-26 Michael Olson <mwolson@gnu.org>
3 * erc.el (erc-header-line): New face that will be used to colorize
4 the text of the header-line, provided that
5 `erc-header-line-face-method' is non-nil.
6 (erc-prompt-face): Fix formatting.
7 (erc-header-line-face-method): New option that determines the
8 method used for colorizing header-line text. This may be a
9 function, nil, or non-nil.
10 (erc-update-mode-line-buffer): Use the aforementioned option and
11 face to colorize the header-line text, if that is what the user
13 (erc-send-input): If flood control is not activated, don't split
16 2006-03-25 Michael Olson <mwolson@gnu.org>
18 * erc.el (erc-cmd-QUOTE): Install patch from Aravind Gottipati
19 that fixes the case where there is no leading whitespace. Only
20 remove the first space character, though.
22 * erc-identd.el (erc-identd-start): Fix a bug by making sure that
23 erc-identd-process is set properly.
24 (erc-identd-start, erc-identd-stop): Add autoload cookies.
25 (erc-identd-start): Pass :host parameter so this works with Emacs
28 2006-03-09 Diane Murray <disumu@x3y2z1.net>
30 * erc-button.el (erc-button-keymap): Use <backtab> rather than
31 <C-tab> for `erc-button-previous' as it is a more standard key
32 binding for this type of function.
34 2006-02-19 Michael Olson <mwolson@gnu.org>
36 * erc.el (erc-version-string): Release ERC 5.1.2.
38 2006-02-19 Diane Murray <disumu@x3y2z1.net>
40 * erc-button.el (erc-button-keymap): Bind `erc-button-previous' to
42 (erc-button-previous): New function.
44 2006-02-15 Michael Olson <mwolson@gnu.org>
46 * NEWS: Add category for ERC 5.2.
48 * erc.el (erc): Move to the end of the buffer when a continued
49 session is detected. Thanks to e1f and indio for the report and
50 testing a potential fix.
52 2006-02-14 Michael Olson <mwolson@gnu.org>
54 * debian/changelog: Prepare a new Debian package.
56 * Makefile (debprepare): New rule that creates an ERC snapshot
57 directory for use in both new Debian releases and revisions for
59 (debrelease, debrevision-mwolson): Use debprepare.
61 * NEWS: Bring up-to-date.
63 * erc-stamp.el (erc-insert-timestamp-right): For now, put
64 timestamps before rather than after erc-fill-column when
65 erc-timestamp-right-column is nil. This way we won't surprise
66 anyone unpleasantly, or so it is hoped.
68 2006-02-13 Michael Olson <mwolson@gnu.org>
70 * erc-dcc.el: Use (eval-when-compile (require 'cl)).
72 2006-02-12 Michael Olson <mwolson@gnu.org>
74 * erc-autoaway.el, erc-dcc.el, erc-ezbounce.el, erc-fill.el,
75 erc-goodies.el, erc-hecomplete.el, erc-ibuffer.el, erc-identd.el,
76 erc-imenu.el, erc-join.el, erc-lang.el, erc-list.el, erc-log.el,
77 erc-match.el, erc-menu.el, erc-netsplit.el, erc-networks.el,
78 erc-notify.el, erc-page.el, erc-pcomplete.el, erc-replace.el,
79 erc-ring.el, erc-services.el, erc-sound.el, erc-speedbar.el,
80 erc-spelling.el, erc-track.el, erc-truncate.el, erc-xdcc.el: Add
81 2006 to copyright years, to comply with the changed guidelines.
83 2006-02-11 Michael Olson <mwolson@gnu.org>
85 * erc.el (erc-update-modules): Make some requirements shorter, so
86 that it's easier to see why they are needed.
88 * erc-stamp.el (erc-timestamp-use-align-to): Renamed from
89 `erc-timestamp-right-align-by-pixel'. Set the default based on
90 whether we are in Emacs 22, and using X. Improve documentation.
91 (erc-insert-aligned): Remove calculation of offset, since
92 :align-to pos works after all. Unlike the previous solution, this
93 one works when erc-stamp.el is compiled.
94 (erc-insert-timestamp-right): Don't add length of string, and then
95 later remove its displayed width. This puts timestamps after
96 erc-fill-column when erc-timestamp-right-column is nil, rather
97 than before it. It also fixes a subtle bug. Remove use of
98 `current-window', since there is no variable by that name in
99 Emacs21, Emacs22, or XEmacs21 beta. Check to see whether
100 `erc-fill-column' is non-nil before using it.
102 2006-02-11 Diane Murray <disumu@x3y2z1.net>
104 * erc-list.el: Define `list' module which sets the alias
105 `erc-cmd-LIST' to `erc-list-channels' when enabled and
106 `erc-list-channels-simple' when disabled.
107 (erc-list-channels): Was `erc-cmd-LIST', renamed.
108 (erc-list-channels-simple): New function.
110 * erc.el (erc-modules): Added `list' to enabled modules. Moved
111 customization options left in source code.
113 * erc-menu.el (erc-menu-definition): Use `erc-list-channels'.
115 * erc-spelling.el (define-erc-module): Make sure there's a buffer
116 before calling `with-current-buffer'.
118 2006-02-10 Michael Olson <mwolson@gnu.org>
120 * Makefile (debbuild): Split from debrelease.
121 (debrevision-mwolson): New rule that causes a Debian revision to
124 * erc.el (erc-migrate-modules): Use a better algorithm. Thanks to
126 (erc-modules): Change use of 'pcomplete to 'completion.
128 2006-02-09 Diane Murray <disumu@x3y2z1.net>
130 * erc.el (erc-get-parsed-vector, erc-get-parsed-vector-nick)
131 (erc-get-parsed-vector-type): Moved here from erc-match.el.
133 * erc-match.el (erc-get-parsed-vector, erc-get-parsed-vector-nick)
134 (erc-get-parsed-vector-type): Moved these functions to erc.el
135 since they can be useful outside of the text matching module.
137 * erc-dcc.el, erc-stamp.el, erc-xdcc.el: Changed "Emacs IRC Client"
140 2006-02-07 Michael Olson <mwolson@gnu.org>
142 * ChangeLog.01, ChangeLog.02, ChangeLog.03, ChangeLog.04,
143 ChangeLog.05: Rename from ChangeLog.NNNN in order to disambiguate
144 the filenames in DOS.
146 * erc-goodies.el: Comment fix.
148 * erc-hecomplete.el: Rename from erc-complete.el. Update
149 commentary. Use define-erc-module so that it's possible to
151 (erc-hecomplete): Rename function from `erc-complete'.
152 (erc-hecomplete): Rename group from `erc-old-complete'. Docfix.
154 * erc-join.el: Rename from erc-autojoin.el.
156 * erc-networks.el: Rename from erc-nets.el.
158 * erc-services.el: Rename from erc-nickserv.el.
160 * erc-stamp.el (erc-insert-aligned): Don't take 3rd argument. Use
161 the simpler `indent-to' function when
162 `erc-timestamp-right-align-by-pixel' is nil.
163 (erc-insert-timestamp-right): If the timestamp goes on the
164 following line, don't add timestamp properties to the spaces in
167 * erc.el (erc-migrate-modules): New function that eases migration
169 (erc-modules): Call erc-migrate-modules in the :get accessor.
170 (erc-modules, erc-update-modules): Update for new modules names.
171 (erc-cmd-SMV): Remove, since this does not give useful output due
172 to the version strings being removed from ERC modules.
174 2006-02-05 Michael Olson <mwolson@gnu.org>
176 * erc-spelling.el (erc-spelling-init): If
177 `erc-spelling-dictionaries' is nil, do not set
178 ispell-local-dictionary. Before, it was being set to nil, which
179 was causing a long delay while the ispell process restarted.
180 (erc-spelling-unhighlight-word): New function that removes
181 flyspell properties from a spell-checked word.
182 (erc-spelling-flyspell-verify): Don't spell-check nicks or words
183 that have '/' before them.
185 2006-02-04 Michael Olson <mwolson@gnu.org>
187 * erc-autojoin.el: Use (eval-when-compile (require 'cl)).
189 * erc-complete.el (erc-nick-completion-exclude-myself)
190 (erc-try-complete-nick): Use better function for getting list of
193 * erc-goodies.el: Docfix.
195 * erc-stamp.el: Use new arch tagline, since the other one wasn't
196 being treated properly.
198 * erc.el (erc-version-string): Release ERC 5.1.1.
200 2006-02-03 Zhang Wei <id.brep@gmail.com>
202 * erc.el (erc-version-string): Don't hard-code Emacs version.
203 (erc-version): Use emacs-version.
205 2006-01-31 Michael Olson <mwolson@gnu.org>
207 * erc-stamp.el: Update copyright years.
209 2006-01-30 Simon Josefsson <jas@extundo.com>
211 * erc.el (erc-open-ssl-stream): Use tls.el.
213 2006-01-30 Michael Olson <mwolson@gnu.org>
215 * erc-stamp.el (erc-timestamp-right-align-by-pixel): New option
216 that determines whether to use pixel values to align right
217 timestamps. The default is not to do so, since it only works with
218 Emacs22 on X, and even then some people have trouble.
219 (erc-insert-aligned): Use `erc-timestamp-right-align-by-pixel'.
221 2006-01-29 Michael Olson <mwolson@gnu.org>
223 * ChangeLog, ChangeLog.2005, ChangeLog.2004, ChangeLog.2003,
224 ChangeLog.2002, ChangeLog.2001: Add "See ChangeLog.NNNN" line for
225 earlier changes. Use utf-8 encoding. Fix some accent typos.
227 * erc-speedbar.el (erc-speedbar-buttons): Fix reference to free
229 (erc-speedbar-goto-buffer): Fix compiler warning.
231 * erc-ibuffer.el: Use `define-ibuffer-filter' instead of
232 `ibuffer-degine-limiter'. Use `define-ibuffer-column' instead of
233 `ibuffer-define-column'. Require 'ibuf-ext so that the macros
234 work without compiler warnings.
236 * man/erc.texi (Obtaining ERC, Installation): Note that these
237 sections may be skipped if using the version of ERC that comes
240 2006-01-29 Edward O'Connor <ted@oconnor.cx>
242 * erc-viper.el: Remove. Now that ERC is included in Emacs, these
243 work-arounds live in Viper itself.
245 2006-01-28 Michael Olson <mwolson@gnu.org>
247 * erc-*.el, erc.texi, NEWS: Add Arch taglines as per Emacs
250 * erc-*.el: Space out copyright years like the rest of Emacs. Use
251 the Emacs copyright statement. Refer to ourselves as ERC rather
252 than "Emacs IRC Client", since there are now several IRC clients
255 * erc-compat.el (erc-emacs-build-time): Define as a variable.
257 * erc-log.el (erc-log-setup-logging): Use write-file-functions.
259 * erc-ibuffer.el: Require 'erc.
261 * erc-stamp.el (erc-insert-aligned): Only use the special text
262 property when window-system is X.
264 * erc.texi: Adapt for inclusion in Emacs.
266 2006-01-28 Johan Bockgård <bojohan@users.sourceforge.net>
268 * erc.el (erc-format-message): More `cl' breakage; don't use
271 2006-01-27 Michael Olson <mwolson@gnu.org>
273 * debian/changelog: Update for new release.
275 * debian/control (Description): Update.
277 * debian/rules: Concatenate ChangeLog for 2005.
279 * Makefile (MISC): Include ChangeLog.2005 and erc.texi.
280 (debrelease, release): Copy images directory.
282 * NEWS: Spelling fixes. Add items for recent changes.
284 * erc.el (erc): Move call to erc-update-modules before the call to
285 erc-mode. This should fix a timestamp display issue.
286 (erc-version-string): Release ERC 5.1.
288 2006-01-26 Michael Olson <mwolson@gnu.org>
290 * erc-stamp.el (erc-insert-aligned): New function that inserts
291 text in an perfectly-aligned way relative to the right margin. It
292 only works well with Emacs22. A sane fallback is provided for
293 other versions of Emacs.
294 (erc-insert-timestamp-right): Use the new function.
296 2006-01-25 Edward O'Connor <ted@oconnor.cx>
298 * erc.el (erc-modules): Ensure that `erc-button-mode' gets enabled
299 before `erc-match-mode'.
301 * erc-match.el (match): Append `erc-match-message' to
302 `erc-insert-modify-hook'.
304 2006-01-25 Michael Olson <mwolson@gnu.org>
306 * FOR-RELEASE: Mark last release requirement as done.
308 * Makefile (realclean, distclean): Remove docs.
310 * erc.texi: Take care of all pre-5.1 items.
312 * erc-backend.el (erc-server-send, erc-server-send-queue): Wrap
313 `process-send-string' in `condition-case' to avoid an error when
316 * erc-stamp.el (erc-insert-timestamp-right): Try to deal with
317 variable-width characters in the timestamp and on the same line.
318 The latter is a kludge, but it seems to work with most of the
319 input I've thrown at it so far. It's certainly better than going
320 past the end of line consistently when we have variable-width
321 characters on the same line. When `erc-timestamp-intangible' is
322 non-nil, add intangible properties to the whitespace as well, so
323 that hitting <end> does what you'd expect.
325 * erc.el (erc-flood-protect, erc-toggle-flood-control): Update
326 this to only use boolean values for `erc-flood-protect'. Update
328 (erc-cmd-QUIT): Set the active buffer to be the server buffer, so
329 that any QUIT-related messages go there.
330 (erc): Try to be more clever about re-using channel buffers when
331 automatically re-connecting. Thanks to e1f for noticing.
333 2006-01-23 Michael Olson <mwolson@gnu.org>
335 * ChangeLog.2005: Remove erroneous line.
337 * FOR-RELEASE: Make that the Makefile tweaking is complete.
338 (NEWS): Mark as done.
340 * Makefile (MANUAL): New option indicating the name of the manual.
341 (PREFIX, ELISPDIR, INFODIR): New options that specify the
342 directories to install lisp code and info manuals to. PREFIX is
343 used only by ELISPDIR and INFODIR.
344 (all): Call `lisp' and create the manual.
345 (lisp): Compile lisp code.
346 (%.info, %.html): New rules that make Info files and HTML files,
347 respectively, from a TexInfo source.
348 (doc): Create both the Info and HTML versions of the manual. This
349 is for the user -- we never call it automatically.
350 (install-info): Install Info files.
351 (install-bin): Install compiled and source Lisp files.
352 (todo): Remove, since it seems pointless.
356 * README: Add Installation instructions. Tweak layout.
358 * erc.texi: Work on some pre-5.1 items.
360 * erc-stamp.el, erc-track.el: Move some functions and options in
361 order to get rid of a few compiler warnings.
363 * erc.el (erc-modules): Enable readonly by default. This will
364 prevent new users from accidentally removing old messages, which
365 could be disconcerting. Also enable stamp by default, since
366 timestamps are a fairly standard feature among IRC clients.
368 * erc-button.el: Munge whitespace.
370 * erc-identd.el (erc-identd-start): Instead of throwing an error,
371 just try to use the obsolete function.
373 2006-01-22 Michael Olson <mwolson@gnu.org>
375 * erc-backend.el (erc-decode-string-from-target): Make sure that
376 we have a string as an argument. If not, coerce it to the empty
377 string. Hopefully, this will work painlessly around an edge case
378 related to quitting ERC around the same time a message comes in.
380 2006-01-22 Johan Bockgård <bojohan@users.sourceforge.net>
382 * erc-track.el: Use `(eval-when-compile (require 'cl))' (for
384 (erc-find-parsed-property): Simplify.
385 (erc-track-get-active-buffer): Fix logic. Simplify.
386 (erc-track-switch-buffer): Remove unused variable `dir'. Simplify.
388 * erc-speak.el: Doc fixes.
389 (erc-speak-region): `propertize' --> `erc-propertize'.
391 * erc-dcc.el (erc-dcc-chat-parse-output): `propertize' -->
394 * erc-button.el (erc-button-add-button): Take erc-fill-prefix into
395 account when wrapping URLs.
397 * erc-bbdb.el (erc-bbdb-elide-display): Doc fix.
399 * erc-backend.el (define-erc-response-handler): Doc fix.
401 2006-01-22 Michael Olson <mwolson@gnu.org>
403 * erc.el (erc-update-modules): Use `require' instead of `load',
404 but prevent it from causing errors, in order to preserve the
407 2006-01-21 Michael Olson <mwolson@gnu.org>
409 * FOR-RELEASE (Source): Mark cl task as done.
411 * Makefile (erc-auto.el): Call erc-generate-autoloads rather than
413 (erc-auto.el, %.elc): Don't show command, just its output.
415 * NEWS: Add items from 2005-01-01 to 2005-08-13.
417 * debian/copyright (Copyright): Update.
419 * erc-auto.in (erc-generate-autoloads): Rename from
422 * erc.el, erc-autoaway.el, erc-backend.el: Use
423 erc-server-process-alive instead of erc-process-alive.
425 * erc.el, erc-backend.el, erc-ezbounce.el, erc-list.el,
426 erc-log.el, erc-match.el, erc-nets.el, erc-netsplit.el,
427 erc-nicklist.el, erc-nickserv.el, erc-notify.el, erc-pcomplete.el:
428 Use (eval-when-compile (require 'cl)), so that compilation doesn't
431 * erc-fill.el, erc-truncate.el: Whitespace munging.
433 * erc.el: Update copyright notice. Remove eval-after-load code.
434 (erc-with-buffer): Docfix.
435 (erc-once-with-server-event, erc-once-with-server-event-global)
436 (erc-with-buffer, erc-with-all-buffers-of-server): Use erc-gensym
438 (erc-banlist-update): Use erc-delete-if instead of delete-if.
439 (erc): Call `erc-update-modules' here.
441 * erc-backend.el: Require 'erc-compat to minimize compiler
443 (erc-decode-parsed-server-response): Docfix.
444 (erc-server-process-alive): Move here from erc.el and rename from
446 (erc-server-send, erc-remove-channel-users): Make sure process is
447 alive before sending data to it.
449 * erc-bbdb.el: Update copyright years.
450 (erc-bbdb-whois): Remove overexuberant comment.
452 * erc-button.el: Require erc-fill, since we make liberal use of
455 * erc-compat.el (erc-const-expr-p, erc-list*, erc-assert): New
456 functions, the latter of which provides an `assert' equivalent.
457 (erc-remove-if-not): New function that provides a simple
458 implementation of `remove-if-not'.
459 (erc-gensym): New function that provides a simple implementation
461 (erc-delete-if): New function that provides a simple
462 implementation of `delete-if'.
463 (erc-member-if): New function that provides a simple
464 implementation of `member-if'.
465 (field-end): Remove this, since it is unused, and later versions
466 of XEmacs have this function already.
467 (erc-function-arglist): Moved here from erc.el.
468 (erc-delete-dups): New compatibility function for dealing with
470 (erc-subseq): New function copied from cl-extra.el.
472 * erc-dcc.el: Require pcomplete during compilation to avoid
474 (erc-unpack-int, erc-dcc-send-filter)
475 (erc-dcc-get-filter): Use erc-assert instead of assert.
476 (pcomplete/erc-mode/DCC): Use erc-remove-if-not instead of
479 * erc-match.el (erc-log-matches): Fix compiler warning.
481 * erc-nicklist.el: Update copyright notice.
482 (erc-nicklist-menu): Change use of caadr to (car (cadr ...)).
483 (erc-nicklist-bitlbee-connected-p): Remove.
484 (erc-nicklist-insert-medium-name-or-icon): Accept channel
485 argument. Use it to determine whether we are on bitlbee. Now
486 that bitlbee names its channel "&bitlbee", this is trivial.
487 (erc-nicklist-insert-contents): Pass channel as specified above.
488 Don't try to determine whether we are on bitlbee here.
489 (erc-nicklist-channel-users-info): Use erc-remove-if-not instead
491 (erc-nicklist-search-for-nick): Use erc-member-if instead of
494 * erc-notify.el (erc-notify-QUIT): Use erc-delete-if with a
495 partially-evaluated lambda expression instead of `delete' and
498 * erc-track.el: Use erc-assert.
499 (erc-track-modified-channels): Remove use of `return'.
500 (erc-track-modified-channels): Use `cadr' instead of `second',
501 since otherwise we would need yet another eval-when-compile line.
503 2006-01-19 Michael Olson <mwolson@gnu.org>
505 * erc-backend.el (erc-process-sentinel-1): Remove attempt to
506 detect SIGPIPE, since it doesn't work.
508 2006-01-10 Diane Murray <disumu@x3y2z1.net>
510 * erc-spelling.el: Updated copyright years.
511 (define-erc-module): Enable/disable `flyspell-mode' for all open
513 (erc-spelling-dictionaries): Reworded customize description.
515 * erc.el (erc-command-symbol): New function.
516 (erc-extract-command-from-line): Use `erc-command-symbol'. This
517 fixes a bug where "Symbol's function definition is void:
518 erc-cmd-LIST" would be shown after typing /list at the prompt (the
519 command was interned because erc-menu.el uses it and is enabled by
520 default whereas erc-list.el is not).
522 * NEWS: Started a list of renamed variables.
524 * erc.el: Reworded the message sent when defining variable
526 (erc-command-indicator-face): Doc fix.
527 (erc-modules): Enable the match module by default which makes
528 current nickname highlighting on as the default.
530 * erc-button.el: Updated copyright years.
531 (erc-button): New face.
532 (erc-button-face): Use `erc-button'.
533 (erc-button-nickname-face): New customizable variable.
534 (erc-button-add-nickname-buttons, erc-button-add-buttons-1): Send
535 new argument to `erc-button-add-button'.
536 (erc-button-add-button): Doc fix. Added new argument to function
537 definition, NICK-P. If it's a nickname, use
538 `erc-button-nickname-face', otherwise use `erc-button-face'. This
539 makes channel tracking and buttons work better together when
540 `erc-button-buttonize-nicks' is enabled, since there is a nickname
541 on just about every line.
543 * erc-track.el (erc-track-use-faces): Doc fix.
544 (erc-track-faces-priority-list): Added `erc-button' to list.
545 (erc-track-priority-faces-only): Doc fix.
547 2006-01-09 Diane Murray <disumu@x3y2z1.net>
549 * erc-button.el (erc-button-url-regexp): Use `concat' so the
550 regexp is not one long line.
551 (erc-button-alist): Fixed so that customizing works correctly.
552 Reorganized. Removed lambda functions with more than two lines.
554 (erc-button-describe-symbol, erc-button-beats-to-time): New
555 functions. Moved from `erc-button-alist'.
557 2006-01-07 Michael Olson <mwolson@gnu.org>
559 * erc-backend.el (erc-process-sentinel-1): Don't try to re-open a
560 process if a SIGPIPE occurs. This happens when a new message
561 comes in at the same time a /quit is requested.
562 (erc-process-sentinel): Use string-match rather than string= to do
563 these comparisons. Matching literal newlines makes me nervous.
565 * erc-track.el (erc-track-remove-from-mode-line): Handle case
566 where global-mode-string is not a list. Emacs22 permits this.
569 See ChangeLog.05 for earlier changes.
571 Copyright (C) 2006 Free Software Foundation, Inc.
572 Copying and distribution of this file, with or without modification,
573 are permitted provided the copyright notice and this notice are preserved.
579 ;; arch-tag: 865a75f6-2bcb-46df-bf0c-b514dadf688a