]> git.eshelyaron.com Git - emacs.git/commitdiff
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-55
authorMiles Bader <miles@gnu.org>
Wed, 8 Feb 2006 02:41:23 +0000 (02:41 +0000)
committerMiles Bader <miles@gnu.org>
Wed, 8 Feb 2006 02:41:23 +0000 (02:41 +0000)
Creator:  Michael Olson <mwolson@gnu.org>

Merge from erc--emacs--0

23 files changed:
lisp/erc/ChangeLog
lisp/erc/ChangeLog.01 [new file with mode: 0644]
lisp/erc/ChangeLog.02 [new file with mode: 0644]
lisp/erc/ChangeLog.03 [new file with mode: 0644]
lisp/erc/ChangeLog.04 [new file with mode: 0644]
lisp/erc/ChangeLog.05 [new file with mode: 0644]
lisp/erc/ChangeLog.2001 [deleted file]
lisp/erc/ChangeLog.2002 [deleted file]
lisp/erc/ChangeLog.2003 [deleted file]
lisp/erc/ChangeLog.2004 [deleted file]
lisp/erc/ChangeLog.2005 [deleted file]
lisp/erc/erc-autojoin.el [deleted file]
lisp/erc/erc-complete.el [deleted file]
lisp/erc/erc-hecomplete.el [new file with mode: 0644]
lisp/erc/erc-join.el [new file with mode: 0644]
lisp/erc/erc-list.el
lisp/erc/erc-nets.el [deleted file]
lisp/erc/erc-networks.el [new file with mode: 0644]
lisp/erc/erc-nickserv.el [deleted file]
lisp/erc/erc-notify.el
lisp/erc/erc-services.el [new file with mode: 0644]
lisp/erc/erc-stamp.el
lisp/erc/erc.el

index 9646318e758593abcc88c83e9603c0af18cbc43f..50b37eb044f6fa85819a9bc04d34e7b5cfb5a6bc 100644 (file)
@@ -1,3 +1,37 @@
+2006-02-07  Michael Olson  <mwolson@gnu.org>
+
+       * ChangeLog.01, ChangeLog.02, ChangeLog.03, ChangeLog.04,
+       ChangeLog.05: Rename from ChangeLog.NNNN in order to disambiguate
+       the filenames in DOS.
+
+       * erc-goodies.el: Comment fix.
+
+       * erc-hecomplete.el: Rename from erc-complete.el.  Update
+       commentary.  Use define-erc-module so that it's possible to
+       actually use this.
+       (erc-hecomplete): Rename function from `erc-complete'.
+       (erc-hecomplete): Rename group from `erc-old-complete'.  Docfix.
+
+       * erc-join.el: Rename from erc-autojoin.el.
+
+       * erc-networks.el: Rename from erc-nets.el.
+
+       * erc-services.el: Rename from erc-nickserv.el.
+
+       * erc-stamp.el (erc-insert-aligned): Don't take 3rd argument.  Use
+       the simpler `indent-to' function when
+       `erc-timestamp-right-align-by-pixel' is nil.
+       (erc-insert-timestamp-right): If the timestamp goes on the
+       following line, don't add timestamp properties to the spaces in
+       front of it.
+
+       * erc.el (erc-migrate-modules): New function that eases migration
+       of module names.
+       (erc-modules): Call erc-migrate-modules in the :get accessor.
+       (erc-modules, erc-update-modules): Update for new modules names.
+       (erc-cmd-SMV): Remove, since this does not give useful output due
+       to the version strings being removed from ERC modules.
+
 2006-02-05  Michael Olson  <mwolson@gnu.org>
 
        * erc-spelling.el (erc-spelling-init): If
        where global-mode-string is not a list.  Emacs22 permits this.
 
 
-See ChangeLog.2005 for earlier changes.
+See ChangeLog.05 for earlier changes.
 
     Copyright (C) 2006 Free Software Foundation, Inc.
   Copying and distribution of this file, with or without modification,
diff --git a/lisp/erc/ChangeLog.01 b/lisp/erc/ChangeLog.01
new file mode 100644 (file)
index 0000000..20a0380
--- /dev/null
@@ -0,0 +1,1046 @@
+2001-12-18  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Added missing 747 numreply (banned)
+
+2001-12-15  Gergely Nagy  <algernon@debian.org>
+
+       * debian/scripts/install, debian/rules:
+       updated to 2.1.cvs.20011215-1
+
+       * debian/changelog: Debian version 2.1.cvs.20011215-1
+
+2001-12-11  Andreas Fuchs  <asf@void.at>
+
+       * erc.el:
+       * applied a nicer version of mhp's patch to remove the last prompt from
+         saved logs
+
+       * erc-replace.el: * Initial checkin
+
+2001-12-11  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * fixed bug triggered when reuse-buffer was enabled (the default).
+         Another silly port type problem. Maybe we should unify that once and for all sometimes...
+
+2001-12-10  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * erc-message-english: New QUIT and s004 entries.
+       * erc-save-buffer-on-part: New variable.
+       * erc-kill-buffer-on-part: New variable.
+       * (erc-server-PART): Use above variables.
+       * (erc-join-channel): Use DEF argument instead of initial input for completing-read.
+
+2001-12-08  Tijs van Bakel  <smoke@wanadoo.nl>
+
+       * erc.el: added defcustom erc-nick-uniquifier ^ (i prefer _)
+
+2001-12-07  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog: changelog for version 2.1.cvs.20011208-1
+
+2001-12-07  Tijs van Bakel  <smoke@wanadoo.nl>
+
+       * erc.el:
+       Added erc-scroll-to-bottom as an erc-insert-hook function.  It still bugs a bit, so please test it, thanks
+
+2001-12-07  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Fixed silly bug in erc-server-TOPIC (thanks mhp)
+
+       * erc-speak.el:
+       * Fix non-greedy matching bug. That one somehow swallowed text
+
+       * erc.el:
+       Fix Emacs20 problem. For now, we disable erc-track-modified-channels-minor-mode in emacs20
+
+2001-12-07  Andreas Fuchs  <asf@void.at>
+
+       * erc-fill.el:
+       * Fix another stupid one-off error. This time it really works!
+        (Until I find the next bug. I guess you can hold your breath) (-:
+
+2001-12-06  Andreas Fuchs  <asf@void.at>
+
+       * erc-fill.el: * Fixed static filling:
+       ** No more \ed (continued on next line) lines anymore
+       ** Fixed bug with previous version where longer lines wouldn't get
+          filled correctly (i.e. at all)
+
+2001-12-06  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog: changelog for 2.1.cvs.20011206-1 added
+
+2001-12-06  Andreas Fuchs  <asf@void.at>
+
+       * erc.el:
+       * Don't discard away status when identifying to NickServ
+       * Modify `erc-already-logged-in': check for port, too.
+
+       * erc-fill.el:
+       * Fix stupid loop non-termination error in erc-fill-static when filling
+         one-line regions.
+       * Make erc-count-lines return meaningful values
+
+2001-12-05  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * (erc-process-input): Make ' /command' work for quoting /commands
+
+       * erc-speak.el: see changelog
+
+       * erc-fill.el: see erc.el changelog
+
+       * erc.el:
+       * erc-insert-hook: Changed strategy completely, no start end parameters any more.
+       We narrow-to-region now, thats much cleaner.
+       * rename erc-fill-region to erc-fill and change the autoload
+       ** You'll probably need to restart Emacs
+
+2001-12-04  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * (erc-send-current-line): Fixed long outstanding bug. XEmacs users with erc-fill-region on erc-insert-hook knew that one a long time.
+
+       * erc.el: fix order of attack
+
+       * erc.el: * macroexpanded define-minor-mode for XEmacs
+
+       * erc.el: First try to make channel tracking mouse sensitive
+
+       * erc.el: * More erc-message-format conversion.
+         erc-format-message-english-PART as an example on how to use functions to format message
+       * (erc-format-message): Fallback mechanism to use english catalog if variable is not bound
+
+2001-12-03  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * (erc-iswitchb): Rewrite, docfix.
+       Make it use erc-modified-channels as default if available.
+
+       * erc-menu.el:
+       * Fixage related to erc-track-modified-channels-minor-mode rewrite
+
+       * erc.el:
+       * erc-track-modified-channels-minor-mode: Use buffer objects instead of erc-default-target return value for internal state keeping.
+
+       * erc.el: * Made reconnect behave nicer (erc-process-sentinel)
+       * Rewrote erc-modified-channels-tracking completely.
+         Its now a minor mode (erc-track-modified-channels-minor-mode)
+         It uses a list as internal representation now, so all silly string-parsing
+         related bugs should be gone.
+         Use (erc-track-modified-channels-minor-mode t) now to toggle this functionality.
+         Dont set the erc-track-modified-channels-minor-mode variable yourself, use the toggle function
+
+2001-11-29  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog: final version
+
+2001-11-29  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * (erc-channel-p): Make it work with string and buffer as parameter. buffer.
+       * (erc-format-message): Add a check for functionp. This allows a format-specifier also to be a function name, which gets called with args applied and needs to return the actual format string.
+       * Converted some formats, JOIN, JOIN-you, MODE, ...
+
+2001-11-28  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * (erc-prepare-mode-line-format): Added sanity checks to prevent it from having problems with server buffers where the connection failed
+
+       * erc-bbdb.el:
+       * (erc-bbdb-JOIN): regexp-quote the fingerhost before searching, some people have really strange characters as their user names
+
+       * erc.el: Remove a stupid debug like (message ...) call
+
+2001-11-28  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog: draft of 2.1.cvs.20011128-1
+
+       * debian/rules: simplify for the all-in-one erc package
+
+       * debian/control: integrated erc-speak back into erc
+
+       * debian/maint/conffiles, debian/maint/conffiles.in, debian/maint/postinst, 
+         debian/maint/postinst.in, debian/maint/prerm, debian/maint/prerm.in, 
+         debian/scripts/install, debian/scripts/install.in, debian/scripts/remove, 
+         debian/scripts/remove.in, debian/scripts/startup.erc-speak:
+       since erc-speak is gone, resurrect the static files, and update them to support the latest erc
+
+2001-11-28  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * (erc-mode): Shouldn't be interactive.
+       * (erc-info-mode): Ditto.
+
+       * erc.el: * (erc-server-352): Added hopcount parsing.
+       Added call to erc-update-channel-member to fill in channel-members information
+       on /WHO if the channel is joined.
+
+2001-11-27  Mario Lang  <mlang@delysid.org>
+
+       * erc-speedbar.el: *** empty log message ***
+
+       * erc-speedbar.el: * (erc-speedbar-expand-user): New function.
+       Used when more information than just the nick name is available about a dude.
+
+       * erc.el: * Fixed stupid edit,checkin,save cycle error :)
+
+       * erc.el:
+       * (erc-generate-log-file-name-default): Renamed to -long
+       Doc fix.
+       * (erc-generate-log-file-name-old): Renamed to -long
+       Doc fix.
+       * erc-generate-log-file-name-function: Set default to ...-long
+       Doc fixes
+
+       * erc-speedbar.el: *** empty log message ***
+
+2001-11-26  Mario Lang  <mlang@delysid.org>
+
+       * erc-speedbar.el: * Integrated channel names list
+         what else do we need to replace info buffers???
+         please test that code and comment on erc-ehlp, thanks
+
+       * erc-speedbar.el:
+       * Added erc-speedbar-goto-buffer and therefore enable switching to the buffers from speedbar
+
+       * erc-speedbar.el:
+       I had to check this in, it works !! sort of,, megaalphagammaversion, first version. test, play, submit ideas/patches
+
+2001-11-26  Gergely Nagy  <algernon@debian.org>
+
+       * erc.el(erc-mode): moved erc-last-saved-position here
+       moved buffer naming code from here..
+       (erc): ...to here
+       (erc-generate-log-file-name-old): only prepend target if it exists
+
+       made erc-log-insert-log-on-open a defcustom
+
+2001-11-26  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * Applied antifuchs/mhp patches, the latest on erc-help, unmodified
+       * New variable: erc-reuse-buffers default to t.
+       * Modified erc-generate-new-buffer-name to use it. it checks if server and port are the same, 
+         then one can assume thats the same channel/query target again.
+
+2001-11-23  Mario Lang  <mlang@delysid.org>
+
+       * erc-bbdb.el:
+       * new function erc-BBDB-NICK to handle nickname anotation on a nick-change event of a known record
+
+       * erc.el: * Remove erc-rename-buffer, its no longer necessary
+       * Remove erc-autoop-*. it was broken, and needed rewrite anyway
+       * write erc-already-logged-in in terms of erc-buffer-list and make the duplicate login check work again
+
+       * erc.el: * Fixed stupid typo
+
+2001-11-22  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * New local variable, erc-announced-server-name
+       * erc-mode-line-format supports a new symbol, target-and/or-server
+       * The mode-line displays the announced server name now (for autojoin later..., 
+         greets Adam)
+       * New macro, erc-server-hook-list for a nice way to define the defcustoms of the erc-server-*-hook's
+         Thanks go to the guy from #emacs who helped with that
+       * erc-fill-region is now autoloaded from erc-fill.el
+         * erc-fill.el implements a new fill method, erc-fill-static
+           (setq erc-fill-function 'erc-fill-static)
+       * Some other things I forgot right now
+
+       * erc-bbdb.el: *** empty log message ***
+
+       * erc-fill.el: Initial version.
+
+       * erc-complete.el:
+       Applied antifuchs patch to make completion work with (string= erc-prompt "")
+
+       * erc-complete.el:
+       added function erc-nick-completion-exclude-myself
+       you can set erc-nick-completion to 'erc-nick-completion-exclude-myself to use it
+
+2001-11-21  Mario Lang  <mlang@delysid.org>
+
+       * erc-bbdb.el:
+       * Changed usage of 'finger-host to bbdb-finger-host-field
+
+       * erc-bbdb.el:
+       * Changed WHOIS to use finger-host instead of net field.
+       * Added 'visible as option to erc-bbdb-popup-p to only pop-up the bbdb buffer if a join happened in a visible buffer on any visible frame.
+       * Added (regexp-quote ...) for nickname search in erc-bbdb-JOIN
+
+2001-11-20  Mario Lang  <mlang@delysid.org>
+
+       * erc-bbdb.el: * Added JOIN support
+
+2001-11-19  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Initial message catalog code. converted erc-action-format usage to use it
+
+       * erc.el: * erc-play-sound: Added XEmacs related check
+
+       * erc-bbdb.el: * Initial version, many thanks to Andreas Fuchs
+
+       * erc.el: * Fixed silly problem with whois/was handling
+
+       * erc.el: * Renamed prev-rd to erc-previous-read
+       * Removed erc-next-line-add-newlines and s next-line-add-newlines to nil in defun erc by default
+
+       * erc.el:
+       fixed xemacs compatibility prob with delete, thanks Adam
+
+2001-11-18  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: numreplies 301 & 461
+
+2001-11-13  Tijs van Bakel  <smoke@wanadoo.nl>
+
+       * erc.el:
+       Added code for error reply 421 "Unknown command", to test the new server parsing system.
+       This was really easy!  Thanks ZenIRC guys & delysid :-)
+
+2001-11-13  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Allow connecting to SSL enabled irc servers.
+          Ugly hack, but it works for now. Be sure to use the numeric irc port 994 so that erc can recognize what you want
+         good example is
+       irc server: ircs.segfault.net
+       port: 994
+
+       meet me there, I am still delYsid :)
+
+       * erc.el: * some more numreply handlers
+       * cleanup in erc-process-away-p
+       * new function erc-display-error-notice
+
+       * erc.el: * numreply 501 and 221
+
+       * erc.el:
+       removed obsolete old hook variables. Your functions may break, but it is easy to hook them up to the new hooks.
+       erc-part-hook: use erc-server-PART-hook instead
+       erc-kick-hook: use erc-server-KICK-hook instead
+       and so on
+
+       * erc.el:
+       fixed serious bug which cause privmsgs vanishing when erc-auto-query was set to nil
+
+       * erc.el: cleaned up erc-process-filter
+
+       * erc.el: * 401 and 320 numreplies implemented
+
+       * erc.el: * Removed old/now obsolete code
+
+       * erc.el: * Fixed bug in erc-server-MODE
+
+2001-11-12  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: fixed it
+
+       * erc.el:
+       *** We switched over. New server message parsing/handling is running now. Thansk to the zenirc developers for the great ideas I got from the code!!!!! Go and test it, poke at it, bug me on irc about problems
+
+       * erc.el: *** empty log message ***
+
+2001-11-12  Tijs van Bakel  <smoke@wanadoo.nl>
+
+       * erc.el:
+       Fixed bug in erc-get-buffer, now channel names are compared in
+       a case-insensitive way.
+
+2001-11-12  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: erc-server-353
+
+2001-11-12  Tijs van Bakel  <smoke@wanadoo.nl>
+
+       * erc.el: Fixed docstring for erc-get-buffer.
+       Added erc-process to a lot of calls to erc-get-buffer, so
+       that only the local process is searched.
+
+2001-11-12  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * erc-buffer-filter: do it differently
+
+       * erc.el: ugly but working fix for mhp's query problem
+
+       * erc.el: * erc-server-PRIVMSG-or-NOTICE
+         Now, all the server word replies are finished. Going to numreplies now
+
+       * erc.el:
+       * debugging fascilities for the transition. C-x 2 C-x o M-x ielm RET erc-server-vectors RET ; to get a list of all server messages currently not handled in the new code. Feel free to pick one and implement it
+
+       * erc.el: * erc-server-KICK and erc-server-TOPIC. new functions
+       * erc-server-305-or-306 and erc-server-311-or-314
+
+       * erc.el:
+       * ported PART and QUIT msgs to the new scheme, many to go. but it is a easy task. does someone wanna try and start with numreplies?
+
+       * erc.el: * erc-server-JOIN
+
+       * erc.el: * Ported erc-server-INVITE code
+
+       * erc.el: * erc-server-ERROR and erc-server-MODE
+
+2001-11-11  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * zen
+
+       * erc.el: * New variable erc-connect-function.
+
+       * erc.el:
+       * New function erc-channel-p and use it where appropriate
+
+       * erc.el: * Removed the variable erc-buffer-list completely now
+       * Moved erc-dbuf around a bit
+
+       * erc.el: * Fix silly change in quit/rename msg handling
+
+       * erc.el: thanks mhp, fixed
+
+       * erc.el: * Tijs van Bakel's work from 10th Nov. merged in
+       * My additions to that idea merged in too
+       Basicly, this is a major rewrite, if you are scared and want avoid problems,
+       stay at your current version. It seems fairly stable though.
+       That changed? erc-buffer-name handling was completely rewritten,
+       and erc-buffer-list local variable handling removed.
+       Simplifies alot of code. Poke at it. read the diff. report bug/send patches!
+
+       * erc.el: * Added variable listing when /set is used without args
+
+2001-11-10  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * Comment/structure cleanup, removal of unnecessary code
+
+       * erc.el: only some code beautification
+
+       * erc-imenu.el:
+       remove add-hook call, thats done in erc.el now for autoloadability
+
+       * erc.el: * Make erc-imenu autoloadable
+
+       * erc.el:
+       * The long promised erc-mode-line-format handling rewrite
+          Poke at it, try it, play with it, report bugs
+
+       * erc.el:
+       some regex-quote fixes, new function erc-cmd-set, and minor things
+
+2001-11-08  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * added second timestamp-format (erc-away-timestamp-format) for marking msgs when being away
+
+       * erc-complete.el: fixed silly deffun
+
+       * erc.el: * Rewrote erc-load-irc-script (simplified)
+       * Removed depricated code
+
+       * erc-speak.el: * reflect changes in erc.el
+
+       * erc.el:
+       * Moved completion related functions into erc-complete.el
+         placed an autoload instead into erc.el. That quite cool,
+         because erc-complete.el only gets loaded when you use
+         TAB first time in erc.
+
+       * erc-complete.el: _ Initial checkin
+
+       * erc.el: * New function: erc-chain-hook-with-args
+       * Changed calls to erc-insert-hook to use it
+
+2001-11-07  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Patch from Fabien Penso
+         Make completion case insensitive. try it! its cool
+
+       * erc.el: * Reduction patch 2
+         This time, we move the input ring handling into erc-ring.el
+         Remember that you need (require 'erc-ring) in your .emacs to get the input handling as a feature
+         And remeber, that you dont need it if you dont use input ring :-)
+
+       * erc-ring.el: * Initial checkin
+
+       * erc.el: * The great reduction patch :-)
+         moved relevant function from erc.el to new file erc-menu.el and erc-imenu.el
+
+       * erc-imenu.el: nitial version
+
+       * erc-menu.el: * Initial version
+
+       * erc.el: * wording change suggested by Benjamin Drieu
+
+2001-11-07  Tijs van Bakel  <smoke@wanadoo.nl>
+
+       * erc.el: Added Emacs version to /SV
+
+2001-11-07  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Hookification patch, read the diff
+
+       * erc.el: too tired for a changelog :)
+
+2001-11-06  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * make erc-cmd-op and erc-cmd-deop take multiple nicknames as argument
+
+2001-11-06  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog: sync
+
+       * debian/rules: fixed a typo: PKGDIR, not PKIDR
+
+2001-11-06  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * Changed timestamping when away to use erc-timestamp-format and append the timestamp instead of prepending it..
+       * minor cleanup, s/(if (not /(unless/ and thelike
+
+2001-11-06  Tijs van Bakel  <smoke@wanadoo.nl>
+
+       * erc.el: Fixed OP and DEOP commands to return T.
+       Added SV say-version command.
+       Added erc-send-message utility function, but it's not used everywhere yet.
+
+2001-11-05  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: stupid delYsid, forgot require 'format-spec. good nite
+
+       * erc.el:
+       * new variable erc-action-format. Some erc-notice-prefix fixes again
+
+       * erc.el: * erc-minibuffer-privmsg defaults to t
+
+       * erc.el:
+       * Small fix in relation to the transition to erc-make-notice
+
+2001-11-05  Tijs van Bakel  <smoke@wanadoo.nl>
+
+       * erc.el:
+       Renamed erc-message-notices to erc-minibuffer-notice, and renamed erc-prevent-minibuffer-privmsg to erc-minibuffer-privmsg, inverting its functionality
+
+       * erc.el: Added support for channel names starting with & + and !.
+       Also, many changes partially discussed on the mailinglist:
+
+               * erc.el (cl): Add requirement for cl package.
+               (erc-buffer-list): Make this variable global again.
+               (erc-default-face): Fix typo.
+               (erc-timestamp-face): Add face for timestamps.
+               (erc-join-buffer, erc): Add a 'bury option.
+               (erc-send-action): Add timestamp.
+               (erc-command-table): Add /CLEAR, /DEOP, /OP, /Q.
+               (erc-send-current-line): Add timestamp.
+               (erc-send-current-line): Add call to erc-insert-hook.
+               (erc-cmd-clear): New command to clear buffer contents.
+               (erc-cmd-whois): Fix cut'n'paste-o.
+               (erc-cmd-deop): New command to deop a user.
+               (erc-cmd-op): New command to op a user.
+               (erc-make-notice): Moved a lot of duplicate code here.  Perhaps
+               this should also be done for erc-highlight-error.
+               (erc-parse-line-from-server): Now NOTICE will also open a new
+               query, just as PRIVMSG.
+               (erc-parse-line-from-server): Call erc-put-text-property on a
+               channel message/notice first, before concatenating nick and
+               timestamp &c.
+               (erc-message-notices): Add option to display notices in
+               minibuffer.
+               (erc-fill-region): No longer strip spaces in front of incoming
+               messages.
+               (erc-parse-current-line): No longer strip spaces in front of text
+               input by user.
+
+       Hopefully I didn't break too much :(
+
+2001-11-05  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * New function erc-nickserv-identify-autodetect for erc-insert-hook. Added by default currently.
+
+       * erc.el:
+       * Mini-fix in erc-process-num-reply (= n 353): Added @ as prefix character to make certain channels on opn work again nicely
+
+2001-10-31  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog: updated to reflect changes
+
+       * debian/scripts/install.in:
+       moved #PKGFLAG# before -f batch-byte-compile
+
+2001-10-29  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Imenu fixed somehow, added IRC services interactive function for indentify to NickServ. Read the diff
+
+2001-10-26  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog: sigh. -2
+
+2001-10-25  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog: updated to reflect changes
+
+       * debian/rules: handle conffiles.in too
+
+       * debian/maint/conffiles.in: new file
+
+       * debian/maint/conffiles: superceded by conffiles.in
+
+       * debian/scripts/startup: superceded by startup.erc
+
+2001-10-25  Mario Lang  <mlang@delysid.org>
+
+       * debian/scripts/startup.erc-speak: * Initial version
+
+       * debian/scripts/startup.erc: * Added and fixes minimal typo
+
+2001-10-25  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog: updated to reflect changes
+
+       * debian/rules:
+       modified to be able to build the erc-speak package too
+
+       * debian/control: added the new erc-speak package
+
+       * debian/README.erc-speak, debian/maint/postinst.in, debian/maint/prerm.in, 
+         debian/scripts/install.in, debian/scripts/remove.in:
+       new file
+
+       * debian/maint/postinst, debian/maint/prerm, debian/scripts/install, 
+         debian/scripts/remove:
+       removed, superceded by it's .in counterpart
+
+2001-10-25  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Fixed some defcustom :type 's
+       * Added erc-before-connect hook which gets called with server port and nick.
+         Use this hook to e.g. setup a tunnel before actually connecting.
+         something like (when (string= server "localhost") ...)
+
+2001-10-24  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Patch by smoke: fix erc-cmd-* commands and add aliases
+
+2001-10-23  Mario Lang  <mlang@delysid.org>
+
+       * erc-speak.el:
+       * Added a new personality for channel name announcement, This makes streams of flooded channels much easier to listen to, 
+         especially if you are on more than one channel simultaniously.
+
+       * erc.el:
+       * Made the completion postfix customizable through erc-nick-completion-postfix
+
+       * erc-speak.el, erc.el:
+       * Added erc-prevent-minibuffer-privmsg
+
+       * erc-speak.el:
+       * Quickish hack to allow exclusion of timestamps from speaking. see erc-speak-filter-timestamps
+
+2001-10-21  Mario Lang  <mlang@delysid.org>
+
+       * erc-speak.el:
+       * Removed now really obsolete code. Package size reduced by 50%
+
+       * erc-speak.el:
+       * Very important fix! Now erc-speak is really complete. Messages dont get cut anymore. Be sure to use auditory icons, 
+         it's reallllly cool now!!!
+
+       * erc-speak.el: *** empty log message ***
+
+       * erc-speak.el: * Major simplification. depends on my 2001-10-21 changes to erc.el.
+       * Things removed, read diff
+
+2001-10-21  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog: oops, silly typo
+
+       * debian/changelog, debian/control, debian/copyright, 
+         debian/maint/conffiles, debian/maint/postinst, debian/maint/prerm, 
+         debian/rules, debian/scripts/install, debian/scripts/remove, 
+         debian/scripts/startup:
+       initial check-in
+
+2001-10-21  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * Changed erc-insert-hook to get two arguments, START and END of the region
+         which got inserted. CAREFUL! This could break stuff, but it makes the hook
+         much more useable.
+
+       * erc.el:
+       * Made erc-smiley a new option, currently set to t to showoff this feature. :)
+
+2001-10-20  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Add missing erc-mode-hook variable
+       * Add smiley-support (preliminary test)
+
+2001-10-20  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el:
+       Replaced all occurences of put-text-property with a call to
+       erc-put-text-property.
+       (erc-put-text-property): New function.
+       (erc-tracking-modified-channels): Moved to the front of the file such
+       that it is already defined when the menu is being defined.
+       (erc-modified-channel-string): Ditto.
+
+2001-10-18  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el: Removed some commentary.  The wiki page is the place to
+       put such information.
+       (erc-fill-prefix): Doc change.
+       (erc-notice-highlight-type): Doc change, now a user option.
+       (erc-pal-highlight-type): Doc change, now a user option.
+       (erc-fool-highlight-type): New option.
+       (erc-keyword-highlight-type): New option.
+       (erc-dangerous-host-highlight-type): New option.
+       (erc-uncontrol-input-line): Doc change.
+       (erc-interpret-controls-p): Doc change, now a user option.
+       (erc-multiline-input): Doc change.
+       (erc-auto-discard-away): Doc change.
+       (erc-pals): Changed from string to regexp.
+       (erc-fools): New option.
+       (erc-keywords): Renamed from erc-highlight-strings.  WATCH OUT:
+       Not backwards compatible change!
+       (erc-dangerous-hosts): Renamed from erc-host-danger-highlight.
+       WATCH OUT: Not backwards compatible change!
+       (erc-menu-definition): Added menu entries for fools, keywords and
+       dangerous hosts.
+       (erc-mode-map): Changed keybindings from C-c <plain ascii> to
+       various C-c <C-ascii> combinations.
+       (erc-dangerous-host-face): Renamed from erc-host-danger-face.
+       WATCH OUT: Not backwards compatible change!
+       (erc-fool-face): New face.
+       (erc-keyword-face): Renamed from erc-highlight-face.  WATCH OUT:
+       Not backwards compatible change!
+       (erc-parse-line-from-server): Fixed highlighting in the cases
+       where (equal erc-pal-highlight-type 'all), added code to handle
+       erc-fool-highlight-type, erc-dangerous-host-highlight-type
+       (erc-update-modes): Replaced erc-delete-string with delete.
+       (erc-keywords): Renamed from erc-highlight-strings, handle
+       erc-keyword-highlight-type.
+       (erc-delete-string): Removed.
+       (erc-list-match): New function.
+       (erc-pal-p): Use erc-list-match.
+       (erc-fool-p): New function.
+       (erc-keyword-p): New function.
+       (erc-dangerous-host-p): Renamed from erc-host-danger-p, use
+       erc-list-match.
+       (erc-directed-at-fool-p): New function.
+       (erc-add-entry-to-list): New function.
+       (erc-remove-entry-from-list): New function.
+       (erc-add-pal): Use erc-add-entry-to-list.
+       (erc-delete-pal): Use erc-remove-entry-from-list.
+       (erc-add-fool): New function.
+       (erc-delete-fool): New function.
+       (erc-add-keyword): New function.
+       (erc-delete-keyword): New function.
+       (erc-add-dangerous-host): New function.
+       (erc-delete-dangerous-host): New function.
+
+2001-10-07  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * irc vs ircd default port fixed
+
+       * erc.el: * Added topic-change to imenu
+
+       * erc.el: * More imenu spiffyness
+
+       * erc.el: * Added imenu support
+
+       * erc.el:
+       * Fix to /topic to show topic instead of setting it to null :)
+
+2001-10-05  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * First version of erc-rename-buffer
+
+       * erc.el: * more header-line tricks.
+
+       * erc.el:
+       * Small fix to do erc-update-mode-line-buffer in erc-update-channel-topic
+
+       * erc.el: * Added erc-header-line-format
+
+2001-10-04  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * mini-fix, add msgp to auto-query code
+
+       * erc.el: * Added command-names to completion (erc-command-table)
+       * New variable erc-auto-query. When set, every arriving message to you
+       will open a query buffer for that sender if not already open.
+       * Compatibility function fo non-existing line-beginning|end-position functions in XEmacs.
+
+2001-10-03  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * Removed alot of (progn ...) where they were not necessary
+       * Changed some (if ...) without else part to (when ...)
+       * Some (while ...) to use (dolist ...)
+       * Fix for completion popup generating tracebacks.
+       * New function erc-arrange-session-in-mulptiple-windows
+       * Lots of other stuff, read the diff
+
+2001-10-02  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Added erc-kill-input and keybinding C-c C-u for it
+
+2001-10-01  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Another fix to nick-completion
+       * Additional checks in erc-track-modified-channels
+
+2001-09-26  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Fixed completion (alex)
+         * Now popup buffer doesnt destroy your window configuration.
+       * Fixed away handling (incomplete)
+
+2001-09-24  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Fixed silly quoting-escape error
+
+2001-09-23  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Added auto-op support (unfinished)
+       * Added erc-latest-version.
+       * Added erc-ediff-latest-version.
+
+2001-09-21  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * Minor menu additions (invite only mode is now a checkbox)
+
+2001-09-20  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * Fix (erc-cmd-names): This should fix C-c C-n too, hoepfully it was the right fix and doesnt break anything else.
+
+       * erc.el: * Fixes XEmacs easymenu usage (2nd time).
+
+2001-09-19  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * (erc-complete-nick): Add ": " only if one completes directly after the erc-prompt, otherwise, add just one space
+
+       * erc.el:
+       * Changed menu-definition to use easymenu (hopefully this now works under Xemacs)
+       * Fix for custom problem with :must-match on XEmacs (thanks shapr)
+       * Added /COUNTRY command using (what-domain) from package mail-extr (shapr)
+       * Fix for case-sensitivity problem with pals (they are now all downcased)
+       * Different (erc-version) function which now can take prefix argument to insert the version information into the current buffer, 
+         instead of just displaying it in the minibuffer.
+
+2001-09-10  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Updated erc-version-string
+
+       * erc.el: Version number change and last read-through...
+
+2001-09-04  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Added some asterisks
+
+2001-08-24  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Fixed hidden channel buffer tracking (sort of), now using switch-to-buffer for advice.
+       This version is unofficially named 2.1prebeta1. Please test it and send
+       fixes to various problems you may encounter so that we can eventually
+       release 2.1 soon.
+
+2001-08-14  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Added function erc-bol and keybinding C-c C-a for it (contributed by Benjamin Rutt <brutt@bloomington.in.us)
+
+2001-08-07  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Checked in lathis code and modified it slightly. Still unsure about set-window-buffer advice, current attempt doesnt seem to work.
+       Removed (nick -> #channel) from mode-line. (CLOSED) and (AWAY...) should still be displayed when appropriate
+
+2001-08-06  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       added local-variable channel-list in session-buffers and make /LIST use it.
+       erc-join-channel can now do completion after /LIST was executed
+
+2001-08-05  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Tweaked erc-join-channel and erc-part-from-channel
+
+2001-07-27  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: some more defcustom stuff
+
+       * erc.el: Patch from Henrik Enberg <henrik@enberg.org>:
+          Adds variables erc-frame-alist and erc-frame-dedicated-p.
+
+       * erc.el: fixed erc-part-from-channel
+
+       * erc.el:
+       fixed match-string problem and added interactive topic setting function.
+
+       * erc.el: fixed silly string-match bug
+
+       * erc.el:
+       Added erc-join-channel and erc-part-from-channel (interactive prompts), as well as keybindings. C-c C-j #emacs RET is now enough :)
+
+2001-07-27  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-display-line-buffer): Simplified filling.
+       (erc-fill-region): New function.
+
+2001-07-27  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Added redundancy check in output
+
+2001-07-26  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-send-action): Add text-property stuff.
+       (erc-input-action): Removed text-property stuff.
+       (erc-command-table): Corrected command for DESCRIBE.  Still
+       doesn't work though.  No idea what it should do.  Looks like a no op.
+       (erc-cmd-me): Doc change.
+
+2001-07-26  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       fixed one occurence of a setq with only one argument (XEmacs didnt like that)
+
+       * erc.el:
+       Added erc-next-line-add-newlines customisation possibility.
+
+       * erc.el:
+       added erc-fill-prefix for defining your own way of filling and fixed filling somehow
+
+       * erc.el:
+       fixed small incompatibility in erc-parse-line-from-server at (and (= n 353) regexp
+
+2001-07-25  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Added erc-filling and filling code to erc-display-line-buffer.
+
+2001-07-08  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(try-complete-erc-nick): Make the ": " part of the
+       expansion
+
+       * erc.el: require ring
+
+2001-07-08  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: *** empty log message ***
+
+2001-07-07  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: typo
+
+       * erc.el: ommit
+       :wq
+
+2001-07-06  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-mode): Call erc-input-ring-setup.
+       (erc-send-current-line): Call erc-add-to-input-ring.
+       (erc-input-ring): New variable.  Currently not buffer local.
+       (erc-input-ring-index): New variable.  Currently not buffer local.
+       (erc-input-ring-setup): New function.
+       (erc-add-to-input-ring): New function.
+       (erc-previous-command): New function.
+       (erc-next-command): New function.
+       (erc-mode-map): Uncommented keybindings for erc-next-command and
+       erc-previous-command.
+
+2001-07-05  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-highlight-strings): Removed debug message.
+
+       * erc.el(erc-join-buffer): Changed default to 'buffer.
+       (erc-join-info-buffer): Changed default to 'disable.
+       (erc-nick-completion): Changed default to 'all.
+
+2001-07-04  uid31117  <uid31117@confusibombus>
+
+       * erc.el: Resolved...
+
+2001-07-03  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-highlight-strings): New option and new function.
+       (erc-parse-line-from-server): Use it.
+       Various empty lines removed.  Various doc strings fixed.
+
+       * erc.el: Removed more empty lines.
+
+       * erc.el(erc-member-string): replaced by plain member
+       Otherwise, lots of deleting of empty lines...  I'm not too happy with that
+       but I feel better when the code is "cleaned up".
+
+2001-07-03  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Ugly hack, but looks nicer when giving commands
+
+       * erc-speak.el: ugly hack, but looks nicer now
+
+2001-07-03  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(try-complete-erc-nick): New function.
+       (erc-try-complete-nick): New function.
+       (erc-nick-completion): New option.
+       (erc-complete): Call hippie-expand such that erc-try-complete-nick
+       will be called eventually.  Based on erc-nick-completion
+       try-complete-erc-nick will then complete on the nick at point.
+
+2001-07-02  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Insert (erc-current-nick) instead of (erc-display-prompt). good night :)
+
+       * erc.el:
+       small, but it was anoying, so I just did it (defcustom for erc-join-buffer and erc-join-info-buffer)
+
+2001-06-29  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el: Use defface to define all faces.
+       Removed some history from the commentary, as well as some other
+       commentary editing.
+
+2001-06-28  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: hmm, defcustom for erc-user-full-name
+
+       * erc-speak.el, erc.el: *** empty log message ***
+
+2001-06-27  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: typo
+
+       * erc.el: Some more defcustom
+
+       * erc-speak.el: nothing, really
+
+2001-06-26  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Some defcustom stuff. Still no defgroup though :)
+
+       * erc.el:
+       Initial change to erc.el (2.0). Mainly list of ideas and features
+       and syntax-table entries.
+
+       * erc-speak.el, erc.el: Initial Import
+
+       * erc-speak.el, erc.el: New file.
+
+    Copyright (C) 2001 Free Software Foundation, Inc.
+  Copying and distribution of this file, with or without modification,
+  are permitted provided the copyright notice and this notice are preserved.
+
+;; Local Variables:
+;; coding: utf-8
+;; End:
+
+;; arch-tag: 306c4b58-f9ae-4f3d-9fd9-db2d743f05a6
diff --git a/lisp/erc/ChangeLog.02 b/lisp/erc/ChangeLog.02
new file mode 100644 (file)
index 0000000..006ac0c
--- /dev/null
@@ -0,0 +1,2607 @@
+2002-12-31  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-split-command):
+       Removed assignment to free variable "continue".
+       (erc-strip-controls): New function.  Takes a string, returns the string with
+       all IRC color/bold/underline/etc. control codes stripped out.
+       (erc-interpret-controls): If variable erc-interpret-controls-p is nil, now
+       uses erc-strip-controls to strip control codes.
+       (erc-ctcp-reply-ECHO): Changed reference and assignment to free variable "s"
+       into reference/assignment to "msg", which appears to be the original author's
+       intent.
+
+       * erc-list.el(erc-chanlist):
+       Changed to use the new erc-once-with-server-event function
+       instead of the old macro of the same name.
+
+       * erc-notify.el(erc-notify-timer):
+       Changed to use the new erc-once-with-server-event function
+       instead of the old macro of the same name.  Also fixed a bug were variable
+       erc-last-ison was being read from a non-server buffer (thus giving its default
+       value instead of its per-server value).
+
+       * erc.el(erc-once-with-server-event):
+       This is now a function.  It was a macro with a
+       bug (the call to gensym happened at byte-compile-time not macro-call-time).
+       (erc-toggle-debug-irc-protocol): Now [return] is bound to this function in
+       the *erc-protocol* buffer.
+
+2002-12-30  Alex Schroeder  <alex@gnu.org>
+
+       * erc-autoaway.el(erc-autoaway-idletimer): Doc,
+       ref. erc-autoaway-use-emacs-idle.
+       (autoaway): Doc, explain different idle definitions.  Reestablish
+       the idletimer only when erc-autoaway-use-emacs-idle is non-nil.
+       (erc-auto-set-away): Doc, ref erc-auto-discard-away.
+       (erc-auto-discard-away): Doc, ref erc-auto-set-away.
+       (erc-autoaway-use-emacs-idle): Doc, ref erc-autoaway-mode, and
+       added a note that this feature is currently broken.
+       (erc-autoaway-reestablish-idletimer): Doc.
+       (erc-autoaway-possibly-set-away): Split test such that
+       erc-time-diff is only computed when necessary, add a comment why
+       erc-process-alive is not necessary.
+       (erc-autoaway-set-away): Test for erc-process-alive.
+
+2002-12-29  Alex Schroeder  <alex@gnu.org>
+
+       * erc-autoaway.el:
+       Changed the order of defcustoms to avoid errors in the :set property
+       of erc-autoaway-idle-seconds.
+
+2002-12-29  Damien Elmes  <erc@repose.cx>
+
+       * erc-track.el:
+       * (erc-track-get-active-buffer): remove superflous (+ arg 0)
+
+2002-12-29  Alex Schroeder  <alex@gnu.org>
+
+       * erc-autoaway.el(erc-autoaway): Moved the defgroup up to the
+       top, before the define-erc-module call.
+       (autoaway): Extended doc.
+       (erc-autoaway-idle-seconds): Use a :set property to handle
+       erc-autoaway-use-emacs-idle.
+       (erc-auto-set-away): Set default to t.  Added doc strings where
+       necessary, reformatted doc strings such that the first line can
+       stand on its own.  This is important for the output of M-x
+       apropos.
+
+2002-12-28  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-auto.in:
+       added (provide 'erc-auto), which is required for (require 'erc-auto) :)
+
+       * erc.el(erc-display-prompt):
+       Set the face property of the prompt to
+       everything but the last character.
+
+       * erc.el(erc-send-current-line):
+       Check wether point is in the input line. If
+       not, just beep and do nothing.
+
+2002-12-28  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-bol):
+       Fixed bug when there is only a prompt, and no property
+       change.
+
+       * erc.el(erc-display-prompt): Rewrote using a save-excursion
+       and erc-propertize.  No longer use a field for the prompt, but a
+       plain text property called erc-prompt.
+       (erc-bol): Use the erc-prompt text property instead of a field.
+       Return point instead of t.
+       (erc-parse-current-line): No need to call point here, then, since
+       erc-bol now returns point.
+
+       * Makefile:
+       make ChangeLog .PHONY, thus forcing it always to be rebuilt.
+
+2002-12-28  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-log-irc-protocol):
+       Removed check wether get-buffer-create
+           returned nil. "The value is never nil", says the docstring.
+
+       * erc.el: Day Of The Small Changes
+
+       (erc-display-prompt): Make the prompt 'front-sticky, which prevents it
+           from being modified. It *should* also make end-of-line move to the
+           end of the field (i.e. the end of the prompt) when point is at the
+           beginning of the prompt, but it doesn't. Dunno why. :(
+
+2002-12-27  Francis Litterio  <franl@users.sourceforge.net>
+
+       * Makefile:
+       Added "-f" to "rm" command in rule for target "realclean".
+
+       * erc.el:
+       New function: erc-log-irc-protocol.  Consolidates nearly duplicate code
+       from functions erc-send-command and erc-process-filter into one function.
+
+       * erc.el(erc-toggle-debug-irc-protocol):
+       Removed unneeded argument PREFIX and code
+       which referenced it at end of function.
+       (erc-send-command): Now we only append a newline to the logged copy
+       of output protocol text if it doesn't have one.
+
+2002-12-27  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-toggle-debug-irc-protocol):
+       Display buffer if it's not shown
+           already, and use view-mode.
+       (erc-toggle-debug-irc-protocol), (erc-send-command),
+           (erc-process-filter): inhibit-only t to insert into the
+           *erc-protocol* buffer (view-mode)
+
+2002-12-27  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-mode-map):
+       Removed keybinding for erc-toggle-debug-irc-protocol.
+       (erc-toggle-debug-irc-protocol): Now used erc-make-notice to propertize the
+       face of the enabled/disabled messages in the *erc-protocol* buffer.
+       (erc-send-command): Now outgoing IRC protocol traffic is logged too.
+
+       * erc.el:
+       Added user-customizable variable erc-debug-irc-protocol.
+       Added function erc-toggle-debug-irc-protocol.
+       (erc-process-filter): Now supports IRC protocol logging.  If variable
+       erc-debug-irc-protocol is non-nil, all IRC protocol traffic is appended
+       to buffer *erc-protocol*, which is created if necessary.
+
+2002-12-27  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-display-prompt):
+       Don't make the prompt intangible; that didn't
+           make things that much better for the user, but confused ispell,
+           which checked the prompt when it should check the first word
+
+2002-12-27  Alex Schroeder  <alex@gnu.org>
+
+       * AUTHORS: fixed resolve's email add
+
+       * AUTHORS: added damien
+
+       * erc.el(erc-truncate-buffer-on-save):
+       Removed documentation that
+       described behaviour now changed.  It used to say "When nil, no
+       buffer is ever truncated."  This is no longer true; even when
+       buffers are NOT truncated on save, they can be truncated, eg. by
+       adding erc-truncate-buffer to the hook.
+       (erc-logging-enabled): New function.
+       (erc-current-logfile): New function.
+       (erc): Use erc-logging-enabled and erc-current-logfile.
+       (erc-truncate-buffer-to-size): Rewrote it, and made sure to use a
+       (save-restriction (widen) ...) such that the truncation actually
+       runs in the whole buffer, not in the last message only (as
+       erc-insert-post-hook will do!).  This should fix rw's
+       out-of-bounds error.
+       (erc-generate-log-file-name-short): Made all but the BUFFER
+       argument optional.  Doc: Mention
+       erc-generate-log-file-name-function.
+       (erc-generate-log-file-name-long): Doc: Mention
+       erc-generate-log-file-name-function.
+       (erc-save-buffer-in-logs): Use erc-logging-enabled and
+       erc-current-logfile.  Doc: Mention erc-logging-enabbled.
+
+       (erc-encode-string-for-target): Only do the real work when
+       featurep mule; else just return the string unchanged.
+
+2002-12-27  Damien Elmes  <erc@repose.cx>
+
+       * erc.el:
+       erc-encoding-default: check for (coding-system-p) for older emacs versions
+
+       * erc.el(erc-connect): missing ()s added. "don't commit at 2am"
+
+       * erc.el(erc-connect):
+       check if (set-process-coding-system) is available before use
+
+2002-12-27  Alex Schroeder  <alex@gnu.org>
+
+       * AUTHORS: added franl
+
+2002-12-26  Alex Schroeder  <alex@gnu.org>
+
+       * erc-pcomplete.el(pcomplete-parse-erc-arguments):
+       Reworked, and fixed a bug that had
+       caused completions to corrupt preceding text under some circumstances.
+
+       * erc.el(erc-encoding-default): New.
+       (erc-encode-string-for-target): Use it instead of a hard-coded ctext.
+       (erc-encoding-coding-alist): Doc.
+
+2002-12-26  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el:
+       Removed fix for bug 658552 recently checked-in, because it doesn't work.
+
+       * erc.el(erc-kill-buffer-function):
+       Removed check that connection is up
+       before running erc-kill-server-hook hooks.  Those hooks should use
+       erc-process-alive to avoid interacting with the process.
+
+       * erc.el:
+       Fixed erc-send-current-line so it no longer assigns the free variable "s", and
+       it doesn't move point to end-of-buffer in non-ERC buffers.  Fixed
+       erc-kill-buffer-function so it doesn't run the erc-kill-server-hook hooks if the
+       server connection is closed.  Fixed bug 658552, which is described in detail at
+       http://sourceforge.net/tracker/index.php?func=detail&aid=658552&group_id=30118&atid=398125
+
+2002-12-26  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-cmd-SMV): Bug, now call erc-version-modules.
+
+       * erc-pcomplete.el(erc-pcomplete-version): New.
+
+2002-12-26  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc-pcomplete.el:
+       Fix for bug where you could not complete a nick when there was text following
+       the nick.
+
+2002-12-25  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-already-logged-in): Use erc-process-alive.
+       (erc-prepare-mode-line-format): Use erc-process-alive.
+       (erc-process-alive): Check erc-process for boundp and processp.
+
+       * erc.el(erc-kill-buffer-function):
+       Do not check wether the process is
+       alive before running the hook, because there might be functions on
+       the hook that need to run even when the process is dead.  And
+       function that wants to check this, should use (erc-process-alive).
+       (erc-process-alive): New function.
+       (erc-kill-server): Use it.
+       (erc-kill-channel): Use it.
+
+       * erc.el(erc-kill-buffer-function):
+       Reverted ignore-error change.
+       ignore-error is dangerous because we might miss bugs in functions
+       on erc-kill-server-hook.
+
+       * erc.el(erc-kill-buffer-function): Use memq instead of member
+       when checking process-status.  Added doc string with references to
+       the other hooks.
+       (erc-kill-server): Only send the command when the erc-process is
+       still alive.  This prevents the error: "Process
+       erc-irc.openprojects.net-6667 not running" when killing the buffer
+       after having used /QUIT.
+
+2002-12-24  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-server-ERROR):
+       Show the error reason, not only the originating host.
+
+       * erc.el(erc-kill-buffer-function):
+       (ignore-errors ...) in 'erc-kill-server-hook.
+           When the process for this server does not exist anymore, the hook
+           will cause an error, effectively preventing the buffer from being
+           killed.
+
+2002-12-24  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc-notify.el:
+       Fixed erc-notify-timer so that it passes the correct nick to
+       the functions on erc-notify-signoff-hook.
+
+2002-12-24  Alex Schroeder  <alex@gnu.org>
+
+       * erc-track.el: Doc
+
+       * erc-track.el(erc-make-mode-line-buffer-name): Removed a
+       superfluous if construct around erc-track-showcount-string.
+       (erc-track-modified-channels): Use 1+.
+       Plus some doc and comment changes.
+
+2002-12-23  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Fix (erc-version) string
+
+2002-12-23  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el:
+       Removed unnecessary assignment to free-variable "p" in erc-downcase.
+
+       * erc.el:
+       Now /PART reason strings are generated the same way /QUIT reason strings
+       are generated (see variable erc-part-reason).  Also, when a server buffer
+       is killed, a QUIT command is automatically sent to the server.
+
+       * erc.el:
+       Changed erc-string-no-properties so that it is more efficient.  Now it uses
+       set-text-properties instead of creating and deleting a temporary buffer.
+
+2002-12-21  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el:
+       erc-kill-input: added a check to prevent a (ding) and an error when
+           there's nothing to kill (thanks to Francis Litterio, franl on IRC)
+
+2002-12-21  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       AWAY notice duplication prevention. erc-prevent-duplicates now set to ("301") by default, and timeout to 60
+
+       * erc.el: erc-prevent-duplicates: New variable, see docstring
+
+2002-12-20  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-track.el:
+       erc-track-modified-channels: Use cddr of cell for old-face. cdr of
+           cell is '(1 . face-name), i have no idea why :)
+
+2002-12-20  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc-current-nick):
+       check the server buffer is active before using
+
+       Also tabified and cleaned up some trailing whitespace
+
+2002-12-15  Mario Lang  <mlang@delysid.org>
+
+       * erc-track.el: erc-track-count patch by az
+
+2002-12-14  Damien Elmes  <erc@repose.cx>
+
+       * erc.el:
+       last-peers: initialise to a cons. thanks to Francis Litterio
+           <franl@world.std.com> for the patch
+
+       * erc.el:
+       erc-kill-channel-hook, erc-kill-buffer-hook, (erc-kill-channel):
+           both hooks now call erc-save-buffer-in-logs, so that query buffers are
+           saved properly now, and not just channel buffers.
+
+2002-12-13  Alex Schroeder  <alex@gnu.org>
+
+       * erc-track.el(erc-unique-channel-names): Fix another #hurd
+       vs. #hurd-bunny bug.
+
+       * erc-match.el(match): No longer modify erc-send-modify-hook,
+       since it does not work without a parsed text property, anyway.
+       (erc-keywords): Allow cons cells.
+       (erc-remove-entry-from-list): Deal with cons cells.
+       (erc-keyword-p): Ditto.
+       (erc-match-message): Ditto.
+
+       Moved nil to the beginning of the list, removed :tags for the
+       -type variables:
+       (erc-current-nick-highlight-type): Ditto.
+       (erc-pal-highlight-type): Ditto.
+       (erc-fool-highlight-type): Ditto.
+       (erc-keyword-highlight-type): Ditto.
+       (erc-dangerous-host-highlight-type): Ditto.
+       (erc-log-matches-flag): Moved nil to the beginning.
+
+2002-12-11  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el:
+       erc-beg-of-input-line: Don't do (goto-char (beginning-of-line)), since
+           beginning-of-line always moves point and returns nil. Thanks to
+           franl on IRC for noting this.
+
+       * erc-stamp.el:
+       erc-insert-timestamp-left, erc-insert-timestamp-right: Made the
+           timestamp a 'field named 'erc-timestamp. Now end-of-line and
+           beginning-of-line will move over the timestamp.
+
+2002-12-10  Damien Elmes  <erc@repose.cx>
+
+       * erc-button.el(erc-button-add-button):
+       make the created button rear-nonsticky, to allow
+       cutting and pasting of buttons without worrying about the button properties
+       being inherited by the text typed afterwards.
+
+       * erc.el: save logfile when killing buffer
+
+2002-12-09  Alex Schroeder  <alex@gnu.org>
+
+       * erc-track.el(erc-modified-channels-display): Reworked.
+       (erc-track-face-more-important-p): Removed.
+       (erc-track-find-face): Return only one face.
+       (erc-track-modified-channels): Reworked.
+       (erc-modified-channels-string): Changed from (BUFFER FACE...) to
+       (BUFFER . FACE)
+
+       * erc-stamp.el(erc-insert-timestamp-right): Do not assume
+       erc-fill-column is available.
+
+2002-12-09  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el:
+       erc-ech-notices-in-minibuffer-flag, erc-minibuffer-notice: Clarified
+           the difference in the docstrings.
+
+2002-12-08  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el: erc-noncommands-list: added erc-cmd-SM and erc-cmd-SMV
+
+2002-12-08  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-cmd-SM): New.
+       (erc-cmd-SMV): New.
+
+       * erc.el(erc-modes): New.
+
+2002-12-08  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-compat.el:
+       field-end: use (not (fboundp 'field-end)) instead of (featurep 'xemacs)
+
+2002-12-08  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-version-modules): New.
+
+2002-12-08  Mario Lang  <mlang@delysid.org>
+
+       * debian/changelog, debian/control, debian/scripts/startup.erc:
+       debian release 3.0.cvs.20021208
+
+2002-12-08  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-split-command): Do the right thing with CTCPs.
+
+2002-12-08  Mario Lang  <mlang@delysid.org>
+
+       * erc-stamp.el: Be a bit more functional
+
+2002-12-08  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-compat.el:
+       XEmacs doesn't seem to have field-end, so we provide our own version here.
+
+2002-12-08  Mario Lang  <mlang@delysid.org>
+
+       * Makefile: Small fixes to debrelease target
+
+2002-12-08  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el:
+       make-obsolete-variable: xemacs doesn't have the WHEN parameter, remove it.
+
+2002-12-07  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-imenu.el(erc-create-imenu-index):
+       Use (forward-line 0) instead of
+         (beginning-of-line) now, sine the latter ignores fields (used in the
+         prompt).
+
+       * erc.el:
+       Rewrite of the prompt stuff to use a field named 'erc-prompt:
+
+       erc-prompt: Removed getter and setter functions. The properties were
+         already set (and overwritten) in erc-display-prompt.
+       (erc-prompt): Add the trailing space here, not all over the code.
+       (erc-display-prompt): Cleaned up a bit. The text-properties now are
+         valid on the whole prompt. Also, made the prompt 'intangible to
+         avoid confused users.
+       (erc-bol): Now use the field 'erc-prompt for finding the prompt
+       (erc-parse-current-line): Cleaned up considerably. Uses (erc-bol) now.
+       (erc-load-irc-script-lines): Adjusted for the new (erc-prompt).
+       (erc-save-buffer-in-logs): Adjusted for the new (erc-prompt).
+
+       * erc.el:
+       erc-uncontrol-input-line: The comment said "Consider it deprecated",
+       so I removed it now.
+       erc-prompt-interactive-input: Marked obsolete as of previous change.
+
+       * erc.el:
+       erc-smiley, erc-unmorse: Put at the end to separate it from the
+       important parts of erc.el.
+
+2002-12-07  Alex Schroeder  <alex@gnu.org>
+
+       * erc-stamp.el(erc-insert-timestamp-right): New algorithm.
+
+2002-12-07  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el:
+       last-peers, erc-message: Explained what last-peers is used for.
+
+2002-12-07  Alex Schroeder  <alex@gnu.org>
+
+       * erc-page.el(erc-cmd-PAGE): New function.
+       (erc-ctcp-query-PAGE): Use the catalog entry for the message, too.
+       (erc-ctcp-query-PAGE-hook): Added custom type.
+       (erc-page-function): Changed custom type from ... function-item to
+       ... function.
+       As well as doc strings.
+
+2002-12-06  Alex Schroeder  <alex@gnu.org>
+
+       * erc-page.el: provide feature at the end
+
+2002-12-06  Brian P Templeton  <bpt@tunes.org>
+
+       * erc-nickserv.el:
+       Added austnet in erc-nickserv.el (thanks to Damien Elmes
+       <resolve@repose.cx>)
+
+2002-12-05  Mario Lang  <mlang@delysid.org>
+
+       * erc-complete.el: Add autoload cookie
+
+       * erc-speak.el: Small fix to make proper voice-changes
+
+2002-12-05  Alex Schroeder  <alex@gnu.org>
+
+       * erc-lang.el: New
+
+2002-12-03  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el:
+       erc-mode-map: Put back C-c C-p (PART) and C-c C-q (QUIT)
+
+2002-12-02  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el:
+       erc-insert-post-hook: Add :options erc-make-read-only, erc-save-buffer-in-logs
+       erc-send-post-hook: Add :options erc-make-read-only
+
+       * erc.el: erc-insert-hook: Removed ("this hook is obsolescent")
+       erc-insert-post-hook: Added :options '(erc-truncate-buffer)
+
+2002-12-02  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Add missing requires
+
+2002-11-29  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-quit-reason-normal):
+       Remove v before %s so it's "Version ..." not
+          "vVersion ..."
+
+2002-11-26  Alex Schroeder  <alex@gnu.org>
+
+       * erc-compat.el(erc-encode-coding-string): Add second argument
+               coding-system, and for non-mule xemacsen, use a new defun instead
+               of identity.
+
+       * erc.el:  (define-erc-module): Use the appropriate group.
+       (erc-port): Changed custom type.
+       (erc-insert-hook): Custom group changed to erc-hooks.
+       (erc-after-connect): ditto
+       (erc-before-connect): ditto
+       (erc-disconnected-hook): ditto
+
+       * erc-button.el(erc-button): New group, changed all custom groups
+       from erc to erc-button, but left all erc-faces as-is.
+
+       * erc-track.el(erc-track): New group, changed all custom groups
+       from erc to erc-track.
+
+2002-11-26  Mario Lang  <mlang@delysid.org>
+
+       * erc-macs.el:
+       Macros for erc-victim handling.  Primary idea is to use setf and some fancy things to get nice syntax. have a look
+
+2002-11-26  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el:
+       pings, erc-cmd-PING, erc-ctcp-reply-PING, catalog entry CTCP-PING:
+       Cleaned up. Removed buffer-local variable pings which stored a list of
+       all sent CTCP PING requests. Now send our full time with the CTCP PING
+       request and interpret the answer.
+
+2002-11-25  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el: nick-stk: replaced by the local variable current-nick.
+
+2002-11-25  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-send-command): Use erc-encode-string-for-target.
+       (erc-encode-string-for-target): New.
+
+       * erc-compat.el(erc-encode-coding-string): Add second argument
+       coding-system, and for non-mule xemacsen, use a new defun instead
+       of identity.
+
+       * erc-nickserv.el(erc-nickserv-version): New.
+
+2002-11-25  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * Makefile:
+       UNCOMPILED: erc-chess.el depends on chess-network.el, which might not
+       be installed. Don't compile it.
+
+       * erc.el:
+       erc-mode-map: Added C-a as erc-bol (no reason why it shouldn't be),
+       and removed C-c C-p (part channel) and C-c C-q (quite server) as these
+       are a bit drastic in their consequences and easy to mistype.
+
+2002-11-24  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-track.el: erc-track-faces-priority-list: Extended list
+
+       * erc.el:
+       channel-members: Updated docstring: We have a VOICE predicate, too.
+
+       * erc-track.el(erc-unique-substrings):
+       Don't shorten a single channel to "#", but
+       always give at least 2 chars (except when there are no two chars).
+
+2002-11-23  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-nickserv.el:
+       support for BrasNET. Thanks to rw on IRC for the settings.
+
+2002-11-23  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el: (erc-default-recipients, erc-session-user-full-name)
+               (nick-stk, pings, erc-announced-server-name, erc-connected)
+               (channel-user-limit, last-peers, invitation, away, channel-list)
+               (last-sent-time, last-ping-time, last-ctcp-time, erc-lines-sent)
+               (erc-bytes-sent, quitting, bad-nick, erc-logged-in)
+               (erc-default-nicks): Defvars.
+
+       * erc-compat.el: Switched tests to iso-8859-1 instead of latin-1.
+
+       * erc-compat.el(erc-compat-version): New.
+
+2002-11-22  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(smiley): Smileys are a very small module, now.
+
+2002-11-22  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el:
+       erc-event-to-hook, erc-event-to-hook-name: eval-and-compile these,
+           since we need them in a macro. ERC now compiles again!
+
+       * erc-speak.el:
+       erc-minibuffer-privmsg: Removed setting this variable to nil, since it
+           was removed from erc.el.
+
+       * erc.el(erc-interactive-input-map): Added docstring.
+       (erc-wash-quit-reason): Extended docstring.
+       (erc-server-ERROR): Added docstring.
+       (erc-server-321): buffer-local variable channel-list probably
+           shouldn't be renamed erc-channel-list - removed FIXME.
+
+       * erc.el: small cleanup.
+       ("was not used anymore" here means "not used in erc/*.el nor in
+       fsbot", thanks to deego for checking that.)
+
+       erc-minibuffer-privmsg: Removed (was not used anymore)
+       (erc-reformat-command): Removed (was not used anymore)
+       (erc-strip-erc-parsed-property): Removed (was not used anymore)
+       (erc-process-ctcp-response): Removed (replaced by ctcp-query-XXX-hook)
+       (erc-send-paragraph): Removed ("Note that this function is obsolete,
+           erc-send-current-line handles multiline input.")
+       (erc-input-hook): Removed ("This hook is obsolete. See
+           `erc-send-pre-hook', `erc-send-modify-hook' and
+           `erc-send-post-hook' instead.")
+       (erc-message-hook): Removed ("This hook is obsolete. See
+           `erc-server-PRIVMSG-hook' and `erc-server-NOTICE-hook'.")
+       (erc-cmd-default-channel): Removed ("FIXME: no clue what this is
+           supposed to do." - it was supposed to prepend the default channel
+           to a command before sending it. E.g. typing "/FOO now!" would send
+           the IRC command "FOO #mycurrentchannel now!")
+
+       * erc.el:
+       erc-ctcp-query-PING: Send the whole argument back, not just the first
+       number. This is required for many clients (e.g. irssi, BitchX, ...)
+       which send their ping times in two different numbers for microsecond
+       accuracy.
+
+2002-11-22  Alex Schroeder  <alex@gnu.org>
+
+       * erc-track.el(erc-track-shorten-function): Allow nil.
+
+2002-11-21  Alex Schroeder  <alex@gnu.org>
+
+       * erc-track.el(erc-unique-channel-names): Fixed bug that appeared
+       if one target name was a substring of another -- eg. #hurd and
+       #hurd-bunny.  Added appropriate test.
+
+2002-11-20  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-track.el:
+       erc-unique-channel-names: Don't take a substring of channel that could
+       be longer than the channel, but at most (min (length candidate)
+       (length channel). (thanks to deego for noticing this)
+
+2002-11-19  Mario Lang  <mlang@delysid.org>
+
+       * erc-notify.el: * (require pcomplete): Only when compiling.
+
+2002-11-19  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-track.el:
+       erc-track-faces-priority-list: New variable, defines what faces will
+       be shown in the modeline. If set to nil, the old behavior ("all")
+       remains.
+       erc-track-face-more-important-p: new function
+       erc-track-find-face: new function
+
+2002-11-19  Alex Schroeder  <alex@gnu.org>
+
+       * erc-fill.el(erc-stamp): Require it.
+
+       * erc-match.el(away): devar for the compiler.
+
+       * erc-stamp.el(stamp): Moved.
+
+       * erc.el(erc-version-string): New version.
+
+       * erc-autoaway.el(erc-autoaway-idletimer): Moved to the front of
+       the file.
+
+       * erc-auto.in: (generated-autoload-file, command-line-args-left):
+       Added defvar without value to silence byte compiler.
+
+       * Makefile(realclean): renamed fullclean to realclean.
+       (UNCOMPILED): New list, for erc-bbdb.el, erc-ibuffer.el,
+       erc-speak.el.
+       (SOURCE): Do not compile UNCOMPILED.
+       (release): New target.
+       (ChangeLog): New target.
+       (todo): New target.
+
+       * erc-complete.el(erc-match): Require it.
+       (hippie-exp): Require it.
+
+       * erc-ezbounce.el(erc): Require it.
+
+       * erc-imenu.el(imenu): Require it.
+
+       * erc-nickserv.el(erc-networks): Moved up.
+
+       * erc-notify.el(pcomplete): Require it.
+
+       * erc-replace.el(erc): Require it.
+
+       * erc-sound.el(sound): Typo -- define-key in erc-mode-map.
+
+       * erc-speedbar.el(dframe): Require it.
+       (speedbar): Require it.
+
+       * erc-track.el(erc-default-recipients): devar for the compiler.
+
+       * README: New file.
+
+2002-11-18  Mario Lang  <mlang@delysid.org>
+
+       * AUTHORS: File needed for mkChangeLog
+
+       * mkChangeLog: Original code by mhp
+
+2002-11-18  Alex Schroeder  <alex@gnu.org>
+
+       * erc-button.el(erc-button-list): Renamed to erc-list and moved
+       to erc.el.
+
+       * erc.el(erc-list): New.
+
+       * erc-track.el(erc-make-mode-line-buffer-name): Simplified.
+       (erc-modified-channels-display): Simplified.  Now works with all
+       faces, and fixes the bug that when two faces where used (bold
+       erc-current-nick-face), then no faces was added.
+
+       * erc-track.el: Lots of new tests.  Moved some defuns around in
+       the file.
+       (erc-all-channel-names): Renamed.
+       (erc-all-buffer-names): New name, now include query buffers as
+       well.
+       (erc-modified-channels-update-inside): New variable.
+       (erc-modified-channels-update): Use it to prevent running display
+       if already inside it.  This prevented debugging of
+       `erc-modified-channels-display'.
+       (erc-make-mode-line-buffer-name): Moved.
+       (erc-track-shorten-names): Don't test using erc-channel-p as that
+       failed with query buffers.
+       (erc-unique-substrings): Move setq i + 1 to the end of the while
+       loop, so that start is used as a default value instead of start +
+       1.
+
+2002-11-18  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-track.el:
+       erc-unique-substrings: define this before using it in assert
+
+       * erc.el:
+       with-erc-channel-buffer: Define *before* using this macro. This
+       hopefully fixes a bug noted on IRC.
+
+       * erc-notify.el:
+       erc-notify-signon-hook, erc-notify-signoff-hook: New hooks. They're
+       even run when their name suggests!
+
+2002-11-18  Alex Schroeder  <alex@gnu.org>
+
+       * erc-list.el: Typo.
+
+       * erc-speedbar.el: Whitespace only.
+
+       * erc.el(define-erc-module): Avoid defining an alias if name and
+       alias are the same.
+
+       * erc-ibuffer.el: URL
+
+       * erc-imenu.el(erc-imenu-version): New constant.
+
+       * erc-ibuffer.el(erc-ibuffer-version): New constant.
+
+       * erc-ibuffer.el: File header, comments.
+
+       * erc-fill.el(erc-fill-version): New constant.
+
+       * erc-ezbounce.el(erc-ezb-version): New constant.
+
+       * erc-complete.el(erc-complete-version): New constant.
+
+       * erc-chess.el(erc-chess-version): New constant.
+
+       * erc-chess.el: Whitespace only.
+
+       * erc-bbdb.el(erc-bbdb-version): Typo.
+
+       * erc-bbdb.el(erc-bbdb-version): New constant.
+       Lots of whitespace changes.  Changes to the header.
+
+       * erc-track.el(erc-track-shorten-aggressively): Doc.
+       (erc-all-channel-names): New function.
+       (erc-unique-channel-names): New function.
+       (unique-substrings): Renamed.
+       (erc-unique-substrings): New name
+       (unique-substrings-1): Renamed.
+       (erc-unique-substring-1): New name.  Added lots of tests.
+       (erc-track-shorten-names): Call erc-unique-channel-names instead
+
+       * erc-match.el(match): Rewrote a as module.
+
+2002-11-17  Alex Schroeder  <alex@gnu.org>
+
+       * erc-netsplit.el(erc-netsplit-version): New.
+       (netsplit): Defined as a module, replacing erc-netsplit-initialize
+       and erc-netsplit-destroy.
+
+2002-11-17  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-track.el(erc-track-switch-buffer):
+       define-erc-module defines erc-track-mode,
+       not erc-track-modified-channels-mode.
+
+       * erc.el:
+       Variables erc-play-sound, erc-sound-path, erc-default-sound,
+       erc-play-command, erc-ctcp-query-SOUND-hook and functions
+       erc-cmd-SOUND, erc-ctcp-query-SOUND, erc-play-sound, erc-toggle-sound
+       moved to erc-sound.el
+
+       Variables erc-page-function, erc-ctcp-query-PAGE-hook and function
+       erc-ctcp-query-PAGE moved to erc-page.el
+
+       * erc-page.el:
+       erc-page.el: New file. CTCP PAGE support for ERC, extracted from erc.el.
+
+       * erc-sound.el:
+       defin-erc-module: Typo. Autoload should do erc-sound-mode and "erc-sound".
+
+       * erc-sound.el:
+       erc-sound.el: New file. Contains all the CTCP SOUND stuff from erc.el.
+
+       * erc.el(erc-process-ctcp-request):
+       Removed (old-style CTCP handling)
+       (erc-join-autogreet): Removed (was broken anyways)
+
+2002-11-17  Alex Schroeder  <alex@gnu.org>
+
+       * erc-button.el(erc-button-version): New constant.
+
+       * erc-button.el(button): rewrote as a module.
+
+2002-11-17  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el: New functions:
+       (erc-event-to-hook), (erc-event-to-hook-name): Convert an event to the
+       corresponding hook. The latter only returns the name, while the former
+       interns the hook symbol and returns it.
+
+2002-11-17  Alex Schroeder  <alex@gnu.org>
+
+       * erc-replace.el:
+       Practically total rewrite.  All smiley stuff deleted.
+
+       * erc-track.el(track): typo.
+
+       * erc.el(define-erc-module): Doc change.
+
+2002-11-17  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-autoaway.el: Changed to use define-erc-module.
+
+       * erc.el(define-erc-module):
+       Make the enable/disable functions interactive.
+
+       * erc.el(erc):
+       Don't use switch-to-buffer when we're in the minibuffer,
+       because that does not work. Use display-buffer instead. This leaves
+       two problems: The point does not advance to the end of the buffer for
+       whatever reason, and after leaving the minibuffer, the new window gets
+       buried.
+
+2002-11-17  Alex Schroeder  <alex@gnu.org>
+
+       * erc-stamp.el(stamp): Doc change.
+
+       * erc-stamp.el(erc-stamp-version): New constant.
+       (stamp): downcase alias name of the mode.
+
+       * erc.el(define-erc-module): Added defalias option, renamed
+       parameters again.
+
+       * erc-track.el: erc-track-modified-channels-mode is now only an
+       alias to erc-track-mode.  Only erc-track-mode is autoloaded.
+       (track): Rewrote call to define-erc-module.
+
+2002-11-16  Mario Lang  <mlang@delysid.org>
+
+       * debian/README.Debian: * Spelling fix
+
+       * erc-fill.el: * Fix autoload definition for erc-fill-mode
+
+       * debian/control, debian/maint/postinst, debian/maint/prerm:
+       * Remove /usr/doc -> /usr/share/doc link handling
+
+       * debian/changelog: * Sync with reality
+
+       * debian/scripts/startup.erc:
+       * Add /usr/share/emacs/site-lisp/erc/ to load-path
+       * (load "erc-auto")
+
+       * debian/README.Debian:
+       * Info about the changes since last release updated
+
+       * erc-pcomplete.el: * Fix emacs/xemacs compatibility
+
+       * debian/scripts/install: * Dont compile erc-compat, fix ELCDIR
+
+       * debian/control: * Change maintainer field
+
+       * erc.el:
+       * (defin-erc-module): Renamed argument mode-name to mname because silly byte-compiler thought we were talking about `mode-name'.
+
+       * Makefile: * Added debrelease target
+
+       * erc-bbdb.el, erc-pcomplete.el, erc-stamp.el, erc.el:
+       * (define-erc-module): Added mode-name argument.
+       * Converted erc-bbdb, erc-pcomplete and erc-stamp to new macro.
+       * autoload fixes
+
+       * erc-bbdb.el:
+       * Create a global-minor-mode (i.e., make it a proper erc-module)
+
+       * erc.el: * (define-erc-modle): New defmacro
+
+2002-11-16  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-autoaway.el(erc-autoaway-idle-seconds):
+       t in docstrings should be non-nil
+
+2002-11-16  Alex Schroeder  <alex@gnu.org>
+
+       * erc-autoaway.el, erc-button.el, erc-fill.el, erc-match.el, 
+         erc-menu.el, erc-ring.el, erc-track.el:
+       Cleanup of file headers: copyright years, GPL mumbo-jumbo, commentaries.
+
+       * erc-stamp.el(erc-insert-away-timestamp-function):
+       New custom type.
+       (erc-insert-timestamp-function): New custom type.
+
+       * erc-fill.el(erc-fill-function): Doc, new custom type.
+       (erc-fill-static): Doc.
+       (erc-fill-enable): New function.
+       (erc-fill-disable): New function.
+       (erc-fill-mode): New function.
+
+       * erc-match.el(erc-match-enable): add-hook for both
+       erc-insert-modify-hook and erc-send-modify-hook.
+       (erc-match-disable): remove-hook for both
+       erc-insert-modify-hook and erc-send-modify-hook.
+
+2002-11-15  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-autoaway.el:
+       - Added a way to use auto-away using emacs idle timers
+       - Renamed erc-set-autoaway to erc-autoaway-possibly-set-away for consistency
+
+2002-11-14  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el: erc-mode-map: Removed the C-c C-g binding for erc-grab
+
+       * erc.el:
+       (erc-server-341) Another instance of the channel/chnl problem i didn't
+       see last time
+
+2002-11-14  Alex Schroeder  <alex@gnu.org>
+
+       * erc-compat.el(erc-decode-coding-string): typo
+
+2002-11-14  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-server-341):
+       variable name should be chnl not channel, as it is
+       used this way in this function, and the other erc-server-[0-9]* use
+       chnl too.
+
+       * erc-autoaway.el:
+       Set back on all servers, not just the current one, since we're set
+       away on all servers as well.
+
+       * HISTORY: Fixed typo (ngu.org => gnu.org)
+
+       * erc-autoaway.el, erc-fill.el, erc.el: erc-autoaway.el:
+       * new file
+
+       erc.el:
+       * Removed auto-discard-away facility (now included in erc-autoaway.el)
+       * (erc-away-p): new function
+
+       erc-fill.el:
+       * (erc-fill-variable): Check wether erc-timestamp-format is bound before
+                              using it (erc-fill.el does not require erc-stamp).
+
+2002-11-10  Alex Schroeder  <alex@gnu.org>
+
+       * TODO:
+       TODO: moved it to http://www.emacswiki.org/cgi-bin/wiki.pl?ErcTODO
+
+       * erc.el(with-erc-channel-buffer): Rudimentary doc string.
+
+2002-11-09  Alex Schroeder  <alex@gnu.org>
+
+       * erc-button.el(erc-nick-popup-alist): Made a defcustom.
+
+       * erc-button.el(erc-button-disable): New function.
+       (erc-button-enable): New function, replaces the add-hook calls at top-level.
+       (erc-button-mode): New minor mode.
+
+2002-11-08  Alex Schroeder  <alex@gnu.org>
+
+       * erc-button.el(erc-button-entry): Use erc-button-syntax-table.
+
+       * erc.el, erc-stamp.el: Doc changes.
+
+       * erc-match.el(erc-match-mode): New function, replacing the
+       add-hook.
+       (erc-match-enable): New function.
+       (erc-match-disable): New function.
+       (erc-current-nick-highlight-type): Changed from 'nickname to 'nick
+       to make it consistent with the others.
+       (erc-match-message): Ditto.
+
+       * erc-button.el(erc-button-syntax-table): New variable.
+       (erc-button-add-buttons): Use it.
+
+2002-11-06  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       1) (bug) ERC pops up a new buffer and window when being messaged
+          from an ignored person. fixed
+       2) (misfeature) ERC notices the user in the minibuffer when it
+          ignores something - this can get very annoying, since the
+          minibuffer is also visible when not looking at ERC buffers.
+          Added a customizeable variable for this, the default is nil.
+       3) (wishlist) There is no IGNORE or UNIGNORE command.
+          Added.
+       4) (wishlist) Some IRC clients, notably irssi, allow the user to
+          ignore "replies" to ignored people. A reply is defined as a
+          line starting with "nick:", where nick is the nick of an
+          ignored person. Added that functionaly.
+       Done by Jorgen Schaefer <forcer@forcix.cx>
+
+2002-11-02  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-connect): set-process-coding-system to raw-text.
+
+2002-11-01  Brian P Templeton  <bpt@tunes.org>
+
+       * erc-pcomplete.el, erc-stamp.el, erc-track.el:
+       Fixed more autoloads
+
+       * erc-compat.el: Added autoload for erc-define-minor-mode
+
+2002-11-01  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * (erc-send-command): will break long messages into
+       a bunch of smaller ones, to prevent them from being truncated by the server.
+       The patch also axes some trailing whitespace. :-) <resolve>
+
+2002-10-31  Alex Schroeder  <alex@gnu.org>
+
+       * erc-pcomplete.el(erc-compat): Require.
+       (erc-completion-mode): Use erc-define-minor-mode.
+
+       * erc-track.el(erc-compat): Require.
+       (erc-track-modified-channels-mode): Use erc-define-minor-mode.
+
+       * erc-stamp.el(erc-compat): Require.
+       (erc-timestamp-mode): Use erc-define-minor-mode.
+
+       * erc-compat.el: New file with the code for erc-define-minor-mode,
+       erc-encode-coding-string and erc-decode-coding-string.  Essentially
+       all the stuff that cannot be tested for using a simple boundp or
+       fboundp -- eg. because the number of arguments are wrong.
+
+       * erc.el(erc-compat): Require.
+       (erc-process-coding-system): Moved to erc-compat.el.
+       (erc-connect): Do not set-process-coding-system.
+       (encode-coding-string): Compatibility code moved to erc-compat.el.
+       (decode-coding-string): Compatibility code moved to erc-compat.el.
+       (erc-encode-coding-string): Compatibility code moved to erc-compat.el.
+       (erc-decode-coding-string): Compatibility code moved to erc-compat.el.
+
+2002-10-27  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-display-line-1): Removed call to
+       erc-decode-coding-string.
+       (erc-parse-line-from-server): Added call to
+       erc-decode-coding-string before anything gets parsed at all.
+       (erc-decode-coding-string): Use undecided coding system.
+
+2002-10-24  Sandra Jean Chua  <sacha@free.net.ph>
+
+       * erc-button.el, erc.el:
+       Added LASTLOG command and action for nick-button
+
+2002-10-22  Sandra Jean Chua  <sacha@free.net.ph>
+
+       * erc-pcomplete.el:
+       Fixed nopruning bug, added /MODE channel (mode) [nicks...] completion - mode not completed yet.
+
+2002-10-16  Sandra Jean Chua  <sacha@free.net.ph>
+
+       * erc-pcomplete.el:
+       Fixed 'Hi delysid:' bug in SAY completion after realizing that pcomplete on commands already took care of completing the initial nick:
+
+2002-10-15  Mario Lang  <mlang@delysid.org>
+
+       * erc-pcomplete.el: update from sachac
+
+2002-10-13  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-emacs-time-to-erc-time): Catch when tm is nil.
+
+2002-10-11  Andreas Fuchs  <asf@void.at>
+
+       * erc.el:
+       * Fixed `erc-scroll-to-bottom' to scroll to the bottom even when
+         in the middle of a line. Might also fix the Magic ECHAN Bug[tm]. (-:
+
+2002-10-11  Mario Lang  <mlang@delysid.org>
+
+       * erc-nickserv.el: Fixed erc-networks for the opn->freenode change
+
+2002-10-08  Mario Lang  <mlang@delysid.org>
+
+       * erc-pcomplete.el:
+       Make erc-completion-mode work interactively with already joined channel buffers
+
+       * erc-chess.el: Add autoload cookies
+
+       * erc-notify.el: Add pcomplete support
+
+       * erc.el:
+       Remove autoload statments, remove autoload cookie from erc-mode and erc-info-mode
+
+       * erc-fill.el, erc-match.el: add/remove autoload cookies
+
+2002-10-06  Alex Schroeder  <alex@gnu.org>
+
+       * erc-pcomplete.el(erc-completion-mode): New global minor mode
+       with autoload cookie.
+       (erc-pcomplete-enable): Renamed erc-pcomplete-initialize.
+       (erc-pcomplete-disable): New function.
+
+       * erc-complete.el: Doc changes.
+
+       * erc-stamp.el(erc-stamp-enable): Renamed erc-stamp-initialize.
+       (erc-stamp-disable): Renamed erc-stamp-destroy.
+       (erc-timestamp-mode): Use new names.
+
+       * erc.el: Removed autload for erc-complete and
+       erc-track-modified-channels-mode -- the autoload cookie should do
+       that instead.
+       (erc-input-message): Doc string, removed binding for erc-complete.
+       (erc-mode-map): Removed binding for erc-complete.
+
+2002-10-03  Mario Lang  <mlang@delysid.org>
+
+       * erc-notify.el:
+       New functions erc-notify-JOIN and erc-notify-QUIT to catch some common cases (warning, untested)
+
+2002-10-01  Alex Schroeder  <alex@gnu.org>
+
+       * erc-stamp.el(erc-timestamp-mode): New function.  Removed call
+       to erc-stamp-initialize at the end.
+
+2002-09-25  Brian P Templeton  <bpt@tunes.org>
+
+       * erc.el:
+       Added customizable `erc-process-coding-system' variable.
+
+2002-09-22  Brian P Templeton  <bpt@tunes.org>
+
+       * erc-fill.el:
+       `erc-fill-variable' now does the right thing when `erc-hide-timestamps' is non-nil
+
+2002-09-21  Mario Lang  <mlang@delysid.org>
+
+       * erc-fill.el:
+       patch from Peter Solodov <peter@alcor.concordia.ca>  (note, its slightly broken still
+
+2002-09-05  Mario Lang  <mlang@delysid.org>
+
+       * erc-pcomplete.el: Added LEAVE as alias for PART
+
+2002-09-04  Mario Lang  <mlang@delysid.org>
+
+       * erc-pcomplete.el:
+       By sachac (good work!) keep up doing such things
+
+2002-08-31  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       A fix for Bug#133267: now you can put (erc-save-buffer-in-logs) on erc-insert-post-hook to save *every* incoming message.
+
+2002-08-30  Brian P Templeton  <bpt@tunes.org>
+
+       * erc.el:
+       Changed default value of erc-common-server-suffixes because of the OPN
+       name change
+
+2002-08-28  Mario Lang  <mlang@delysid.org>
+
+       * erc-stamp.el: Try to reactivate isearch in xemacs
+
+       * erc-stamp.el:
+       fixes issues related to comparative emacsology and a silly bug
+
+2002-08-27  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       New hook erc-send-completed-hook (for robot stuff), changed alexanders email address to reflect reality, little fix to erc-auto-query to get a bit of a speedup
+
+2002-08-22  Mario Lang  <mlang@delysid.org>
+
+       * erc-button.el:
+       Fixed case-fold-search (thanks sachac), now lambda works in erc-button-alist, added wardwiki+google+symvar+rfc+itime regexps from the wiki
+
+2002-08-19  Mario Lang  <mlang@delysid.org>
+
+       * erc-button.el:
+       erc-nick-popup-alist: New variable to make erc-nick-popup configurable
+
+2002-08-16  Alex Schroeder  <alex@gnu.org>
+
+       * erc-button.el(erc-recompute-nick-regexp): Fixed regexp.
+
+       * erc-button.el(erc-button-buttonize-nicks): Changed custom type
+       to integer.
+       (erc-button-add-buttons): Moved button removal code to new
+       function.
+       (erc-button-remove-old-buttons): New function.
+       (erc-button-add-button): Removed use of overlays and used
+       erc-button-add-face instead.
+       (erc-button-add-face): New function to merge faces as text
+       properties.  This should be much faster when lots of buttons
+       appear.
+       (erc-button-list): New helper function.
+
+       * erc.el(erc-display-message): Fixed argument list.
+       (erc-display-prompt): Reduced calls to length, use start-open
+       property for XEmacs to prevent a little box of erc-prompt-face at
+       the end of messages other people send.
+       (erc-refresh-channel-members): Fix XEmacs calls to split-string,
+       which may return an empty string at the end of the list.  This
+       would cause hangups in erc-button in re-search-forward loops.
+       (erc-get-channel-mode-from-keypress): Replaced control codes with
+       octal escape sequences.
+
+2002-08-14  Mario Lang  <mlang@delysid.org>
+
+       * erc-button.el:
+       Try to be compatible to XEmacs regexp-opt. (Im going to quit this job if I find more of those damn differencies
+
+       * debian/README.Debian, debian/scripts/install:
+       * Added info to README.Debian
+       * Finished debian/scripts/install
+
+2002-08-13  Mario Lang  <mlang@delysid.org>
+
+       * debian/scripts/install: First attempt to fix it
+
+       * debian/README.Debian, debian/changelog, debian/scripts/install:
+       changelog: Changed maintainer and added new entry
+       README.Debian: Re-explained the byte-compile issue
+       scripts/install: Exclude erc-bbdb|chess|ibuffer|speedbar from
+       byte-compiling
+
+       * erc-track.el: Added C-c C-SPC in addition to C-c C-@
+
+       * erc-notify.el: Little docstring change
+
+2002-08-09  Mario Lang  <mlang@delysid.org>
+
+       * erc-stamp.el:
+       Change one use of set-text-properties to add-text-properties (tnx Lathi)
+
+2002-08-02  Mario Lang  <mlang@delysid.org>
+
+       * erc-stamp.el: added erc-timestamp-only-if-changed-flag
+
+2002-07-22  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Removed timestamp related code and moved into erc-stampe.l
+
+       * erc-stamp.el:
+       Timestamping code moved out of erc.el. Additional, now we can timestamp either on the left or on the right side
+
+2002-07-16  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * Make ctcp ping return its message in the active buffer, instead of the server buffer
+       * Corrected minimal typo in catalog
+       * Added var and variable as alias for /set
+
+2002-07-08  Mario Lang  <mlang@delysid.org>
+
+       * erc-track.el:
+       * New function erc-track-switch-buffer (by resolve)
+         Bound to C-c C-SPC, enjoy!
+
+2002-07-08  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog: New snapshot deb
+
+       * debian/scripts/install: Rewrote in make.
+       Does not byte-compile erc-speak.el at all, and excludes erc-track.el too, if
+       ran for xemacs.
+
+       * debian/control: Added dependency on make
+
+       * debian/copyright: Updated copyright info
+
+       * debian/rules: Use $(wildcard *.el) instead of a hardcoded list
+
+2002-07-03  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el:
+       erc-iswitchb now works correctly if erc-modified-channels-alist is non-nil
+
+2002-07-01  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-menu.el:
+       * changed how we check if we should activate "Track hidden channels" and
+         whether it should be selected - fixes a bug Xemacs where whole menu bar
+         does not work if menu is loaded
+
+       * erc-menu.el:
+       * added "Disconnect from server", only selectable if erc-connected is non-nil
+
+       * topic is allowed to be set by normal users if channel mode is not +t
+
+       * add " ..." after description if arguments needed after selecting menu item
+
+       * only allow selecting of menu points needing a channel if current buffer is
+         a channel buffer - done by testing if channel-members is non-nil
+
+       * put erc-match functions in new group "Pals, fools and other keywords"
+
+       * erc.el:
+       * moved definition of erc-show-my-nick to GUI variables section
+
+       * erc-connected variable now defined with defvar
+         now set in channel and query buffers, was only in server buffer before
+         upon disconnect, set erc-connected to nil in all the server's buffers
+
+       * added erc-cmd-GQUIT and its alias erc-cmd-GQ - quit all servers at once
+
+       * added interactive function erc-quit-server, bound to C-c C-q
+
+       * added erc-server-WALLOPS
+
+       * added WALLOPS to english catalog, fixed s461 (was showing message twice)
+
+       * typo fixes, spacing change
+
+2002-06-29  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Use pp-to-string in /set (without args)
+
+       * erc-netsplit.el:
+       Make /set anonymous-lign set erc-anonymous-login, also report
+       which var was set to which val.
+
+2002-06-28  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-menu.el: added "Customize ERC"
+
+2002-06-25  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: New variable: erc-use-info-buffers, defaults to nil.
+         This prevents info-buffers from being created/updated.
+         Set to t if you use :INFO buffers.
+         (by rw)
+       Delete (erc-display-prompt) from reconnect to avoid clutter
+
+2002-06-23  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el:
+       erc-get-channel-mode-from-keypress is now bound to C-c C-m
+       erc-insert-mode-command is taken care of by this function as well
+
+2002-06-21  Mario Lang  <mlang@delysid.org>
+
+       * erc-track.el:
+       Fixed bug where buffer-names suddenly had text-properties.
+
+2002-06-19  Diane Murray  <disumu@x3y2z1.net>
+
+       * Makefile: changed erc-auto.el to $(SPECIAL) in make fullclean
+
+       * Makefile: remove erc-auto.el on make fullclean
+
+2002-06-18  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-match.el: fixed spelling error
+
+       * erc-track.el, erc-match.el: * erc-match.el:
+         highlight current nickname in its own face (deactivated by default):
+         - added erc-current-nick-highlight-type, erc-current-nick-face,
+           erc-current-nick-p
+
+       * erc-track.el:
+         added support for erc-current-nick-face
+
+2002-06-17  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el: * added beginning suport for 005 numerics:
+         - added buffer local variable erc-server-parameters
+         - added erc-server-005, which sets erc-server-parameters if the server has
+           used this code to show its parameters
+
+2002-06-16  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el:
+       * bugfix: when pasting lines with blank lines in between, remove the blank lines
+         but send the rest
+
+       * since we know the command, use it when checking what's in erc-hide-list
+         added check to erc-server-KICK
+
+       * added some blank lines for better readability
+
+2002-06-16  Alex Schroeder  <alex@gnu.org>
+
+       * erc-nickserv.el(erc-nickserv-alist): Fixed typo.
+
+2002-06-15  Alex Schroeder  <alex@gnu.org>
+
+       * erc-nickserv.el(erc-networks): Added doc string.
+       (erc-nickserv-alist): Added doc string.
+
+2002-06-14  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-ring.el:
+       fixed bug so that the prompt and command always get put at the end of the buffer
+
+2002-06-10  Mario Lang  <mlang@delysid.org>
+
+       * erc-nickserv.el: Added iip support.
+       Added :type for erc-nickserv-passwords custom.
+       Fixed hook usage.
+
+2002-06-07  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-nickserv.el: * added GalaxyNet
+
+       * erc-nickserv-alist:
+         - sorting networks alphabetically
+         - added two more pieces of information in erc-nickserv-alist:
+           word to use for identification and whether to use the nickname
+
+       * erc-current-network:
+         - made regex case insensitive, downcase server to match
+         - uses the new information
+         - now uses new variable erc-networks instead of doing checking manually
+
+       * added variable erc-networks
+
+       * fixed some indentation, documentation
+
+2002-06-07  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Fix for kill-buffer hook stuff
+
+2002-06-06  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Added /squery command
+
+2002-06-06  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-menu.el: * made group Channel modes
+         - moved change mode and invite only mode to here
+         - added secret, moderated, no external send, topic lock, limit, key
+
+       * check that user is in a channel buffer and user is a channel operator
+         for all op-related actions
+
+       * "Identify to nickserv" needs erc-nickserv-identify defined
+
+       * added "Show ERC version"
+
+       * erc.el:
+       * added erc-set-channel-limit, erc-set-channel-key, erc-toggle-channel-mode
+
+       * added erc-get-channel-mode-from-keypress, which is binded to C-c m
+         sends the next character which is typed to one of the 3 new functions
+         - did not remove erc-invite-only-mode and it's key binding in case
+           people are used to it, although it probably should be removed...
+
+       * in erc-server-MODE:
+         added check if tgt equal to user's nick
+         removed erc-display-line, only using the erc-display-message
+
+       * added s461 to english catalog
+
+       * fixed bug where Xemacs would not quit if erc-quit-reason was
+         set to erc-quit-reason-various and assoc-default was not defined
+
+2002-06-04  Andreas Fuchs  <asf@void.at>
+
+       * erc-ezbounce.el, erc-match.el:
+       * erc-ezbounce.el: Added. Provides support for ezbouncer; automatic login,
+                          session management implemented. I've contacted the author
+                          about stuff in EZBounce's logging.
+       * erc-match.el: Fixed a stupid mistake where
+                       "*** Your new nick is <foo>" would trigger an error.
+
+2002-06-04  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-nickserv.el, erc.el: * added erc-nickserv.el
+       * moved nickserv identification variables and functions to the new file
+         (require 'erc-nickserv) is now necessary for this to work
+
+       * erc.el:
+       * results of /COUNTRY now formatted as notice; errors are ignored, 
+         fixing
+         bug which made prompt disappear
+
+       * added undefined-ctcp error message to english catalog
+
+       * changed some (when (not erc-disable-ctcp-replies) to use unless instead
+         and some if's without else statments to use when or use
+
+       * CTCP replies now use erc-display-message, formatted as notices
+
+       * added following to english catalog:
+         - undefined-ctcp
+         - CTCP-CLIENTINFO, CTCP-ECHO, CTCP-FINGER, CTCP-PAGE, CTCP-PING,
+           CTCP-SOUND, CTCP-TIME, CTCP-UNKNOWN, CTCP-VERSION
+         - s303, s305, s306, s353
+
+       * split erc-server-305-or-306 into erc-server-305 and erc-server-306
+
+       * KICK already had buffer set, using it
+
+       * erc.el:
+       * erc-format-timestamp now only called from erc-display-message and
+         erc-send-current-line
+
+       * all instances of erc-display-line with erc-highlight-error
+         changed to use erc-display-message
+
+       * added following error messages to english catalog:
+         bad-ping-response, bad-syntax, cannot-find-file, cannot-read-file,
+         ctcp-request, flood-ctcp-off, flood-strict-mode, no-default-channel,
+         no-target, variable-not-bound
+
+       * added following server related messages to english catalog:
+         s324, s329, s331, s332, s333, s341, s406, KICK, KICK-you, KICK-by-you, MODE-nick
+
+       * ignoring server codes 315, 369
+
+       * added erc-server-341, erc-server-406
+
+       * channel topic and mode notices displayed in respective channel buffers if they
+         exist
+
+       * erc-server-KICK: display the message before removing this channel so that we
+         can track the kick
+
+       * send parsed to erc-ctcp-query-ACTION-hook so that actions can be checked
+         by erc-match
+
+       * fixed bug where nil was shown if no reason was given by users on /PART
+
+2002-06-03  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-match.el:
+       * fixed bug where erc-log-matches produced an error when the value of
+         (erc-default-target) was not a channel
+       * use erc-format-timestamp, if it's non-nil, for %t in erc-log-match-format
+
+2002-06-01  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-button.el:
+       * made action case insensitive in erc-nick-popup and added a more descriptive
+         error message
+
+2002-05-30  Brian P Templeton  <bpt@tunes.org>
+
+       * erc.el:
+       Removed multiple calls of `erc-prompt' in `erc-display-prompt'
+
+2002-05-29  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       First step timestampkiller cleanup. I'm tired, do the rest tomorrow.
+
+       * erc.el:
+       New functionality: Catch channel/server buffer kills through kill-buffer-hook.
+       Currently, it only does a PART if you kill a channel buffer.
+
+2002-05-28  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       defvar'ed some buffer-local variables to make elint at least a bit more happy.
+         Moved comments into docstrings.
+       Changed some instances of member to memq.
+
+       * erc-track.el, erc.el:
+       erc.el: (erc-message-type-member): New function, used to test
+       for message type. Require erc-parsed text-property.
+       erc-track.el: erc-track-exclude-types: New variable. Defaults to ("JOIN" "PART") right now for testing, it should eventually set to nil soon again.
+       (erc-track-modified-channels): Use above fun and var to optionally exclude certain message types from channel tracking.
+
+2002-05-28  Diane Murray  <disumu@x3y2z1.net>
+
+       * CREDITS: added myself, vain as it sounds ;)
+
+2002-05-25  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * Some small docstring fixes
+       * (erc-display-line): Now takes also a process object in the buffer argument.
+         Used for easy sending to the server buffer.
+       * Several places: Just pass proc, not (process-buffer proc)
+
+2002-05-24  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Mostly docstring fixes/additions
+
+       * erc-netsplit.el: Doc fixes, and a new netjoin-done message.
+
+       * erc-fill.el: Doc fixes, erc-fill custom group, autoloads.
+
+       * erc-netsplit.el: Fix to erc-netsplit-timer.
+
+       * erc-netsplit.el: Fixed a silly typo
+
+       * erc-maint.el: is this really necessary?
+
+       * erc.el: Added new variable erc-hide-list.
+       It affects erc globally right now, and is used to hide certain IRC type messages like JOIN and PART.
+
+       * Makefile: Doh, I should really test this before checkin :)
+
+       * Makefile: Silly cut&paste bug fixed
+
+       * erc-list.el: Added autoload cookie
+
+       * erc-match.el: Added missing require erc.
+
+       * erc-notify.el: Autoload cookies and a -initialize function.
+
+       * erc-chess.el: Added autoload cookies
+
+       * Makefile: Finally, we have a Makefile.
+       Primarily used for autoload definition generation right now.
+
+       * erc-auto.in: First version.
+
+       * erc-track.el: Added autoload cookie
+
+       * erc-netsplit.el:
+       New module, used to autodetect and hide netsplits.
+       (Untested, no netsplit happened yet :) )
+
+       * erc-nets.el: Added some old code I once worked on.
+       Added autoload cookie
+
+2002-05-24  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-fill.el:
+       removed reference in documentation to old variable, changed it to the new one
+
+       * erc.el:
+       * added new function erc-connection-established which is called after receiving
+         end of MOTD (does nothing if it's been called before)
+
+       * added new hook erc-after-connect which is called from
+         erc-connection-established with the arguments server (the announced server)
+         and nick - which other arguments should be sent??
+
+       * added buffer variable erc-connected which is set to t the first time
+         erc-connection-established is called, set to nil again if we've been
+         disconnected
+
+       * set initial user mode
+         - added custom variable erc-user-mode which can be a string or a function
+           which returns a string
+         - new function erc-set-initial-user-mode gets called from
+           erc-connection-established
+
+2002-05-22  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el: fixed bug where prompt was missing after reconnect
+
+2002-05-21  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el:
+       in erc-nickserv-identify: if network is unknown, just use "Nickserv"
+
+       * erc.el: * fixed some typos
+
+       * timestamping
+         - ctcp request messages and replies now have timestamp
+         - timestamps in front of error messages now in timestamp face
+         - added timestamp to more error messages
+
+       * ctcp reply messages, server ping message updated
+
+       * added variable erc-verbose-server-ping - check this instead of erc-paranoid
+
+       * added whowas on no such nick:
+         - added variable erc-whowas-on-nosuchnick
+         - in erc-server-401 do WHOWAS if erc-whowas-on-nosuchnick is non-nil
+
+       * erc.el: forgot documentaion for erc-nickserv-alist
+
+       * erc.el: NickServ identification changed and enhanced:
+       - erc-nickserv-identify-autodetect now called from erc-server-NOTICE-hook
+       - now possible to identify automatically without prompt:
+         - added custom variables erc-prompt-for-nickserv-password and
+           erc-nickserv-passwords
+       - added erc-nickserv-alist containing the different networks' nickserv details
+       - added function erc-current-network to determine the network symbol
+       - fixed bug where identification on dalnet didn't work, because they now
+         require NickServ@services.dal.net
+         now sends to all NickServ with nick@server where possible
+
+2002-05-17  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-fill.el:
+       * filling with erc-fill-variable now works with custom defined fill width:
+         - changed erc-fill-column from defvar to defcustom
+         - in erc-fill-variable: set fill-column to value of erc-fill-column
+
+       * erc.el: erc.el:
+       * fixed bug where topic wasn't being set when chanel name was provided
+
+       erc-fill.el:
+       * filling with erc-fill-variable now works with custom defined fill width:
+         - changed erc-fill-column from defvar to defcustom
+         - in erc-fill-variable: set fill-column to value of erc-fill-column
+
+2002-05-16  John Wiegley  <johnw@gnu.org>
+
+       * erc.el: whitespace fix
+
+2002-05-15  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el:
+       * added explanation of empty string working in erc-quit-reason-various-alist
+       * removed the text property from erc-send-message, it caused problems
+         with /SV (as noticed by gbvb on IRC) and is obviously not needed
+       * when receiving a ctcp query, convert type to uppercase to allow for
+         "/ctcp nick time" and not just "/ctcp nick TIME"
+       * timestamp in front of server notices now shown in the timestamp face
+
+2002-05-13  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el:
+       - in erc-format-privmessage: `erc-format-timestamp' added to message after
+         message's text properties are applied so that it doesn't lose its face
+
+       - /quit without reason now works when `erc-quit-reason' is set to
+         `erc-quit-reason-various' and the empty string "" is defined in
+         `erc-quit-reason-various-alist'
+
+2002-05-13  Andreas Fuchs  <asf@void.at>
+
+       * erc-bbdb.el:
+       * Applied Drewies patch to pop-up on nick changes when -popup-type is 'visible
+
+2002-05-12  Andreas Fuchs  <asf@void.at>
+
+       * erc-bbdb.el, erc.el:
+       * erc-bbdb.el: pop up the buffer on /whois when erc-bbdb-popup-type is 'visible
+       * erc.el: fix for empty quit reason problem by drewie.
+
+2002-05-12  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: disumu nick patch
+       - added erc-show-my-nick (default t)
+         if t, show nickname like <nickname>
+         if nil, only show a > character before the message
+       - added faces erc-nick-default-face and erc-nick-msg-face
+         - nicknames (channel, msgs, notices) are now in bold face by default
+         - the msg face matches the erc-direct-msg-face color
+
+2002-05-10  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-send-pre-hook): Doc change.
+
+       * CREDITS: Alexander L. Belikoff is confirmed original author.
+
+2002-05-10  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       timestamp fix by disumutimestamp fix by disumutimestamp fix by disumutimestamp fix by disumutimestamp fix by disumutimestamp fix by disumutimestamp fix by disumutimestamp fix by disumu
+
+2002-05-09  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: *** empty log message ***
+
+2002-05-06  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       New var: erc-echo-notices-in-minibuffer-flag. defaults to t.
+
+2002-05-04  John Wiegley  <johnw@gnu.org>
+
+       * TODO: *** empty log message ***
+
+2002-05-03  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el: Copyright notice, version string updates.
+
+2002-05-02  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el: Comment: dme is David Edmondson
+
+2002-05-01  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-warn-about-blank-lines): New option.
+       (erc-send-current-line): Use it.
+       (erc-quit-reason-various-alist): New option.
+       (erc-quit-reason): New option.
+       (erc-quit-reason-normal): New function.
+       (erc-quit-reason-zippy): New function.
+       (erc-quit-reason-various): New function.
+       (erc-cmd-QUIT): Use them.
+
+2002-04-30  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el: Version 2.92
+
+       * erc.el(erc-send-modify-hook): Default value is nil.
+
+2002-04-27  John Wiegley  <johnw@gnu.org>
+
+       * erc.el:
+       Don't redisplay the prompt if the ERC buffer is no longer alive.
+
+2002-04-26  John Wiegley  <johnw@gnu.org>
+
+       * erc.el:
+       Don't call `set-buffer' on old-buf unless the buffer is valid.  It's
+       often not when separate frames are being used.
+
+2002-04-23  Mario Lang  <mlang@delysid.org>
+
+       * erc-button.el: fixed up erc-nick-regexp
+
+2002-04-22  Brian P Templeton  <bpt@tunes.org>
+
+       * erc.el:
+       `erc-prompt' may now be a function that returns a string (which is
+       used as the prompt). I don't use Customize but I think customization
+       of it may be broken if it's not a string.
+
+       There is a new `erc-prompt' function that returns the prompt as a
+       string (e.g., returning either the result of `(funcall erc-prompt)' or
+       `erc-prompt').
+
+       This allows for dynamic prompts, such as a LispWorks-like prompt, or
+       one containing simply the current channel name. It was requested by
+       Mojo Nichols (nick michols) in #emacs today, 21-Apr-2002; cf. the
+       #emacs logs at <URL:http://www.tunes.org/~nef/logs/emacs/02.04.21.
+
+2002-04-17  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       fix erc-send-current-line to work on empty lines again (without sending the prompt)
+       Fix C-c C-t to not include the nick/time info
+       (both from antifuchs)
+
+       * erc-complete.el: Fix for xemacs elt behaviour
+
+2002-04-17  John Wiegley  <johnw@gnu.org>
+
+       * erc-chess.el:
+       Added a missing arg in a call to erc-chess-handler.
+
+2002-04-15  John Wiegley  <johnw@gnu.org>
+
+       * erc-chess.el: *** empty log message ***
+
+2002-04-14  John Wiegley  <johnw@gnu.org>
+
+       * erc-chess.el: *** empty log message ***
+
+2002-04-12  John Wiegley  <johnw@gnu.org>
+
+       * erc-chess.el: *** empty log message ***
+
+       * erc-chess.el: bug fixes
+
+       * erc-chess.el: *** empty log message ***
+
+2002-04-12  Mario Lang  <mlang@delysid.org>
+
+       * erc-chess.el: change order.
+
+       * erc-chess.el: more fixing.
+
+       Now, the 'match question works. It sends an accept back.
+       But display popup doesnt work..
+
+       * erc-chess.el: fixup (still far from working)
+
+2002-04-11  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * Added :options entry for erc-mode-hook (erc-add-scroll-to-bottom)
+
+2002-04-11  John Wiegley  <johnw@gnu.org>
+
+       * erc.el: remove trailing \n from any sent text
+
+       * servers.pl, erc-bbdb.el, erc-button.el, erc-chess.el, 
+         erc-complete.el, erc-fill.el, erc-ibuffer.el, erc-list.el, 
+         erc-match.el, erc-menu.el, erc-nets.el, erc-replace.el, 
+         erc-speak.el, erc-speedbar.el, erc-track.el, erc.el:
+       clean whitespace
+
+       * erc.el: Replaced erc-scroll-to-bottom.
+
+2002-04-11  Mario Lang  <mlang@delysid.org>
+
+       * erc-track.el:
+       try to fix behaviour when used with different frames.
+
+2002-04-09  Mario Lang  <mlang@delysid.org>
+
+       * erc-chess.el:
+       fixup release, far from ready for real usage, but it appears to work.
+
+       * erc.el:
+       speed improvments based on elp-instrument-package RET erc- RET results
+
+       * erc-chess.el: initial version.
+       please test it
+       Get chess.el from johnw's cvs:
+       cvs -d:pserver:anonymous@alice.dynodns.net:/usr/local/cvsroot login
+       cvs -d:pserver:anonymous@alice.dynodns.net:/usr/local/cvsroot co chess
+
+       (as usual, blank password)
+
+       Add the resulting dir to your load-path and reqire erc-chess.
+
+       Usage: Just do /chess nickname
+       The remote end much use erc, as no other irc client I know of supports this ...
+
+       See erc-chess-default-display and maybe set it to chess-images or chess-ics1 if you prefer those over chess-plain.
+       Also, see erc-chess-user-full-name to set the name you use in chess games.
+
+2002-04-04  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: New hackery latenightwise
+
+       * erc.el: upupadowndowncase
+
+2002-04-04  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog: Updated for the new snapshot
+
+       * debian/rules: Install README.Debian into the package
+
+       * debian/README.Debian: Initial check-in
+
+2002-04-04  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Fixed that /me in query buffers ended up in server buffer
+
+       * erc.el: * Implemented joining +k channels
+
+2002-03-14  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: New utility function: erc-channel-list
+       minor fix to erc-get-buffer. hopefully that helps shapr
+
+2002-03-12  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       New /command: /QUOTE for sending directly to the IRC server
+       Removed erc-fill from erc-insert-modify-hook. To activate filling, simply customize that var.
+
+2002-03-09  Brian P Templeton  <bpt@tunes.org>
+
+       * CREDITS: *** empty log message ***
+
+2002-03-09  Mario Lang  <mlang@delysid.org>
+
+       * erc-complete.el:
+       New variable: erc-nick-completion-ignore-case. Defaults to t.
+
+       * erc-track.el:
+       * erc-track-shorten-name-function can now be set to nil to avoid treating of channel names at all.
+
+2002-03-06  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog, debian/rules: update to new snapshot
+
+2002-03-06  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Fixed nasty bug which prevented channel limit from correctly display/handling
+
+       * erc-track.el: Made shortening code highly customizable.
+       Now, there is the variable erc-track-shorten-function which holds
+       a function which gets called with one argument, CHANNEL-NAMES, which is a list
+       of strings of the channel names.
+       It needs to return a list of strings of the same length with the modified values...
+
+       * erc-track.el:
+       Added erc-track-shorten-aggressively, default to nil
+       if it is set to t, erc will shorten a bit more.
+       if nil, erc will shorten the name only if it would get shorter than just
+       one char...
+
+       * erc-speak.el: added iirc to the abbreviation expansion list.
+
+       * erc-track.el:
+       Added customization variable: erc-track-use-faces. defaults to t.
+
+       * erc-track.el: *** empty log message ***
+
+       * erc-track.el:
+       experimental: Added face support to mode-line channel activity tracker.
+       Currently we use the faces used for indicating in the buffer (erc-pal-face for channels with pal acitivity...)
+
+2002-03-05  Mario Lang  <mlang@delysid.org>
+
+       * erc-complete.el: * added docfixes (thanks ore)
+
+       * erc-track.el: Fixed channel-name reduction.
+       thanks again alex.
+       Renamed the vars to erc-track-opt-start and erc-track-opt-cutoff.
+
+       * erc.el: fixed another silly error
+
+       * erc-track.el: Implemented channel name shortening.
+       Vars erc-track-cutoff says: all channel names longer than this will be shortened.
+       Var erc-track-minimum-channel-length says: dont make names shorten than this.
+       (Thanks go out to kensanata for the nice unique-substrings utility function).
+
+       * erc.el 2002-07-15T00:01:34Z!raeburn@raeburn.org: silly typo corrected
+
+       * erc.el:       * erc.el: * New varialbe: erc-common-server-name-suffixes
+         This alist can be used to change the server names displayed in mode-line
+         to a shorter version..
+       * New function: erc-shorten-server-name (uses var above)
+       * Changed erc-prepare-mode-line to use erc-shorten-server-name.
+
+2002-02-25  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       CTCP handling rewritten. Seems to work. please test and report probs.
+
+2002-02-24  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Fixed emacs20 backward compatibility (new defun/alias: erc-propertize)
+
+2002-02-22  Mario Lang  <mlang@delysid.org>
+
+       * erc-button.el: *** empty log message ***
+
+2002-02-21  Mario Lang  <mlang@delysid.org>
+
+       * erc-button.el, erc.el:
+       minor fixup related to read-only prompts and command renaming.
+
+2002-02-21  Andreas Fuchs  <asf@void.at>
+
+       * erc.el: * modify `erc-remove-text-properties-region' to work.
+         Could even be a little faster now. (-:
+
+2002-02-21  Mario Lang  <mlang@delysid.org>
+
+       * erc-ring.el:
+       fixed erc-replace-command to behave right when text is read-only.
+       Also, use erc-insert-marker and (point-max) now.
+
+       * erc.el: * Made erc-prompt read-only
+       * new function: erc-make-read-only. Can be used on erc-insert-post-hook and erc-send-post-hook to ensure read-only buffer text too
+
+2002-02-19  Mario Lang  <mlang@delysid.org>
+
+       * erc-list.el: added comment to docstring
+
+       * erc-speak.el: minor updates, use erc-nick-regexp now
+
+       * erc.el:
+       ensure that erc-timer-hook is called inside the server-buffer.
+
+2002-02-19  Andreas Fuchs  <asf@void.at>
+
+       * erc-match.el:
+       * Probably fixed the "number-char-or-marker-p: nil" bug.
+
+2002-02-19  Mario Lang  <mlang@delysid.org>
+
+       * erc-notify.el: Initial release.
+
+       * erc.el: added #303 handling
+       moved timer and added an arg (erc-current-time)
+
+       * erc-list.el, erc.el:
+       slightly changed the erc-once-with-server-event macro
+
+       * erc-button.el: erc-button-alist: doc fix and custom type fix
+
+2002-02-18  Mario Lang  <mlang@delysid.org>
+
+       * erc-list.el, erc.el: new macro: erc-once-with-server-event
+       erc-list.el: use it
+
+       * erc-match.el:
+       Minor fix related to hook call method change (-until-seccess now)
+
+       * erc.el: fixed ctcp behaviour abit (with auto-query on)
+
+       * erc-list.el: ChanList mode.
+       Load it, and type M-x erc-chanlist RET
+       Demonstrates how the new hook system can be nicely used.
+
+       * erc.el:
+       new hook: erc-default-server-hook. This one gets called if we dont have anything defined for a certain IRC server message.
+       New function: erc-default-server-handler. (used by above hook).
+       New function: erc-debug-missing-hooks: Used by above hook to save a list of unimplemented server messages.
+       New function: erc-server-buffer, erc-server-buffer-p.
+       Various places: use it.
+       Minor fixup.
+
+       * erc-button.el: fix regexp to not buttonize ~user@host hostnames
+
+2002-02-17  Mario Lang  <mlang@delysid.org>
+
+       * erc-complete.el, erc.el: Eliminated erc-command-table
+       Upcased the command defuns (erc-cmd-join is now erc-cmd-JOIN)
+       Fixed erc-complete to not require erc-command-table.
+       Implemented erc-cmd-HELP
+         (You have to try that, its tooo coool!)
+         e.g. /help auto-q
+       fixed autoloads for erc-add-pal and so on to be interactive.
+
+2002-02-17  Andreas Fuchs  <asf@void.at>
+
+       * erc-match.el:
+       * Fix unfunctional code in `erc-get-parsed-vector-type'.
+
+       * erc-bbdb.el, erc-button.el, erc-match.el, erc.el:
+       * Be careful: MANY changes ahead. I won't go into too much details.
+
+       * erc.el, new file erc-match.el: split out all pattern-matching code.
+       * erc.el: removed all defcusts for erc-{...}-highlight-props. They are
+         quite useless, anyway.
+       * moved erc-add-entry-to-list and -remove- over to erc-match. changed
+         their arg list.
+       * erc.el: add autoloads for erc-{add,delete}-{keyword,pal,fool,dangerous-host}
+       * erc.el: erc-server-PRIVMSG-or-NOTICE:
+         - remove all the highlighting crap
+         - add a (when (eq s nil) ...) so that untreated CTCP messages don't
+           get misdisplayed.
+       * erc.el: erc-mark-message: removed this function, it's useless
+       * erc.el: minor bugfixes.
+
+       * erc-match.el: first checkin. This file now contains all the pattern
+         matching stuff. there is now another defcust group, erc-match,
+         containing all match related stuff (erc-keywords, ...)
+       * erc-match.el: added functionality to log matching lines. Quite
+         customizable, check out the docstring of defun erc-log-matches
+       * erc-match.el: added functionality to make foolish messages
+         invisible/intangible. This could replace erc-ignore-list
+         sometime. it's more powerful right now, anyway.
+       * erc-match.el erc-text-matched-hook: new hook. run when Text matches
+         anything (pal, fool, etc.).
+
+       * erc-button.el: Make nick buttonization customizable.
+       * erc-button.el: Give nick buttonization a lower priority so that it
+         does not break url buttons.
+
+       * erc-bbdb.el: Add \n to the separators by which we split nicknames.
+
+2002-02-17  Mario Lang  <mlang@delysid.org>
+
+       * TODO: Added item
+
+2002-02-17  Brian P Templeton  <bpt@tunes.org>
+
+       * CREDITS, erc.el: Added invisible timestamp support.
+
+2002-02-16  Gergely Nagy  <algernon@debian.org>
+
+       * debian/changelog, debian/rules, debian/scripts/install:
+       updated to new snapshot
+
+2002-02-16  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Fixed channel limit format overflow in mode-line display.
+       (Having to use floats if integers are to large is quite strange, isn't it?)
+
+       * TODO: TODO list created.
+       Add comments and expand it.
+
+       * erc.el:
+       Fixed bug in query buffer handling (only happend in mixed-case situations)
+
+       * erc.el: shapr checkdoc patch #1
+       massive docfixes! yay, keep going!
+
+2002-02-15  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: various other fixes
+       make s301 a catalog entry
+
+2002-02-15  Andreas Fuchs  <asf@void.at>
+
+       * erc.el: * erc-server-NICK and erc-server-INVITE: fixed to use
+         `erc-display-message'. These I missed in the first checkin.  I
+         didn't say it in the last log message, but please test these.
+
+       * erc-fill.el, erc.el:
+       * erc.el: updated many functions to use `erc-display-message'. Now, we
+         should go for getting highlighting out of
+         erc-server-PRIVMSG-or-NOTICE. The part I want to attack has been
+         marked.
+       * erc-fill.el: updated static filling to leave the erc-parsed property alone.
+
+2002-02-15  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       first step, new function: erc-display-message
+
+       * erc.el: added numreply 379 and 405.
+
+       * erc.el: stupid typo fixed
+
+       * erc.el:
+       Finally renamed erc-frame-dedicated-p to erc-frame-dedicated-flag
+       Removed usage of erc-interpret-controls from info buffer drawing (major speedup)
+       Other speedups based on the results from elp.
+       ERC is now about 300%-500% faster in some situations with very full channels!!!!!
+
+2002-02-14  Andreas Fuchs  <asf@void.at>
+
+       * erc.el:
+       * erc-downcase now downcases {}|^ with []\~ -- 'stolen' from zenirc.
+       * various checkdoc fixes. Just the upper third of the file, but that
+         should help a little, too. (-: Again, if you have any writing
+         skills, take out that dusty keyboard and tap it to the beat of M-x
+         checkdoc!
+
+2002-02-14  Gergely Nagy  <algernon@debian.org>
+
+       * erc.el(erc-format-privmessage):
+       fix it, so timestamp-coloring works again (patch from antifuchs)
+
+2002-02-14  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Many fixes based on M-x checkdoc RET.
+       If you have write access, and some english knowledge, help document erc too!
+       M-x checkdoc RET, and follow the instructions.
+
+       * erc-button.el, erc-ibuffer.el: minor fixes
+
+       * erc.el: Use nreverse instead of reverse.
+       Use eq instead of equal where possible.
+       Rewrote erc-get-buffer to not use find-if (find-if does very deep function-call nesting, which isnt good ina  defun which is called so often)
+
+2002-02-13  Mario Lang  <mlang@delysid.org>
+
+       * erc-button.el, erc.el:
+       In erc.el, new hook: erc-channel-members-changed-hook.
+       erc-button.el: Now highlight all nicknames. uses regexp-opt.
+
+2002-02-04  Mario Lang  <mlang@delysid.org>
+
+       * erc-nets.el:
+       Database of irc networks. Use erc-server-select to interactively select one.
+
+       * erc.el: * erc-format-nick-function: New variable.
+       * (erc-format-nick): The default for above var. Just return the nick.
+       * (erc-format-@nick): Prefix NICK with @ or + if OP or VOICE.
+       * Removed erc-track-modified-channels related code and moved into erc-tracke.l
+          Its auto-loaded now
+
+       * erc-track.el: Split code from erc.el
+
+2002-02-01  Mario Lang  <mlang@delysid.org>
+
+       * erc-ibuffer.el:
+       * erc-target now uses erc-port-to-string
+
+       * servers.pl:
+       Script to convert mircs servers.ini to a elisp salist kind of thing.
+       (development tool, it doesnt help you much as a user)
+
+       * erc.el:
+       * erc-display-line-buffer: renamed to erc-display-line-1
+       * erc-port-equal: New function.
+       * erc-normalize-port: Used by erc-port-equal
+       * minor docstring fixes
+
+2002-02-01  Andreas Fuchs  <asf@void.at>
+
+       * erc.el:
+       * erc-already-logged-in-p: compare ports is more robust now.
+
+       * erc-button.el: * Add buttonization to erc-send-modify-hook, too
+
+2002-01-31  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Use insert-before-markers instead of insert in erc-display-line-buffer
+       This fixed point@column 0 problem and gives us some speedup! yay
+
+       * erc-ibuffer.el, erc.el: minor fixes
+
+       * erc.el:
+       * (erc-line-beginning-position): Renamed to erc-beg-of-input-line.
+       * (erc-line-end-position): Renamed to erc-end-of-input-line.
+       * erc-multiline-input-p: Variable removed.
+
+       * erc.el:
+       Minor docstring fixes (using M-x checkdoc-current-buffer)
+         If you find time, and you are native english speaker, do that too!!
+
+       * erc.el: fixed macro-invokation
+
+2002-01-31  Andreas Fuchs  <asf@void.at>
+
+       * erc.el: * erc-with-all-buffers-of-server: use erc-list-buffers
+       * erc-process-away, erc-{save,kill}-query-buffers: use it.
+       * erc-cmd-away-all: new command. Set away/back on all servers.
+
+       * erc.el:
+       * Fix last multiline bug in erc-send-distinguish-noncommands.
+
+2002-01-31  Mario Lang  <mlang@delysid.org>
+
+       * erc-ibuffer.el, erc.el: minor fixes
+
+2002-01-30  Mario Lang  <mlang@delysid.org>
+
+       * erc-ibuffer.el, erc-menu.el, erc-speak.el, erc.el:
+       Renamed erc-track-modified-channels-minor-mode to erc-track-modified-channels-mode (at least, its a bit shorter)
+       Added docstring to erc-server-hooks (through the macro)
+       Minor docfix in obsolete hook
+
+2002-01-30  Andreas Fuchs  <asf@void.at>
+
+       * erc.el:
+       * erc-send-current-line: fix behaviour where buffer changes.
+       * erc-mark-message: fix stupid face bug. highlighting of pals should work now.
+
+       * erc-ring.el, erc.el:
+       * new hooks: erc-send-pre-hook, erc-send-modify-hook, erc-send-post-hook
+       * erc-send-this: new variable
+       * erc-noncommands-list: new constant.
+       * erc-send-distinguish-noncommands: use it. (First filter function for sending! yay!)
+       * erc-send-current-line: nearly completely rewritten.
+         - now handles multiline input. (yay!)
+         - now uses the three hooks from above.
+       * erc-process-line: new arg, no-command: don't process this line as a command.
+
+2002-01-30  Mario Lang  <mlang@delysid.org>
+
+       * erc-bbdb.el, erc-button.el, erc-speak.el, erc.el:
+       hook handling rewrite phase 1.
+
+2002-01-30  Andreas Fuchs  <asf@void.at>
+
+       * erc.el: * Rework erc-server-PRIVMSG-or-NOTICE
+       * New function: erc-is-message-ctcp-p
+       * New function: erc-format-privmessage
+       * New function: erc-mark-message
+       * erc-server-PRIVMSG-or-NOTICE: use them.
+
+2002-01-30  Mario Lang  <mlang@delysid.org>
+
+       * CREDITS, HISTORY:
+       Initial checkin.
+
+2002-01-29  Andreas Fuchs  <asf@void.at>
+
+       * erc.el: * erc-put-text-properties: make OBJECT optional
+       * erc-put-text-property: same
+       * erc-server-PRIVMSG-or-NOTICE: use them.
+       * Make erc-display-line-buffer: add the "\n" even when the string would be invisible.
+       * same: make the \n invisible, too (:
+
+2002-01-29  Mario Lang  <mlang@delysid.org>
+
+       * erc-ibuffer.el, erc.el:
+       Rewrote channel tracking using window-configuration-change-hook instead of defadvices.
+
+2002-01-28  Andreas Fuchs  <asf@void.at>
+
+       * erc-fill.el, erc.el:
+       * Macro define-erc-highlight-customization: Ease up defining
+         erc-{fool,pal,..}-highlight-props defcusts.
+       * defcusts:
+         - erc-fool-highlight-props
+         - erc-pal-highlight-props
+         - erc-dangerous-host-highlight-props
+         - erc-keyword-highlight-props
+
+         Customizable to either nil or "Hide message".
+       * erc-string-invisible-p: check for invisible chars in string
+       * erc-display-line-buffer: use it.
+       * erc-put-text-properties: put a list of props into a piece of text.
+       * erc-server-PRIVMSG-or-NOTICE: use it; set appropriate
+         highlight-props for entire incoming message. This set of changes
+         allows you to e.g. auto-ignore fools.
+
+2002-01-28  Mario Lang  <mlang@delysid.org>
+
+       * erc-ibuffer.el:
+       Added highlight detection support to the Mark column.
+       Now p, k, f, and d indicate pal, keyword, fool and dangerous-host related activity.
+
+       * erc.el:
+       Highlight tracking finished. All necessary info should now be in erc-modified-channels.
+
+       * erc.el, erc-ibuffer.el, erc-speedbar.el:
+       Added highlight tracking to track-modified-channels
+          no display code yet, the info is just kept in erc-modified-channels
+       Added erc-modified column to ibuffer
+       speedbar update
+
+       * erc-ibuffer.el: Added erc-members column
+
+       * erc-ibuffer.el: *** empty log message ***
+
+2002-01-28  Andreas Fuchs  <asf@void.at>
+
+       * erc-bbdb.el:
+       * Fix a slight typo. The hook function should be called in
+         erc-server-376-hook (-:
+
+2002-01-28  Mario Lang  <mlang@delysid.org>
+
+       * erc-ibuffer.el: *** empty log message ***
+
+2002-01-27  Mario Lang  <mlang@delysid.org>
+
+       * erc-ibuffer.el: Fixup, it sort of works now. Try it
+
+       * erc-ibuffer.el: Initial version
+
+2002-01-26  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: *** empty log message ***
+
+2002-01-25  Andreas Fuchs  <asf@void.at>
+
+       * erc-bbdb.el: * fix two bad things:
+         - fix the "proc trick": pass proc as an arg through
+           ...-insinuate-... to ...-show-entry
+         - hook highlighting into the 376 hook. This one is bound to get
+           called (-:
+       * We now only append to hooks only.
+       * Highlighting of changing records gets updated automatically.
+
+2002-01-25  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: *** empty log message ***
+
+2002-01-25  Andreas Fuchs  <asf@void.at>
+
+       * erc-bbdb.el: * nearly complete rewrite of erc-bbdb:
+         -  Removed code duplication in erc-bbdb-NICK and -JOIN.
+         -  Made erc-bbdb-show-entry more general and intelligent.
+         -  erc-bbdb-insinuate-entry is now erc-bbdb-insinuate-and-show-entry
+            (note the different arglist!):
+         -  erc-search-name-and-create now creates "John Doe" users if name
+            is not specified.
+         -  No sign of "mail" anywhere anymore. It's all finger-host. (-:
+         -  erc-bbdb-popup-p is now called erc-bbdb-popup-type.
+         -  New customize values:
+            . erc-bbdb-irc-channel-field     channel field name
+            . erc-bbdb-irc-highlight-field   (see below)
+            . erc-bbdb-auto-create-on-nick-p auto-create record on join
+
+       * Highlighting based on BBDB is now here! Specify which type of
+         highlighting a person in the BBDB (whose nick you know) and have
+         fun! Read help to erc-bbdb-init-highlighting for details. Changes:
+         -  new function erc-bbdb-init-highlighting: gets called on server
+            connect.
+         -  new function erc-bbdb-highlight-record: highlights a person's
+            nick names.
+
+2002-01-24  Andreas Fuchs  <asf@void.at>
+
+       * erc-button.el:
+       * Fix the erc-button-alist regexp for EmacsWiki stuff. delYsid's version
+         is better (-:
+
+       * erc-button.el: * Added an Ewiki: specifier to the url-regexp.
+         <nickname> EmacsWiki: EmacsIRCClient tells you <bla>
+         should highlight "EmacsWiki: EmacsIRCClient" and allow you to
+         browse to the wiki when the button is activated.
+       * new custom: erc-emacswiki-url.
+       * new function: erc-browse-emacswiki: use it.
+
+2002-01-23  Mario Lang  <mlang@delysid.org>
+
+       * erc-bbdb.el:
+       erc-bbdb-NICK: Added regexp-quote around fingerhost search.
+
+2002-01-10  Andreas Fuchs  <asf@void.at>
+
+       * erc.el:
+       * Channel saving/killing on quit from server implemented:
+        - defcust erc-save-queries-on-quit: Save server's channel buffers on quitting from server
+        - defcust erc-kill-queries-on-quit: Kill server's channel buffers on quitting from server
+        - Macro erc-with-all-buffers-of-server: Run a form inside all the server's query buffers
+        - Functions erc-{kill,save}-query-buffers: use it.
+       * Added indent-tabs-mode: t to Local Variables section.
+
+2002-01-07  Andreas Fuchs  <asf@void.at>
+
+       * erc-replace.el: * fix stupid documentation errors.
+
+2002-01-07  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * (toplevel): Revert previous change. This resulted ina  recursive load...
+          You have to put (require 'erc-button) into your .emacs for now
+
+2002-01-05  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * Added require for erc-button. This is devel. so I need testers :)
+
+       * erc-button.el: * Added proper file headers (GPL).
+
+2002-01-04  Mario Lang  <mlang@delysid.org>
+
+       * erc-button.el: * erc-button-alist: Added entry for finger
+
+       * erc-button.el: * Removed bogus usage of :button-keymap.
+       P
+          Does anyone know what this was supposed to do anyway?
+
+       * erc-button.el: * Initial version.
+       * This module allows a way of buttonizing text in IRC buffers.
+         Default it is used for URLs, but other things could be added.
+         see if you can find another use, erc-button-alist
+
+See ChangeLog.01 for earlier changes.
+
+    Copyright (C) 2002 Free Software Foundation, Inc.
+  Copying and distribution of this file, with or without modification,
+  are permitted provided the copyright notice and this notice are preserved.
+
+;; Local Variables:
+;; coding: utf-8
+;; End:
+
+;; arch-tag: a6779d5e-99fa-442b-98cf-90e73eb2c272
diff --git a/lisp/erc/ChangeLog.03 b/lisp/erc/ChangeLog.03
new file mode 100644 (file)
index 0000000..6f55258
--- /dev/null
@@ -0,0 +1,2151 @@
+2003-12-30  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-cmd-HELP):
+       Changed to prefer giving help for erc-cmd-* functions over
+          similarly-named Elisp functions (e.g., erc-cmd-LIST vs. list).
+
+2003-12-28  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-query-buffer-p): Added this function.
+
+2003-12-28  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-cmd-SV): Use erc-emacs-build-time.
+
+       * erc-compat.el: erc-emacs-build-time: New variable.
+
+       * erc.el(erc-cmd-SAY):
+       Reintroduced the feature where the spaces between
+       "/SAY" and the rest of the line were being sent with the message.
+
+2003-12-28  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-server-buffer-p):
+       Fixed a bug where this function sometimes would return
+           nil when it should return t.
+
+2003-12-27  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-generate-new-buffer-name):
+       Really fixed a bug where ERC would reuse
+           a connected server buffer when erc-reuse-buffers is non-nil.
+       (erc-cmd-JOIN): Now we tell the user when he attempts to join the same
+           channel twice on the same server.
+
+       * erc.el(erc-generate-new-buffer-name):
+       Fixed a bug where ERC would reuse a connected server buffer when erc-reuse-buffers is non-nil.
+
+       * erc.el(erc-cmd-SAY):
+       Fixed a bug where the spaces between "/SAY" and the rest of the
+           line were being sent with the message.
+
+       * erc-list.el: Fixed another typo.
+
+       * erc-list.el: Fixed a typo.
+
+       * erc-list.el:
+       Added text to the top of the channel list buffer describing the keybinding for
+       function erc-chanlist-join-channel.
+
+       * erc-list.el: Minor appearance changes.  No functional change.
+
+       * erc-list.el:
+       Implemented function erc-chanlist-join-channel.  Added variable
+       erc-chanlist-channel-line-regexp.  Got rid of function
+       erc-chanlist-pre-command-hook.  Changed the logic for how channel lines are
+       highlighted.
+
+2003-12-26  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc-list.el:
+       Removed a bunch of unused code.  No semantic change.
+
+       * erc-list.el: Added lots of functionality.
+
+2003-12-15  Mario Lang  <mlang@delysid.org>
+
+       * erc-track.el, erc.el:
+       New custom type erc-message-type, use it in erc-hide-list and erc-track-exclude-types
+
+2003-12-14  Alex Schroeder  <alex@gnu.org>
+
+       * erc-track.el(track-when-inactive): New module.
+       (erc-track-visibility): New option.
+       (erc-buffer-activity): New variable.
+       (erc-buffer-activity-timeout): New variable.
+       (erc-user-is-active): New function.
+       (erc-buffer-visible): New function.
+       (erc-modified-channels-update): Replace get-buffer-window call
+       with call to erc-buffer-visible.
+       (erc-track-modified-channels): Ditto.
+
+2003-12-14  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc-track.el(erc-modified-channels-update):
+       Force update of modeline.  Makes sure
+       that the tracked channels disappear in other buffers too.
+
+2003-12-06  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc.el(define-erc-module):
+       New optional argument LOCAL-P.  If non-nil, then
+       mode will be created as buffer-local rather than a global mode.
+       (erc-cmd-CTCP): Fix indentation from last commit.
+
+       * erc-compat.el(erc-define-minor-mode):
+       Deal with :global and :group keywords.
+
+       * erc-nickserv.el(erc-current-network):
+       Make server regex more permissive.
+
+       * erc.el(erc-cmd-CTCP):
+       Don't add a space to end of command when ARGS are
+       empty.  This fixes a bug whereby requests of the form "VERSION " were
+       being sent, and ignored.
+
+2003-11-27  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc-log.el: From Adrian Aichner <adrian@xemacs.org>
+       * erc-log.el (erc-log-file-coding-system): Use 'binary
+       coding-system under XEmacs (instead of 'emacs-mule).
+       * erc-log.el (erc-w32-invalid-file-characters): Removed as no
+       longer needed.
+       * erc-log.el (erc-generate-log-file-name-long): Use
+       `convert-standard-filename', which exists in XEmacs too.
+
+2003-11-16  Mario Lang  <mlang@delysid.org>
+
+       * erc-identd.el: Code provided by johnw, thanks!
+
+2003-11-09  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc.el(erc-latest-version): Clean up docstring.
+       Remove requirement for w3, wrap REQUIRE statement in IGNORE-ERRORS.
+       Update viewcvs url to correct location.
+       (erc-ediff-latest-version): Make sure that we find the uncompiled
+       erc.el, error if not.
+
+2003-11-07  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Add more info to /sv
+
+2003-11-06  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el: Added optional argument BUFFER to erc-server-buffer-p.
+
+2003-11-04  Mario Lang  <mlang@delysid.org>
+
+       * AUTHORS: Add sachac
+
+2003-11-02  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc.el(erc-server-366):
+       chnl is 4th element of parsed, not fifth.
+       (erc-channel-end-receiving-names): Pass correct number of arguments
+       to delete-if-not.
+
+       * erc.el(erc-update-current-channel-member):
+        Use erc-downcase when comparing
+       nick entries.  Cleanup indentation.
+
+2003-11-01  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc-sound.el: Added a (provide 'erc-sound) line.
+
+       * erc.el(erc-cmd-NAMES): send to TGT, not CHANNEL.
+
+2003-10-29  Sandra Jean Chua  <sacha@free.net.ph>
+
+       * erc-pcomplete.el, erc.el, CREDITS:
+       Merged Jeremy Maitin-Shepard's patch for time-sensitive nick completion.
+
+2003-10-27  Mario Lang  <mlang@delysid.org>
+
+       * Makefile, debian/changelog:
+       New Debian package 4.0.cvs.20031027
+
+2003-10-25  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Fix typo tuncate->rruncate
+
+2003-10-24  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el: From Stephan Stahl <stl@isogmbh.de>:
+        * (erc-dcc-send-block): Kill buffer if transfer completed correctly.
+
+2003-10-22  Mario Lang  <mlang@delysid.org>
+
+       * erc-track.el(erc-track-disable):
+       Do not deactivate all advices for `switch-to-buffer',
+       just disable the erc specific one. (Bug#217022).
+
+2003-10-18  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc-log.el(erc-log-file-coding-system): New variable.
+       (erc-save-buffer-in-logs): Use it.
+
+2003-10-17  Mario Lang  <mlang@delysid.org>
+
+       * erc.el(erc-interpret-mirc-color): New boolean defcustom
+
+       * erc.el: Do not use -nowait on darwin (thanks johnw)
+
+2003-10-15  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc.el(define-erc-module):
+       Set erc-FOO-mode appropriately in erc-FOO-enable
+       and erc-FOO-disable.
+
+2003-10-12  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-autoaway.el(erc-mode):
+       Reset idletime on connect. Fixes an annoying bug which
+       flooded the server with aways on reconnect.
+       (erc-autoway-reset-idletime): Accept optional args so we can hook it
+       onto erc-server-001-hook.
+
+2003-10-10  Mario Lang  <mlang@delysid.org>
+
+       * erc.el(erc-hide-list): Add a nice defcustom type
+
+2003-10-08  Mario Lang  <mlang@delysid.org>
+
+       * Makefile, debian/changelog, debian/control:
+       Debian snapshot 20031008
+
+       * erc-speedbar.el:
+       Patch from Eric M. Ludlam <eric@siege-engine.com>:
+        - (erc-install-speedbar-variables): Add functions list (needs new speedbar?)
+        - (erc-speedbar-buttons): Add doc.  Clear the buffer
+        - (erc-speedbar-sort-channel-members): New function.
+        - (erc-speedbar-expand-channel): Call new sort function.  Change some visuals.
+        - (erc-speedbar-insert-user): Change some visuals based on channel data.
+        - (erc-speedbar-line-text, erc-speedbar-item-info): New functions
+       Add proper elisp file header.
+
+2003-10-02  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc-match.el(erc-match-syntax-table): New variable.
+       (erc-match-current-nick-p): Use it.
+
+       * erc.el(erc-quit-reason-zippy, erc-part-reason-zippy): Use
+       `erc-replace-regexp-in-string' rather than
+       `replace-regexp-in-string'.
+       (erc-command-indicator-face): New face, used to show commands if
+       `erc-hide-prompt' is nil and `erc-command-indicator' is non-nil.
+       (erc-command-indicator): Clean up doc-string.
+       (erc-display-prompt): New optional argument FACE, use this rather
+       than `erc-prompt-face' to fontify the prompt if non-nil.
+       (erc-send-current-line): Pass in `erc-command-indicator-face' to
+       `erc-display-prompt'.
+
+       * erc-compat.el(erc-replace-regexp-in-string): New function.
+       Alias for `replace-regexp-in-string' on Emacs 21.
+       Argument massaging for `replace-in-string' for XEmacs.
+
+2003-09-28  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-keywords): Removed. Wasn't used by anything.
+
+2003-09-25  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc.el: ERC-HIDE-PROMPT: add custom group
+       ERC-COMMAND-INDICATOR: new variable.
+       ERC-COMMAND-INDICATOR: new function.
+       ERC-DISPLAY-PROMPT: new argument, PROMPT, used to override default
+       prompt.
+       ERC-SEND-CURRENT-LINE: pass ERC-COMMAND-INDICATOR to ERC-DISPLAY-PROMPT.
+
+2003-09-24  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-parse-line-from-server):
+       Ignore empty lines as required by RFC.
+
+2003-09-17  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Add lag time calculation
+
+2003-09-13  Mario Lang  <mlang@delysid.org>
+
+       * Makefile, debian/README.Debian, debian/changelog:
+       New debian release
+
+       * erc-notify.el:
+       Call erc-notify-install-message-catalogs on load, not on module init
+
+       * erc.el(erc-update-modules):
+       Use `load' instead of `require'.  XEmacs appears
+       to have the NOERROR arg only sometimes... Strange
+
+       * erc.el: No fboundp if we have a defvar
+
+       * erc.el: Properly defvar erc-ping-handler
+
+2003-09-11  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc-setup-periodical-server-ping):
+       check if erc-ping-handler is
+           bound before referencing it
+
+2003-09-10  Mario Lang  <mlang@delysid.org>
+
+       * erc.el(erc-cmd-NICK):
+       Warn about exceeded NICKLEN if we know it.
+
+       * erc.el: Make erc-server-PONG obey erc-verbose-server-ping.
+       Cancel old `erc-ping-handler' timer when restablishing connection in the same
+       buffer.
+
+       * debian/changelog, Makefile: New debian snapshot
+
+       * erc-dcc.el, erc-xdcc.el:
+       Use new function erc-dcc-file-to-name to convert spaces to underscores
+
+       * erc-xdcc.el: Add autoload for erc-xdcc-add-file
+
+2003-09-08  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el: indent fixes and copyright update
+
+       * erc.el:
+       erc-send-ping-interval: New defcustom which defaults to 60.
+       Every 60 seconds, we send PING now.
+       This should fix the "connection silently lost" bug.
+       Please test this change extensively, and report problems.
+
+2003-09-07  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-default-coding-system):
+       Test for undecided and utf-8
+       before setting.
+
+2003-09-01  Mario Lang  <mlang@delysid.org>
+
+       * erc.el(erc-modules): Add some more symbols to the set
+
+       * erc.el(erc-modules):  * erc.el(erc-modules): Add :greedy t to the set in 
+
+       * erc-dcc.el:
+       More autoloads which make dcc autoload upon ctcp dcc query received.
+
+       * erc-dcc.el(erc-cmd-DCC): Add Autoload.
+       (pcomplete/erc-mode/DCC): Ditto, makes DCC autoloadable just by using
+       completion.
+       Also only offer "send" if fboundp make-network-process.
+
+       * erc-autojoin.el: Update copyright
+
+       * erc-autojoin.el(erc-autojoin-add):
+       Only add the channel if it is not already there.
+
+       * erc-notify.el:
+       Use `define-erc-module' instead of old `erc-notify-initialize'.
+       Now defines the global minor mode erc-notify-mode, and should also
+       be controllable via `erc-modules' with symbol `notify'.
+
+       * erc.el(erc-modules):
+       Fix paren-in-column-zero bug in docstring.
+       Add a sort of bogus, but still better :type.
+       Add autojoin and netsplit by default.
+       (erc-update-modules): Dont barf with an error if `require' fails.
+       We can still error out if the mode is not defined.
+
+2003-08-31  Andreas Fuchs  <asf@void.at>
+
+       * erc.el:
+       * make 353 (NAMES reply) output go into the appropriate channel buffer
+         (if it exists) or into the active erc buffer (if not).
+
+2003-08-29  mtoledo  <mtoledo@confusibombus>
+
+       * erc.el:
+       Added the variable erc-echo-notices-in-current-buffer to make possible display notices in the current buffer (queries to nickserv/chanserv/memoserv). Defaults to nil so nothing changes from what we have today.
+
+2003-08-29  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Fix typo in varname which led to a compiler warning
+
+       * AUTHORS: Added lawrence
+
+2003-08-27  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el:
+       Set process and file-coding system to 'binary (for Windows)
+
+       * erc-stamp.el: Rename custom group erc-timestamp to erc-stamp.
+
+2003-08-07  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc-fill.el(erc-fill-disable):
+       Remove erc-fill, not erc-fill-static from
+       erc-insert-modify-hook.
+
+2003-08-05  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-send-current-line):
+       Now we display the prompt for previously entered commands
+           based on the value of customization variable erc-hide-prompt.  This change is
+           closely related to the immediate previous version by wencem.
+
+2003-08-04  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc.el(erc-send-current-line):
+       If we're sending a command, don't display
+       the prompt.
+
+2003-08-04  Damien Elmes  <erc@repose.cx>
+
+       * erc-track.el: patch from David Edmondson (dme AT dme DOT org)
+
+       This patch makes button 3 on the erc-track buffer names in the
+       modeline show the selected buffer in another window. It's analogous to
+       button 2 which shows the buffer in the current window.
+
+2003-07-31  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-display-line-1):
+       Fixed bad indentation on one line.  No semantic change.
+
+2003-07-29  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc-match.el:
+       Quote open paren in docstring of erc-text-matched-hook
+
+       * erc.el: Anchor match only at beginning in erc-ignored-user-p.
+
+       * erc-button.el: New variable erc-button-wrap-long-urls.
+       Modified erc-button-add-buttons:
+         New optional argument REGEXP.
+         If we're buttonising a URL and erc-button-wrap-long-urls is
+         non-nil, try and wrap them
+
+       Modified erc-button-add-buttons-1:
+         Pass regexp to erc-button-add-buttons.
+
+2003-07-28  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-network-name):
+       Improved docstring.  Removed an unnecessary call to erc-server-buffer.
+
+2003-07-28  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: By lawrence:
+       (erc-ignored-user-p): Use anchored regexp.
+       (smiley): Fix missing quote in `remove-hook' call.
+
+2003-07-26  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc-nets.el, erc-nickserv.el, erc.el:
+       Changed all references to Openprojects into references to Freenode.
+
+2003-07-25  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el:
+       Now variable erc-debug-irc-protocol is defvar'ed instead of defcustom'ed.
+       Made the docstring clearer too.
+
+       * erc.el: Fixed a wrong-type-argument error from window-live-p.
+
+2003-07-15  Damien Elmes  <erc@repose.cx>
+
+       * erc-log.el(erc-log-setup-logging):
+       set buffer-file-name to "", as (basic-save-buffer)
+           will prompt for a buffer name before invoking hooks. the buffer-file-name
+           will be overridden by (erc-save-buffer-in-logs) anyway - the main danger
+           of doing this is write-file-contents hooks. Let's see if anyone complains.
+       (erc-save-buffer-in-logs): return t, so that further write hooks are not run
+
+2003-07-09  Damien Elmes  <erc@repose.cx>
+
+       * erc-dcc.el(erc-dcc-open-network-stream):
+       -nowait still crashes emacs cvs - disable for now
+
+2003-07-02  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc): Minor docstring modification.
+
+2003-07-01  Damien Elmes  <erc@repose.cx>
+
+       * erc-match.el(erc-match-current-nick-p):
+       match only on word boundaries
+
+       * erc-log.el(erc-log-setup-logging):
+       not sure how this crept in again - make sure we set
+           buffer-file-name to nil, since otherwise it is not possible to open
+           previous correspondence in another buffer while a conversation is open
+
+2003-06-28  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-network-name):
+       Now makes some intelligent guesses if the server didn't tell
+           us the network name.
+
+2003-06-28  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-default-coding-system): Use utf-8 as the default
+       encoding for outgoing stuff and undecided as the default for
+       incoming stuff.
+       (erc-coding-sytem-for-target): New.
+       (erc-encode-string-for-target): Use it.
+       (erc-decode-string-from-target): Use it.  Removed the flet
+       erc-default-target hack and documented the dynamically bound
+       variable `target' instead.
+
+2003-06-25  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-log-irc-protocol):
+       Now we keep point on the bottom line of the window
+           displaying the *erc-protocol* buffer if it is at the end of the
+           *erc-protocol* buffer.
+
+       * erc.el:
+       Added some text to the docstring for variable erc-debug-irc-protocol.
+
+2003-06-23  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc-dcc.el(erc-dcc-auto-mask-p):
+       Fixed a docstring typo that caused a load-time error.
+
+       * erc-dcc.el(erc-dcc-auto-mask-p):
+       Changed reference to undefined variable erc-dcc-auto-mask-list
+           to erc-dcc-auto-masks.
+       Changed default value of variable erc-dcc-auto-masks to nil and added text to its
+           docstring.
+
+       * erc-notify.el(erc-notify-timer and erc-notify-QUIT):
+       Added network name to notify_off message.
+
+       * erc.el(erc-network-name):
+       Now returns the name of the IRC server if the network name
+           cannot be determined.
+
+       * erc-notify.el(erc-notify-JOIN and erc-notify-NICK):
+       Added argument ?m to call to erc-display-message.
+
+       * erc-dcc.el(erc-dcc-do-LIST-command):
+       Fixed a bug where I assumed (plist-get elt :type)
+           returns a string -- it really returns a symbol.
+
+       * erc-notify.el(erc-notify-timer):
+       Now we include the network name in the notify_on message.
+
+       * erc.el:
+       New function: erc-network-name.  Returns the name of the network that the
+           current buffer is associate with.  Not every server sends the 005 messages
+           that enable the network name to be known.  If the network name is
+           not known, the string "UNKNOWN" is returned.
+
+       * erc-dcc.el(erc-dcc-chat-setup):
+       Added a comment.  Fixed a bug where a DCC CHAT buffer has no
+           prompt when it first appears.
+
+       * erc-dcc.el(erc-dcc-chat-parse-output):
+       Now a DCC chat buffer displays the nick using
+           erc-nick-default-face just like in a channel buffer.
+
+2003-06-22  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-display-prompt):
+       Fixed incorrect indentation.  No semantic change.
+
+       * erc.el(erc-strip-controls):
+       Minor change to regexp that matches IRC color control
+           codes.  I was seeing usage as follows: ^C07colored text^C^C04other color.
+           Now we strip a ^C followed by zero, one, or two digits.  Before this change,
+           we stripped a ^C followed by one or two digits.
+
+       * erc-dcc.el(erc-dcc-do-LIST-command):
+       Improved format of output of /DCC LIST.  Now the
+           "Size" column for a DCC GET includes the percentage of the file that has
+           been retrieved.
+       (erc-dcc-do-GET-command): Now it works if erc-dcc-default-directory is set.
+
+2003-06-19  Damien Elmes  <erc@repose.cx>
+
+       * erc-log.el:
+       * added quickstart information to the comments up the top
+
+2003-06-16  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Default to open-network-stream on MS Windows. (thanks lawrence)
+
+2003-06-11  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc-process-input-line):
+       refactor so that wrong-number-of-arguments is
+           caught when using do-not-parse-args - this lets do-not-parse-args
+           commands display help messages on incorrect syntax in a uniform manner.
+           This no longer raises a bad-syntax error - was this a catch-all to stop a
+           backtrace? Does it belong?
+       (erc-cmd-APPENDTOPIC): the correct way to display help when you want to
+           accept an abitrary string is to (signal 'wrong-number-of-arguments nil).
+           This fixes a bug where people could not /at topics with a space in them.
+
+2003-06-09  Damien Elmes  <erc@repose.cx>
+
+       * erc.el:
+       Re-add the last few changes which weren't merged for some reason.
+
+       * erc.el(erc-cmd-APPENDTOPIC): show help when given no arguments
+
+       Patch from MrBump. Fixes problem with erc-set-topic inserting ^C characters
+       into the topic. Also removes dependency on CL.
+
+2003-06-08  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el:
+       Added comment to explain (eval-after-load "erc" '(erc-update-modules)).
+
+2003-06-01  Mario Lang  <mlang@delysid.org>
+
+       * erc-pcomplete.el: Add completion for /unignore
+
+2003-05-31  Alex Schroeder  <alex@gnu.org>
+
+       * erc-compat.el(erc-encode-coding-string): The default binding,
+       if encode-coding-string was not available, must be a defun that
+       takes multiple arguments.  Did that.
+
+2003-05-30  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Add handlers for 313 and 330 (by arne@rfc2549.org, thanks)
+
+2003-05-30  Damien Elmes  <erc@repose.cx>
+
+       * erc.el:
+       patch from MrBump to make /mode #foo +b work again (erc-cmd-BANLIST only
+       temporarily changes them now)
+
+2003-05-29  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-select):
+       server is now defaulted with erc-compute-server.
+       A few cosmetic fixes.
+       (erc-default-coding-system): Renamed from erc-encoding-default.
+       (erc-encoding-default): Renamed to erc-default-coding-system.
+       (erc-encoding-coding-alist): Documentation updated to cover regexps.
+       (erc-encode-string-for-target): Now considers keys of
+       erc-encoding-coding-alist to be regexps.  Rely on erc-compat
+       wrt. MULE support.
+       (erc-decode-string-from-target): New function.
+       (erc-send-current-line): eq -> char-equal fix.
+       (erc-server-TOPIC): topic is now decoded with
+       erc-decode-string-from-target.
+       (erc-parse-line-from-server): Line from server is no longer decoded
+       here.
+       (erc-server-PRIVMSG-or-NOTICE): Message from a user is decoded here,
+       sspec -> sender-spec for clarity.  Cosmetic if -> when fix.
+       (erc-server-TOPIC): sspec -> sender-spec
+       (erc-server-WALLOPS): Ditto.
+
+       * erc-compat.el(erc-decode-coding-string):
+       Now requires coding-system as an argument.
+
+2003-05-15  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       erc-part|quit-hook is only run on a part|quit directed to our nick, reflect that in the docstring to avoid confusion
+
+2003-05-01  Andreas Fuchs  <asf@void.at>
+
+       * erc-truncate.el:
+       * erc-truncate-buffer-to-size: use fboundp. Scheme takes its toll...
+
+2003-05-01  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-truncate.el: remove require of erc-log
+       (erc-truncate-buffer-to-size): use erc-save-buffer-in-logs when it's
+       there, else, dont.
+
+2003-04-29  Andreas Fuchs  <asf@void.at>
+
+       * erc-log.el, erc-truncate.el, erc.el: erc.el:
+               * erc-cmd-QUIT: Remove references to code in erc-log.el, to
+                 not force autoloading of erc-log.el
+               * erc-server-PART: ditto.
+               * erc-quit-hook: new hook, run when /quit command is
+                 processed.
+               * erc-cmd-QUIT: use it.
+               * erc-part-hook: new hook, run then PART message is
+                 processed.
+               * erc-cmd-PART: use it.
+               * erc-connect-pre-hook: new hook, run before connection to IRC
+                 server is started.
+               * erc: use it.
+               * erc-max-buffer-size: Move truncation variables and functions
+                 to erc-truncate.el
+               * erc-truncate-buffer-on-save: moved to erc-log.el
+               * erc-initialize-log-marker: new function.
+       erc-log.el:
+               * erc-truncate-buffer-on-save: New defcust here; from erc.el
+               * erc-truncate-buffer-on-save: Put it in group `erc-log'
+               * erc-log-channels-directory: Remove trailing slash from
+                 default value.
+               * Add functions to erc-connect-pre-hook, erc-part-hook and
+                 erc-quit-hook to avoid getting autoloaded.
+
+       erc-truncate.el:
+               * Contains the truncation functions and defcusts from erc.el.
+               * define-erc-module clause added; new erc-truncate-mode.
+
+2003-04-29  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc):
+       Check wether erc-save-buffer-in-logs is bound, too
+
+       * erc.el(erc):
+       Check wether erc-logging-enabled is bound before using it - not
+       everyone is using erc-log.el!
+
+2003-04-28  Andreas Fuchs  <asf@void.at>
+
+       * erc-log.el:
+       * while we're at it, remove the (declare (ignore ignore)) statements.
+
+       * erc-log.el:
+       * add autoload statement for erc-log-mode/etc. Sorry for the delay.
+
+       * erc-log.el, erc.el: * erc.el:
+               - move variables and functions to erc-log.el:
+                        defgroup `erc-log'
+                        defcustom `erc-log-channels-directory'
+                        defcustom `erc-log-insert-log-on-open'
+                        defcustom `erc-generate-log-file-name-function'
+                        defun `erc-save-buffer-in-logs' (autoloads from erc-log.el)
+                        defuns `erc-generate-log-file-name-*'
+                        defun `erc-current-logfile'
+                        defun `erc-logging-enabled' (autoloads from erc-log.el)
+               - erc-truncate-buffer-to-size: fix for double-saving bug when
+                 writing out truncated buffer contents. Thanks, lawrence mitchell <wence@gmx.li>!
+               - erc-remove-text-properties-region: Fix case for read-only text.
+               - erc-send-current-line: update insert-marker before calling the hooks.
+                                        also, wrap (erc-display-prompt) so that it doesn't toggle
+                                        buffer-modified-p.
+               - erc-interpret-controls: remove /very/ old commented-out function
+               - erc-last-saved-position: make it a marker
+               - erc: use it.
+
+       * erc-log.el: (thanks, lawrence mitchell <wence@gmx.li>!)
+               - Move logging code from erc.el here
+               - define-erc-module log: add; minor mode erc-log-mode is the
+                 same as adding the `erc-save-buffer-in-logs' to
+                 erc-send-post-hook and `erc-insert-post-hook'.
+               - erc-w32-invalid-file-characters: add.
+               - erc-enable-logging: add.
+               - erc-logging-enabled: use it.
+               - erc-logging-enabled: autoload.
+               - erc-save-buffer-in-logs: fix for truncating saved buffer with read-only text.
+               - erc-save-buffer-in-logs: use erc-last-saved-position.
+               - erc-save-buffer-in-logs: fix saving half-written messages on
+                 the prompt when saving the log file. (simply uses
+                 erc-insert-marker as an upper bound for saving).
+
+2003-04-27  Damien Elmes  <erc@repose.cx>
+
+       * erc.el:       * erc.el: erc-modules: added 
+
+2003-04-27  Alex Schroeder  <alex@gnu.org>
+
+       * Makefile(UNCOMPILED): Added erc-compat.el.
+       (clean): Remove .elc files, too.
+       Patch by Hynek Schlawack <hynek+erc@hys.in-berlin.de>
+
+2003-04-22  Damien Elmes  <erc@repose.cx>
+
+       * erc-button.el:
+       erc-button-keymap: set the parent keymap to erc-mode-map
+
+2003-04-20  Damien Elmes  <erc@repose.cx>
+
+       * erc.el:
+       erc-official-location: shouldn't the official location be the base URL of erc?
+
+       * erc.el:
+       erc-modules: updated the docstring to make the semantics clearer
+
+2003-04-19  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Fix problem where % in NOTICE produced errors (from mmc)
+
+2003-04-18  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc-toggle-debug-irc-protocol):
+       moved a reference to 'buf' inside the let
+           statement which defines it. it's difficult to tell what the original
+           intentions were here - at the moment the debug window is displayed when
+           toggling either way.
+
+       * README, erc.el:
+       (erc-update-modules: added a condition in for erc-nickserv -> erc-services
+
+       * erc-pcomplete.el:
+       - that change to erc-update-modules making it require the modules first means
+         we don't need any special case handling here, so i reverted the previous
+         change
+
+       * erc.el:
+       - don't require 'erc-auto, since windows users don't have access to make.
+         instead, we handle it in (erc-update-modules)
+
+2003-04-17  Damien Elmes  <erc@repose.cx>
+
+       * README, Makefile:
+       Updated Makefile and documentation to reflect the new release
+
+       * erc.el:
+       - note the previous change also updated the release number to erc 4.0!
+       (erc-connect): fix a bug introduced by the previous release
+
+       * erc.el:
+       fixed about 20 instances of (message (format ...)) which will break if the
+       format returns a string with %s in it
+
+       * erc.el: erc-error-face: make it red, not pink
+
+       * erc-pcomplete.el:
+       since pcomplete is autoloaded via erc-completion-mode, and completion is in
+       erc-modules by default, we remove completion when pcomplete is added
+
+       * erc.el(define-erc-module): no need for delete, use delq
+
+       * erc-members.el(erc-nick-channels):
+       (erc-person-channels) takes one arg
+       (erc-format-user): again, they all take an arg
+
+       * erc.el:
+       - require erc-auto when loading, so the default `erc-modules' can be loaded.
+         this makes erc-auto no longer a convenience but a necessity - all the name
+         of user friendliness.
+       (define-erc-module): the enable and disable routines now update erc-modules
+           accordingly
+       erc-modules: new variable controllig the modules which erc has loaded/will
+           load. when customising, it will automatically enable modules. it won't
+           automatically disable modules which are removed, yet.
+       (erc-update-modules): enable all modules in `erc-modules'
+
+       * erc-dcc.el(erc-dcc-open-network-stream):
+       use the -nowait equiv if available
+       erc-dcc-server-port: removed
+       erc-dcc-port-range: allows a range of values, so you can have more than one
+           dcc
+       (erc-dcc-server): support erc-dcc-port-range
+       (erc-dcc-chat): use OCHAT for outgoing chat for now. we need to fix the
+           issues with allowing more than one chat with the same person
+
+       * erc.el:
+       erc-log-channels: removed; set the directory to start logging
+       (erc-directory-writeable-p): create directory if it doesn't exist, check if
+           it's writeable
+       (erc-logging-enabled): don't reference erc-log-channels
+
+2003-04-07  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc):
+       but when inserting the contents of a previous logfile, use the logfile
+           name, not ""!
+
+       * erc.el(erc):
+       set buffer-file-name to "", since we have a custom saving function and
+           it's not needed. this enables one to open a log file with previous
+           correspondence, while talking to the person at the same time
+
+2003-03-29  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-prepare-mode-line-format):
+       Now strips all text properties from the target before
+           putting it in the mode line.  Keeps the mode line looking consistent.
+       (erc-channel-p): Improved docstring.
+
+2003-03-28  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-generate-log-file-name-with-date): New function.
+       (erc-generate-log-file-name-function): Make it available.
+
+2003-03-24  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Fix erc-prompt and erc-user-mode custom :type (Closes: #185794)
+
+2003-03-20  Damien Elmes  <erc@repose.cx>
+
+       * erc.el:
+       erc-server-hook-list: correct documentation of ordering of (proc parsed)
+
+2003-03-16  Alex Schroeder  <alex@gnu.org>
+
+       * erc-track.el(erc-modified-channels-string):
+       Make it a risky-local-variable.
+
+2003-03-16  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-track.el(erc-track-modified-channels):
+       Use (point-min) if we don't find a
+       parsed-property, so it won't error out with nil...
+
+2003-03-16  Damien Elmes  <erc@repose.cx>
+
+       * erc-track.el(erc-track-switch-buffer):
+       removed call to erc-modified-channels-update, as
+           this is done correctly on buffer switching in both emacs and xemacs now
+
+2003-03-15  Damien Elmes  <erc@repose.cx>
+
+       * erc-track.el(erc-find-parsed-property):
+       simplified a little, so it shouldn't return nil anymore
+
+       * erc.el: erc-send-post-hook: document narrowing which occurs
+
+2003-03-14  Alex Schroeder  <alex@gnu.org>
+
+       * erc-track.el(erc-find-parsed-property): New function.
+       (erc-track-modified-channels): Use it instead of relying on
+       point-min.
+
+2003-03-12  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       Fix erc-set-topic to accept a channel name as first word
+
+2003-03-11  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-dcc.el:
+       Small patch (<10 lines, also slightly modified by Jorgen Schäfer) from
+       David Spreen <netzwurm@debian.org> to add hostmask-authentication to
+       DCC auto-accept.
+
+       erc-dcc-auto-mask-list: New variable
+       (erc-dcc-handle-ctcp-send): Check erc-dcc-auto-mask-list
+       (erc-dcc-auto-mask-p): New function
+       erc-dcc-send-request: Docstring now mentions erc-dcc-auto-mask-list
+
+2003-03-10  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc-ring.el(erc-clear-input-ring):
+       New function.  Erases the contents of the input ring for
+          the current ERC buffer.
+
+2003-03-08  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el:
+       (erc-display-line-1) and (erc-send-current-line): Now these functions reset erc-insert-this
+           to t as soon as possible after consuming the value of that variable.  See the comments in
+           the code for the strange symptom this fixes.
+       (erc-bol): Changed to call point-at-eol instead of line-end-position.  This increases XEmacs
+           portability, since XEmacs doesn't have line-end-position.  Patch suggested by Scott Evans
+           on the ERC mailing list.
+
+2003-03-04  Damien Elmes  <erc@repose.cx>
+
+       * erc.el: banlist*: patch from mrbump to avoid using cl packages
+
+2003-03-04  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el:
+       Changed erc-noncommands-list from a constant to variable, so that users can
+           add their own erc-cmd-* functions to the list.  Improved the docstring too.
+
+2003-03-02  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-server-353):
+       Now the output of "/NAMES #channel" appears in the currently
+           active ERC buffer, even if the user is not a member of #channel.
+
+       * erc.el(erc-cmd-DEOP):
+       Fixed a syntax error: invalid read syntax ")" caused by my last change.
+
+2003-03-01  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-cmd-DEOP):
+       Fixed a wrong-type-argument error caused by calling split-string
+           on a list instead of on a string.  Removed the call to split-string entirely,
+           because it wasn't needed.
+
+       * erc.el(erc-cmd-HELP):
+       Changed to use intern-soft instead of intern.  Now "/HELP floob"
+           doesn't create a void function symbol erc-cmd-FLOOB.
+
+2003-02-25  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc-cmd-SERVER):
+       remove erroneous references to line, use server instead
+
+2003-02-23  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-toggle-debug-irc-protocol):
+       Fixed a bug where the global value of
+           kill-buffer-hook was being modified instead of the buffer-local value.
+
+2003-02-22  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-cmd-KICK):
+       Now supports any number of words in the REASON string.  Examples
+           of the /KICK command are:
+             /KICK franl You don't belong here
+             /KICK franl Bye
+             /KICK franl
+             /KICK #channel franl Go away now
+             /KICK #channel franl Bye
+             /KICK #channel franl
+
+2003-02-16  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-stamp.el(erc-insert-timestamp-right):
+       Make the timestamp rear-nonsticky, so
+       C-e works at the beginning of the next line.
+
+2003-02-16  Andreas Fuchs  <asf@void.at>
+
+       * erc-stamp.el:
+       * s/choose/choice/ in customize options, as kensanata requested.
+
+2003-02-15  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-toggle-debug-irc-protocol):
+       Now if the *erc-protocol* buffer is killed,
+           logging is turned off.  Prior to this change, the buffer would come back
+           into existence (generally unbeknownst to the user) after being killed.
+
+2003-02-11  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc-send-current-line):
+       we can't inhibit everything here when not connected,
+           as the user will expect commands like /server still to work. the
+           erc-cmd-handler should recover from errors instead
+
+2003-02-10  Damien Elmes  <erc@repose.cx>
+
+       * erc.el:
+       * we now run erc-after-connect on 422 (no motd) messages as well as the motd
+         messages
+       (erc-login): revert the previous change
+
+       * erc.el(erc-login): register that we're connected
+
+2003-02-10  Mario Lang  <mlang@delysid.org>
+
+       * erc-members.el: * Provide erc-members
+       * Fix excessive )
+       * Comment out broken self-tests
+
+2003-02-07  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc-connect):
+       notify the user we're trying to connect when using asych
+           connections
+
+       * erc.el(erc-connect): support an asyncronous connection
+       (erc-process-sentinel): ditto
+
+       * erc-track.el:
+       * advise switch-to-buffer in the case of xemacs, since it doesn't have
+         window-configuration-change-hook
+
+       * erc.el(erc-send-current-line):
+       if not connected, refuse to send either a message or
+           a command
+
+       * erc.el: (erc-save-buffer-in-logs):
+           - check for a sensibile region before saving the buffer. if the
+             connection process is killed early on, there is not a sensible region
+             to save
+           - don't set buffer-file-name on save. we don't need it, and it means we
+             can now find-file a log while an existing query is open with that
+             user
+
+       * erc.el(erc-process-input-line):
+       when displaying the help for a function, if no
+           documentation exists, don't fall over
+       (erc-cmd-SAY): new function for quoting lines begining with /
+       (erc-server-NICK):
+           - fix a bug where the "is now known as" message doesn't appear on newly
+             created /query buffers
+           - when a user changes their nick, update the query to point to the new
+             nick
+
+       * erc.el(erc-send-current-command):
+       don't reject multi-line commands. since
+           multiline-p is used as the no-command arg to erc-process-current-line,
+           multi-line text is never interpreted as a command. i believe this is the
+           correct behavior - it allows people to post the output of things like df
+           (sans header). if you want to change this, please provide a rationale
+           in the changelog
+
+       * erc.el(erc-send-current-line):
+       only match the first line when determining if a
+           multi-line command is allowed
+
+2003-02-07  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-bbdb.el(erc-bbdb-highlight-record):
+       Use alternate strings, not character
+       classes to split the nick-field.
+
+2003-02-06  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-process-sentinel):
+       Now we set erc-connected to nil every time we disconnect
+           from a server, not just when an unexpected disconnect happens.
+
+       * erc.el(erc-connected):
+       Removed redundant defvar of this variable.  Improved the
+           docstring.
+       (erc-login): Changed to send a correct RFC2812 USER message (see section
+           3.1.3 of RFC2812 for the documentation of the semantics of each argument
+           of the USER message.
+
+2003-02-02  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc-cmd-NOTICE): fix from mrbump
+
+2003-01-31  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-cmd-JOIN):
+       Now we only send one JOIN command to the server when a channel
+           key is provided.
+
+2003-01-30  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-remove-channel-member):
+       Fixed so that it runs erc-channel-members-changed-hook
+           with the channel buffer current, as is documented in the docstring for variable
+           erc-channel-members-changed-hook: "The buffer where the change happened is
+           current while this hook is called."
+
+2003-01-28  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el:
+       (erc-ignored-user-p),(erc-cmd-IGNORE),(erc-cmd-UNIGNORE): Now nicks are ignored
+           on a per-server basis.  Now, erc-ignore-list is only valid in server
+           buffers!  Do not reference it in channel buffers.
+
+       * erc.el(erc-cmd-IGNORE):
+       Now says "Ignore list is empty" if it erc-ignore-list is empty
+           instead of showing an empty list.
+
+2003-01-25  Alex Schroeder  <alex@gnu.org>
+
+       * erc-nickserv.el(services): Defined a module
+
+2003-01-25  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-process-ctcp-query):
+       Display recipient of CTCP query if it's not
+       our current nick.
+
+       * erc.el(erc-cmd-WHOIS):
+       Accept an optional second argument SERVER.
+
+2003-01-25  Alex Schroeder  <alex@gnu.org>
+
+       * erc-stamp.el(stamp): erc-add-timestamp must always be added
+       with the APPEND parameter -- not only when adding it on the right.
+
+2003-01-24  Alex Schroeder  <alex@gnu.org>
+
+       * erc-members.el(erc-channel-members-changed-hook): Obsolete, use
+       erc-members-changed-hook instead.  When it is set, add its content
+       to erc-members-changed-hook.
+       (erc-update-channel-member): Obsolete, use erc-update-member
+       instead.  Defalias to that effect.
+       (erc-remove-channel-member): New and already obsolete.  Use
+       erc-remove-nick-from-channel instead.
+       (erc-update-channel-info-buffer): Obsolete, use ignore instead.
+       Yes, these have to go.
+       (erc-channel-member-to-user-spec): Obsolete, use erc-format-user
+       instead.
+       (erc-format-user): New.
+       (erc-ignored-reply-p): New, use it.
+
+       * erc-members.el:
+       Further along the way.  Any function from erc.el that uses
+       channel-members should end up in this file, rewritten to use
+       erc-members.
+
+       (erc-person): Call erc-downcase before getting
+       something from the hash.
+       (erc-nick-in-channel): Checking wether erc-process must be used is
+       unnecessary -- this will be done in erc-person.
+       (erc-nick-channels): New.
+       (erc-add-nick-to-channel, erc-update-member): Call erc-downcase
+       before putting something into the hash.
+       (erc-buffer-list-with-nick): New.
+       (erc-format-nick, erc-format-@nick): New, backwards incompatible.
+       Must check for other places that call these!
+       (erc-server-PRIVMSG-or-NOTICE): Use the new version.
+
+       * erc-compat.el(view-mode-enter): defalias to view-mode, if
+       view-mode-enter is not fboundp and view-mode is -- as is the case
+       in XEmacs.  We need view-mode-enter in erc-match.el.
+
+2003-01-23  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-default-server-handler):
+       Minor performance improvement: allow the lambda
+           expression to be byte-compiled.
+
+2003-01-23  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc-cmd-BANLIST):
+       in the absence of a fill-column, use the screen width
+
+2003-01-22  Damien Elmes  <erc@repose.cx>
+
+       * erc.el:
+       patch from MrBump to delay fetching the banlist until /bl is run, so we don't
+       fetch it when joining a channel anymore
+
+       * erc-ring.el:
+       * instead of adjusting hooks when loaded, provide (erc-ring-mode). you'll
+         need to run (erc-ring-mode 1) now to get the ring
+       * (erc-previous-command), (erc-next-command):
+           - check if the ring exists and create it if necessary
+           - don't do anything if the ring is empty
+
+       * erc-pcomplete.el:
+       Put "how to use" documentation in the comments up the top
+
+2003-01-21  Alex Schroeder  <alex@gnu.org>
+
+       * erc-autojoin.el(erc-autojoin-version): New.
+
+       * erc-autojoin.el(erc-autojoin-add): Added body.
+       (erc-autojoin-remove): Added body.
+       (erc-autojoin): Provide it.
+
+2003-01-21  Damien Elmes  <erc@repose.cx>
+
+       * erc.el: erc-cmd-*: removed a bunch of references to force
+
+2003-01-21  Alex Schroeder  <alex@gnu.org>
+
+       * erc-autojoin.el(erc-autojoin-channels-alist): More doc.
+
+2003-01-20  Alex Schroeder  <alex@gnu.org>
+
+       * erc-autojoin.el:
+       new, based on resolve's mail, and the stuff on the wiki
+
+       * erc-members.el: new
+
+2003-01-19  Mario Lang  <mlang@delysid.org>
+
+       * debian/README.Debian, debian/changelog, debian/scripts/install, 
+         debian/scripts/startup.erc, Makefile:
+       Prepare for 20030119 debian package
+
+       * erc-dcc.el: <rant>
+       * (erc-decimal-to-ip): Since XEmacs decides that return a completely
+       and utterly wrong number from string-to-number if it is larger than
+       the integer boundary, instead of sanely converting the thing to
+       a float, we now (concat dec ".0").
+       </rant>
+
+       * erc.el:
+       * (erc-log-irc-protocol): Use erc-propertize, not propertize
+
+2003-01-19  Alex Schroeder  <alex@gnu.org>
+
+       * erc-button.el(erc-button-add-buttons): Added regexp-quote for
+       the list case, too.
+
+2003-01-19  Damien Elmes  <erc@repose.cx>
+
+       * erc-dcc.el(erc-dcc-member): fix for case where a prop is nil
+
+       * erc-dcc.el(erc-dcc-member):
+       fix for xemacs's version of plist-member
+
+2003-01-19  Mario Lang  <mlang@delysid.org>
+
+       * erc-notify.el: Delete empty strings from the ison-list
+
+       * erc-track.el:
+       * (erc-track-switch-buffer): Call erc-modified-channels-update here.
+
+       * erc-track.el: * toplevel: require 'erc-match
+
+       * erc-track.el: * (erc-track-mode): Make autoload interactive
+
+       * erc-button.el: * (button): Make the autoload interactive
+
+       * erc.el:
+       * (erc-mode): Comment out the case-table stuff, breaks xemacs
+       * (erc-downcase): Revert.
+
+       * erc-dcc.el:
+       * (erc-dcc-handle-ctcp-send): Use erc-decimal-to-ip on the ip we get...
+
+       * erc-speak.el:
+       Eliminate reference to erc-nick-regexp, which no longer exists
+
+2003-01-19  Alex Schroeder  <alex@gnu.org>
+
+       * erc-stamp.el(erc-timestamp-right-column): New, default nil.
+       (erc-insert-timestamp-right): Use it, if non-nil.  Verbose
+       doc string.
+
+2003-01-18  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-downcase): Use the old behavior in non-CVS Emacs.
+
+       * erc.el(erc-cmd-QUIT): Remove &rest. The correct fix follows.
+       (erc-cmd-GQUIT): Pass "" to erc-cmd-QUIT.
+       (erc-mode): Use the case-table only in CVS Emacs. See comment.
+
+       * erc.el(erc-cmd-QUIT): make reason optional.
+
+       * erc.el(erc-cmd-GQUIT): Fixed typo.
+
+2003-01-17  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * (erc-current-logfile): call expand-file-name, so that downcase doesn't mess up ~
+
+       * erc.el: * (erc-mode): Define a proper case-table.
+       * (erc-downcase): just call downcase for now, lets see if the case-table is portable, if yes, we'll remove all erc-downcase references anyway...
+
+       * erc-button.el: * (erc-button-add-buttons): regex-quote the nick
+
+2003-01-17  Alex Schroeder  <alex@gnu.org>
+
+       * erc-button.el(button): erc-channel-members-changed-hook no
+       longer has erc-recompute-nick-regexp.
+       (erc-button-alist): Use channel-members instead of
+       erc-nick-regexp.
+       (erc-button-add-buttons): Split some code into
+       erc-button-add-buttons-1, and now handle strings, lists, and
+       alists.  Regular expressions in lists and alists are enclosed in
+       < and >.
+       (erc-button-add-buttons-1): New.
+       (erc-nick-regexp): Deleted.
+       (erc-recompute-nick-regexp): Deleted.
+
+       * erc-button.el: Remove require cl again.
+       (erc-mode-map): No longer bind widget-backward and widget-forward.
+       (erc-button-alist): Explain why byte-compiling makes no sense, and
+       remove all calls to byte-compile.
+       (erc-button-keymap): Define it the standard way, without exposing
+       the list nature of the keymap.
+       (erc-button-marker-list): Deleted.
+       (erc-button-add-buttons): Simplify.  In particular, create the
+       button using the real callback, instead of using the intermediate
+       erc-button-push, and only store the data as described for
+       erc-button-alist.
+       (erc-button-remove-old-buttons): Simplify.  No more list munging.
+       Instead, just remove all the properties that we add in
+       erc-button-add-button.
+       (erc-widget-press-button): Deleted.
+       (erc-button-click-button): New, for mouse clicks.  Moves point to
+       where the mouse is, and calls erc-button-push.
+       (erc-button-push): Instead of matching again, just use the
+       erc-callback and erc-data properties at point to do the right
+       thing.
+       (erc-button-entry): Deleted.
+       (erc-button-next): Use error instead of the beep plus message
+       combo.
+
+2003-01-17  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-autoaway.el(erc-autoaway-set-back):
+       Don't pass a force argument to erc-cmd-GAWAY.
+
+       * erc.el(erc-cmd-AWAY): Removed usage of the force variable.
+
+2003-01-17  Alex Schroeder  <alex@gnu.org>
+
+       * erc-button.el(button):
+       erc-recompute-nick-regexp is no longer added to
+       erc-channel-members-changed-hook unconditionally, but only if
+       erc-button-mode is enabled, and if it is disabled, it is removed
+       again.
+       (erc): Require cl for delete-if.
+       (erc-button-remove-old-buttons): Rewrote using delete-if to
+       prevent exceesive consing.  Having the marker list is still ugly,
+       so another solution needs to be found.
+
+2003-01-17  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-banlist-store):
+       Don't assume there's always a setter in the banlist reply.
+
+2003-01-17  Alex Schroeder  <alex@gnu.org>
+
+       * erc-button.el(erc-button-url-regexp): Changed regexp according
+       to a suggestion by Max Froumentin <mf@w3.org>.
+
+2003-01-17  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       fix erc-remove-channel-member again to not error out on nil as first arg...
+
+       * erc.el: * (erc-occur): New function
+
+2003-01-17  Damien Elmes  <erc@repose.cx>
+
+       * erc.el: erc-banlist-*: return nil so further hooks are called
+
+       * erc.el(erc-server-368):
+       supress "end of ban list" messages - use /listbans now
+
+       * erc.el(erc-send-current-line):
+       removed the check for leading whitespace again - the
+           only time we want to prohibit multi-line commands is if / is the first
+           thing on the line
+       (erc-get-arglist): new defun for reading a function's arglist which should
+           work with older copies of emacs. we use help-function-arglist if it's
+           available, though, since that has support for reading subrs, etc
+
+       * erc.el(erc-cmd-JOIN): fixed (again)
+
+       * erc.el: * fixed call to erc-cmd-NICK when connecting
+       * support for listing bans and mass unbanning, again thanks to MrBump
+
+       * erc.el(erc-set-topic):
+       patch from MrBump (Mark Triggs, mst@dishvelled.net) to strip
+           control chars and topic attribution in C-c C-t
+
+2003-01-16  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * (erc-remove-channel-member): Do not use delq, modify the list using setcdr like delq does.
+       In theory, this should be way faster since the list doesnt get traverse two times.
+       Measurement didn't show any real difference though :(, this system is flawed for channels with >300 users it seems...
+       Also moved some defcustoms up.
+
+2003-01-16  Brian P Templeton  <bpt@tunes.org>
+
+       * erc.el: moved misplaced paren
+
+2003-01-16  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc-cmd-UNIGNORE):
+       reference argument directly - no string matching
+
+       * erc.el(erc-extract-command-from-line):
+       hmm, thinko in the canonicalisation. should
+           be fixed
+
+2003-01-16  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-send-current-line):
+       Changed the regexp used to match /COMMANDs so that leading
+           whitespace is taken into account.
+
+2003-01-16  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el: * (erc-dcc-do-SEND-command): Fix it
+
+       * erc-ezbounce.el, erc-lang.el: Arglist changes...
+
+       * erc.el: Various docstring fixes and additions.
+
+       * erc-notify.el:
+       * (erc-cmd-NOTIFY): Change the function arglist to (&rest args)
+
+       * erc-netsplit.el: * (erc-cmd-WHOLEFT): Has no args...
+
+2003-01-16  Damien Elmes  <erc@repose.cx>
+
+       * erc-fill.el:
+       erc-fill-column: default to 78, so things like docstrings don't get wrapped
+           in an ugly manner
+
+2003-01-16  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * (erc-cmd-default): Take a substring, now /mode works again.
+       * (erc-cmd-AWAY): Put do-not-parse-args t
+       * (erc-cmd-GAWAY): Ditto, and fix it.
+       * (erc-cmd-CTCP): Switch to argument system.
+       * (erc-cmd-KICK): Do the same.
+
+2003-01-15  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el:
+       * (erc-cmd-DCC): Fixed for the new scheme, simplified.
+       * (erc-dcc-do-CHAT-command): Ditto.
+       * (erc-dcc-do-CLOSE-command): Ditto.
+       * (erc-dcc-do-LIST-command): Ditto.
+
+2003-01-15  Damien Elmes  <erc@repose.cx>
+
+       * erc.el:
+       erc-error-face: setting a background doesn't work so well with multi-line
+           messages, so we don't. fg colour is negotiable ;-)
+       (erc-cmd-QUERY): fixed, new doco, supress (erc-delete-query) until we fix it
+       (erc-send-current-line): allow multi-line messages provided they don't start
+           with a slash - there's no need to prohibit them if the slash isn't the
+           first character
+
+       * erc.el: * bad-syntax now reports like incorrect-args
+       * bunch of extra cmds fixed, nick, sv etc.
+
+       * erc.el(erc-cmd-HELP): fixed
+       (erc-extract-command-from-line): when deterimining canon-defun, make sure we
+           have a valid symbol
+       (erc-cmd-KICK): fixed
+
+       * erc.el:
+       * removed duplicate do-no-parse-args properties for the defaliased defuns
+       (erc-process-input-line): show function signature when incorrect args
+       (erc-extract-command-from-line): canonicalise defaliases before extracting
+           plist
+       (erc-cmd-CLEAR): fixed
+       (erc-cmd-UNIGNORE): fixed again
+
+       * erc.el(erc-cmd-SET): fixed
+       (erc-cmd-UNIGNORE): fixed
+       (erc-process-input-line): report when incorrect arguments are provided to a
+           command, and show the command's docstring
+
+       * erc.el(erc-cmd-APPENDTOPIC): fixed
+       (erc-process-input-line): more informative error message than 'bad syntax'
+
+2003-01-15  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * (erc-cmd-IGNORE): fixed
+
+       * erc.el: * (erc-cmd-NAMES): fixed
+
+       * erc.el:
+       * (erc-cmd-CLEARTOPIC): Simplify, fix doc, make interactive
+
+2003-01-15  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc-cmd-JOIN):
+       correct invite behavior, and document it.
+
+2003-01-15  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: * (erc-cmd-PART): Put 'do-not-parse-args t
+
+2003-01-15  Damien Elmes  <erc@repose.cx>
+
+       * erc.el(erc-cmd-JOIN): new cmd argument syntax
+       (erc-process-input-line): check if (erc-extract-command-from-line) returned a
+           list, and apply if that's the case
+
+       * erc.el:
+       erc-cmd-*: remove optional force and references to `force' in the code
+       (erc-cmd-AMSG): call erc-trim-string, not trim-string
+
+2003-01-15  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * (erc-cmd-CLEARTOPIC): LINE is now ARGS and already parsed.
+       Set erc-cmd-TOPIC to 'do-not-parse-args for now.
+       (comment: I think we should have 'first, so that only first word is parsed...
+        Or we could autodetect erc-channel-p in the parser before that somehow...)
+
+       * erc.el: * (erc-cmd-OP): LINE is PEOPLE now, and already parsed.
+
+       * erc-notify.el:
+       * (erc-cmd-NOTIFY): Arg LINE is now ARGS, and already parsed.
+
+2003-01-15  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-stamp.el(erc-insert-timestamp-right):
+       Prefer erc-fill-column to window-width,
+       because on wide screens the timestamp could wander off too far to the
+       right.
+
+2003-01-15  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: This is the "everything is suddenly broken!" release
+       You know, this is CVS, you can still go back, and wait until the transition
+       is finished, but here is patch one, which basicly breaks every command
+       which is typed on the prompt.
+       Hit me, we can still revert, but something needs to be done about this.
+       * (erc-extract-command-from-line): intern-soft the function here.
+       If the function symbol has a property 'do-not-parse-args, operate as before,
+       otherwise, split the arguments prior to calling the command handler.
+       * (erc-process-input-line): Updated to accomodate the change above.
+       * (erc-send-distinguish-noncommands): Ditto.
+       * (erc-cmd-NAMES): Ditto.
+       * (erc-cmd-ME): Put 'do-not-parse-args property.
+
+       * erc-dcc.el:nick:      * erc-dcc.el: * erc-dcc-list: Renamed 
+       * (erc-dcc-member). Treat :nick as either a nick!user@host or nick,
+       do appropriate comparisons, simplified.
+       * (erc-dcc-list-add): New functions
+       various callers of (cons (list ...) erc-dcc-list) updated.
+       Other stuff I'm to bored to document now
+
+2003-01-15  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-stamp.el(erc-insert-timestamp-right):
+       Removed redundant code that overrid the
+       window-width. Now substracts (length string) from every found
+       indentation positions.
+
+2003-01-14  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * (erc-cmd-AMSG): Remove useless call to erc-display-message.
+
+       * erc-dcc.el:
+       * erc-dcc-chat/send-request: New variables, control how to treat
+       incoming dcc chat or send requests. Can be set to 'ask, which behaves
+       like it did before, 'auto, which accepts automatically, and
+       'ignore, which ignores those type of requests completely.
+       * (erc-cmd-CREQ): New user-level command.
+       * (erc-cmd-SREQ): Ditto.
+
+       * erc.el: * (erc-cmd-AMSG). New command.
+
+       * erc-xdcc.el: * (erc-xdcc): delete empty strings from ARGS
+
+       * erc-dcc.el: * erc-dcc-ipv4-regexp: New constant
+       * (erc-ip-to-decimal): Use it.
+       * erc-dcc-host:valid-regexp erc-dcc-ipv4-regexp:        * erc-dcc-host: :type
+       * (pcomplete/erc-mode/DCC): Add completion for GET and CLOSE.
+       * Some docstring/comment fixes.
+
+       * erc-stamp.el:
+       * (erc-insert-timestamp-right): Subtract (length string) from
+       POS in any case, otherwise, linewrap occurs.
+
+       * erc-dcc.el:
+       * Fixed the unibyte-multibyte problem (now a dcc get buffer is (set-buffer-multibyte nil), 
+         and saves correctly (tried with 21.3.50). Thanks to Eli for suggesting it!
+       * Added :start-time plist property/value to GET handling so that we can calculate elapsed-time.
+       * Some (unwind-protect (progn (set-buffer ...) ...)) constructs replaced with (with-current-buffer ...)
+
+2003-01-13  Mario Lang  <mlang@delysid.org>
+
+       * erc-xdcc.el:
+       * erc-xdcc-help-text: New variable which makes replies to the originator
+       much more flexible.
+       * erc-xdcc-help-format: Removed.
+       * (erc-xdcc-help): Handle the new variable.
+       * (erc-xdcc): Simplified
+
+       * erc-xdcc.el: * erc-xdcc-handler-alist: New variable.
+       * (erc-xdcc): Move code for list and send sub-commands into
+       * (erc-xdcc-help): New function.
+       * (erc-xdcc-list): New function.
+       * (erc-xdcc-send): New function.
+
+2003-01-12  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-server-JOIN):
+       Oops, send MODE command only when *we* joined a channel.
+
+       * erc.el:
+       Fixing ERCs behavior wrt IRCnet's !channels have a different name for
+       JOIN than in reality (e.g. you can join !forcertest or !!forcertest
+       and really get to !ABCDEforcertest)
+
+       (erc-cmd-JOIN): Removed erc-send-command MODE.
+       (erc-server-JOIN): Ask for MODE now.
+
+2003-01-12  Damien Elmes  <erc@repose.cx>
+
+       * erc-dcc.el:
+       (erc-dcc-get-filter), (erc-dcc-get-file): store size as a string, not an
+           integer. check size > 0 for the case where a size wasn't provided, since
+           string-to-int will return 0 on an empty string
+
+2003-01-12  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el: * Use RAWFILE arg with find-file-noselect
+       * Fix alist/plist conversion left-over
+       * Add verbose-info about sending blocks.
+
+2003-01-11  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el: * (pcomplete-erc-mode/DCC): Fixes
+
+       * erc-xdcc.el: Initial version.
+
+       * erc-pcomplete.el:
+       * (erc-pcomplete): Fix so that cycle-completion works again.
+       * (pcomplete-parse-erc-arguments): If there is a space after the last word
+       before point, we need to return a "" arg, and it's position.
+
+       * erc-dcc.el: Fix to pcomplete/erc-mode/DCC
+
+       * erc-dcc.el: * (pcomplete/erc-mode/DCC): New function
+
+       * erc-dcc.el: *** empty log message ***
+
+       * erc-dcc.el: Move code around, just basic changes
+
+2003-01-11  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-stamp.el(erc-insert-timestamp-right):
+       Check wether erc-fill-column is
+       available before using it. Else default to fill-column or if
+       everything else fails, the window width of the current window. For the
+       fill-columns, use them directly as the starting position for the
+       timestamp.
+
+2003-01-11  Andreas Fuchs  <asf@void.at>
+
+       * erc-stamp.el:
+       erc-insert-timestamp-right: use correct window's window-width. If
+                         buffer is not in a window, use erc-fill-column.
+
+2003-01-11  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el:   * erc-dcc.el: * (erc-dcc-do-LIST-command): Fix 
+
+       * erc-dcc.el:
+       * buffer-local variables erc-dcc-sent-marker and erc-dcc-send-confirmed marker removed
+         Keep This info in erc-dcc-member :sent and :confirmed plist values
+       * :     * :buffer plist for :type 'SEND removed, since we can get this with (marker-buffer 
+       * erc-dcc-send-connect-hook: New hook, defaults to erc-dcc-send-block and erc-dcc-send-conntected, which now prints a msg...
+
+       * erc-dcc.el:
+       * (erc-dcc-chat-accept): Renamed from erc-dcc-chat. Callers updated.
+       * (erc-dcc-chat): Renamed from erc-dcc-chat-request.
+       Callers updated, and interactive form added.
+       * (erc-dcc-server-accept): No longer do any type-specific stuff.
+       * (erc-dcc-chat-sentinel): Call erc-dcc-chat-setup if event is "open from "
+       from here, otherwise call erc-dcc-chat-close.
+
+       * (
+
+       * erc-dcc.el: *** empty log message ***
+
+       * erc-dcc.el: Moved some functions around.
+       Doc string fixes.
+       "/dcc send nick filename" works now
+
+2003-01-11  Alex Schroeder  <alex@gnu.org>
+
+       * erc.el(erc-send-command): Fixed flood protect message.
+
+       * erc-button.el(erc-button-syntax-table): Make `-' a legal nick
+       constituent.
+
+2003-01-10  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el: Some more steps toward dcc send.
+
+2003-01-10  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc-notify.el(erc-notify-timer):
+       Changed to make it IRC-case-insensitive when comparing nicks.
+       (erc-notify-JOIN): Changed to make it IRC-case-insensitive when comparing nicks.
+       (erc-notify-NICK): Changed to make it IRC-case-insensitive when comparing nicks.
+       (erc-notify-QUIT): Changed to make it IRC-case-insensitive when comparing nicks.
+       (erc-cmd-NOTIFY): Now "/notify -l" lists the nicks on your notify list.  Now
+           when you remove a nick from your notify list, you no longer recieve a spurious
+           signoff notification for that nick.  Changed to make it IRC-case-insensitive when
+           comparing nicks.
+
+       * erc.el(erc-ison-p):
+       Fixed so it calls erc-member-ignore-case instead of member.
+
+       * erc.el(erc-member-ignore-case):
+       New function.  Just like member-ignore-case, but obeys
+           the IRC protocol case matching rules.
+
+2003-01-10  Damien Elmes  <erc@repose.cx>
+
+       * erc-dcc.el:
+       (erc-dcc-do-GET-command), (erc-dcc-get-file): use the plist syntax, this
+           fixes dcc get again
+
+2003-01-10  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el: erc-complete-functions: New variable.
+       erc-mode-map: Bind \t to 'erc-complete-word
+       erc-complete-word: New function.
+
+       * erc-pcomplete.el(erc-pcomplete-mode):
+       Use new erc-complete-functions
+       (erc-pcomplete): Check that we're in the input line, else return nil.
+
+       * erc-button.el(erc-button-mode): Use new erc-complete-functions
+       erc-button-old-tab-command: Removed.
+       (erc-button-next-or-old): Removed
+       (erc-button-next): check that we're not in the input line, else just return nil.
+
+2003-01-10  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el: cleanup
+
+       * erc-dcc.el:
+       * (erc-dcc-chat-request): No longer use erc-send-ctcp-message.
+
+       * erc-dcc.el:
+       * (erc-dcc-no-such-nick): Also call delete-process if we have a peer already
+
+       * erc-dcc.el:
+       * (erc-dcc-no-such-nick): New function, server event handler for event 401.
+       If we send a CTCP message requesting something dcc related, we set up an
+       entry in erc-dcc-list before sending the request (for the server proc object
+       for listening conns for example).  But if that nick does not exist
+       on that server, we now nicely cleanup erc-dcc-list again.
+
+2003-01-09  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el: Moved code around a bit, and doc fixes
+
+       * erc-dcc.el: *** empty log message ***
+
+       * erc-dcc.el: Rename erc-dcc-plist to erc-dcc-list
+
+2003-01-09  Damien Elmes  <erc@repose.cx>
+
+       * erc-dcc.el(erc-dcc-server (erc-dcc-chat-setup):
+       use erc's (erc-setup-buffer) to determine how to
+           display new DCC windows
+       (erc-dcc-chat-buffer-killed): buffer-local hook for DCC buffers to close the
+           process
+       (erc-dcc-chat-close): code common to a killed buffer or a disconnection from
+           the other side
+       (erc-dcc-chat-sentinel): use (erc-dcc-chat-close)
+       (erc-dcc-server-accept): use (erc-log) instead of (message)
+
+       * erc.el:
+       (erc), (erc-setup-buffer): factor out window generation code so DCC can use
+           it too
+
+       * erc-dcc.el:
+       (erc-dcc-do-CLOSE-command), (erc-dcc-do-LIST-command): work with erc-dcc-plist
+
+       * erc-dcc.el:
+       erc-dcc-alist: became erc-dcc-plist, so we can more easily grab particular
+           properties
+       dcc catalog: unify use of DCC: and [dcc] (either's fine, but let's be
+           consistent)
+       (erc-dcc-member): takes an arbitrary list of constraints now
+       (erc-dcc-proc-member): removed, as (erc-dcc-member) can be used for this
+       (erc-dcc-do-CHAT-command): use the catalog to show the user what's going on
+       (erc-dcc-chat-server): removed
+       (erc-dcc-server): takes name sentinel and filter arguments, can be used for
+           both send and chat now
+
+       .. this release means all send/get support is broken until we fix up the
+       things that still expect to be using an alist. this include /dcc list, /dcc
+       close
+
+2003-01-09  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc-ring.el(erc-previous-command):
+       If you have a partially typed input line and press M-p,
+           you lose what you typed.  Now we save it so you can come back to it.
+
+2003-01-09  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-ring.el(erc-add-to-input-ring): s/nullp/null/
+
+2003-01-09  Damien Elmes  <erc@repose.cx>
+
+       * erc-ring.el(erc-add-to-input-ring):
+       set up the ring if it's not already setup
+
+       * erc-dcc.el(erc-dcc-member): case insensitive match of nicknames
+       (erc-dcc-do-CHAT-command): echo what we're doing (at least for now)
+
+2003-01-09  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el: (temporarily) fix erc-process setting...
+
+       * erc-dcc.el: * (erc-dcc-chat-send-line): Removed
+
+       * erc.el:
+       Check if target is stringp (we can now also have 'dcc as value...)
+
+       * erc-dcc.el(erc-dcc-chat-send-input-line):
+       New function, used for
+       erc-send-input-line-function.
+       Use erc-send-current-line now.
+
+       * erc-dcc.el: evt to elt...
+
+       * erc-dcc.el: Remove () from a var (how silly!)
+
+       * erc-dcc.el: * (erc-dcc-get-host): Use format-network-address.
+       * (erc-dcc-host): Change semantic.  If erc-dcc-host is set, use it.
+       Otherwise, try to figure out the host by calling erc-dcc-get-host.
+       * (erc-dcc-server-port): New variable.
+       * erc-dcc-chat-log: Renamed to erc-dcc-server-accept
+
+       * erc-dcc.el(erc-dcc-do-CHAT-command):
+       Change arg of call to erc-dcc-chat-request from elt to nick
+
+2003-01-09  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-send-current-line):
+       Now rejects multi-line commands (i.e., lines that
+           start with "/" and contain newlines).
+
+2003-01-09  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-button.el:
+       Functionality to use TAB to jump to the next button:
+
+       (erc-button-next-or-old): New function.
+       (erc-button-next): New function.
+       erc-button-keymap: added erc-button-next
+       erc-button-old-tab-command: New variable.
+       define-erc-module button: Add and remove 'erc-button-next-or-old as
+       appropriate.
+
+2003-01-09  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el:
+       New variable: erc-auto-reconnect (defaults to t).  If non-nil, ERC will
+           automatically reconnect to a server after an unexpected disconnection.
+       (erc-process-sentinel): Changed to refer to variable erc-auto-reconnect.
+
+2003-01-08  Mario Lang  <mlang@delysid.org>
+
+       * erc.el:
+       * erc-send-input-line-function: New variable, used for dispatch...
+
+2003-01-08  Damien Elmes  <erc@repose.cx>
+
+       * erc-dcc.el(erc-dcc-chat-sentinel):
+       check event type before killing process
+       (erc-dcc-chat-log): new, handles the setup of dcc chats for incoming
+           connections
+       (erc-dcc-chat): use (erc-dcc-chat-setup)
+       (erc-dcc-chat-setup): code common to incoming and outgoing DCC chats
+       (erc-dcc-chat-request): request a DCC chat with another user
+       (erc-dcc-proc-member): locate a member in erc-dcc-alist by process
+
+       The very first ERC to ERC DCC chat was held between delysid and resolve today!
+
+2003-01-08  Mario Lang  <mlang@delysid.org>
+
+       * erc-track.el(erc-all-buffer-names):
+       Check for erc-dcc-chat-mode too
+
+2003-01-08  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc-ring.el, erc.el(erc-kill-input):
+       Resets erc-input-ring-index to nil, so that invoking this
+           command conceptually puts you after your most recent input in the input
+           history.
+       (erc-previous-command and erc-next-command): Changed so that history movement
+           is more intuitive.  Also preserves the blank input line that marks the
+           place after the newest command in the history ring (i.e., you'll see a
+           blank command once every trip around the ring in either direction).
+
+2003-01-08  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el(erc-dcc-chat): Add docstring
+       Add self-test.
+       Fix error if /dcc chat nick doesnt find the nick
+
+2003-01-08  Francis Litterio  <franl@users.sourceforge.net>
+
+       * Makefile:
+       Changed so that "make" works correctly under Cygwin.  Before this change, the
+       pathname passed to Emacs on the command line under Cygwin had the form
+       "/cygwin/c/...", which prevented emacs from finding the file.  Now the pathname
+       has the form "c:/...".  This works for any drive letter.
+
+2003-01-08  Mario Lang  <mlang@delysid.org>
+
+       * erc-button.el: reindent some code, and add TODO to comments
+
+       * erc-dcc.el: *** empty log message ***
+
+       * erc-dcc.el: Make dcc-chat-ended a notice
+       Remove now bogus comment
+
+2003-01-08  Damien Elmes  <erc@repose.cx>
+
+       * erc-dcc.el(erc-pack-int): from erc-packed-int
+       (erc-unpack-int): new
+
+       * erc-dcc.el(erc-unpack-str): added
+
+2003-01-08  Mario Lang  <mlang@delysid.org>
+
+       * erc.el(erc-server-482):
+       New handler, handles KICK reply if you're not channel-op
+
+       * erc-dcc.el: Document SEND in erc-dcc-alist.
+       Move sproc, parent-proc and file into erc-dcc-alist
+
+       * erc-dcc.el: stubs
+
+       * erc-dcc.el(erc-dcc-get-host):
+       Change :iface to :local since Kim committed it now to CVS emacs
+
+       * erc-dcc.el(erc-dcc-get-host):
+       New function, requires the not-yet-in-CVS-emacs local-address.patch to process.c.
+       Some other minor additions
+
+2003-01-08  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc-cmd-IGNORE):
+       Now returns t to prevent "Bad syntax" error.
+       (erc-cmd-UNIGNORE): Now returns t to prevent "Bad syntax" error.
+       (erc-server-PRIVMSG-or-NOTICE): Capitalized first word in message to user.
+
+       * erc.el(erc-scroll-to-bottom):
+       Temporarilly bind resize-mini-windows to nil so that
+           users who have it set to a non-nil value will not suffer from premature
+           minibuffer shrinkage due to the below recenter call.  I have no idea why
+           this works, but it solves the problem, and has no negative side effects.
+
+2003-01-07  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc-dcc.el:
+       erc-dcc-ctcp-query-chat-regexp: The IP is not really an IP, but a
+       number (no . allowed there).
+       (erc-dcc-send-ctcp-string): use let* here to avoid cluttering up the
+       match data.
+       Also, use erc-decimal-to-ip to get the IP.
+       (erc-ip-to-decimal): Removed some pasted ERC timestamps
+       (erc-decimal-to-ip): New function.
+       erc-dcc-chat-mode-map: Return map in the initialization.
+
+2003-01-07  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc-match.el(erc-match-fool-p):
+       Changed to call erc-match-directed-at-fool-p instead of
+            erc-directed-at-fool-p.
+
+2003-01-07  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el(erc-cmd-DCC):
+       Change (cond ... (t nil)) to (when ...)
+
+       * erc-dcc.el: Use erc-current-nick-p
+
+2003-01-07  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el:
+       erc-join-buffer: Added 'window-noselect to docstring and :type.
+       erc-auto-query: Added 'window-noselect to :type.
+       (erc): Treat erc-join-buffer being 'window-noselect appropriately.
+
+       * erc.el(erc-current-nick-p): New function.
+       (erc-nick-equal-p): New function.
+       (erc-already-logged-in), (erc-server-JOIN), (erc-auto-query),
+       (erc-server-PRIVMSG-or-NOTICE): Use erc-current-nick-p.
+       (erc-update-channel-member): Use erc-nick-equal-p.
+
+       * erc-match.el(erc-match-current-nick-p):
+       Renamed from erc-current-nick-p
+       (erc-match-pal-p): Renamed from erc-pal-p
+       (erc-match-fool-p): Renamed from erc-fool-p
+       (erc-match-keyword-p): Renamed from erc-keyword-p
+       (erc-match-dangerous-host-p): Renamed from erc-dangerous-host-p
+       (erc-match-directed-at-fool-p): Renamed from erc-directed-at-fool-p
+       (erc-match-message): Use erc-match-TYPE-p instead of erc-TYPE-p
+
+       * erc.el:
+       Support for IRCnets' "nick/channel temporarily unavailable"
+
+       (erc-nickname-in-use): New function (mostly copied from erc-server-433).
+       (erc-server-433): Use erc-nickname-in-use
+       (erc-server-437): New function.
+       erc-server-hook-list: Added (437 erc-server-437).
+
+2003-01-07  Mario Lang  <mlang@delysid.org>
+
+       * erc-fill.el: Add autoload cookie
+
+       * erc-notify.el:
+       Now also pass SERVER argument to signon/off hooks, and provide a erc-notify-signon/off function for echo-area printing
+
+       * erc-notify.el(erc-notiy-QUIT):
+       Change use of delq to delete, delq does not work with strings
+
+2003-01-06  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-ctcp-query-VERSION):
+       v%s -> %s, so we are no longer vVersion...
+
+2003-01-06  Mario Lang  <mlang@delysid.org>
+
+       * erc.el: Small change to erc-ison-p, and fixme tag
+
+2003-01-06  Francis Litterio  <franl@users.sourceforge.net>
+
+       * erc.el(erc):
+       Fixed bug where variable "away" would be nil in new channel buffers
+              even if the user is away when joining the channel.
+       (erc-strip-controls): Fixed a bug where erc-strip-controls accidentally
+              removed all text properties from the string.
+
+2003-01-06  Mario Lang  <mlang@delysid.org>
+
+       * erc-dcc.el:
+       Some stub functions, some code, nothing really works yet
+
+       * erc.el(erc-ison-p): New function
+
+       * erc-dcc.el: Some functions which will be needed for dcc send
+
+       * erc-dcc.el(erc-ip-address-to-decimal):
+       New function, thanks lawrence
+
+       * erc-dcc.el: Again, simplify code, fix stuff, DCC CHAT works now
+
+       * erc-dcc.el: Many fixes, chat nearly works now
+
+       * erc-netsplit.el: Also detect fast netsplit/joins
+
+       * erc-dcc.el: some more fixes
+
+       * erc-dcc.el: Fixup stage 1, now dcc get works
+
+       * erc-dcc.el: make /dcc LIST work
+
+       * erc-dcc.el:
+       Initial checkin, dont use it!  its really far from complete.  Hackers: help!
+
+       * erc-notify.el:
+       New function erc-notify-NICK, and added signon/off hooks which were missing
+
+2003-01-05  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el(erc-truncate-buffer-to-size):
+       set inhibit-read-only to t for the
+       deletion. This is usually done by the function calling the hook, but
+       not if it's called interactively. Also, rewrote some weird if/if
+       combination.
+
+       * erc-track.el(erc-track-shortennames):
+       Documentation fix (erc-all-buffers is really
+       erc-all-buffer-names)
+
+       These changes make server buffers be tracked as well, as there are
+       quite a few interesting things going on there (e.g. CTCP etc.)
+       (erc-all-buffer-names): Check for (eq major-mode 'erc-mode) instead of
+       erc-default-recipients.
+       (erc-track-modified-channels): Don't require a default target (e.g.,
+       this-channel being non-nil)
+
+2003-01-03  Damien Elmes  <erc@repose.cx>
+
+       * erc.el:
+       erc-auto-query: can now be set to a symbol to control how new messages should
+           be popped up (or not popped up, as the case may be)
+       (erc-query): new function which handles the bulk of what (erc-cmd-QUERY) did
+           previously
+       (erc-cmd-QUERY): use (erc-query)
+       (erc-auto-query): use (erc-query)
+
+       * erc.el(erc-current-logfile):
+       Downcase result of log generation function, as IRC is
+       case insensitive. Fixes problems where "/query user" results in a different
+       log file to a query from "User". Avoided adding an extra flag to control this
+       behavior - if you think this was the wrong decision, please correct it and
+       I'll remember it for next time.
+
+See ChangeLog.02 for earlier changes.
+
+    Copyright (C) 2003 Free Software Foundation, Inc.
+  Copying and distribution of this file, with or without modification,
+  are permitted provided the copyright notice and this notice are preserved.
+
+;; Local Variables:
+;; coding: utf-8
+;; End:
+
+;; arch-tag: 808865e1-3cce-4c5b-9997-95a8b7a9d384
diff --git a/lisp/erc/ChangeLog.04 b/lisp/erc/ChangeLog.04
new file mode 100644 (file)
index 0000000..3ab41db
--- /dev/null
@@ -0,0 +1,2080 @@
+2004-12-29  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc-goodies.el (erc-interpret-controls-p): Changed docstring to
+       reflect the new meaning if this is set to 'remove.
+       (erc-controls-interpret): Rephrased docstring to be more accurate.
+       (erc-controls-strip): New function that behaves like the
+       recently-removed erc-strip-controls -- it removes all IRC color
+       and highlighting control characters.
+       (erc-controls-highlight): Changed to support the new 'remove value
+       that variable erc-interpret-controls-p might have.
+
+2004-12-28  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc-ibuffer.el, erc-list.el, erc-page.el, erc-speedbar.el:
+       Changed all calls to erc-interpret-controls (which no longer
+       exists) to call erc-controls-interpret (the new name of the same
+       function).
+
+2004-12-28  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc-goodies.el (erc-controls-interpret): Added this function to
+       replace the recently-removed erc-interpret-controls.  Also added
+       a (require 'erc) to solve a byte-compile problem.
+
+2004-12-28  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el (erc-controls-interpret): Added this function to replace
+       the recently-removed erc-interpret-controls.
+
+2004-12-27  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-truncate.el (erc-truncate-buffer-to-size): Check for
+       logging even better (via lawrence).
+
+2004-12-26  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-truncate.el (erc-truncate-buffer-to-size): Much saner
+       logging detection (via lawrence).
+
+2004-12-25  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-goodies.el (erc-controls-highlight): Treat single C-c
+       correctly.
+
+2004-12-24  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-goodies.el, erc.el: Deleted IRC control character processing
+       and implemented a sane version in erc-goodies.el as a module.
+
+       * erc.el (erc-merge-controls, erc-interpret-controls,
+       erc-decode-controls, erc-strip-controls, erc-make-property-list,
+       erc-prepend-properties): Removed.
+
+       (erc-interpret-controls-p, erc-interpret-mirc-color, erc-bold-face
+       erc-inverse-face, erc-underline-face, fg:erc-color-face0,
+       fg:erc-color-face1, fg:erc-color-face2, fg:erc-color-face3,
+       fg:erc-color-face4, fg:erc-color-face5, fg:erc-color-face6,
+       fg:erc-color-face7, fg:erc-color-face8, fg:erc-color-face9,
+       fg:erc-color-face10, fg:erc-color-face11, fg:erc-color-face2,
+       fg:erc-color-face13, fg:erc-color-face14, fg:erc-color-face15,
+       bg:erc-color-face1, bg:erc-color-face2, bg:erc-color-face3,
+       bg:erc-color-face4, bg:erc-color-face5, bg:erc-color-face6,
+       bg:erc-color-face7, bg:erc-color-face8, bg:erc-color-face9,
+       bg:erc-color-face10, bg:erc-color-face11, bg:erc-color-face2,
+       bg:erc-color-face13, bg:erc-color-face14, bg:erc-color-face15,
+       erc-get-bg-color-face, erc-get-fg-color-face,
+       erc-toggle-interpret-controls): Moved.
+
+       * erc-goodies.el (erc-beep-p, irccontrols, erc-controls-highlight,
+       erc-controls-propertize): New.
+
+2004-12-24  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-goodies.el, erc.el: The Small Extraction of Stuff[tm] commit.
+        Moved some functions from erc.el to erc-goodies.el, and
+       transformed them to erc modules in the process.
+       - imenu autoload stuff moved. I don't know why it is here at all.
+       - Moved: scroll-to-bottom, make-read-only, distinguish-noncommands,
+       smiley,   unmorse, erc-occur (the last isn't a module, but still
+       moved)
+       (erc-input-line-position, erc-add-scroll-to-bottom,
+       erc-scroll-to-bottom, erc-make-read-only, erc-noncommands-list,
+       erc-send-distinguish-noncommands, erc-smiley, erc-unmorse,
+       erc-occur): Moved from erc.el to erc-goodies.el.
+       (smiley): Module moved from erc.el to erc-goodies.el.
+       (scrolltobottom, readonly, noncommands, unmorse): New modules.
+
+2004-12-20  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el: (erc-format-away-status): Use `a', not `away' - that's
+       why it's there.
+       (erc-update-mode-line-buffer): The values of `mode-line-process'
+       and `mode-line-buffer-identification' are normally lists.
+       Conform.
+
+2004-12-18  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: (erc-process-ctcp-query, erc-process-ctcp-reply): Display
+       message in the active window, not the server window.
+
+2004-12-16  Edward O'Connor <ted@oconnor.cx>
+
+       * erc-track.el (erc-track-position-in-mode-line): Check for
+       'erc-track-mode variable with boundp. From Adrian Aichner
+       <adrian@xemacs.org>.
+
+2004-12-16  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-upcase-first-word): New function. The old way used
+       in erc-send-ctcp-message would eat consecutive whitespace etc.
+       (erc-send-ctcp-message, erc-send-ctcp-notice): Use it.
+
+2004-12-15  Edward O'Connor <ted@oconnor.cx>
+
+       * erc.el (erc-send-ctcp-message): Fix braino with my previous
+       patch. It always helps to C-x C-s before `cvs commit'.
+
+2004-12-15  Edward O'Connor <ted@oconnor.cx>
+
+       * erc.el (erc-send-ctcp-message): Only upcase the ctcp command,
+       and not the entire message. Brian Palmer's change of 2004-12-12 had broken /me.
+       Shouting is bad! :)
+
+2004-12-14  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-nets.el (erc-networks-alist): Change undernet to Undernet as
+       is used in `erc-server-alist', so that completion works when using
+       `erc-server-select'.  This should fix Debian bug #282003 (erc:
+       cannot connect to Undernet).
+
+2004-12-14  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-backend.el: (def-edebug-spec): Only run this if 'edebug is
+       available.
+
+2004-12-14  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el: The last change to `erc-mode-line-format' introduced a
+       bug in Xemacs - it can't handle the #(" "...) strings at all.  The
+       following changes fix the bug and simplify the mode-line handling
+       considerably.  (erc-mode-line-format): Now defined as a string
+       which will be formatted using `format-spec' and take the place of
+       `mode-line-buffer-identification' in the mode line.
+       (erc-header-line-format): Now defined as a string to be formatted
+       using `format-spec'.
+       (erc-prepare-mode-line-format): Removed.
+       (erc-format-target, erc-format-target-and/or-server,
+       erc-format-away-status, erc-format-channel-modes): New functions.
+       Basically the old `erc-prepare-mode-line-format' split apart.
+       (erc-update-mode-line-buffer): Set
+       `mode-line-buffer-identification' to the formatted
+       `erc-mode-line-format', set `mode-line-process' to ": CLOSED" if
+       the connection has been terminated, and set `header-line-format'
+       (if it is bound) to the formatted `erc-header-line-format', then
+       do a `force-mode-line-update'.
+
+2004-12-12  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-modules): Disable modules removed with `customize'.
+       (erc-update-modules): Try to give a more descriptive error
+       message.
+
+2004-12-12  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-complete.el, erc.el, erc-list.el, erc-nets.el,
+       erc-nicklist.el, erc-pcomplete.el, erc-replace.el, erc-speak.el,
+       erc-truncate.el: (erc-buffers, erc-coding-systems, erc-display,
+       erc-mode-line-and-header, erc-ignore, erc-query,
+       erc-quit-and-part, erc-paranoia, erc-scripts, erc-old-complete,
+       erc-list, erc-networks, erc-nicklist, erc-pcomplete, erc-replace,
+       erc-truncate): New customization groups.  (erc-join-buffer,
+       erc-frame-alist, erc-frame-dedicated-flag, erc-reuse-buffers): Use
+       'erc-buffers as `:group'.  (erc-default-coding-system,
+       erc-encoding-coding-alist): Use 'erc-coding-systems as `:group'.
+       (erc-hide-prompt, erc-show-my-nick, erc-prompt,
+       erc-input-line-position, erc-command-indicator, erc-notice-prefix,
+       erc-notice-highlight-type, erc-interpret-controls-p,
+       erc-interpret-mirc-color, erc-minibuffer-notice,
+       erc-format-nick-function): Use 'erc-display as `:group'.
+       (erc-mode-line-format, erc-header-line-format,
+       erc-header-line-uses-help-echo-p, erc-common-server-suffixes,
+       erc-mode-line-away-status-format): Use 'erc-mode-line-and-header
+       as `:group'.
+       (erc-hide-list, erc-ignore-list, erc-ignore-reply-list,
+       erc-minibuffer-ignored): Use 'erc-ignore as `:group'.
+       (erc-auto-query, erc-query-on-unjoined-chan-privmsg,
+       erc-format-query-as-channel-p): Use 'erc-query as `:group'.
+       (erc-kill-buffer-on-part, erc-kill-queries-on-quit,
+       erc-kill-server-buffer-on-quit, erc-quit-reason-various-alist,
+       erc-part-reason-various-alist, erc-quit-reason, erc-part-reason):
+       Use 'erc-quit-and-part as `:group'.
+       (erc-verbose-server-ping, erc-paranoid, erc-disable-ctcp-replies,
+       erc-anonymous-login, erc-show-channel-key-p): Use 'erc-paranoia as
+       `:group'.
+       (erc-startup-file-list, erc-script-path, erc-script-echo): Use
+       'erc-scripts as `:group'.
+       (erc-nick-completion, erc-nick-completion-ignore-case,
+       erc-nick-completion-postfix): Use 'erc-old-complete as `:group'.
+       (erc-chanlist-progress-message, erc-no-list-networks,
+       erc-chanlist-frame-parameters, erc-chanlist-hide-modeline,
+       erc-chanlist-mode-hook): Use 'erc-list as `:group'.
+       (erc-server-alist, erc-networks-alist): Use 'erc-networks as
+       `:group'.
+       (erc-settings): Use `defvar' instead of `defcustom' since this is
+       only a draft which doesn't work.
+       (erc-nicklist-window-size): Use 'erc-nicklist as `:group'.
+       (erc-pcomplete-nick-postfix,
+       erc-pcomplete-order-nickname-completions): Use 'erc-pcomplete as
+       `:group'.
+       (erc-replace-alist): Use 'erc-replace as `:group'.
+       (erc-speak-filter-timestamp): Use 'erc-speak as `:group'.
+       (erc-max-buffer-size): Use 'erc-truncate as `:group'.
+
+2004-12-12  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-scroll-to-bottom): Go to the end of the buffer
+       before recentering. This allows editing multiple lines more
+       conveniently in CVS Emacs. This also undos a change by antifuchs
+       who said this goto-char would mess up redisplay. Extensive testing
+       couldn't reproduce that problem.
+
+2004-12-12  Brian Palmer <bpalmer@gmail.com>
+
+       * erc.el (erc-send-ctcp-message): upcase the ctcp message (so that
+       version becomes VERSION, for example).
+       (erc-iswitchb): Make the argument optional in non-interactive
+       invocation, so erc-iswitchb can be substituted directly for
+       iswitchb in code.
+
+2004-12-11  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-track.el (erc-track-position-in-mode-line): Allow for the
+       fact that `erc-track-mode' isn't bound when file is loaded.
+
+2004-12-11  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-track.el (erc-track-position-in-mode-line): New customizable
+       variable.  (erc-track-remove-from-mode-line): New function.
+       Remove `erc-modified-channels-string' from the mode-line.
+       (erc-track-add-to-mode-line): New function.  Add
+       `erc-modified-channels-string' to the mode-line using the value of
+       `erc-track-position-in-mode-line' to determine whether to add it
+       to the beginning or the end of `mode-line-modes' (only available
+       with GNU Emacs versions above 21.3) or to the end of
+       `global-mode-string'.
+       (erc-track-mode, erc-track-when-inactive-mode): Use the new
+       functions.
+
+2004-12-11  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: (erc-cmd-BANLIST): Use (buffer-name) and not
+       (erc-default-target) for the buffer name - buffer names are case
+       sensitive.
+
+2004-12-11  Brian Palmer <bpalmer@gmail.com>
+
+       * erc.el (erc-message-type): Added the message "MODE" to the known
+       erc-message-type widget, so that (for example) people can tell
+       erc-track-exclude-types to ignore mode changes. The others tag
+       also needed to be made an inline list, so that it's merged with
+       the given constants, instead of being inserted as a list.
+
+2004-12-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-track.el, erc.el: Update to get ERC look nicely in CVS Emacs.
+
+       * erc.el (erc-mode-line-format): When on CVS emacs, use the new
+       format.
+
+       * erc-track.el (track module): When on CVS emacs, modify
+       mode-line-modes instead of global-mode-string. The latter is way
+       to far too the right.
+
+2004-11-18  Mario Lang <mlang@delysid.org>
+
+       * Makefile, debian/changelog: debian release 20041118-1
+
+2004-11-03  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-button.el (erc-button-buttonize-nicks): Set default value to
+       `t'.  Updated documentation and customization `:type' to reflect
+       usage.
+
+2004-10-29  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * AUTHORS: Added self.
+
+2004-10-17  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-list.el: Added local variables for this file.
+       (erc-list-version): New.
+       (erc-cmd-LIST): Take &rest rather than &optional arguments, as was
+       done in revision 1.21.  Allow for input when called interactively.
+       (erc-prettify-channel-list, erc-chanlist-toggle-sort-state): Use
+       `unless' instead of when not.
+
+2004-10-17  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-backend.el (erc-handle-unknown-server-response): Fixed so
+       that the contents are only shown once. (MOTD): Display lines in
+       the server buffer if it's the first MOTD sent upon connection.
+       This is to avoid the problem of having the MOTD of one server
+       showing up in another server's buffer if it took a while to get
+       connected.
+       (004): Fixed to show the user modes and channel modes correctly.
+       (303): Now displays the nicknames returned by ISON instead of the
+       user's nickname.
+       (367, 368): Moved up into 300's section of the code.  Added
+       documentation.  Use `multiple-value-bind' to set variables in 367.
+       (391): Fixed so that the server name is shown correctly.
+
+2004-10-17  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-process-sentinel): Use CPROC instead of
+       `erc-process' in debug message.  Should fix a bug where an error
+       saying "Buffer *scratch* has no process" would occur when
+       disconnected.
+       (erc-cmd-SV): Check for X toolkit after checking for more specific
+       features.  (erc--kill-server): Set `quitting' to non-nil so that
+       we don't automatically reconnect.
+
+2004-10-05  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: (erc-ignored-user-p): Don't require regexes to match the
+       beginning.
+
+2004-09-11  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: group erc: Moved to 'applications (patch by bojohan)
+
+2004-09-08  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-button.el: (erc-button-remove-old-buttons): Remove 'keymap
+       not 'local-map.
+
+2004-09-03  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-backend.el: JOIN response handler: Typo fix of the last
+       commit.
+
+2004-09-03  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-backend.el: JOIN response handler: Run `erc-join-hook'
+       without arguments as specified in the docstring.
+
+2004-08-27  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-send-current-line): Removed unused variable SENTP.
+
+2004-08-19  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: ERC-SEND-COMPLETED-HOOK used to be run when the prompt
+       was already displayed. We restore this behavior (thanks to bojohan
+       and TerryP for noticing). We also fix the docstring of
+       ERC-SEND-COMPLETED-HOOK, since the hook is (and used to be) called
+       even if nothing was sent to the server.
+       (erc-send-completed-hook): Fixed docstring.
+       (erc-send-current-line): Add incantation for
+       erc-send-completed-hook.
+       (erc-send-input): Remove incantation for erc-send-completed-hook.
+
+2004-08-18  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-backend.el: response-handler 368: Use s368, not s367.
+
+2004-08-17  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-scroll-to-bottom): Don't scroll when we're not
+       connected anymore.
+
+2004-08-17  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-backend.el, erc.el: Handle /mode #emacs b output without
+       errors and such. First, handle unknown format specs gracefully
+       (that is, give a useful error). Then, provide handlers for the
+       banlist replies.
+
+       * erc-backend.el: New handler for 367 and 368. Removed from default
+       handler.
+
+       * erc.el: Provide english catalog for s367 and s368.
+       (erc-format-message): Give an error message when we don't find an
+       entry.
+
+2004-08-17  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-fill.el: erc-fill-variable could be confused about really
+       long nicks. We put an upper limit on the length of the fill prefix.
+       (erc-fill-variable): Adjust fill-prefix.
+       erc-fill-variable-maximum-indentation: New variable.
+
+2004-08-17  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el (erc-send-input): Fixed a bug where this function
+       referenced variable "input" instead of variable "str".
+
+2004-08-16  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc-list.el (erc-chanlist-highlight-line): Fixed a bug where
+       this function failed to set the correct face for highlighting the
+       current line.
+
+2004-08-14  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-fill.el (erc-fill-variable): Don't fuck up when the
+       looking-at didn't work.
+
+2004-08-14  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-send-single-line): Call the hooks to change the
+       appearance for something only if we actually inserted something,
+       doh.
+       (erc-display-command): Display the prompt outside of the area that
+       set the text properties on.
+
+2004-08-14  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: Refactored erc-send-current-line. This should fix some
+       dormant bugs, and make the whole thing actually readable. Yay.
+       Some changes in behavior were made. Whitespace at the end of lines
+       sent is not removed anymore, but that shouldn't bother anyone.
+       Additionally, errors in commands or hooks shouldn't prevent the
+       prompt from showing up again now.
+       (erc-parse-current-line): Removed.
+       (erc-send-current-line): Refactored.
+       (erc-send-input): New function.
+       (erc-send-single-line): New function.
+       (erc-display-command): New function.
+       (erc-display-msg): New function.
+       (erc-user-input): New function.
+
+2004-08-13  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-cmd-SERVER): Use newer keyword call interface to
+       erc-select, and handle the error if it can't resolve the host.
+
+2004-08-11  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-backend.el, erc.el: erc-backend.el (404 response handler):
+       New function. We now support "cannot send to channel".
+
+       * erc.el (erc-define-catalog call): Added s404. erc.el
+       (erc-ctcp-ECHO-reply, erc-ctcp-CLIENTINFO-reply,
+       erc-ctcp-FINGER-reply, erc-ctcp-PING-reply, erc-ctcp-TIME-reply,
+       erc-ctcp-VERSION-reply): Display reply in the active window, not
+       the server window.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-with-all-buffers-of-server): Actually make it left
+       to right, doh.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-with-all-buffers-of-server): Evaluate left-to-right
+       so we don't surprise a user.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-process-input-line): Parentophobia! Another
+       paren-fix.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-backend.el: PRIVMSG NOTICE response handler: Killed one paren
+       too much. Poor paren. Got resurrected.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-track.el: Make server buffers showing up in the mode line
+       optional. Thanks to Daniel Knapp on the EmacsWiki for this patch.
+
+       erc-track-exclude-server-buffer: New variable.
+       (erc-track-modified-channels): Return a server buffer only if
+       erc-track-exclude-server-buffer is nil.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: (erc-cmd-DESCRIBE): Don't parse arguments.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-truncate.el: (erc-truncate-buffer-to-size): Use
+       erc-insert-marker, not (point-max), to decide the length of the
+       buffer. A long input line shouldn't make the buffer smaller.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-macs.el, erc-members.el: The change to hashes for channel
+       members has been made some time ago.  Clean up the various tries to
+       do this in the past.
+
+       erc-macs.el: Removed.  erc-members.el: Removed.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-backend.el, erc-ibuffer.el, erc-members.el, erc.el: Nothing
+       big changed here. Really. Uhm, maybe the info-buffers are gone or
+       so.  Can't really remember. Don't worry, nothing important is
+       missing.
+
+       erc-speedbar.el looks nice btw, did you know?
+
+       Adjusted various places in erc.el, erc-backend.el, erc-ibuffer.el
+       and erc-members.el - too numerous to list here, sorry.
+
+       * erc.el: erc-use-info-buffers: Removed.  erc-info-mode-map:
+       Removed.
+       (erc-info-mode): Removed.
+       (erc-find-channel-info-buffer): Removed.
+       (erc-update-channel-info-buffer): Removed.
+       (erc-update-channel-info-buffers): Removed.
+
+       * erc-members.el: erc-update-member renamed to
+       erc-update-channel-member for better clarity.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: This change improves the help output on a bogus command
+       invocation. We display the command as it would be typed by the
+       user, not as it is seen by Emacs.
+
+       (erc-get-arglist): Is now called erc-function-arglist, and returns
+       now an arglist without the enclosing parens.
+       (erc-command-name): New function.
+       (erc-process-input-line): Pass the command name, not the function
+       name.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: (erc-process-input-line): Fix bug when the command
+       doesn't have an arglist or no documentation. Thanks bojohan again
+       :)
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-match.el: (erc-add-entry-to-list),
+       (erc-remove-entry-from-list): Update docstring, a TEST argument is
+       not given.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-with-buffer): Really fix this docstring.
+
+2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-with-buffer): Fix double evaluation in macro, and
+       fix docstring.
+
+2004-08-10  Brian Palmer <bpalmer@gmail.com>
+
+       * erc.el (erc-cmd-JOIN): Use erc-member-ignore-case instead of
+       member-ignore-case.
+
+2004-08-09  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc-backend.el: Define an "Edebug specification" for the
+       `define-erc-response-handler' macro. This means that one can step
+       through response handlers defined by this macro with edebug. Maybe
+       more macros would benefit from this?
+
+2004-08-09  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc-pcomplete.el (pcomplete/erc-mode/CTCP): New function.
+       Completion for the /CTCP command.  (erc-pcomplete-ctcp-commands):
+       New variable. List of ctcp commands.
+
+2004-08-09  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc-list.el: Clean up docstrings.
+       (erc-prettify-channel-list): Extend properties to cover the entire
+       line, including the newline, to make it look
+       better.
+       (erc-chanlist-highlight-line): Ditto.
+       (erc-chanlist-mode-hook): Make it a defcustom.
+
+2004-08-09  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-compute-full-name): Typo fix, should be full-name,
+       not name.
+
+2004-08-09  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc): Setup the buffer to be shown in a window at the
+       end of this function. This enables 'window-noselect to work
+       properly.
+       (erc, erc-send-current-line): Fix some
+       goto-char/open-line/goto-char to goto-char/insert.
+
+2004-08-08  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-parse-user): Live with bogus info from bouncers.
+
+2004-07-31  Brian Palmer <bpalmer@gmail.com>
+
+       * erc.el (erc-select): Change the docstring to reflect the new
+       arguments; include the arguments in the docstring for non-cvs
+       emacs. Change the parameters to call erc-compute-* instead of
+       using the erc-* variables directly.
+       (erc-compute-server): Made argument optional.
+       (erc-compute-nick): ditto.
+       (erc-compute-full-name): ditto.  (erc-compute-port): ditto.
+
+2004-07-30  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el: (erc-cmd-BANLIST): Fixed a bug where channel-banlist was
+       not reset to nil before fetching an updated banlist from the
+       server.
+
+2004-07-30  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el: (erc-cmd-BANLIST): Fixed a bug where the
+       'received-from-server property on variable channel-banlist was not
+       being reset to nil.  This fixes the symptom where one types
+       /BANLIST and sees "No bans for channel: #whatever" when you know
+       there are bans.
+
+2004-07-23  Brian Palmer <bpalmer@gmail.com>
+
+       * erc.el: (erc-select-read-args): Use erc-compute-nick to
+       calculate the default nickname
+
+2004-07-20  Brian Palmer <bpalmer@gmail.com>
+
+       * erc.el: (erc-process-sentinel-1): New function. This is an
+       auxiliary function refactored out of erc-process-sentinel to
+       decide a server buffer's fate (whether it should be killed, and
+       whether erc should attempt to auto-reconnect).  Michael Olson
+       <mwolson@gnu.org> helped with this.
+       (erc-kill-server-buffer-on-quit): New variable. Used in
+       erc-process-sentinel-1 to decide whether to kill a server buffer
+       when the user quit normally.
+       (erc-process-sentinel): Auxiliary function erc-process-sentinel-1
+       split out.  The function body has `with-current-buffer' wrapped
+       around it, to ensure separation of messages if multiple
+       connections were being made.  Use `if' instead of `cond' in places
+       where the decision is binary.  The last (useless, since the server
+       connection is closed) prompt in the server buffer is removed.
+       Color "erc terminated" and "erc finished" messages with
+       erc-error-face.  Mark the buffer unmodified so that, if not killed
+       automatically, the user is not prompted to save it.
+
+2004-07-16  Brian Palmer <bpalmer@gmail.com>
+
+       * erc.el (erc-select-read-args): New function. Prompts the user
+       for arguments to pass to erc-select and erc-select-ssl.
+       (erc-select): Use (erc-select-read-args) when called interactively
+       to get its arguments.  When non-interactively, use keyword
+       arguments.
+       (erc-select-ssl): Ditto.
+       (erc-compute-port): New function. Parallel to erc-compute-server,
+       but comes up with a default value for an IRC server's port.
+
+2004-07-16  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-match.el (erc-match-message): Quote the current nickname.
+
+2004-07-12  Brian Palmer <bpalmer@gmail.com>
+
+       * erc-list.el (erc-chanlist-mode): Remove explicit invocation of
+       erc-chanlist-mode-hook, since it's automatically invoked by
+       define-derived-mode
+
+2004-07-03  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-match.el (erc-match-current-nick-p): Quote current nick for
+       regexp parsing.
+
+2004-06-27  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc-nickserv.el (erc-nickserv-identify-mode): Fix erroneous
+       parentheses in call to `completing-read'.
+
+2004-06-23  Alex Schroeder <alex@gnu.org>
+
+       * Makefile (release): Depend on autoloads, and copy erc-auto.el
+       into the tarball.
+
+2004-06-14  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el (erc-log-irc-protocol): Fixed minor bug where each line
+       received from a server was logged as two lines (one with text and
+       one blank).
+
+2004-06-08  Brian Palmer <bpalmer@gmail.com>
+
+       * erc-list.el (erc-chanlist-frame-parameters): Made customizable.
+       (erc-chanlist-header-face): Changed to use defface with some
+       reasonable defaults instead of make-face, and removed the
+       associated -face variable.
+       (erc-chanlist-odd-line-face): Ditto.
+       (erc-chanlist-even-line-face): Ditto.
+       (erc-chanlist-highlight-face): New variable. Holds a face used for
+       highlighting the current line.
+       (erc-cmd-LIST): Use erc-member-ignore-case instead of
+       member-ignore-case.
+       (erc-chanlist-post-command-hook): Change to move the highlight
+       overlay instead of refontifying the entire buffer.
+       (erc-chanlist-dehighlight-line): Added to detach the highlight
+       overlay from the buffer.
+
+2004-05-31  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: erc-mode-line-format: Add column numbers.
+
+2004-05-31  Adrian Aichner <adrian@xemacs.org>
+
+       * erc-autojoin.el: Typo fix.
+
+       * erc-dcc.el (erc-dcc-do-GET-command): Use expand-file-name.
+       (erc-dcc-get-file): XEmacs set-buffer-multibyte compatibility.
+
+       * erc-log.el: Append `erc-log-setup-logging' to
+       `erc-connect-pre-hook' so that `erc-initialize-log-marker' is run
+       first (markers are needed by `erc-log-setup-logging').
+       (erc-enable-logging): Docstring fix.
+       (erc-log-setup-logging): Move `erc-log-insert-log-on-open' to (1-
+       (point-max)) when doing `erc-log-insert-log-on-open'.  Modified
+       version of a patch by Lawrence Mitchell.
+       (erc-log-all-but-server-buffers): Do `save-excursion' as well.
+       (erc-current-logfile): Pass buffer name as target
+       argument to `erc-generate-log-file-name-function' if
+       `erc-default-target' is nil.
+       (erc-generate-log-file-name-with-date): Use expand-file-name.
+       (erc-generate-log-file-name-short): Ditto.
+       (erc-save-buffer-in-logs): Do `save-excursion' and test whether
+       erc-last-saved-position is a marker.
+
+       * erc-members.el: Avoid miscompiling macro `erc-log' and
+       `with-erc-channel-buffer' by requiring 'erc at compile time.
+
+       * erc-sound.el: Use expand-file-name.
+
+       * erc.el (erc-debug-log-file): Ditto.
+       (erc-find-file): Ditto.
+
+2004-05-26  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el, erc-backend.el (erc-cmd-BANLIST): Added a missing "'"
+       that was preventing /BANLIST from working.  In erc-backend.el,
+       added server repsonse handler for 367 and 368 reponses to get
+       /BANLIST working.
+
+2004-05-26  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el: Removed an eval-when-compile that was preventing the
+       byte-compiled version of this file from loading.
+
+2004-05-26  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el: Undid part of my last change.  I suspect it was wrong.
+
+2004-05-26  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el: Silenced several byte-compiler warnings.
+
+2004-05-26  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el (erc-log-irc-protocol): Fixed problem where this function
+       misformatted IRC protocol text if multiple lines were received from
+       the server at one time.
+
+2004-05-25  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el (erc-toggle-debug-irc-protocol): Cosmetic changes to the
+       informational text in the *erc-protocol* buffer.
+
+2004-05-24  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el (erc-log-irc-protocol, erc-process-filter): Now the lines
+       inserted in the *erc-protocol* buffer are prefixed with the name
+       of the network to/from which the data is going/coming.  This makes
+       reading the *erc-protocol* buffer much easier when connected to
+       multiple networks.
+
+2004-05-23  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
+
+       * erc-backend.el: Fixes server message parsing so that command
+       arguments specified after the colon are not treated specially. All
+       arguments are added to the `command-args' field, and the
+       `contents' points to the last element in the `command-args' list.
+       This allows ERC to connect to networks such as Undernet.  Although
+       keeping `contents' allows many of the response handlers to
+       continue to work as-is, many other are probably broken by this
+       patch.
+
+2004-05-20  Lawrence Mitchell <wence@gmx.li>
+
+       * HACKING: Add comment that C-c C-a can be useful if you write
+       ChangeLog entries using Emacs' standard functions.
+
+2004-05-17  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-speedbar.el: Ignore errors when attempting to require dframe
+       (there are a couple implementations of speedbar, one of which uses
+       of dframe).
+       (erc-speedbar-version): New.
+       (erc-speedbar-goto-buffer): Use dframe functions if dframe is
+       available.
+
+2004-05-17  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-autojoin.el: Added local variables for this file.
+       (erc-autojoin-add): The channel name is in `erc-response.contents'.
+
+2004-05-17  Mario Lang <mlang@delysid.org>
+
+       * erc-log.el: Dont autoload a define-key statement, erc-mode-map
+       might not be known yet
+
+2004-05-16  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-backend.el (erc-parse-server-response): Revert to original
+       `erc-parse-line-from-server' version, since new version breaks for
+       a number of edge cases.
+
+2004-05-14  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-backend.el (erc-handle-unknown-server-response): New
+       function.  Added to `erc-default-server-functions'.  Display
+       unknown responses to the user.
+       (221): Don't show nickname in modes list.
+       (254): Fixed to use 's254.
+       (303): Added docstring.
+       (315, 318, 323, 369): Ignored responses grouped together.
+       (391): New.
+       (406, 432): Use ?n, not ?c in `erc-display-message'.
+       (431, 445, 446, 451, 462, 463, 464, 465, 481, 483, 485, 491, 501,
+       502): All error responsess with no arguments grouped together.
+
+2004-05-14  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-message-type-member): Use `erc-response.command'.
+       `erc-track-exclude-types' should be respected again.
+       (erc-cmd-TIME): Fixed to work with and without server given as
+       argument.
+       (erc-define-catalog): Added, s391, s431, s445, s446, s451, s462,
+       s463, s464, s465, s483, s484, s485, s491, s501, s502.
+
+2004-05-14  Lawrence Mitchell <wence@gmx.li>
+
+       * HACKING: Typo fix.
+
+2004-05-14  Lawrence Mitchell <wence@gmx.li>
+
+       * Makefile (erc-auto.el): Pass -f flag to rm so that we don't fail
+       if erc-auto.elc doesn't exist.
+
+2004-05-14  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-backend.el (erc-with-buffer): Autoload.
+       (erc-parse-server-response): XEmacs' `replace-match' only replaces
+       subexpressions when operating on buffers, not strings, work around
+       it.
+       (461): Command with invalid arguments is `second', not `third'.
+
+2004-05-14  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-notify.el (erc-notify-NICK): Use `erc-response.contents' to
+       get nickname.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-track.el: Indentation fixes.
+       (track-when-inactive): Use `erc-server-FOO-functions', not
+       `erc-server-FOO-hook.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-notify.el (notify): Use `erc-server-FOO-functions', not
+       `erc-server-FOO-hook.
+       (erc-notify-timer, erc-notify-JOIN, erc-notify-NICK)
+       (erc-notify-QUIT): Use new accessors for PARSED argument.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-nickserv.el (services, erc-nickserv-identify-mode): Use
+       `erc-server-FOO-functions', not `erc-server-FOO-hook.
+       (erc-nickserv-identify-autodetect): Use new accessors for PARSED
+       argument.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-netsplit.el (netsplit): Use `erc-server-FOO-functions', not
+       `erc-server-FOO-hook.
+       (erc-netsplit-JOIN, erc-netsplit-MODE, erc-netsplit-QUIT): Use new
+       accessors for PARSED argument.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-nets.el: Use `erc-server-FOO-functions', not
+       `erc-server-FOO-hook.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-menu.el (erc-menu-definition): Only allow listing of
+       channels if `erc-cmd-LIST' is fboundp.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-match.el: Use `erc-server-FOO-functions', not
+       `erc-server-FOO-hook.
+       (erc-get-parsed-vector-nick, erc-get-parsed-vector-type): Use new
+       accessors for PARSED argument.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-list.el (erc-chanlist, erc-chanlist-322): Use new accessors
+       for PARSED argument.  Use `erc-server-FOO-functions', not
+       `erc-server-FOO-hook.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-ezbounce.el (erc-ezb-notice-autodetect): Use new accessors
+       for PARSED argument.
+       (erc-ezb-initialize): Use `erc-server-FOO-functions', not
+       `erc-server-FOO-hook.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-dcc.el: Use `erc-server-FOO-functions', not
+       `erc-server-FOO-hook.
+       (erc-dcc-no-such-nick): Use new accessors for PARSED argument.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-bbdb.el (erc-bbdb-whois, erc-bbdb-JOIN, erc-bbdb-NICK): Use
+       new accessors for PARSED argument.
+       (BBDB): Use `erc-server-FOO-functions', not `erc-server-FOO-hook.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-autojoin.el (autojoin): Use `erc-server-FOO-functions', not
+       `erc-server-FOO-hook.
+       (erc-autojoin-add, erc-autojoin-remove): Use new accessors for
+       PARSED argument.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-autoaway.el (autoaway): Use `erc-server-FOO-functions', not
+       `erc-server-FOO-hook.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-backend): Require.
+       (erc-disconnected-hook, erc-join-hook, erc-quit-hook)
+       (erc-part-hook, erc-kick-hook): Docstring fix, we now use
+       `erc-server-FOO-functions', rather than `erc-server-FOO-hook'.
+       (erc-event-to-hook-name, erc-event-to-hook): Remove.
+       (erc-once-with-server-event)
+       (erc-once-with-server-event-global): Use `erc-get-hook'
+       (erc-process-filter): Use `erc-parse-server-response'.
+       (erc-cmd-IDLE, erc-cmd-BANLIST, erc-cmd-MASSUNBAN): New accessors
+       for PARSED argument.  Rename all `erc-server-FOO-hook' to
+       `erc-server-FOO-functions'.
+       (erc-server-364-hook, erc-server-365-hook, erc-server-367-hook)
+       (erc-server-368-hook, erc-server-KILL-hook)
+       (erc-server-PONG-hook, erc-server-200-hook, erc-server-201-hook)
+       (erc-server-202-hook, erc-server-203-hook, erc-server-204-hook)
+       (erc-server-205-hook, erc-server-206-hook, erc-server-208-hook)
+       (erc-server-209-hook, erc-server-211-hook, erc-server-212-hook)
+       (erc-server-213-hook, erc-server-214-hook, erc-server-215-hook)
+       (erc-server-216-hook, erc-server-217-hook, erc-server-218-hook)
+       (erc-server-219-hook, erc-server-241-hook, erc-server-242-hook)
+       (erc-server-243-hook, erc-server-244-hook, erc-server-249-hook)
+       (erc-server-261-hook, erc-server-262-hook, erc-server-302-hook)
+       (erc-server-323-hook, erc-server-342-hook, erc-server-351-hook)
+       (erc-server-381-hook, erc-server-382-hook, erc-server-391-hook)
+       (erc-server-392-hook, erc-server-393-hook, erc-server-394-hook)
+       (erc-server-395-hook, erc-server-402-hook, erc-server-404-hook)
+       (erc-server-407-hook, erc-server-409-hook, erc-server-411-hook)
+       (erc-server-413-hook, erc-server-414-hook, erc-server-415-hook)
+       (erc-server-422-hook, erc-server-423-hook, erc-server-424-hook)
+       (erc-server-431-hook, erc-server-436-hook, erc-server-437-hook)
+       (erc-server-441-hook, erc-server-443-hook, erc-server-444-hook)
+       (erc-server-445-hook, erc-server-446-hook, erc-server-451-hook)
+       (erc-server-462-hook, erc-server-463-hook, erc-server-464-hook)
+       (erc-server-465-hook, erc-server-467-hook, erc-server-471-hook)
+       (erc-server-472-hook, erc-server-473-hook, erc-server-483-hook)
+       (erc-server-491-hook, erc-server-502-hook): Remove.
+       (erc-call-hooks, erc-parse-line-from-server): Remove
+       (erc-server-hook-list): Remove.  Remove top-level call too.
+       (erc-server-ERROR, erc-server-INVITE, erc-server-JOIN)
+       (erc-server-KICK, erc-server-MODE, erc-server-NICK)
+       (erc-server-PART, erc-server-PING, erc-server-PONG)
+       (erc-server-PRIVMSG-or-NOTICE, erc-server-QUIT)
+       (erc-server-TOPIC, erc-server-WALLOPS, erc-server-001)
+       (erc-server-004, erc-server-005, erc-server-221, erc-server-252)
+       (erc-server-253, erc-server-254, erc-server-301, erc-server-303)
+       (erc-server-305, erc-server-306, erc-server-311-or-314)
+       (erc-server-312, erc-server-313, erc-server-317, erc-server-319)
+       (erc-server-320, erc-server-321, erc-server-322, erc-server-324)
+       (erc-server-329, erc-server-330, erc-server-331, erc-server-332)
+       (erc-server-333, erc-server-341, erc-server-352, erc-server-353)
+       (erc-server-366, erc-server-MOTD, erc-server-379)
+       (erc-server-401, erc-server-403, erc-server-405, erc-server-406)
+       (erc-server-412, erc-server-421, erc-server-432, erc-server-433)
+       (erc-server-437, erc-server-442, erc-server-461, erc-server-474)
+       (erc-server-475, erc-server-477, erc-server-481, erc-server-482)
+       (erc-server-501): Move to erc-backend.el
+       (erc-auto-query, erc-banlist-store, erc-banlist-finished)
+       (erc-banlist-update, erc-connection-established)
+       (erc-process-ctcp-query, erc-display-server-message): Use new
+       accessors for PARSED argument.
+
+2004-05-13  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-backend.el: (erc-parse-server-response)
+       (erc-handle-parsed-server-response, erc-get-hook)
+       (define-erc-response-handler): New functions.
+       (erc-response): New struct for server responses.
+       (erc-server-responses): New variable.
+       (erc-call-hooks): Move from erc.el and rework.
+       (ERROR, INVITE, JOIN, KICK, MODE, NICK, PART, PING, PONG)
+       (PRIVMSG, NOTICE, QUIT, TOPIC, WALLOPS, 001, MOTD, 376, 004)
+       (252, 253, 254, 250, 301, 303, 305, 306, 311, 312, 313, 315)
+       (317, 318, 319, 320, 321, 322, 324, 329, 330, 331, 332, 333)
+       (341, 352, 353, 366, 369, 379, 401, 403, 405, 406, 412, 421)
+       (432, 433, 437, 442, 461, 474, 477, 481, 482, 501, 323, 221)
+       (002, 003, 371, 372, 374, 375, 422, 251, 255, 256, 257, 258)
+       (259, 265, 266, 377, 378, 314, 475, 364, 365, 367, 368, 381)
+       (382, 391, 392, 393, 394, 395, 200, 201, 202, 203, 204, 205)
+       (206, 208, 209, 211, 212, 213, 214, 215, 216, 217, 218, 219)
+       (241, 242, 243, 244, 249, 261, 262, 302, 342, 351, 402, 404)
+       (407, 409, 411, 413, 414, 415, 423, 424, 431, 436, 441, 443)
+       (444, 445, 446, 451, 462, 463, 464, 465, 467, 471, 472, 473)
+       (483, 491, 502, 005, KILL): Move from erc.el and rework using
+       `define-erc-response-handler' and erc-response struct.
+
+2004-05-12  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el: A few bug fixes to avoid errors after disconnect,
+       including the "Selecting deleted buffer" bug.
+       (erc-channel-user-op-p, erc-channel-user-voice-p): Make sure NICK
+       is non-nil (`erc-current-nick' can return nil).
+       (erc-server-buffer): Make sure the buffer isn't a #<killed
+       buffer>.
+       (erc-server-buffer-live-p): New function.
+       (erc-display-line, erc-join-channel, erc-prepare-mode-line-format,
+       erc-away-p): Use `erc-server-buffer-live-p' to make sure process
+       buffer exists.
+       (erc-send-current-line): If there is no server buffer, let the
+       user know.
+
+2004-05-12  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el, erc-log.el: C-c C-l keybinding now defined in
+       erc-log.el.
+       (erc-log-version): New.
+       (erc-cmd-JOIN): Fix applied for bug where /join -invite causes
+       errors when there's no `invitation'.
+
+2004-05-11  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el: (erc-cmd-JOIN): Make sure `chnl' is non-nil before trying
+       to join anything (chnl is not set if /join -invite is used but
+       there's no `invitation').
+
+2004-05-10  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-log.el: Define C-c C-l keybinding outside of `erc-log-mode',
+       making it available all the time; autoload definition.
+       (erc-log-version): New.
+
+2004-05-09  Diane Murray <disumu@x3y2z1.net>
+
+       * AUTHORS, CREDITS, Makefile, erc-autoaway.el, erc-autojoin.el,
+       erc-button.el, erc-chess.el, erc-dcc.el, erc-ezbounce.el,
+       erc-fill.el, erc-ibuffer.el, erc-imenu.el, erc-lang.el,
+       erc-list.el, erc-log.el, erc-macs.el, erc-match.el, erc-members.el,
+       erc-menu.el, erc-nets.el, erc-netsplit.el, erc-nickserv.el,
+       erc-notify.el, erc-page.el, erc-ring.el, erc-speak.el,
+       erc-speedbar.el, erc-stamp.el, erc-track.el, erc-truncate.el,
+       erc-xdcc.el, erc.el: Applied all relevant bug fixes and code
+       cleanup made between the time of the ERC_4_0_RELEASE tag until now.
+
+2004-05-09  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-menu.el: Updated copyright years.
+
+2004-05-09  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-update-channel-info-buffer): Correct bug in sorting
+       of channel users.  Tiny change from Andreas Schwab
+       <schwab@suse.de>.
+
+2004-05-09  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-fill.el (erc-fill-variable): Fix docstring.
+
+2004-05-09  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-button.el (erc-button-add-button): Use 'keymap
+       text-property, rather than 'local-map, since it's cross-emacs
+       compatible.  Pass :mouse-down-action into `widget-convert-button'
+       as 'erc-button-click-button, to make XEmacs happy.  Replace bogus
+       reference to erc-widget-press-button with erc-button-press-button.
+       (erc-button-click-button): New (ignored) first argument, to make
+       XEmacs behave when pressing buttons.
+       (erc-button-press-button): New (ignored) &rest argument.
+
+2004-05-09  Adrian Aichner <adrian@xemacs.org>
+
+       * erc-log.el (erc-conditional-save-buffer): Fix docstring
+       reference to erc-save-queries-on-quit.
+       (erc-conditional-save-queries): Ditto.
+
+2004-05-06  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-speedbar.el: Updated copyright years.  Added local variables
+       for this file; fixed indenting.
+       (erc-speedbar): New group.
+       (erc-speedbar-sort-users-type): New variable.
+       (erc-speedbar-buttons): Handle query buffers (fixes a bug where an
+       error would be thrown if the current buffer was a query).  Ignore
+       unknown buffers.
+       (erc-speedbar-expand-channel): Show limit and key with channel
+       modes. Sort users according to `erc-speedbar-sort-users-type'.
+       (erc-speedbar-insert-user): Fixed bug where only nicks with more
+       info were being listed, and those were shown twice.
+       (erc-speedbar-goto-buffer): Don't use dframe functions, as dframe
+       isn't available with the default speedbar.
+
+2004-05-06  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el: (erc-sort-channel-users-alphabetically): New function.
+       (erc-server-412, erc-server-432, erc-server-475): New functions.
+       (erc-server-412-hook, erc-server-432-hook, erc-server-475-hook):
+       Use them.
+       (erc-server-401, erc-server-403, erc-server-405)
+       (erc-server-421, erc-server-474, erc-server-481): Use catalog
+       messages.
+       (erc-define-catalog): Added s401, s403, s405, s412, s421, s432,
+       s474, s475, and s481.
+
+2004-05-06  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-nickserv.el: Added documentation to Commentary, Usage.
+       Removed `outline-mode' from file local variables.
+       (erc-services-mode): Use `erc-nickserv-identify-mode' to add
+       hooks.
+       (erc-nickserv-identify-mode): New function.
+       (erc-nickserv-identify-mode): New variable.
+       (erc-prompt-for-nickserv-password, erc-nickserv-passwords):
+       Changed docstring.
+       (erc-nickserv-identify-autodetect): Use
+       `erc-nickserv-call-identify-function'. Docstring change.
+       (erc-nickserv-identify-on-connect,
+       erc-nickserv-identify-on-nick-change,
+       erc-nickserv-call-identify-function): New functions.
+       (erc-nickserv-identify): PASSWORD is not optional.  Autoload
+       function.
+
+2004-05-05  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-join-hook, erc-quit-hook, erc-part-hook,
+       erc-kick-hook, erc-connect-pre-hook): Now customizable.
+       (erc-nick-changed-functions): New hook.
+       (erc-server-NICK): Run `erc-nick-changed-functions' with the
+       arguments NEW-NICK and OLD-NICK.
+       (erc-channel-user-voice-p, erc-channel-user-voice-p): Shortened
+       docstring.
+
+2004-05-05  Lawrence Mitchell <wence@gmx.li>
+
+       * HACKING: New section on function/variable naming and coding
+       conventions.
+
+2004-05-05  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-wash-quit-reason): Quote regexp special characters
+       in NICK, LOGIN and HOST.
+
+2004-05-04  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-server-parameters): Typo fix in docstring.
+       (erc-input-line-position): `:type' is now a choice between integer
+       and nil.  (erc-mode-map): Bind `erc-get-channel-mode-from-keypress'
+       to C-c C-o instead of C-c RET (C-c C-m).  (erc-cmd-GQUIT): Use
+       REASON as argument when calling `erc-cmd-QUIT'.
+
+2004-05-03  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-nicklist.el: Initial version.
+
+2004-04-28  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-menu.el: Added local variables for file, fixed indenting.
+       (erc-menu-version): New variable.
+       (erc-menu-definition): "List channels": New.  "Join channel": Use
+       `erc-connected' as test.  "Start a query": New.  "List channel
+       operators": New.  "Input action": Moved up.  "Set topic": Fixed
+       test so it's only active in channels.  "Leave this channel": Moved
+       down.  "Track hidden channel buffers": Removed.  "Enable/Disable
+       ERC Modules": New.
+
+2004-04-28  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-mode-map): Removed binding for
+       `erc-save-buffer-in-logs' (moved to erc-log.el).
+       (erc-cmd-QUERY, erc-cmd-OPS): Now interactive.
+
+2004-04-28  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-log.el: Added local variables for this file.
+       (erc-log-channels-directory): Added directory as a choice in
+       `:type'.
+       (define-erc-module): Define and undefine key binding (C-c
+       C-l) for `erc-save-buffer-in-logs' here.
+
+2004-04-28  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-nets.el: Added local variables for this file.
+       (erc-networks-alist): Fixed `:type' to work better in
+       customization.
+
+2004-04-28  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-match.el: Added local variables for file.  (erc-keywords):
+       Use `list' instead of `cons' in `:type'.  Fixes bug where mismatch
+       was shown in customization.  (erc-current-nick-highlight-type):
+       Escape parentheses in docstring.  Added keyword, nick-or-keyword as
+       options in `:type'.
+
+2004-04-28  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-stamp.el: Added local variables for file.
+       (erc-away-timestamp-format): Allow nil as a choice in `:type'.
+       (erc-timestamp-intangible): Changed `:type' to boolean.
+       (erc-timestamp-right-column): Added `:group' and `:type'.
+
+2004-04-28  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-modules): Added bbdb, log, match, sound, and stamp
+       as `:type' options; changed documentation for autojoin, fill,
+       pcomplete, track.  (erc-prompt-for-channel-key): New variable.
+       (erc-join-channel): Only prompt for key if
+       `erc-prompt-for-channel-key' is non-nil.  (erc-format-my-nick): New
+       function.  (erc-send-message, erc-send-current-line): Use it.
+
+2004-04-24  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc-track.el: (erc-track-modified-channels): Fix indentation.
+
+2004-04-24  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc-match.el: (erc-hide-fools): Docstring fix.
+       (erc-log-matches-types-alist): Added `current-nick' to valid
+       choices.
+
+2004-04-20  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-page.el, erc-ezbounce.el, erc-speak.el, erc-match.el,
+       erc-track.el (erc-ezbounce, erc-page, erc-speak): Groups defined.
+       (erc-match, erc-track): `erc' is parent group.
+       (erc-ezb-regexp, erc-ezb-login-alist): Added `:group'.
+
+2004-04-20  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-fill.el: Fixed erc-fill-static so it breaks the lines at the
+       right column and respects timestamps. Patch by Simon Siegler
+       <simon@trz-kril.de>
+       (erc-fill-static): Major rewrite and split up into some functions.
+       (erc-count-lines): Removed.
+       (erc-fill-regarding-timestamp): New function.
+       (erc-timestamp-offset): New function.
+       (erc-restore-text-properties): New function.
+       (erc-fill-variable): Respect leftbound timestamp.  This is still
+       broken if someone has both erc-timestamp-only-if-changed-flag set
+       and erc-insert-timestamp-function set to
+       'erc-insert-timestamp-left, but otherwise it works now.
+
+2004-04-20  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el: (erc-cmd-SV): Show features gtk, mac-carbon, multi-tty.
+       Fixed so that arguments fit the format (build date was not being
+       shown).
+
+2004-04-19  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el: (erc-update-channel-topic); Error if `channel-topic' is
+       unbound.  Remove %-sign substitution.
+       (erc-update-mode-line-buffer): Escape %-signs in `channel-topic'
+       here.
+
+2004-04-19  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el: (erc-send-action, erc-ctcp-query-ACTION,
+       erc-ctcp-reply-ECHO-hook): Let `erc-display-message-highlight'
+       propertize the message.
+       (erc-display-message-highlight): Allow for any erc-TYPE-face.
+       (erc-cmd-JOIN): Display error message instead of throwing an error
+       if there's no `invitation'.
+       (erc-cmd-PART): Allow for no reason if channel is provided.  Fixes
+       bug where user would part the current channel with the other
+       channel's name as reason when no reason was given.
+       (erc-server-vectors, erc-debug-missing-hooks): Added docstring.
+       (erc-server-JOIN): Moved `erc-join-hook' to JOIN-you section.
+       `erc-join-hook' called by `run-hook-with-args', sending the ARGS
+       `chnl' and the channel's buffer.  Changed an instance of if
+       without else to when.
+       (erc-server-477): New function.
+       (erc-server-477-hook): Use `erc-server-477'.
+       (erc-define-catalog): Added `no-invitation'.
+
+2004-04-14  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-nickserv.el: Local variables for file added.
+       (erc-nickserv-passwords): Customization: Network symbols updated
+       to reflect `erc-nickserv-alist'.  Allow user to type in network
+       symbol.
+       (erc-nickserv-alist): Now customizable variable.
+
+2004-04-09  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-autoaway.el (erc-autoaway-reset-idletime): Make sure `line'
+       is a string to avoid errors upon startup.
+
+2004-04-06  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-autoaway.el (erc-autoaway-version): New variable.
+       (erc-auto-discard-away): Updated docstring.
+       (erc-autoaway-no-auto-back-regexp): New variable.
+       (erc-autoaway-reset-idletime): Use it.  Hopefully a better solution
+       which allows for aliases to "/away" and any other text that the
+       user wants to ignore when `erc-auto-discard-away' is non-nil.
+
+2004-04-06  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-autoaway.el (erc-autoaway-reset-idletime): Forgot /gaway in
+       regexp.
+
+2004-04-06  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-autoaway.el (erc-autoaway-reset-idletime): If the user sends
+       an "/away" command, don't call `erc-autoaway-set-back', fixes bug
+       where ERC would send "/away" when user was already away and sent an
+       "/away reason".  Changed `l' to `line' for better understanding.
+       (erc-autoaway-set-back): Changed `l' to `line' for better
+       understanding.
+
+2004-04-05  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-set-channel-key): Now able to remove key.
+       (erc-set-channel-limit): Now able to remove limit.
+       (erc-get-channel-mode-from-keypress): Fixed docstring.
+
+2004-04-04  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-join-channel): Allow for optional channel key.
+       (erc-set-modes): Need to set `channel-key' to nil in case of mode
+       changes during split.
+       (erc-show-channel-key-p): New variable.
+       (erc-prepare-mode-line-format): Only show key if
+       `erc-show-channel-key-p' is non-nil.
+
+2004-04-04  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (channel-key): New variable.
+       (erc-update-channel-key): New function.
+       (erc-set-modes, erc-parse-modes, erc-update-modes, erc,
+       erc-update-channel-info-buffer): Deal with channel keys.
+       (erc-prepare-mode-line-format): Show channel key in header-line.
+       (erc-server-NICK): Show nick change in server buffer as well.
+       (erc, erc-send-command, erc-banlist-store, erc-banlist-update,
+       erc-load-irc-script-lines,
+       erc-arrange-session-in-multiple-windows, erc-handle-login,
+       erc-find-channel-info-buffer): Changed when not to unless.
+       (erc-server-MODE): Changed if without else to when.
+
+2004-03-27  Adrian Aichner <adrian@xemacs.org>
+
+       * erc.el: (erc-cmd-BANLIST): Use `truncate-string-to-width'
+       instead of `truncate-string' alias.
+       (erc-nickname-in-use): Ditto.
+
+2004-03-27  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc-list.el (erc-cmd-list): Fixed error caused by erc-cmd-LIST
+       passing a non-sequence to erc-chanlist.
+
+2004-03-22  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
+
+       * erc.el: Add new hook `erc-join-hook', which is run when we join a
+       channel.
+
+2004-03-22  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
+
+       * erc.el: Replaced existing notice user notification system and
+       the configuration options, which consisted of
+       `erc-echo-notices-in-minibuffer-flag' and
+       `erc-echo-notices-in-current-buffer' with two new hooks,
+       `erc-echo-notice-hook' and `erc-echo-notice-always-hook'.
+
+       When user notification is needed, `erc-echo-notice-always-hook' is
+       first run using `run-hook-with-args', then `erc-echo-notice-hook'
+       is run using `run-hook-with-args-until-success'.
+
+       In addition to these hooks, a large number of functions, which are
+       described in the documentation strings of those hooks, were added
+       which can be used to achieve a large variety of different
+       behaviors.
+
+       The current default behavior, which is identical to the existing
+       default behavior, is for `erc-echo-notice-always-hook' to be set to
+       `(erc-echo-notice-in-default-buffer).
+
+2004-03-21  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-track.el: (erc-modified-channels-display): Added a space
+       before opening bracket.
+
+2004-03-21  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el: (erc-format-query-as-channel-p): New variable.
+       (erc-server-PRIVMSG-or-NOTICE): If `erc-format-query-as-channel-p'
+       is nil, messages in the query buffer are formatted like private
+       messages.
+
+       (erc-server-252-hook, erc-server-253-hook, erc-server-254-hook,
+       erc-server-256-hook, erc-server-257-hook, erc-server-258-hook,
+       erc-server-259-hook, erc-server-371-hook, erc-server-372-hook,
+       erc-server-374-hook, erc-server-374-hook, erc-server-442-hook,
+       erc-server-477-hook): Removed, now defined in
+       `erc-server-hook-list'.
+       (erc-display-server-message): New function.
+       (erc-server-252, erc-server-253, erc-server-254, erc-server-442):
+       New functions.
+       (erc-server-hook-list): Added 250, 256, 257, 258, 259, 265, 266,
+       377, 378, 477 - using `erc-display-server-message'.  251, 255 now
+       use `erc-display-server-message'.  Added 252, 253, 254, 442 -
+       using respective erc-server-* functions.  371, 372, 374, 375 now
+       defined here.
+       (erc-define-catalog): Added s252, s253, s254, s442.
+       (erc-server-001, erc-server-004, erc-server-005): Fixed
+       documentation.
+
+2004-03-20  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-stamp.el: Commentary: Changed `erc-stamp-mode' to
+       `erc-timestamp-mode'.
+       (erc-insert-timestamp-left): Use `erc-timestamp-face' on filler
+       spaces as well.
+
+2004-03-19  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-send-action): Use `erc-input-face'.
+       (erc-display-message-highlight): If the requested highlighting
+       type doesn't match, just display the string with no highlighting
+       and warn about it with `erc-log'.. (erc-cmd-JOIN): If user is
+       already on the requested channel, switch to that channel's buffer.
+       (erc-ctcp-query-ACTION): Use `erc-action-face' for nick as well.
+       (erc-header-line-use-help-echo-p): New variable.
+       (erc-update-mode-line-buffer): Use `help-echo' for header-line if
+       `erc-header-line-use-help-echo-p' is non-nil.
+
+2004-03-18  Adrian Aichner <adrian@xemacs.org>
+
+       * erc-nets.el: Use two arguments version of `make-obsolete', if
+       third argument is not supported (for XEmacs).
+
+2004-03-18  Andreas Fuchs <asf@void.at>
+
+       * CREDITS: added CREDITS entry for Adrian Aichner
+
+2004-03-18  Andreas Fuchs <asf@void.at>
+
+       * erc-xdcc.el, erc.el, erc-autoaway.el, erc-autojoin.el,
+       erc-button.el, erc-dcc.el, erc-ezbounce.el, erc-imenu.el,
+       erc-list.el, erc-log.el, erc-match.el, erc-members.el,
+       erc-menu.el, erc-netsplit.el, erc-notify.el, erc-speedbar.el,
+       erc-stamp.el, erc-track.el, erc-truncate.el:
+       (erc-coding-sytem-for-target): Removed.
+       (erc-coding-system-for-target): New.
+       (erc-autoaway-use-emacs-idle): Typo fix.
+       (erc-auto-set-away): Ditto.
+       (erc-auto-discard-away): Ditto.
+       (autojoin): Ditto.
+       (erc-button-alist): Ditto.
+       (erc-dcc-auto-masks): Ditto.
+       (erc-dcc-chat-send-input-line): Ditto.
+       (erc-ezb-get-login): Ditto.
+       (erc-unfill-notice): Ditto.
+       (erc-save-buffer-in-logs): Ditto.
+       (match): Ditto.
+       (erc-log-matches-types-alist): Ditto.
+       (erc-match-directed-at-fool-p): Ditto.
+       (erc-match-message): Ditto.
+       (erc-update-member): Ditto.
+       (erc-ignored-reply-p): Ditto.
+       (erc-menu-definition): Ditto.
+       (erc-netsplit-QUIT): Ditto.
+       (erc-notify-list): Ditto.
+       (erc-speedbar-update-channel): Ditto.
+       (erc-speedbar-item-info): Ditto.
+       (erc-stamp): Ditto.
+       (erc-timestamp-intangible): Ditto.
+       (erc-add-timestamp): Ditto.
+       (erc-timestamp-only-if-changed-flag): Ditto.
+       (erc-show-timestamps): Ditto.
+       (erc-track-priority-faces-only): Ditto.
+       (erc-modified-channels-alist): Ditto.
+       (erc-unique-substrings): Ditto.
+       (erc-find-parsed-property): Ditto.
+       (erc-track-switch-direction): Ditto.
+       (erc-truncate-buffer-to-size): Ditto.
+       (erc-xdcc): Ditto.
+       (erc-auto-reconnect): Ditto.
+       (erc-startup-file-list): Ditto.
+       (erc-once-with-server-event): Ditto.
+       (erc-once-with-server-event-global): Ditto.
+       (erc-mode): Ditto.
+       (erc-generate-new-buffer-name): Ditto.
+       (erc): Ditto.
+       (erc-open-ssl-stream): Ditto.
+       (erc-default-coding-system): Ditto.
+       (erc-encode-string-for-target): Ditto.
+       (erc-decode-string-from-target): Ditto.
+       (erc-scroll-to-bottom): Ditto.
+       (erc-decode-controls): Ditto.
+       (erc-channel-members-changed-hook): Ditto.
+       (erc-put-text-property): Ditto.
+       (erc-add-default-channel): Ditto.
+
+2004-03-17  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-process-sentinel): Cancel ping timer upon
+       disconnect.
+       (erc-cmd-PART): Use same regexp as `erc-cmd-QUIT' when no #channel
+       is provided.
+       (erc-nick-uniquifier, erc-manual-set-nick-on-bad-nick-p): `:group'
+       was missing, added.
+       (erc-part-reason-zippy, erc-part-reason-zippy): Removed FIXME
+       comments.  I see no problem allowing typed in reasons.
+
+2004-03-16  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-stamp.el: (erc-insert-timestamp-left): Added support for
+       `erc-timestamp-only-if-changed-flag' and added docstring.
+       (erc-timestamp-only-if-changed-flag): Updated documentation.
+
+2004-03-13  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc-nets.el (erc-network-name): No longer marked as obsolete.
+       Why was this function made obsolete?  There is no other function
+       that performs this task.  Some of us use these functions in our
+       personal ERC configs.
+
+2004-03-12  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-buffer-filter): Use `with-current-buffer'.
+       (erc-process-input-line): Append newline to documentation.  Fixes a
+       bug whereby the prompt would be put on the same line as the output.
+       (erc-cmd-GQUIT): Only try and send QUIT if the process is alive.
+
+2004-03-12  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-log.el: Only add top-level hooks if `erc-enable-logging' is
+       non-nil.
+
+2004-03-10  Damien Elmes <erc@repose.cx>
+
+       * erc-nets.el: From Adrian Aichner (adrian /at/ xemacs /dot/ org)
+       * erc-nets.el: XEmacs make-obsolete only takes two arguments.
+
+2004-03-10  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-nets.el (erc-determine-network): Use `erc-session-server' if
+       `erc-announced-server' is nil to avoid error if server does not
+       send 004 (RPL_MYINFO) message.
+
+2004-03-10  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-nets.el (erc-server-alistm erc-settings): Use lowercase
+       "freenode", as in `erc-networks-alist'.
+
+2004-03-10  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-nickserv.el (erc-nickserv-alist): Use lowercase "freenode",
+       as in `erc-networks-alist'.
+
+2004-03-10  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-dcc.el (pcomplete/erc-mode/DCC): Append "send" as a list.
+
+2004-03-10  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc-nets.el (erc-networks-alist): Changed "Freenode" to
+       "freenode".
+
+2004-03-10  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc-list.el (erc-cmd-LIST): Improved the docstring.   Made
+       message to user more accurate   depending on whether a single
+       channel is being listed or not.
+
+2004-03-10  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-nets.el (erc-determine-network): Make matching logic simpler
+       (suggested by Damian Elmes).
+       (erc-current-network, erc-network-name): Add `make-obsolete' form.
+       (erc-set-network-name): Indentation fix.
+       (erc-ports-list): Add docstring.  Rework function body to use
+       `nconc'.
+
+2004-03-09  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-list.el, erc-notify.el: (require 'erc-nets): added
+
+2004-03-08  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-network-name): Function definition moved to
+       erc-nets.el.  The functions `erc-determine-network' and
+       `erc-network' in erc-nets.el do what this did before.  Deprecated.
+       Use (erc-network) instead.
+
+2004-03-08  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-nickserv.el: Changed copyright notice.  Now require
+       erc-nets.  erc-nets.el now takes care of network-related functions
+       and variables.
+       (erc-nickserv-alist): Changed network symbols to match those in
+       `erc-networks-alist' in erc-nets.el.
+       (erc-nickserv-identify-autodetect): Use `erc-network'.
+       (erc-nickserv-identify): Use `erc-network'.  Changed wording for
+       interactive use, now shows current nick.
+       (erc-networks): Removed.  Use `erc-networks-alist' as defined in
+       erc-nets.el.
+       (erc-current-network): Function definition moved to erc-nets.el.
+       The functions `erc-determine-network' and `erc-network' in
+       erc-nets.el do what this did before.  Deprecated.  Use
+       (erc-network) instead.
+
+2004-03-08  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-nets.el: Added commentary, `erc-nets-version'.
+       (erc-server-alist): Changed Brasnet to BRASnet.
+       (erc-networks-alist): All networks (except EFnet and IRCnet) now
+       have a MATCHER.  (erc-network): New variable.
+       (erc-determine-network): New function. Determine the network the
+       user is on.  Use the server parameter NETWORK, if provided, else
+       parse the server name and search for a match (regexp and loop by
+       wencem) in `erc-networks-alist'.  Return the name of the network
+       or "Unknown" as a symbol.
+       (erc-network): New function.  Returns value of `erc-network'.  Use
+       this when the current buffer is not the server process buffer.
+       (erc-current-network): Returns the value of `erc-network' as
+       expected by users who used the function as it was defined in
+       erc-nickserv.el.  Deprecated.
+       (erc-network-name): Returns the value of `erc-network' as expected
+       by users who used the function as it was defined in erc.el.
+       Deprecated.
+       (erc-set-network-name): New function.  Added to
+       `erc-server-375-hook' and `erc-server-422-hook'.
+       (erc-unset-network-name): New function.  Added to
+       `erc-disconnected-hook'.
+       (erc-server-select): Small documentation word change.
+
+2004-03-07  Diane Murray <disumu@x3y2z1.net>
+
+       * AUTHORS, CREDITS: disumu info updated
+
+2004-03-06  Lawrence Mitchell <wence@gmx.li>
+
+       * erc-list.el (erc-cmd-LIST): Take &rest rather than &optional
+       arguments.
+       (erc-chanlist): Construct correct LIST command from list of
+       channels.
+
+2004-03-06  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-update-mode-line-buffer): Add 'help-echo property to
+       header-line text.  This allows header lines longer than the width
+       of the current window to be seen.
+
+2004-03-06  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-match.el (erc-match-directed-at-fool-p): Also check for
+       "FOOL, "
+
+2004-03-06  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-match.el (erc-match-message): Only use nick-or-keyword if
+       we're matching our nick.
+
+2004-03-06  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-match.el: The highlight type for the current nickname can
+       now also be 'nick-or-keyword, to highlight the nick of the sender
+       if that is available, but fall back to highlighting your nickname
+       in the whole message otherwise.
+       (erc-current-nick-highlight-type): Adapted docstring accordingly.
+       (erc-match-message): Added new condition. Also added some comments
+       to this monster of a function.
+
+2004-03-06  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-is-valid-nick-p): Don't check for length less or
+       equal to 9.
+
+2004-03-06  Damien Elmes <erc@repose.cx>
+
+       * erc-nickserv.el (erc-current-network): the last change resulted
+       in this function failing when a network identifies itself as
+       anything other than var.netname.com, so for instance
+       'vic.au.austnet.org' fails. This version is only a marginal
+       improvement over the original, but if we want to be more flexible
+       we'll probably have to do the iteration ourselves instead of using
+       assoc.
+
+2004-03-05  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el: Added erc-server-001 which runs when the server sends
+       its welcome message.  It sets the current-nick to reflect the
+       server's settings. This fixes a bug where nicks that were too long
+       and got truncated by ther server were still set to the old value.
+       (nickname-in-use): If user wants to try again manually, let user
+       know that the nick is taken.  If not, go through erc-default-nicks
+       until none are left, and then try one last time with
+       erc-nick-uniquifier.  If it's still a bad-nick, make the user
+       change nick manually.  When applying uniquifier, use NICKLEN if
+       it's in the server parameters, otherwise use what RFC 2812 says is
+       the max nick length (9 chars).  Added custom variable
+       erc-manual-set-nick-on-bad-nick-p, which is set to nil and
+       erc-nick-change-attempt-count.  Reset erc-default-nicks and
+       erc-nick-change-attempt-count when the nick has been changed
+       successfully.  This fixes the bug where ERC would get caught in a
+       neverending loop of trying to set the same nick if the nick was
+       too long and the uniquified nick was not available.
+
+       * added erc-cmd-WHOAMI
+
+       * added custom variable erc-mode-line-away-status-format, use this
+       instead of   the previous hard-coded setting
+
+       * erc-server-315|318|369-hook defvar lines removed - they're
+       already defined in erc-server-hook-list
+
+2004-03-04  Lawrence Mitchell <wence@gmx.li>
+
+       * HACKING: Initial commit.  Some thoughts on coding standards.
+
+2004-03-03  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-track.el: added the variable erc-track-priority-faces-only
+       which adds the option to ignore changes in a channel unless there
+       are faces from the erc-track-faces-priority-list in the message
+       options are nil, 'all, or a list of channel name strings
+
+2004-03-01  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el, erc-ibuffer.el, erc-menu.el: Changed erc-is-channel-op
+       and erc-is-channel-voice to erc-channel-user-op-p and
+       erc-channel-user-voice-p to better match erc-channel-user
+       structure (and emacs lisp usage)
+
+2004-03-01  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el, erc-ibuffer.el, erc-menu.el:
+       erc-track-modified-channels-mode is now erc-track-mode
+
+2004-02-29  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-match.el: Added 'keyword option to
+       erc-current-nick-highlight-type highlights all instances of
+       current-nick in the message ('nickname option in cvs revisions 1.9
+       - 1.11 had same effect)
+
+2004-02-28  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-button.el: Add Lisp: prefix for the EmacsWiki Elisp area.
+       (erc-button-alist): Added Lisp: prefix.
+       (erc-emacswiki-lisp-url): New variable.
+       (erc-browse-emacswiki-lisp): New function.
+
+2004-02-27  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-get-arglist): Use `substitute-command-keys', rather
+       than hard-coding C-h f for `describe-function'.
+
+2004-02-26  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc-log.el (erc-save-buffer-in-logs): bind `inhibit-read-only'
+       to t around call to `erase-buffer'.
+
+2004-02-23  Edward O'Connor <ted@oconnor.cx>
+
+       * erc-chess.el, erc-dcc.el, erc-ezbounce.el, erc-list.el,
+       erc-macs.el, erc-ring.el, erc-stamp.el, erc.el: Normalized buffer
+       local variable creation.
+
+2004-02-17  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-scroll-to-bottom, erc-add-scroll-to-bottom): Mention
+       `erc-input-line-position' in docstring.
+
+2004-02-13  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-kick-hook): Typo fix.
+
+2004-02-13  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
+
+       * erc.el: Added `erc-kick-hook', which is called when the local
+       user is kicked from a channel.  Fixed a bug in `erc-cmd-OPS', such
+       that the command now works.  Added `erc-remove-channel-users', in
+       order to fix a number of significant bugs relating to channel
+       parting.
+
+2004-02-12  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-display-prompt): Remove last change. This caused a
+       lot of trouble :(
+
+2004-02-12  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-display-prompt): Also set 'field property, so C-j
+       works on an empty prompt.
+
+2004-02-12  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-update-channel-topic): Ensure that `channel-topic'
+       does not contain any bare format controls.
+
+2004-02-10  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc-stamp.el (erc-timestamp-intangible): New variable (user
+       feature request)
+       (erc-format-timestamp): Use erc-timestamp-intangible.
+
+2004-02-07  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
+
+       * erc-button.el: Fixed bug related to nickname buttonizing and text
+       fields due to erc-stamp.
+
+2004-02-07  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
+
+       * CREDITS: Added mention of my change of ERC to use hash tables.
+
+2004-02-07  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
+
+       * AUTHORS: Added myself to the list.
+
+2004-02-05  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el: From Jeremy Maitin-Shepard <jbms@attbi.com>:
+       (erc-remove-channel-user): Use `delq' not `delete'.
+       (erc-get-buffer): Pass PROC through to `erc-buffer-filter'.
+       (erc-process-sentinel): Use `erc' rather than `erc-reconnect' for
+       auto-reconnection.
+
+2004-02-02  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el: (erc-buffer-list-with-nick): Apply `erc-downcase' NICK.
+
+2004-01-30  Alex Schroeder <alex@gnu.org>
+
+       * erc.el: (erc-get-buffer): Use erc-buffer-filter.
+
+2004-01-30  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc.el: From jbms: (erc-get-channel-nickname-list): New function.
+       (erc-get-server-nickname-list): New function.
+       (erc-get-server-nickname-alist): New function.
+       (erc-get-channel-nickname-alist): New function.
+
+2004-01-30  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc-match.el: (erc-add-entry-to-list,
+       erc-remove-entry-from-list): Use `erc-member-ignore-case' to
+       compare entries.
+       (erc-add-pal, erc-add-fool): Fix type bug. Use
+       `erc-get-server-nickname-alist'.
+
+2004-01-29  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc.el: From jbms: Adds xemacs compatibility to hash table
+       channel-members patch.
+
+2004-01-29  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc.el: (erc-update-undo-list): Rewritten. Update
+       buffer-undo-list in place.  Deal with XEmacsesque
+       entries (extents) in the list.
+       (erc-channel-users): Fix unescaped open-paren in left column in
+       docstring.
+
+2004-01-29  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc-ring.el: (erc-replace-current-command): Exclude the prompt
+       from the deleted region and don't redisplay the prompt (because
+       `erc-display-prompt' flushes `buffer-undo-list').
+
+2004-01-29  Johan Bockgard <bojohan@users.sourceforge.net>
+
+       * erc-match.el: (erc-add-entry-to-list): Use `symbol-value' instead
+       of `eval'.
+
+2004-01-28  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: (erc-kill-buffer-function): maphash was missing an
+       argument.
+
+2004-01-28  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * Makefile, erc-autoaway.el, erc-button.el, erc-ibuffer.el,
+       erc-lang.el, erc-list.el, erc-match.el, erc-menu.el, erc-page.el,
+       erc-pcomplete.el, erc-speedbar.el, erc.el: HUGE change by jbms.
+       This makes channel-members a hash, erc-channel-users.
+
+       Modified files: Makefile erc-autoaway.el erc-button.el
+       erc-ibuffer.el erc-lang.el erc-list.el erc-match.el erc-menu.el
+       erc-page.el erc-pcomplete.el erc-speedbar.el erc.el
+
+       The changes are too numerous to document properly. Have fun with
+       the breakage.
+
+2004-01-27  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: (erc-send-input-line): Add a space to empty lines so the
+       server likes them.
+
+2004-01-25  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: erc-send-whitespace-lines: New variable.
+       (erc-send-current-line): Use erc-send-whitespace-lines. Also,
+       removed superflous test for empty line in the mapc, since the
+       blank line test should find all. I do like to be able to send an
+       empty line when i want to!
+       (erc-send-current-line): Check for point being in input line
+       before checking for blank lines.
+
+2004-01-21  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el: (erc-display-line-1): Move `erc-update-undo-list' outside
+       `save-restriction'.  Removing need for temporary variable.
+       (erc-send-current-line): Fix bug introduced by last change, remove
+       complement in blank line regexp.
+
+2004-01-20  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el: (erc-update-undo-list): Add logic to catch the case when
+       `buffer-undo-list' is t, indentation cleanup.
+       (erc-send-current-line):  Reverse logic for matching blank lines.
+
+2004-01-20  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-input-line-position): New variable.  If non-nil,
+       specifies the argument to `recenter' in `erc-scroll-to-bottom'.
+       (erc-scroll-to-bottom): Use it.
+
+2004-01-20  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el: From Johan BockgÃ¥rd <bojohan+news@dd.chalmers.se>:
+       (erc-update-undo-list): New function.  Update `buffer-undo-list'
+       so that calling `undo' in an ERC buffer doesn't mess up the
+       existing text.
+       (erc-display-line-1): Use it.
+
+2004-01-19  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-beg-of-input-line): Use `forward-line' rather than
+       `beginning-of-line'.  Docstring fix.
+       (erc-end-of-input-line): Docstring fix.
+
+2004-01-13  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-display-prompt): Remove the undo list after
+       displaying the prompt, so the user can't undo ERC changes, which
+       breaks some stuff anyways. This way the user can still undo his
+       editing, but not ours.
+
+2004-01-12  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el (erc-scroll-to-bottom): Should recenter on the bottom
+       line, not the second-to-last one.
+
+2004-01-12  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el: (erc-bol): Fix bug introduced in my changes from 2004-01-11.
+
+2004-01-12  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el: From Brian Palmer <bpalmer@gmail.com>
+       (erc-cmd-JOIN): Use `erc-member-ignore-case', rather than
+       `member-ignore-case'.
+
+2004-01-12  Jorgen Schaefer <forcer@users.sourceforge.net>
+
+       * erc.el: There was an inconsistency where the values of op and
+       voice in channel-names could be 'on or 'off after an update, t and
+       nil before.  The intended version was to have t or nil, so i fixed
+       it to do so.
+       (channel-names): Updated docstring.
+       (erc-update-current-channel-member): Clarified docstring, fixed so
+       it sets t or nil on an update as well, not only on an add.
+       (erc-cmd-OPS): Updated not to check for 'on (the only function that
+       did this!)
+
+2004-01-12  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-part-reason-various-alist,
+       erc-update-mode-line-buffer): Fix docstring
+
+2004-01-11  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-update-mode-line): Fix typo.
+
+2004-01-11  Lawrence Mitchell <wence@gmx.li>
+
+       * erc.el (erc-prompt-interactive-input): Removed.
+       (erc-display-prompt): Removed `erc-prompt-interactive-input'
+       option.  (erc-interactive-input-map): Removed.
+
+       Major docstring fixes.
+
+2004-01-07  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el (erc-cmd-OPS): Added this function.
+       (erc-cmd-IDLE): Switched from using erc-display-message-highlight
+       to erc-make-notice.
+
+2004-01-07  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc-list.el (erc-cmd-LIST): Switched from using
+       erc-display-message-highlight to erc-make-notice.
+
+2004-01-07  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el (erc-once-with-server-event): Added a sentence to the
+       docstring.  Now returns the uninterned symbol that is added to the
+       server hook.
+       (erc-cmd-IDLE): Changed to use erc-once-with-server-event instead
+       of erc-once-with-server-event-global.
+
+2004-01-06  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc-list.el (erc-chanlist-hide-modeline): New variable.
+       (erc-chanlist): Now displays message as a notice.  Also hides the
+       modeline if erc-chanlist-hide-modeline is non-nil.
+
+2004-01-05  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el (erc-server-PRIVMSG-or-NOTICE): Now nicks appear as
+       <nick> in query buffers, instead of as *nick*.
+
+2004-01-03  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el (erc-once-with-server-event-global): Changed to return
+       the uninterned symbol that it creates.
+       (erc-cmd-LIST): Changed to clean up hooks that don't run.
+
+2004-01-03  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc-pcomplete.el (pcomplete/erc-mode/IDLE): Added to support new
+       /IDLE command.
+
+2004-01-03  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc.el (erc-once-with-server-event-global): New function.  Like
+       erc-once-with-server-event, except it modifies the global value of
+       the event hook.
+       (erc-cmd-IDLE): New function.  Implements the new /IDLE command.
+       Usage: /IDLE NICK (erc-seconds-to-string): New function.  Converts
+       a number of seconds to an Engligh phrase.
+
+2004-01-02  Francis Litterio <franl@users.sourceforge.net>
+
+       * erc-list.el: Added variable erc-chanlist-mode-hook.
+
+See ChangeLog.03 for earlier changes.
+
+    Copyright (C) 2004 Free Software Foundation, Inc.
+  Copying and distribution of this file, with or without modification,
+  are permitted provided the copyright notice and this notice are preserved.
+
+;; Local Variables:
+;; coding: utf-8
+;; End:
+
+;; arch-tag: cc606d2d-635b-4b36-829b-a50e3c51e2d1
diff --git a/lisp/erc/ChangeLog.05 b/lisp/erc/ChangeLog.05
new file mode 100644 (file)
index 0000000..8fa7254
--- /dev/null
@@ -0,0 +1,1228 @@
+2005-11-23  Johan BockgÃ¥rd  <bojohan@users.sourceforge.net>
+
+       * erc.el (erc-cmd-SAY): Strip leading space in input line.
+
+2005-10-29  Michael Olson  <mwolson@gnu.org>
+
+       * FOR-RELEASE: Add stuff that needs to be done before the 5.1
+       release.  Longer-term items can be added to the 5.2 section.
+
+       * Makefile (SITEFLAG): New variable that indicates what variant of
+       "--site-flag" to use.  XEmacs needs "-site-flag".
+       (INSTALLINFO): New variable indicating how we should call
+       install-info when installing documentation.
+       (erc-auto.el, .elc.el): Use $(SITEFLAG).
+
+       * NEWS: Note that last release was 5.0.4.
+
+       * erc.texi: Initial and incomplete draft of ERC documentation.
+       Commence collaborate-documentation-hack-mode :^) .
+
+2005-10-29  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-ring.el (erc-replace-current-command): Revert last change
+       since it made the prompt disappear when using `erc-next-command'
+       and `erc-previous-command'.
+
+2005-10-28  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el (erc-input-marker): New variable that indicates the
+       position where text from the user begins, after the prompt.
+       (erc-mode-map): Bind <HOME> to erc-bol, just like C-a.
+       (erc): Initialize erc-input-marker.
+       (erc-display-prompt): Even in case where no prompt is desired by
+       the user, clear the undo buffer and set the input marker.
+       (erc-bol, erc-user-input): Simplify by using erc-input-marker.
+
+       * erc-pcomplete.el (pcomplete-parse-erc-arguments): Use
+       erc-insert-marker.
+
+       * erc-ring.el (erc-previous-command)
+       (erc-replace-current-command): Use erc-insert-marker.
+
+       * erc-spelling.el (erc-spelling-init): Make sure that even Emacs21
+       obeys erc-spelling-flyspell-verify.
+       (erc-spelling-flyspell-verify): Use erc-input-marker.  This should
+       make it considerably faster when switching to a buffer that has
+       seen a lot of activity since last viewed.
+
+2005-10-25  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-backend.el (erc-server-version, 004): Re-added setting of
+       `erc-server-version'.  It doesn't hurt to set, and it could be
+       used in modules or users' settings.
+
+       * NEWS: Added descriptions of some new features.
+
+2005-10-20  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-match.el (erc-current-nick-highlight-type): Set to `keyword'
+       as default.
+       (erc-beep-match-types): New variable.
+       (erc-text-matched-hook): Doc fix.  Added `erc-beep-on-match' to
+       customization options.
+       (erc-beep-on-match): New function.  If the MATCH-TYPE is found in
+       `erc-beep-match-types', beep.
+
+       * erc-compat.el (erc-make-obsolete, erc-make-obsolete-variable):
+       New functions to deal with the difference in the number of
+       arguments accepted by `make-obsolete' and `make-obsolete-variable'
+       in Emacs and XEmacs.
+
+       * erc.el, erc-nets.el: Use `erc-make-obsolete' and
+       `erc-make-obsolete-variable'.
+
+       * erc-compat.el (erc-make-obsolete, erc-make-obsolete-variable):
+       Handle `wrong-number-of-arguments' error instead of checking for
+       xemacs feature as future versions of XEmacs might accept three
+       arguments.
+
+2005-10-18  Edward O'Connor  <ted@oconnor.cx>
+
+       * erc.el: Tell emacs-lisp-mode how to font-lock define-erc-module
+       docstrings.
+
+2005-10-08  Diane Murray  <disumu@x3y2z1.net>
+
+       * AUTHORS, CREDITS, ChangeLog, ChangeLog.2002, ChangeLog.2004:
+       Updated my email address.
+
+2005-10-06  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el (erc-send-input-line, erc-cmd-KICK, erc-cmd-PART)
+       (erc-cmd-QUIT, erc-cmd-TOPIC, erc-kill-server, erc-kill-channel):
+       Adapt to new TARGET parameter of erc-server-send.
+
+       * erc-backend.el (erc-server-connect): Don't specify encoding for
+       erc-server-process, since we set this each time we send a line to
+       the server.
+       (erc-encode-string-for-target): Remove.
+       (erc-server-send): Allow TARGET to be specified.  This was how it
+       used to be before my more-backend work.  Set encoding of server
+       process just before sending text to it.  Associate encoding with
+       text if we are using the queue.
+       (erc-server-send-queue): Pull encoding from queue.
+       (erc-message, erc-send-ctcp-message, erc-send-ctcp-notice): Adapt
+       to new TARGET parameter of erc-server-send.
+
+2005-10-05  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el (erc-toggle-debug-irc-protocol): Use erc-view-mode-enter
+       rather than view-mode.
+
+       * erc-backend.el (erc-encode-string-for-target): If given a nil or
+       empty string, return "".
+       (erc-server-send-queue): XEmacs fix: Use erc-cancel-timer rather
+       than cancel-timer.
+
+       * erc-compat.el (erc-view-mode-enter): New function that is
+       aliased to the correct way of entering view-mode.
+
+       * erc-match.el (erc-log-matches-make-buffer): Use
+       erc-view-mode-enter rather than view-mode-enter.
+
+2005-10-05  Edward O'Connor  <ted@oconnor.cx>
+
+       * erc-backend.el (erc-encode-string-for-target): If str is nil,
+       pass the empty string to erc-encode-coding-string instead, which
+       allows one to /part and /quit without providing a reason again.
+
+2005-10-03  Michael Olson  <mwolson@gnu.org>
+
+       * erc-backend.el (erc-message, erc-send-ctcp-message)
+       (erc-send-ctcp-notice): Encode string for target before sending.
+
+       * erc.el (erc-cmd-KICK, erc-cmd-PART, erc-cmd-QUIT, erc-cmd-TOPIC)
+       (erc-kill-server, erc-kill-channel): Ditto.
+
+2005-09-05  Johan BockgÃ¥rd  <bojohan@users.sourceforge.net>
+
+       * erc-page.el (erc-ctcp-query-PAGE): (message text) -> (message
+       "%s" text).
+       (erc-cmd-PAGE): Simplify regexp. Put `do-not-parse-args' t.
+
+2005-09-05  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el (erc-flood-limit, erc-flood-limit2): Remove since they
+       are no longer needed.
+       (erc-send-input): Detect whether we want flood control to be
+       active.  The previous behavior was to always force the message.
+       (erc-toggle-flood-control): Adapt to new flood control method.  No
+       more 'strict.
+       (erc-cmd-SV): Use concat rather than
+       format-time-string.
+       (erc-format-target, erc-format-target-and/or-server): Shorten
+       logic statements.
+
+       * erc-compat.el (erc-emacs-build-time): Use a string
+       representation rather than trying to coerce a time out of a string
+       on XEmacs.
+
+       * erc-identd.el (erc-identd-start): Use make-network-process
+       instead of open-network-stream.  Error out if this is not defined.
+
+       * erc-backend.el (erc-send-line): New command that sends a line
+       using flood control, using a callback for display.  It isn't used
+       yet.
+
+2005-09-04  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el: Add defvaralias and make-obsolete-variable for
+       erc-default-coding-system.
+       (channel-topic, channel-modes, channel-user-limit, channel-key,
+       invitation, away, channel-list, bad-nick): Rename globally to
+       erc-{name-of-variable}.
+
+2005-09-03  Johan BockgÃ¥rd  <bojohan@users.sourceforge.net>
+
+       * erc.el (erc-message): Simplify regexp.
+       (erc-cmd-DEOP, erc-cmd-OP): Simplify.
+
+2005-08-29  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el: Alias erc-send-command to erc-server-send.  ErBot needs
+       this to work without modification.  Add defvaralias for
+       erc-process.  Make this and the other backwards-compatibility
+       functions and variables be marked obsolete as of ERC 5.1.
+
+       * erc-backend.el: Add autoload for erc-log macro.
+       (erc-server-connect): Set some variables before defining process
+       handlers.  It probably doesn't make any difference.
+
+2005-08-26  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el: Add defvaralias for erc-announced-server-name, since
+       this seems to be widely used.
+
+2005-08-17  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el (erc): Remove unnecessary boundp check.
+
+       * erc-autoaway.el: Fix compiler warning.
+
+       * erc-backend.el (erc-server-version): Since this isn't used by
+       any code, and isn't generally useful, remove it.
+       (erc-server-send-queue): Use erc-current-time rather than
+       float-time.
+       (004): Don't set erc-server-version.
+
+       * erc-dcc.el (erc-dcc-chat-request, erc-dcc-get-parent): Move to
+       fix a compiler warning.
+
+       * erc-ibuffer.el (erc-server): Remove unnecessary boundp check.
+
+       * erc-identd.el (erc-identd-start): Use read-string instead of
+       read-input.
+
+       * erc-imenu.el (erc-unfill-notice): Use a while loop instead of
+       replace-regexp.
+
+       * erc-nicklist.el: Add conditional dependency on erc-bbdb.
+       (erc-nicklist-insert-contents): Tighten some regexps.
+
+       * erc-notify.el (erc-notify-list): Docfix.
+
+       * erc-spelling.el (erc-spelling-dictionaries): Add :type and
+       :group to silence a compiler warning.
+
+2005-08-14  Michael Olson  <mwolson@gnu.org>
+
+       * erc-backend.el (erc-session-server, erc-session-port)
+       (erc-announced-server-name, erc-server-version)
+       (erc-server-parameters): Moved here from erc.el.
+       (erc-server-last-peers): Moved, renamed from last-peers.
+       (erc-server-lag): Moved, renamed from erc-lag.
+       (erc-server-duplicates): Moved, renamed from erc-duplicates.
+       (erc-server-duplicate-timeout): Moved, renamed from
+       erc-duplicate-timeout.
+       (erc-server): New customization group hosting all options from
+       this file.
+       (erc-server-prevent-duplicates): Moved, renamed from
+       erc-prevent-duplicates.
+       (erc-server-duplicate-timeout): Moved, renamed from
+       erc-duplicate-timeout.
+       (erc-server-auto-reconnect, erc-split-line-length)
+       (erc-server-coding-system, erc-encoding-coding-alist)
+       (erc-server-connect-function, erc-server-flood-margin)
+       (erc-server-flood-penalty): Change group to 'erc-server.
+       (erc-server-send-ping-interval): Moved, renamed from
+       erc-ping-interval.
+       (erc-server-ping-handler): Moved, renamed from erc-ping-handler.
+       (erc-server-setup-periodical-server-ping): Moved, renamed from
+       erc-setup-periodical-server-ping.
+       (erc-server-connect): Add to docstring.  Move more initialization
+       here.
+       (erc-server-processing-p): Docfix.
+       (erc-server-connect): Use 'raw-text like in the original version.
+       (erc-server-filter-function): Don't reset process coding system.
+
+       * erc-stamp.el (erc-add-timestamp): If the text at point is
+       invisible, don't insert a timestamp.  Thanks to Pascal
+       J. Bourguignon for the suggestion.
+
+       * erc-match.el (erc-text-matched-hook): Don't hide fools by
+       default, but include it in the available options.
+
+2005-08-13  Michael Olson  <mwolson@gnu.org>
+
+       * erc-*.el: s/erc-send-command/erc-server-send/g.
+       s/erc-process/erc-server-process/g (sort of).  Occasional
+       whitespace and indentation fixes.
+
+       * erc-backend.el: Specify a few local variables for indentation.
+       Take one item off of the TODO list.
+       (erc-server-filter-data): Renamed from erc-previous-read.  From
+       circe.
+       (erc-server-processing-p): New variable that indicates when we're
+       currently processing a message.  From circe.
+       (erc-split-line-length): New option that gives the maximum line
+       length of a single message.  From circe.
+       (erc-default-coding-system): Moved here from erc.el.
+       (erc-split-line): Renamed from erc-split-command and taken from
+       circe.
+       (erc-connect-function, erc-connect, erc-process-sentinel-1)
+       (erc-process-sentinel, erc-flood-exceeded-p, erc-send-command)
+       (erc-message, erc-upcase-first-word, erc-send-ctcp-message)
+       (erc-send-ctcp-notice): Moved here from erc.el.
+       (erc-server-filter-function): Renamed from erc-process-filter.
+       From circe.
+       (erc-server-process): Renamed from `erc-process' and moved here
+       from erc.el.
+       (erc-server-coding-system): Renamed from
+       `erc-default-coding-system'.
+       (erc-encoding-coding-alist): Moved here from erc.el.
+       (erc-server-flood-margin, erc-server-flood-penalty):
+       (erc-server-flood-last-message, erc-server-flood-queue):
+       (erc-server-flood-timer): New options from circe that allow
+       tweaking of flood control.
+       (erc-server-connect-function): Renamed from erc-connect-function.
+       (erc-flood-exceeded-p): Removed.
+       (erc-coding-system-for-target)
+       (erc-encode-string-for-target, erc-decode-string-from-target):
+       Moved here from erc.el
+       (erc-server-send): Renamed from erc-send-command.  Adapted from
+       the circe function by the same name.
+       (erc-server-send-queue): New function from circe that implements
+       handling of a flood queue.
+       (erc-server-current-nick): Renamed from current-nick.
+       (erc-server-quitting): Renamed from `quitting'.
+       (erc-server-last-sent-time): Renamed from `last-sent-time'.
+       (erc-server-last-ping-time): Renamed from `last-ping-time'.
+       (erc-server-lines-sent): Renamed from `lines-sent'.
+       (erc-server-auto-reconnect): Renamed from `erc-auto-reconnect'.
+       (erc-server-coding-system): Docfix.
+       (erc-server-connect): Renamed from `erc-connect'.  Require SERVER
+       and PORT parameters.  Initialize several variables here.  Don't
+       set `erc-insert-marker'.  Use a per-server coding system via
+       erc-server-default-encoding.
+
+       * erc.el (erc-version-string): Changed to indicate we are running
+       the `more-backend' branch.
+       (erc-send-single-line): Implement flood control using
+       erc-split-line.
+       (erc-send-input): Move functionality of erc-send-single-line in
+       here.
+       (erc-send-single-line): Assimilated!
+       (erc-display-command, erc-display-msg): Handle display hooks.
+       (erc-auto-reconnect, current-nick, last-sent-time)
+       (last-ping-time, last-ctcp-time, erc-lines-sent, erc-bytes-sent)
+       (quitting): Moved to erc-backend.el.
+       (erc): Docfix.  Don't initialize quite so many things here.
+
+2005-08-10  Michael Olson  <mwolson@gnu.org>
+
+       * debian/copyright (Copyright): Remove notices for 4 people, since
+       they didn't contribute legally-significant changes, or have had
+       these changes overwritten.
+
+       * erc-log.el: Remove copyright notice.
+
+       * erc.el: Remove 3 copyright notices.
+
+2005-08-09  Michael Olson  <mwolson@gnu.org>
+
+       * debian/changelog: Create 5.0.4-3 package.  This doesn't serve
+       any purpose other than to thank Romain Francoise for some advice.
+
+       * Makefile (debrelease): Allow last upload and extra build options
+       to be specified.
+
+2005-08-08  Michael Olson  <mwolson@gnu.org>
+
+       * debian/changelog: Create 5.0.4-2 package.
+
+       * debian/control (Uploaders): Add Romain Francoise.
+       (Standards-Version): Update to 3.6.2.
+       (Depends): Add `emacsen'.
+
+       * debian/scripts/startup.erc (load-path): Minor whitespace fixup.
+
+       * Makefile (clean): Split target from realclean and make it remove
+       files that aren't packaged in releases.
+       (clean, release): Minor cleanups.
+       (debrelease): Use debuild rather than dpkg-buildpackage since the
+       former calls lintian.  Minor cleanups.
+       (debrelease-mwolson): New target that removes old Debian packages,
+       calls debrelease, and copies the resulting package to my dist dir.
+       (upload): New target that automates the process of uploading an
+       ERC release to sourceforge.
+
+       * erc.el (erc-mode): Use `make-local-variable' instead of
+       `make-variable-buffer-local'.
+
+2005-07-12  Michael Olson  <mwolson@gnu.org>
+
+       * debian/changelog: Build 5.0.4-1.
+
+       * Makefile (release): Prepare zip file in addition to tarball.
+
+       * NEWS: Add item for the undo fix.
+
+2005-07-09  Michael Olson  <mwolson@gnu.org>
+
+       * erc-nicklist.el (erc-nicklist-insert-contents): Check
+       erc-announced-name before erc-session-server.  Make sure that we
+       can never get a stringp (nil) error.
+       (erc-nicklist-call-erc-command): If given no command, do nothing.
+       This fixes an error that used to occur when a stray mouse click
+       was made outside of the popup window, but on the erc-nicklist
+       menu.
+
+       * erc-bbdb.el (erc-bbdb-search-name-and-create): Get rid of the
+       infinite input loop when you want to create a new record.  Replace
+       most of that with a completing read of existing nicks.  If no nick
+       is chosen, create a new John Doe record.  The net effect of this
+       is that the old behavior is re-instated, with the addition of one
+       completing read that happens when you do a /whois.
+
+2005-07-09  Johan BockgÃ¥rd  <bojohan@users.sourceforge.net>
+
+       * erc.el (erc-process-input-line): Docfix.
+       (erc-update-mode-line-buffer): Use `erc-propertize' instead of
+       `propertize'.
+       (erc-propertize): Move to erc-compat.el.
+
+       * erc-compat.el (erc-propertize): Move here from erc.el. Always
+       return a copy of the string (like `propertize' in GNU Emacs).
+
+       * erc-nicklist.el (erc-nicklist-icons-directory)
+       (erc-nicklist-voiced-position)
+       (erc-nicklist-insert-medium-name-or-icon): Docfix.
+       (erc-nicklist-insert-contents): Simplify.
+       (erc-nicklist-mode-map): Bind RET instead of `return'. Bind
+       `down-mouse-3' instead of `mouse-3'.
+       (erc-nicklist-kbd-cmd-QUERY): Cleanup regexp.
+       (erc-nicklist-channel-users-info): Docfix. Simplify.
+
+2005-07-02  Michael Olson  <mwolson@gnu.org>
+
+       * images: New directory containing the images that are used by
+       erc-nicklist.el.  These are from Gaim, and are thought to be
+       available under the terms of the GPL.
+
+       * erc-bbdb.el: Add local variables section to preserve tabs, since
+       that is the style used throughout this file.  Apply patch from
+       Edgar Gonçalves as follows.
+       (erc-bbdb-bitlbee-name-field): New variable that indicates the
+       field name to use for annotating the "displayed name" of a bitlbee
+       contact.
+       (erc-bbdb-irc-highlight-field): Docfix.
+       (erc-bbdb-search-name-and-create): Prompt the user for the name of
+       a contact if none was found.  Merge the new entries into the
+       specified contact.  If new arg SILENT is non-nil, do not prompt
+       the user for a name or offer to merge the new entry.
+       (erc-bbdb-insinuate-and-show-entry): New arg SILENT is accepted,
+       which is passed on to erc-bbdb-search-name-and-create.
+       (erc-bbdb-whois): Tell erc-bbdb-search-name-and-create to prompt
+       for name if necessary.
+       (erc-bbdb-JOIN, erb-bbdb-NICK): Forbid
+       erc-bbdb-search-name-and-create from prompting for a name.
+
+       * erc-nicklist.el: Add local variables section to preserve tabs,
+       since that is the style used throughout this file.  Apply patch
+       from Edgar Gonçalves as follows.
+       (erc-nicklist-use-icons): New option; if non-nil, display an icon
+       instead of the name of the chat medium.
+       (erc-nicklist-icons-directory): New option indicating the path to
+       the PNG files that are used for chat icons.
+       (erc-nicklist-use-icons): New option indicating whether to put
+       voiced nicks on top, bottom, or not to differentiate them.  The
+       default is to put them on the bottom.
+       (erc-nicklist-bitlbee-connected-p): New variable that indicates
+       whether or not we are currently using bitlbee.  An attempt will be
+       made to auto-detect the proper value.  This is bound in the
+       `erc-nicklist-insert-contents' function.
+       (erc-nicklist-nicklist-images-alist): New variable that maps a
+       host type to its icon.  This is set by `erc-nicklist'.
+       (erc-nicklist-insert-medium-name-or-icon): New function that
+       inserts an icon or string that identifies the current host type.
+       (erc-nicklist-search-for-nick): New function that attempts to find
+       a BBDB record that corresponds with this contact given its
+       finger-host.  If found, return its bitlbee-nick field.
+       (erc-nicklist-insert-contents): New function that inserts the
+       contents of the nick list, including text properties and images.
+       (erc-nicklist): Populate `erc-nicklist-images-alist'.  Move
+       nicklist content generation code to
+       `erc-nicklist-insert-contents'.
+       (erc-nicklist-mode-map): Map C-j to erc-nicklist-kbd-menu and RET
+       to erc-nicklist-kbd-cmd-QUERY.
+       (erc-nicklist-call-erc-command): Make use of
+       `switch-to-buffer-other-window'.
+       (erc-nicklist-cmd-QUERY): New function that opens a query buffer
+       for the given contact.
+       (erc-nicklist-kbd-cmd-QUERY): Ditto; contains most of the code.
+       (erc-nicklist-kbd-menu): New function that shows the nicklist
+       action menu.
+       (erc-nicklist-channel-users-info): Renamed from
+       `erc-nicklist-channel-nicks'.  Implement sorting voiced users.
+
+2005-06-29  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
+
+       * erc-nickserv.el (erc-nickserv-alist): Fix regexp for Azzurra.
+
+2005-06-26  Michael Olson  <mwolson@gnu.org>
+
+       * erc-autojoin.el (erc-autojoin-add, erc-autojoin-remove): Use
+       `erc-session-server' if `erc-announced-server-name' is nil.  This
+       happens when servers don't send a 004 message.
+
+       * erc.el (erc-quit-server): Ditto.
+
+       * erc-ibuffer.el (erc-server, erc-server-name): Ditto.
+
+       * erc-notify.el (erc-notify-JOIN, erc-notify-NICK)
+       (erc-notify-QUIT): Ditto.
+
+2005-06-24  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
+
+       * erc.el (erc-default-coding-system)
+       (erc-handle-user-status-change): Docstring fix.
+       (with-erc-channel-buffer): Removed.
+       (erc-ignored-reply-p): Replace `with-erc-channel-buffer' with
+       `erc-with-buffer'.
+       (erc-display-line-1): Fix broken undo.
+
+2005-06-23  Michael Olson  <mwolson@gnu.org>
+
+       * CREDITS: Add entries for Luigi Panzeri and Andreas Schwab.
+
+       * erc-nickserv.el (erc-nickserv-alist): Add entries for Azzurra
+       and OFTC.  Thanks to Luigi Panzeri and Andreas Schwab for
+       providing these.
+
+2005-06-16  Michael Olson  <mwolson@gnu.org>
+
+       * CREDITS: Add John Paul Wallington.
+
+       * erc.el: Thanks to John Paul Wallington for the following.
+       (erc-nickname-in-use): Use `string-to-number' instead of
+       `string-to-int'.
+
+       * erc-dcc.el (erc-dcc-handle-ctcp-send)
+       (erc-dcc-handle-ctcp-chat, erc-dcc-get-file)
+       (erc-dcc-chat-accept): Ditto.
+
+       * erc-identd.el (erc-identd-start): Ditto.
+
+2005-06-16  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
+
+       * erc.el (erc-mode-map): Suppress `font-lock-fontify-block' key
+       binding since it destroys face properties.
+
+2005-06-08  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el (erc-cmd-UNIGNORE): Use `erc-member-ignore-case' instead
+       of `member-ignore-case'.  Thanks to bpalmer for the heads up.
+
+2005-06-06  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el (erc-modules): Fix a mistake I made when editing this a
+       few days ago.  Modes should now be disabled properly.
+       (erc-cmd-BANLIST, erc-cmd-MASSUNBAN): Remove unnecessary call to
+       `format'.  Thanks to Andreas Schwab for reporting this.
+
+       * debian/changelog: Close "README file missing" bug.
+
+       * debian/rules (binary-erc): Install README file.
+
+2005-06-03  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el (erc-with-buffer): Set `lisp-indent-function' so Emacs
+       Lisp mode knows how to indent erc-with-buffer blocks.
+       (with-erc-channel-buffer): Ditto.
+       (erc-with-all-buffers-of-server): Ditto.
+       (erc-modules): Use pcomplete by default, not completion, since
+       erc-complete.el is deprecated.  Use `fboundp' instead of
+       `symbol-value' to check for existence of a function before calling
+       it.  This was causing an error when untoggling the `completion'
+       option and trying to save via the customize interface.
+
+       * erc-track.el (erc-modified-channels-update): If a buffer is not
+       currently connected, remove it from the modified channels list.
+       This should fix the problem where residue was left on the mode
+       line after quitting ERC.
+
+       * erc-list.el (erc-prettify-channel-list): Docfix; thanks to John
+       Paul Wallington for reporting this.
+
+2005-05-31  Michael Olson  <mwolson@gnu.org>
+
+       * debian/changelog: First draft of entries for the 5.0.3 release.
+
+       * debian/README.Debian: Note that ERC will now install correctly
+       on versions of Emacs or XEmacs that do not have the `format-spec'
+       library.  Correct some grammar and prune the content a bit.
+
+       * debian/scripts/install (emacs20): Remove line since we no longer
+       need to deal with format-spec.el.
+
+       * NEWS: Add entries for the upcoming 5.0.3 release.
+
+       * erc.el: Don't require format-spec since this is provided in
+       erc-compat.el now.
+       (erc-process-sentinel, erc-setup-periodical-server-ping): Use
+       `erc-cancel-timer' instead of `cancel-timer'.
+       (erc-version-string): Update to 5.0.3.
+
+       * erc-autoaway.el (autoaway, erc-autoaway-reestablish-idletimer):
+       Use `erc-cancel-timer' instead of `cancel-timer'.
+
+       * erc-compat.el (format-spec, format-spec-make): If we cannot load
+       the `format-spec' library, provide versions of these functions.
+       This should keep problems from surfacing with Emacs21 Debian
+       builds.
+       (erc-cancel-timer): New function created to take the place of
+       `cancel-timer' since XEmacs calls it something else.
+
+       * erc-track.el (erc-modified-channels-update): Accept any number
+       of arguments, which are ignored.  This allows it to be run from
+       `erc-disconnected-hook' without extra bother.
+       (track): Add `erc-modified-channels-update' to
+       `erc-disconnected-hook' so that the indicators are removed
+       correctly in some edge cases.
+       (erc-modified-channels-display): Make sure that we never pass nil
+       to the function in `erc-track-shorten-function'.  This happens
+       when we have deleted buffers in `erc-modified-channels-alist'.
+       Also, make sure that the buffer has a non-nil short-name before
+       adding it to the string list.  This should fix some XEmacs
+       warnings when running /quit with unchecked buffers, as well as get
+       rid of a stray buffer problem (or so it is hoped).
+
+2005-05-31  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
+
+       * erc-replace.el, erc-speak.el: Clean up comment formatting.
+
+       * erc-ring.el (ring, erc-input-ring-index, erc-clear-input-ring):
+       Clean up docstring formatting.
+
+2005-05-30  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
+
+       * erc.el (erc-cmd-BANLIST, erc-cmd-MASSUNBAN): Delete superfluous
+       arg to `format'.
+       (erc-load-irc-script): Use `insert-file-contents' instead of
+       `insert-file'. Simplify.
+
+2005-05-29  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el (erc-version-string): Move this up so that it is
+       evaluated before the `require' statements.  Not a major change.
+
+2005-04-27  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
+
+       * erc.el (erc-complete-word): Simplify.
+
+2005-04-27  Michael Olson  <mwolson@gnu.org>
+
+       * Makefile (debrelease): Use a slightly different approach when
+       removing CVS and Arch cruft.
+
+       * debian/changelog: Update for 5.0.2-1 package.
+
+2005-04-25  Michael Olson  <mwolson@gnu.org>
+
+       * erc-autoaway.el (erc-autoaway-reestablish-idletimer): Move code
+       block higher in file to fix a load failure when using Emacs21.
+       Thanks to Daniel Brockman for the report and fix.
+
+2005-04-24  Adrian Aichner  <adrian@xemacs.org>
+
+       * erc-backend.el (JOIN): save-excursion so that
+       `erc-current-logfile' inserts into the correct channel buffers
+       when using erc-log-insert-log-on-open in combination with autojoin
+       to multiple channels.
+
+2005-04-17  Adrian Aichner  <adrian@xemacs.org>
+
+       * erc-log.el: Remove stray whitespace.
+       * erc.el: Ditto.
+
+2005-04-09  Aidan Kehoe  <kehoea@parhasard.net>
+
+       * erc.el: autoload erc-select-read-args, which, because it parses
+       erc-select's args, can be called before erc.el is loaded. 
+
+2005-04-07  Edward O'Connor  <ted@oconnor.cx>
+       
+       * erc-viper.el: Remove final newlines from previously-existing ERC
+       buffers. (Minor bug fix.)
+
+2005-04-06  Michael Olson  <mwolson@gnu.org>
+
+       * Makefile (debrelease): Ignore errors from deleting Arch and CVS
+       metadata.
+
+2005-04-05  Michael Olson  <mwolson@gnu.org>
+
+       * ChangeLog, CREDITS, AUTHORS: Correct name and email address of
+       Marcelo Toledo.
+
+2005-04-04  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el (erc-modules): Add entry for spelling module.
+
+       * erc-spelling.el: Add autoload line.
+
+       * erc-backend.el: Apply latest non-ascii patch from Kai Fan.
+       (erc-decode-parsed-server-response): Search
+       erc-response.command-args for channel name.  Decode the
+       erc-response struct using this channel name as key according to
+       the `erc-encoding-coding-alist'.
+
+       * erc-track.el: Apply patch from Henrik Enberg.
+       (erc-modified-channels-object): Use optimal amount of whitespace
+       around modified channels indicator.
+
+2005-04-02  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
+
+       * erc.el (define-erc-module, erc-with-buffer)
+       (erc-with-all-buffers-of-server, with-erc-channel-buffer): Add
+       edebug-form-spec.
+
+       * erc-compat (erc-define-minor-mode): Ditto.
+
+2005-03-29  Jorgen Schaefer  <forcer@forcix.cx>
+
+       * erc-spelling.el: New file.
+
+2005-03-24  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
+
+       * erc-backend.el (define-erc-response-handler): Add
+       `definition-name' property to constructed symbols so that
+       find-function and find-variable will find them.
+
+2005-03-21  Michael Olson  <mwolson@gnu.org>
+
+       * erc-dcc.el, erc-goodies.el, erc-list.el, erc-notify.el,
+       erc-ring.el, erc.el: Copyright assignment occurred.
+
+       * debian/scripts/install: Make a shell wrapper around the original
+       Makefile and inline the Makefile.  The problem is that Debian
+       passes all the Emacs variants at once, rotating them at every
+       invocation of the install script, which happens once per variant.
+       This caused each installation to happen N-1 times more often than
+       it should have.  As a result, we need to only deal with the first
+       argument.
+       (ELFILES): Only add format-spec.el if we are compiling for
+       emacs21.  Don't filter out erc-compat.el.
+       (SITEFLAG): New variable that indicates that the "nosite" option
+       should look like.
+       (.DEFAULT): Use $(FLAVOUR) instead of $@ for clarity.
+
+       * debian/rules: Install NEWS file and compress it.
+
+       * debian/maint/postinst: Be more cautious about configuration
+       step.
+
+       * debian/copyright (Copyright): Another assignment came in.
+
+       * debian/control (Standards-Version): Update to a newer version as
+       recommended by lintian.
+
+       * debian/changelog: Changes made for the Debian package.
+
+       * debian/README.Debian: Keep only the General Notes section.
+
+       * NEWS: Move old history items here from debian/README.Debian.
+
+       * Makefile (SNAPSHOTDATE): Deprecate this option since we hope to
+       release more often.
+
+2005-03-20  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el (erc-define-catalog, `ctcp-request-to'): Fix typo (%: ->
+       %t:).
+
+2005-03-01  Michael Olson  <mwolson@gnu.org>
+
+       * erc-log.el (erc-save-buffer-in-logs): Replace tabs with spaces
+       in code indentation.
+
+2005-02-28  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el (erc-display-message): Apply corrected patch from Henrik
+       Enberg.
+
+2005-02-27  Michael Olson  <mwolson@gnu.org>
+
+       * erc.el (erc-display-message): Apply patch from Henrik Enberg.
+       Check here to see if a message should be hidden, rather than
+       relying on code in each individual command.
+       (erc-version-string): Add "(CVS)" to the version string for
+       clarity.
+
+       * erc-backend.el (JOIN, KICK, MODE, NICK, PART, QUIT, TOPIC):
+       Don't check `erc-hide-list' here.
+
+       * erc-list.el, erc-match.el, erc.el, debian/copyright: Update
+       copyright information as a few more people have assignments
+       registered.
+
+2005-02-06  Michael Olson  <mwolson@gnu.org>
+
+       * erc-backend.el: Apply patch from Kai Fan for non-ASCII character
+       support.
+       (erc-parse-server-response): Add call to
+       `erc-decode-parsed-server-response'.
+       (erc-decode-parsed-server-response): New function that decodes a
+       pre-parsed server response before it can be handled.
+       (PRIVMSG): Comment out call to `erc-decode-string-from-target'.
+       (TOPIC): Ditto.
+
+2005-02-01  Jorgen Schaefer  <forcer@users.sourceforge.net>
+
+       * erc.el (erc-process-sentinel-1): Don't reconnect on connection
+       refused. This error is reported differently when using
+       open-network-stream-nowait.
+
+2005-01-26  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el (erc-cmd-APPENDTOPIC, erc-set-topic): The control
+       character in `channel-topic' was changed to \C-o - replaced \C-c
+       with \C-o so that these functions work as expected again.
+       (erc-get-channel-mode-from-keypress): Doc fix.
+
+2005-01-25  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el, erc-button.el, erc-compat.el, erc-goodies.el,
+       erc-match.el, erc-nets.el, ChangeLog, NEWS: Merged bug fixes made
+       on release_5_0_branch since 5.0.1 release.
+
+2005-01-24  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
+
+       * erc.el (erc-input-action): Quote `erc-action-history-list' so
+       that input history actually works.
+       (erc-process-ctcp-query): Fix and simplify logic.
+       (erc-get-channel-mode-from-keypress): Use `C-' string syntax.
+       (erc-load-irc-script-lines): Use `erc-command-indicator' instead
+       of `erc-prompt'.
+
+2005-01-23  Edward O'Connor  <ted@oconnor.cx>
+       
+       * erc-viper.el: Ensure that `viper-comint-mode-hook' runs in
+       buffers whose `erc-mode-hook' has already run when this file is
+       loaded.
+       Explicitly `require' erc.el.
+
+2005-01-22  Edward O'Connor  <ted@oconnor.cx>
+       
+       * erc.el (erc-mode): Remove frobbing of `require-final-newline'.
+
+       * erc-log.el (erc-save-buffer-in-logs): Remove frobbing of
+       `require-final-newline'.
+
+       * erc-viper.el: New file. This is where all ERC/Viper
+       compatiibilty code should live. When and if ERC is bundled with
+       Emacs, some of the hacks in this file should be merged into Viper
+       itself.
+
+2005-01-21  Edward O'Connor  <ted@oconnor.cx>
+       
+       * erc.el (erc-mode): Set `require-final-newline' to nil in ERC
+       buffers. This prevents a Viper misfeature whereby extraneous
+       newlines are inserted into the ERC buffer when switching between
+       viper states.
+
+       * erc-log.el (erc-save-buffer-in-logs): Bind `require-final-newline'
+       to t when calling `write-region' to ensure that further log
+       entries start on fresh lines.
+       
+2005-01-21  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-button.el (erc-button-add-face): Reverted my change to the
+       order faces since it had the unwanted effect of putting the button
+       face after all others.
+       (erc-button-face-has-priority): Removed this variable as it is not
+       necessary anymore - it was used to compensate for the above
+       mentioned change.
+
+       * NEWS: Added the latest fixes.
+
+2005-01-20  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-button.el, erc-match.el:
+       (erc-button-syntax-table, erc-match-syntax-table): Added \ as a
+       legal character for nicknames.
+
+       * erc-nets.el (erc-server-select): Fixed so that only networks
+       with servers found in `erc-server-alist' are available as choices.
+
+       * erc.el, erc-compat.el, erc-goodies.el:
+       (erc-replace-match-subexpression-in-string): New function.  Needed
+       because `replace-match' in XEmacs doesn't replace regular
+       expression subexpressions in strings, only in buffers.
+       (erc-seconds-to-string, erc-controls-interpret): Use the new
+       function.
+
+       * erc-button.el (erc-button-add-button): Use the `:button-face'
+       key combined with an `erc-mode' local `widget-button-face' set to
+       nil to get the widget overlay face suppressed in XEmacs.
+
+2005-01-19  Francis Litterio  <franl@world.std.com>
+
+       * erc-button.el (erc-button-add-face): The face added by this
+       function is more important than the existing text's face, so we
+       now prepend erc-button-face to the list of existing faces when
+       adding a button.  To instead append erc-button-face to existing
+       faces, set variable `erc-button-face-has-priority' to nil.
+       (erc-button-face-has-priority): New variable to control how
+       erc-button-add-face adds erc-button-face to existing faces.
+       (erc-button-press-button): Silenced a byte-compiler warning about
+       too few arguments in a call to `error'.
+
+2005-01-19  Diane Murray  <disumu@x3y2z1.net>
+
+       * NEWS: Added list of 5.0.1 fixes.
+
+2005-01-19  Michael Olson  <mwolson@gnu.org>
+
+       * AUTHORS: Move to format that cscvs can understand.  As an added
+       perk, entries line up nicer.
+
+       * erc.el, erc-fill.el, erc-pcomplete.el, debian/copyright: Merge a
+       few more copyright lines thanks to Alex Schroeder's BBDB file.
+
+       * Makefile: Change version to correspond with our new scheme.
+
+2005-01-18  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-list.el (erc-chanlist-channel-line-regexp): Now matches
+       private channels, the channels `#' and `&', and channels with
+       names including non-ascii characters.
+       (erc-chanlist-join-channel): Don't attempt to join private
+       channels since the channel name is unknown.
+
+       * erc-goodies.el (erc-make-read-only): Add `rear-nonsticky'
+       property to avoid `Text is read-only' errors during connection.
+       `front-nonsticky' does not exist, changed to `front-sticky'.
+       (erc-controls-interpret, erc-controls-strip): Just work on the
+       string, don't open a temporary buffer.
+       (erc-controls-propertize): Now accepts optional argument STR.
+
+2005-01-17  Michael Olson  <mwolson@gnu.org>
+
+       * Makefile: Version is 5.01, but only in the Makefile.  It has not
+       been released yet.
+
+       * erc-auto.in, erc-autojoin.el, erc-bbdb.el, erc-button.el,
+       erc-chess.el, erc-complete.el, erc-dcc.el, erc-fill.el,
+       erc-goodies.el, erc-ibuffer.el, erc-identd.el, erc-imenu.el,
+       erc-list.el, erc-match.el, erc-menu.el, erc-nets.el,
+       erc-netsplit.el, erc-nickserv.el, erc-notify.el, erc-pcomplete.el,
+       erc-ring.el, erc-speak.el, erc-speedbar.el, erc-stamp.el,
+       erc-track.el, erc-xdcc.el, erc.el, debian/copyright: Update
+       copyright notices.  If anyone has signed papers for Emacs in
+       general, merge them with the FSF's entry.
+
+2005-01-16  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el (erc): `erc-set-active-buffer' was being called before
+       `erc-process' was set, so that channels weren't being marked
+       active correctly upon join; fixed.
+
+2005-01-15  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
+
+       * erc-backend.el (def-edebug-spec): This macro caused problems (in
+       XEmacs). Use its expansion directly.
+
+2005-01-15  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-button.el (erc-button-add-button): Reverted previous change
+       since `:suppress-face' doesn't seem to be checked for a certain
+       face.
+       (erc-button-add-face): FACE is now appended to the `old' face.
+       This should fix the problem of faces being "covered" by
+       `erc-button-face'.
+
+2005-01-14  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el, erc-backend.el (erc-cmd-OPS, erc-cmd-COUNTRY,
+       erc-cmd-NICK, erc-process-ctcp-query, ERROR, PONG, 311, 312, 313,
+       314, 317, 319, 320, 321, 322, 330, 352): Use catalog entries
+       instead of hard-coded text messages.
+       (english): Added new catalog entries `country', `country-unknown',
+       `ctcp-empty', `ctcp-request-to', `ctcp-too-many', `nick-too-long',
+       `ops', `ops-none', `ERROR', `PONG', `s311', `s312', `s313',
+       `s314', `s317', `s317-on-since', `s319', `s320', `s321', `s322',
+       `s330', and `s352'.
+       (erc-send-current-line): Use `erc-set-active-buffer' (change was
+       lost in previous bug fix).
+
+2005-01-14  Francis Litterio  <franl@world.std.com>
+
+       * erc-button.el (erc-button-add-button): Fixed a bug where the
+       overlay created by widget-convert-button has a `face' property
+       that hides the `face' property set on the underlying button text.
+
+       * erc-goodies.el: Docstring fix.
+
+       * erc-button.el: Improved docstring for variable erc-button-face.
+
+2005-01-13  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-menu.el (erc-menu-definition): "Topic set by channel
+       operator": Small word change.  "Identify to NickServ...": Check
+       that we're connected to the server.  Added "Save buffer in log"
+       and "Truncate buffer".
+
+2005-01-13  Lawrence Mitchell  <wence@gmx.li>
+
+       * erc.el (erc-display-line-1): Widen before we try to insert
+       anything, this makes sure input isn't broken when the buffer is
+       narrowed by the user.
+       (erc-beg-of-input-line): Simplify, just return the position of
+       `erc-insert-marker' or error if does not exist.
+       (erc-send-current-line): Widen before trying to send anything.
+
+2005-01-13  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc.el, erc-backend.el, erc-list.el:
+       (erc-update-mode-line-buffer): Strip controls characters from
+       `channel-topic' since we add our own control character to it.
+       (TOPIC, 332): Use \C-o instead of \C-c to force an end of IRC
+       control characters as it also ends bold, underline, and inverse -
+       \C-c only ends colors.
+       (erc-chanlist-322): Strip control characters from channel and
+       topic.  No need to interpret controls when we're applying overlays
+       to the lines.
+
+       * erc.el, erc-backend.el, erc-button.el, erc-netsplit.el,
+       erc-nicklist.el: Fixed so that each server has an active buffer.
+       (erc-active-buffer): Now a buffer-local variable.
+       (erc-active-buffer, erc-set-active-buffer): New functions.
+       (erc-display-line, erc-echo-notice-in-active-non-server-buffer,
+       erc-process-away, MODE): Call `erc-active-buffer' to get the
+       active buffer for the current server.
+       (erc, erc-process-sentinel-1, erc-grab-region, erc-input-action,
+       erc-send-current-line, erc-invite-only-mode,
+       erc-toggle-channel-mode, erc-channel-names, MODE, erc-nick-popup,
+       erc-nicklist-call-erc-command): Use `erc-set-active-buffer' to set
+       the active buffer for the current server.
+       (erc-cmd-WHOLEFT): Use 'active as BUFFER in `erc-display-message'.
+
+       * erc-track.el (erc-track-modified-channels): Server buffers are
+       now treated the same as channels and queries.  This means that
+       `erc-track-priority-faces-only', `erc-track-exclude', and
+       `erc-track-exclude-types' now work with server buffers.
+
+2005-01-12  Diane Murray  <disumu@x3y2z1.net>
+
+       * erc-backend.el (475): Prompt for the channel's key if
+       `erc-prompt-for-channel-key' is non-nil.  Send a new JOIN message
+       with the key if a key is provided.
+
+       * erc.el (erc-command-indicator): Fixed customization choices so
+       that there's no `mismatch' message when nil is the value.
+
+2005-01-11  Michael Olson  <mwolson@gnu.org>
+
+       * erc-bbdb.el (bbdb): Lowercase the name of the module.  This
+       fixes a bug which caused an error to occur when trying to enable
+       the module using the customization interface.
+
+2005-01-08  Edward O'Connor  <ted@oconnor.cx>
+
+       * erc-track.el: Support using faces to indicate channel activity
+       in the modeline under XEmacs.
+       (erc-modified-channels-object): New function.
+       (erc-modified-channels-display): Use it.
+       `erc-modified-channels-string' renamed to
+       `erc-modified-channels-object' (because it's no longer a string on
+       XEmacs). The new function `erc-modified-channels-object' is used
+       to generate updated values for the same-named variable.
+
+2005-01-08  Diane Murray <disumu@x3y2z1.net>
+
+       * ChangeLog.2002: Changed instances of my sourceforge username and
+       email address to real name and email.
+
+       * erc.el (erc-modules): Changed customization tag descriptions, so
+       that they all start with a verb; added new modules to choices.
+
+2005-01-08  Mario Lang  <mlang@delysid.org>
+
+       * debian/rules: Introduce new variable DOCDIR to simplify stuff a
+       bit.
+
+2005-01-08  Michael Olson  <mwolson@gnu.org>
+
+       * AUTHORS, ChangeLog.2004: Change bpalmer's email address as
+       requested.
+
+       * CREDITS: Add everyone who is mentioned in the ChangeLogs.
+
+       * debian/copyright (Copyright): Add last few people.  This can now
+       be considered a complete list, as far as CVS entries are
+       concerned.  If people have assigned copyright to the FSF, merge
+       them with the entry for the FSF.
+
+       * debian/README.Debian: Add entry for XEmacs-related change in
+       `erc-track.el'.
+
+       * erc.el (erc-cmd-MODE): New command that changes or displays the
+       mode for a channel or user.  The functionality was present before
+       this change, but there was no documentation for it.
+
+       * erc-auto.in, erc-*.el: Fully investigate copyright headers and
+       change them appropriately.  If a file has been pulled off of
+       erc.el at one time, keep track of copyright from the time of
+       separation, but not before.  If a file has been derived from a
+       work outside of erc, keep copyright statements in place.
+
+       * Makefile (VERSION): Change to 5.0! :^) Congrats on all the great
+       work.  I'll wait until hober commits his XEmacs compatibility
+       patch to erc-track.el, and then release.
+       (distclean): Alias for `realclean' target.
+
+2005-01-07  Michael Olson  <mwolson@gnu.org>
+
+       * AUTHORS: Add Marcelo Toledo, who has CVS access to this project.
+
+       * ChangeLog.2004: Add my name to my one contribution to erc last
+       year.
+
+       * CREDITS: Add people that were discovered while scouring
+       ChangeLogs.
+
+       * debian/copyright: Add everyone from `AUTHORS' to Upstream
+       Authors.  Anyone who has contributed 15 or more lines of
+       code (according to ChangeLogs) is listed in Copyright section.
+       Accurate years are included.
+
+       * debian/README.Debian: Paste content of NEWS and reformat
+       slightly.
+
+       * debian/rules: Concatenate the ChangeLogs during the Debian
+       install process and then gzip them.
+
+       * Makefile (MISC): Add ChangeLog.yyyy files to list.
+       (ChangeLog): Remove rule since we do not dynamically generate the
+       ChangeLog anymore.
+
+       * MkChangeLog: Removed since we do not use it to generate the
+       ChangeLog anymore.  cvs2cl does a much better job anyway.
+
+       * NEWS: Use 3rd level heading instead of bullets for lists that
+       contain descriptions.
+
+2005-01-07  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-list.el: Require 'sort.
+       (erc-chanlist): Disable undo in the channel list buffer.
+
+       * erc.el, erc-menu.el: The `IRC' menu is now automatically added
+       to the menu-bar.  Add the call to `easy-menu-add' to
+       `erc-mode-hook' when running in XEmacs (without this the menu
+       doesn't appear).
+
+       * NEWS: Added the information from
+       http://emacswiki.org/cgi-bin/wiki/ErcCvsFeatures and the newer
+       changes which weren't yet documented on that page.
+
+2005-01-06  Hoan Ton-That  <hoan@ton-that.org>
+
+       * erc-log.el (erc-current-logfile): Only downcase the logfile
+       name, not the whole filename.  Also expand relative to
+       `erc-log-channels-directory'.
+       (erc-generate-log-file-name-with-date)
+       (erc-generate-log-file-name-short)
+       (erc-generate-log-file-name-long): Don't expand filename, done in
+       `erc-current-logfile'.
+
+2005-01-06  Lawrence Mitchell  <wence@gmx.li>
+
+       * NEWS: New file, details user visible changes from version to
+       version.
+
+       * HACKING (NEWS entries): Mention NEWS file, and what its purpose
+       is.
+
+2005-01-05  Michael Olson  <mwolson@gnu.org>
+
+       * FOR-RELEASE: New file containing the list of release-critical
+       tasks.  Feel free to add to it.
+
+       * debian/rules (binary-erc): Add ChangeLog files.
+
+2005-01-04  Michael Olson  <mwolson@gnu.org>
+
+       * ChangeLog.2001, ChangeLog.2002, ChangeLog.2003, ChangeLog.2004:
+       ChangeLog entries from previous years.
+
+       * ChangeLog: New file containing ChangeLog entries for the current
+       year.  Please update this file manually whenever a change is
+       committed.  This is a new policy.
+
+       * AUTHORS: Add myself to list.  Some entries were space-delimited
+       instead of TAB-delimited, and since the latter seemed to be the
+       default, make the other entries conform.
+
+       * HACKING (ChangeLog Entries): Update section to reflect new
+       policy toward ChangeLog entries, which is that they should be
+       manually updated whenever a change is committed.
+
+2005-01-04  Diane Murray <disumu@x3y2z1.net>
+
+       * erc.el (erc-connection-established, erc-login): Update the
+       mode-line.
+       (erc-update-mode-line-buffer): If `erc-current-nick' returns nil,
+       use an empty string for ?n character in format spec.  Set
+       `mode-line-process' to ":connecting" while the connection is being
+       established.
+
+2005-01-04  Lawrence Mitchell <wence@gmx.li>
+
+       * AUTHORS: Update list of authors.
+
+2005-01-02  Diane Murray <disumu@x3y2z1.net>
+
+       * erc-goodies.el (erc-control-characters): New customization
+       group.
+       (erc-interpret-controls-p): Small fix, addition to
+       documentation. Updated customization to allow 'remove as a value.
+       Use 'erc-control-characters as `:group'.
+       (erc-interpret-mirc-color): Use 'erc-control-characters as
+       `:group'.
+       (erc-beep-p): Updated documentation.  Use 'erc-control-characters
+       as `:group'.
+       (define-erc-module irccontrols): Add `erc-controls-highlight' to
+       `erc-insert-modify-hook' and `erc-send-modify-hook' since it
+       changes the text's appearance.
+       (erc-controls-remove-regexp, erc-controls-interpret-regexp): New
+       variables.
+       (erc-controls-highlight): Fixed so that highlighting works even if
+       there is no following control character.  Fixed mirc color
+       highlighting; now respecting `erc-interpret-mirc-color'.  Fixed a
+       bug where emacs would get stuck in a loop when \C-g was in a
+       message and `erc-beep-p' was set to nil (default setting).
+
+See ChangeLog.04 for earlier changes.
+
+    Copyright (C) 2005 Free Software Foundation, Inc.
+  Copying and distribution of this file, with or without modification,
+  are permitted provided the copyright notice and this notice are preserved.
+
+;; Local Variables:
+;; coding: utf-8
+;; End:
+
+;; arch-tag: 70f1733a-3e2f-43c2-91c3-d9ace93f82ba
diff --git a/lisp/erc/ChangeLog.2001 b/lisp/erc/ChangeLog.2001
deleted file mode 100644 (file)
index 20a0380..0000000
+++ /dev/null
@@ -1,1046 +0,0 @@
-2001-12-18  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Added missing 747 numreply (banned)
-
-2001-12-15  Gergely Nagy  <algernon@debian.org>
-
-       * debian/scripts/install, debian/rules:
-       updated to 2.1.cvs.20011215-1
-
-       * debian/changelog: Debian version 2.1.cvs.20011215-1
-
-2001-12-11  Andreas Fuchs  <asf@void.at>
-
-       * erc.el:
-       * applied a nicer version of mhp's patch to remove the last prompt from
-         saved logs
-
-       * erc-replace.el: * Initial checkin
-
-2001-12-11  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * fixed bug triggered when reuse-buffer was enabled (the default).
-         Another silly port type problem. Maybe we should unify that once and for all sometimes...
-
-2001-12-10  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * erc-message-english: New QUIT and s004 entries.
-       * erc-save-buffer-on-part: New variable.
-       * erc-kill-buffer-on-part: New variable.
-       * (erc-server-PART): Use above variables.
-       * (erc-join-channel): Use DEF argument instead of initial input for completing-read.
-
-2001-12-08  Tijs van Bakel  <smoke@wanadoo.nl>
-
-       * erc.el: added defcustom erc-nick-uniquifier ^ (i prefer _)
-
-2001-12-07  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog: changelog for version 2.1.cvs.20011208-1
-
-2001-12-07  Tijs van Bakel  <smoke@wanadoo.nl>
-
-       * erc.el:
-       Added erc-scroll-to-bottom as an erc-insert-hook function.  It still bugs a bit, so please test it, thanks
-
-2001-12-07  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Fixed silly bug in erc-server-TOPIC (thanks mhp)
-
-       * erc-speak.el:
-       * Fix non-greedy matching bug. That one somehow swallowed text
-
-       * erc.el:
-       Fix Emacs20 problem. For now, we disable erc-track-modified-channels-minor-mode in emacs20
-
-2001-12-07  Andreas Fuchs  <asf@void.at>
-
-       * erc-fill.el:
-       * Fix another stupid one-off error. This time it really works!
-        (Until I find the next bug. I guess you can hold your breath) (-:
-
-2001-12-06  Andreas Fuchs  <asf@void.at>
-
-       * erc-fill.el: * Fixed static filling:
-       ** No more \ed (continued on next line) lines anymore
-       ** Fixed bug with previous version where longer lines wouldn't get
-          filled correctly (i.e. at all)
-
-2001-12-06  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog: changelog for 2.1.cvs.20011206-1 added
-
-2001-12-06  Andreas Fuchs  <asf@void.at>
-
-       * erc.el:
-       * Don't discard away status when identifying to NickServ
-       * Modify `erc-already-logged-in': check for port, too.
-
-       * erc-fill.el:
-       * Fix stupid loop non-termination error in erc-fill-static when filling
-         one-line regions.
-       * Make erc-count-lines return meaningful values
-
-2001-12-05  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * (erc-process-input): Make ' /command' work for quoting /commands
-
-       * erc-speak.el: see changelog
-
-       * erc-fill.el: see erc.el changelog
-
-       * erc.el:
-       * erc-insert-hook: Changed strategy completely, no start end parameters any more.
-       We narrow-to-region now, thats much cleaner.
-       * rename erc-fill-region to erc-fill and change the autoload
-       ** You'll probably need to restart Emacs
-
-2001-12-04  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * (erc-send-current-line): Fixed long outstanding bug. XEmacs users with erc-fill-region on erc-insert-hook knew that one a long time.
-
-       * erc.el: fix order of attack
-
-       * erc.el: * macroexpanded define-minor-mode for XEmacs
-
-       * erc.el: First try to make channel tracking mouse sensitive
-
-       * erc.el: * More erc-message-format conversion.
-         erc-format-message-english-PART as an example on how to use functions to format message
-       * (erc-format-message): Fallback mechanism to use english catalog if variable is not bound
-
-2001-12-03  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * (erc-iswitchb): Rewrite, docfix.
-       Make it use erc-modified-channels as default if available.
-
-       * erc-menu.el:
-       * Fixage related to erc-track-modified-channels-minor-mode rewrite
-
-       * erc.el:
-       * erc-track-modified-channels-minor-mode: Use buffer objects instead of erc-default-target return value for internal state keeping.
-
-       * erc.el: * Made reconnect behave nicer (erc-process-sentinel)
-       * Rewrote erc-modified-channels-tracking completely.
-         Its now a minor mode (erc-track-modified-channels-minor-mode)
-         It uses a list as internal representation now, so all silly string-parsing
-         related bugs should be gone.
-         Use (erc-track-modified-channels-minor-mode t) now to toggle this functionality.
-         Dont set the erc-track-modified-channels-minor-mode variable yourself, use the toggle function
-
-2001-11-29  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog: final version
-
-2001-11-29  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * (erc-channel-p): Make it work with string and buffer as parameter. buffer.
-       * (erc-format-message): Add a check for functionp. This allows a format-specifier also to be a function name, which gets called with args applied and needs to return the actual format string.
-       * Converted some formats, JOIN, JOIN-you, MODE, ...
-
-2001-11-28  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * (erc-prepare-mode-line-format): Added sanity checks to prevent it from having problems with server buffers where the connection failed
-
-       * erc-bbdb.el:
-       * (erc-bbdb-JOIN): regexp-quote the fingerhost before searching, some people have really strange characters as their user names
-
-       * erc.el: Remove a stupid debug like (message ...) call
-
-2001-11-28  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog: draft of 2.1.cvs.20011128-1
-
-       * debian/rules: simplify for the all-in-one erc package
-
-       * debian/control: integrated erc-speak back into erc
-
-       * debian/maint/conffiles, debian/maint/conffiles.in, debian/maint/postinst, 
-         debian/maint/postinst.in, debian/maint/prerm, debian/maint/prerm.in, 
-         debian/scripts/install, debian/scripts/install.in, debian/scripts/remove, 
-         debian/scripts/remove.in, debian/scripts/startup.erc-speak:
-       since erc-speak is gone, resurrect the static files, and update them to support the latest erc
-
-2001-11-28  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * (erc-mode): Shouldn't be interactive.
-       * (erc-info-mode): Ditto.
-
-       * erc.el: * (erc-server-352): Added hopcount parsing.
-       Added call to erc-update-channel-member to fill in channel-members information
-       on /WHO if the channel is joined.
-
-2001-11-27  Mario Lang  <mlang@delysid.org>
-
-       * erc-speedbar.el: *** empty log message ***
-
-       * erc-speedbar.el: * (erc-speedbar-expand-user): New function.
-       Used when more information than just the nick name is available about a dude.
-
-       * erc.el: * Fixed stupid edit,checkin,save cycle error :)
-
-       * erc.el:
-       * (erc-generate-log-file-name-default): Renamed to -long
-       Doc fix.
-       * (erc-generate-log-file-name-old): Renamed to -long
-       Doc fix.
-       * erc-generate-log-file-name-function: Set default to ...-long
-       Doc fixes
-
-       * erc-speedbar.el: *** empty log message ***
-
-2001-11-26  Mario Lang  <mlang@delysid.org>
-
-       * erc-speedbar.el: * Integrated channel names list
-         what else do we need to replace info buffers???
-         please test that code and comment on erc-ehlp, thanks
-
-       * erc-speedbar.el:
-       * Added erc-speedbar-goto-buffer and therefore enable switching to the buffers from speedbar
-
-       * erc-speedbar.el:
-       I had to check this in, it works !! sort of,, megaalphagammaversion, first version. test, play, submit ideas/patches
-
-2001-11-26  Gergely Nagy  <algernon@debian.org>
-
-       * erc.el(erc-mode): moved erc-last-saved-position here
-       moved buffer naming code from here..
-       (erc): ...to here
-       (erc-generate-log-file-name-old): only prepend target if it exists
-
-       made erc-log-insert-log-on-open a defcustom
-
-2001-11-26  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * Applied antifuchs/mhp patches, the latest on erc-help, unmodified
-       * New variable: erc-reuse-buffers default to t.
-       * Modified erc-generate-new-buffer-name to use it. it checks if server and port are the same, 
-         then one can assume thats the same channel/query target again.
-
-2001-11-23  Mario Lang  <mlang@delysid.org>
-
-       * erc-bbdb.el:
-       * new function erc-BBDB-NICK to handle nickname anotation on a nick-change event of a known record
-
-       * erc.el: * Remove erc-rename-buffer, its no longer necessary
-       * Remove erc-autoop-*. it was broken, and needed rewrite anyway
-       * write erc-already-logged-in in terms of erc-buffer-list and make the duplicate login check work again
-
-       * erc.el: * Fixed stupid typo
-
-2001-11-22  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * New local variable, erc-announced-server-name
-       * erc-mode-line-format supports a new symbol, target-and/or-server
-       * The mode-line displays the announced server name now (for autojoin later..., 
-         greets Adam)
-       * New macro, erc-server-hook-list for a nice way to define the defcustoms of the erc-server-*-hook's
-         Thanks go to the guy from #emacs who helped with that
-       * erc-fill-region is now autoloaded from erc-fill.el
-         * erc-fill.el implements a new fill method, erc-fill-static
-           (setq erc-fill-function 'erc-fill-static)
-       * Some other things I forgot right now
-
-       * erc-bbdb.el: *** empty log message ***
-
-       * erc-fill.el: Initial version.
-
-       * erc-complete.el:
-       Applied antifuchs patch to make completion work with (string= erc-prompt "")
-
-       * erc-complete.el:
-       added function erc-nick-completion-exclude-myself
-       you can set erc-nick-completion to 'erc-nick-completion-exclude-myself to use it
-
-2001-11-21  Mario Lang  <mlang@delysid.org>
-
-       * erc-bbdb.el:
-       * Changed usage of 'finger-host to bbdb-finger-host-field
-
-       * erc-bbdb.el:
-       * Changed WHOIS to use finger-host instead of net field.
-       * Added 'visible as option to erc-bbdb-popup-p to only pop-up the bbdb buffer if a join happened in a visible buffer on any visible frame.
-       * Added (regexp-quote ...) for nickname search in erc-bbdb-JOIN
-
-2001-11-20  Mario Lang  <mlang@delysid.org>
-
-       * erc-bbdb.el: * Added JOIN support
-
-2001-11-19  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Initial message catalog code. converted erc-action-format usage to use it
-
-       * erc.el: * erc-play-sound: Added XEmacs related check
-
-       * erc-bbdb.el: * Initial version, many thanks to Andreas Fuchs
-
-       * erc.el: * Fixed silly problem with whois/was handling
-
-       * erc.el: * Renamed prev-rd to erc-previous-read
-       * Removed erc-next-line-add-newlines and s next-line-add-newlines to nil in defun erc by default
-
-       * erc.el:
-       fixed xemacs compatibility prob with delete, thanks Adam
-
-2001-11-18  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: numreplies 301 & 461
-
-2001-11-13  Tijs van Bakel  <smoke@wanadoo.nl>
-
-       * erc.el:
-       Added code for error reply 421 "Unknown command", to test the new server parsing system.
-       This was really easy!  Thanks ZenIRC guys & delysid :-)
-
-2001-11-13  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Allow connecting to SSL enabled irc servers.
-          Ugly hack, but it works for now. Be sure to use the numeric irc port 994 so that erc can recognize what you want
-         good example is
-       irc server: ircs.segfault.net
-       port: 994
-
-       meet me there, I am still delYsid :)
-
-       * erc.el: * some more numreply handlers
-       * cleanup in erc-process-away-p
-       * new function erc-display-error-notice
-
-       * erc.el: * numreply 501 and 221
-
-       * erc.el:
-       removed obsolete old hook variables. Your functions may break, but it is easy to hook them up to the new hooks.
-       erc-part-hook: use erc-server-PART-hook instead
-       erc-kick-hook: use erc-server-KICK-hook instead
-       and so on
-
-       * erc.el:
-       fixed serious bug which cause privmsgs vanishing when erc-auto-query was set to nil
-
-       * erc.el: cleaned up erc-process-filter
-
-       * erc.el: * 401 and 320 numreplies implemented
-
-       * erc.el: * Removed old/now obsolete code
-
-       * erc.el: * Fixed bug in erc-server-MODE
-
-2001-11-12  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: fixed it
-
-       * erc.el:
-       *** We switched over. New server message parsing/handling is running now. Thansk to the zenirc developers for the great ideas I got from the code!!!!! Go and test it, poke at it, bug me on irc about problems
-
-       * erc.el: *** empty log message ***
-
-2001-11-12  Tijs van Bakel  <smoke@wanadoo.nl>
-
-       * erc.el:
-       Fixed bug in erc-get-buffer, now channel names are compared in
-       a case-insensitive way.
-
-2001-11-12  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: erc-server-353
-
-2001-11-12  Tijs van Bakel  <smoke@wanadoo.nl>
-
-       * erc.el: Fixed docstring for erc-get-buffer.
-       Added erc-process to a lot of calls to erc-get-buffer, so
-       that only the local process is searched.
-
-2001-11-12  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * erc-buffer-filter: do it differently
-
-       * erc.el: ugly but working fix for mhp's query problem
-
-       * erc.el: * erc-server-PRIVMSG-or-NOTICE
-         Now, all the server word replies are finished. Going to numreplies now
-
-       * erc.el:
-       * debugging fascilities for the transition. C-x 2 C-x o M-x ielm RET erc-server-vectors RET ; to get a list of all server messages currently not handled in the new code. Feel free to pick one and implement it
-
-       * erc.el: * erc-server-KICK and erc-server-TOPIC. new functions
-       * erc-server-305-or-306 and erc-server-311-or-314
-
-       * erc.el:
-       * ported PART and QUIT msgs to the new scheme, many to go. but it is a easy task. does someone wanna try and start with numreplies?
-
-       * erc.el: * erc-server-JOIN
-
-       * erc.el: * Ported erc-server-INVITE code
-
-       * erc.el: * erc-server-ERROR and erc-server-MODE
-
-2001-11-11  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * zen
-
-       * erc.el: * New variable erc-connect-function.
-
-       * erc.el:
-       * New function erc-channel-p and use it where appropriate
-
-       * erc.el: * Removed the variable erc-buffer-list completely now
-       * Moved erc-dbuf around a bit
-
-       * erc.el: * Fix silly change in quit/rename msg handling
-
-       * erc.el: thanks mhp, fixed
-
-       * erc.el: * Tijs van Bakel's work from 10th Nov. merged in
-       * My additions to that idea merged in too
-       Basicly, this is a major rewrite, if you are scared and want avoid problems,
-       stay at your current version. It seems fairly stable though.
-       That changed? erc-buffer-name handling was completely rewritten,
-       and erc-buffer-list local variable handling removed.
-       Simplifies alot of code. Poke at it. read the diff. report bug/send patches!
-
-       * erc.el: * Added variable listing when /set is used without args
-
-2001-11-10  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * Comment/structure cleanup, removal of unnecessary code
-
-       * erc.el: only some code beautification
-
-       * erc-imenu.el:
-       remove add-hook call, thats done in erc.el now for autoloadability
-
-       * erc.el: * Make erc-imenu autoloadable
-
-       * erc.el:
-       * The long promised erc-mode-line-format handling rewrite
-          Poke at it, try it, play with it, report bugs
-
-       * erc.el:
-       some regex-quote fixes, new function erc-cmd-set, and minor things
-
-2001-11-08  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * added second timestamp-format (erc-away-timestamp-format) for marking msgs when being away
-
-       * erc-complete.el: fixed silly deffun
-
-       * erc.el: * Rewrote erc-load-irc-script (simplified)
-       * Removed depricated code
-
-       * erc-speak.el: * reflect changes in erc.el
-
-       * erc.el:
-       * Moved completion related functions into erc-complete.el
-         placed an autoload instead into erc.el. That quite cool,
-         because erc-complete.el only gets loaded when you use
-         TAB first time in erc.
-
-       * erc-complete.el: _ Initial checkin
-
-       * erc.el: * New function: erc-chain-hook-with-args
-       * Changed calls to erc-insert-hook to use it
-
-2001-11-07  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Patch from Fabien Penso
-         Make completion case insensitive. try it! its cool
-
-       * erc.el: * Reduction patch 2
-         This time, we move the input ring handling into erc-ring.el
-         Remember that you need (require 'erc-ring) in your .emacs to get the input handling as a feature
-         And remeber, that you dont need it if you dont use input ring :-)
-
-       * erc-ring.el: * Initial checkin
-
-       * erc.el: * The great reduction patch :-)
-         moved relevant function from erc.el to new file erc-menu.el and erc-imenu.el
-
-       * erc-imenu.el: nitial version
-
-       * erc-menu.el: * Initial version
-
-       * erc.el: * wording change suggested by Benjamin Drieu
-
-2001-11-07  Tijs van Bakel  <smoke@wanadoo.nl>
-
-       * erc.el: Added Emacs version to /SV
-
-2001-11-07  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Hookification patch, read the diff
-
-       * erc.el: too tired for a changelog :)
-
-2001-11-06  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * make erc-cmd-op and erc-cmd-deop take multiple nicknames as argument
-
-2001-11-06  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog: sync
-
-       * debian/rules: fixed a typo: PKGDIR, not PKIDR
-
-2001-11-06  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * Changed timestamping when away to use erc-timestamp-format and append the timestamp instead of prepending it..
-       * minor cleanup, s/(if (not /(unless/ and thelike
-
-2001-11-06  Tijs van Bakel  <smoke@wanadoo.nl>
-
-       * erc.el: Fixed OP and DEOP commands to return T.
-       Added SV say-version command.
-       Added erc-send-message utility function, but it's not used everywhere yet.
-
-2001-11-05  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: stupid delYsid, forgot require 'format-spec. good nite
-
-       * erc.el:
-       * new variable erc-action-format. Some erc-notice-prefix fixes again
-
-       * erc.el: * erc-minibuffer-privmsg defaults to t
-
-       * erc.el:
-       * Small fix in relation to the transition to erc-make-notice
-
-2001-11-05  Tijs van Bakel  <smoke@wanadoo.nl>
-
-       * erc.el:
-       Renamed erc-message-notices to erc-minibuffer-notice, and renamed erc-prevent-minibuffer-privmsg to erc-minibuffer-privmsg, inverting its functionality
-
-       * erc.el: Added support for channel names starting with & + and !.
-       Also, many changes partially discussed on the mailinglist:
-
-               * erc.el (cl): Add requirement for cl package.
-               (erc-buffer-list): Make this variable global again.
-               (erc-default-face): Fix typo.
-               (erc-timestamp-face): Add face for timestamps.
-               (erc-join-buffer, erc): Add a 'bury option.
-               (erc-send-action): Add timestamp.
-               (erc-command-table): Add /CLEAR, /DEOP, /OP, /Q.
-               (erc-send-current-line): Add timestamp.
-               (erc-send-current-line): Add call to erc-insert-hook.
-               (erc-cmd-clear): New command to clear buffer contents.
-               (erc-cmd-whois): Fix cut'n'paste-o.
-               (erc-cmd-deop): New command to deop a user.
-               (erc-cmd-op): New command to op a user.
-               (erc-make-notice): Moved a lot of duplicate code here.  Perhaps
-               this should also be done for erc-highlight-error.
-               (erc-parse-line-from-server): Now NOTICE will also open a new
-               query, just as PRIVMSG.
-               (erc-parse-line-from-server): Call erc-put-text-property on a
-               channel message/notice first, before concatenating nick and
-               timestamp &c.
-               (erc-message-notices): Add option to display notices in
-               minibuffer.
-               (erc-fill-region): No longer strip spaces in front of incoming
-               messages.
-               (erc-parse-current-line): No longer strip spaces in front of text
-               input by user.
-
-       Hopefully I didn't break too much :(
-
-2001-11-05  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * New function erc-nickserv-identify-autodetect for erc-insert-hook. Added by default currently.
-
-       * erc.el:
-       * Mini-fix in erc-process-num-reply (= n 353): Added @ as prefix character to make certain channels on opn work again nicely
-
-2001-10-31  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog: updated to reflect changes
-
-       * debian/scripts/install.in:
-       moved #PKGFLAG# before -f batch-byte-compile
-
-2001-10-29  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Imenu fixed somehow, added IRC services interactive function for indentify to NickServ. Read the diff
-
-2001-10-26  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog: sigh. -2
-
-2001-10-25  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog: updated to reflect changes
-
-       * debian/rules: handle conffiles.in too
-
-       * debian/maint/conffiles.in: new file
-
-       * debian/maint/conffiles: superceded by conffiles.in
-
-       * debian/scripts/startup: superceded by startup.erc
-
-2001-10-25  Mario Lang  <mlang@delysid.org>
-
-       * debian/scripts/startup.erc-speak: * Initial version
-
-       * debian/scripts/startup.erc: * Added and fixes minimal typo
-
-2001-10-25  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog: updated to reflect changes
-
-       * debian/rules:
-       modified to be able to build the erc-speak package too
-
-       * debian/control: added the new erc-speak package
-
-       * debian/README.erc-speak, debian/maint/postinst.in, debian/maint/prerm.in, 
-         debian/scripts/install.in, debian/scripts/remove.in:
-       new file
-
-       * debian/maint/postinst, debian/maint/prerm, debian/scripts/install, 
-         debian/scripts/remove:
-       removed, superceded by it's .in counterpart
-
-2001-10-25  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Fixed some defcustom :type 's
-       * Added erc-before-connect hook which gets called with server port and nick.
-         Use this hook to e.g. setup a tunnel before actually connecting.
-         something like (when (string= server "localhost") ...)
-
-2001-10-24  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Patch by smoke: fix erc-cmd-* commands and add aliases
-
-2001-10-23  Mario Lang  <mlang@delysid.org>
-
-       * erc-speak.el:
-       * Added a new personality for channel name announcement, This makes streams of flooded channels much easier to listen to, 
-         especially if you are on more than one channel simultaniously.
-
-       * erc.el:
-       * Made the completion postfix customizable through erc-nick-completion-postfix
-
-       * erc-speak.el, erc.el:
-       * Added erc-prevent-minibuffer-privmsg
-
-       * erc-speak.el:
-       * Quickish hack to allow exclusion of timestamps from speaking. see erc-speak-filter-timestamps
-
-2001-10-21  Mario Lang  <mlang@delysid.org>
-
-       * erc-speak.el:
-       * Removed now really obsolete code. Package size reduced by 50%
-
-       * erc-speak.el:
-       * Very important fix! Now erc-speak is really complete. Messages dont get cut anymore. Be sure to use auditory icons, 
-         it's reallllly cool now!!!
-
-       * erc-speak.el: *** empty log message ***
-
-       * erc-speak.el: * Major simplification. depends on my 2001-10-21 changes to erc.el.
-       * Things removed, read diff
-
-2001-10-21  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog: oops, silly typo
-
-       * debian/changelog, debian/control, debian/copyright, 
-         debian/maint/conffiles, debian/maint/postinst, debian/maint/prerm, 
-         debian/rules, debian/scripts/install, debian/scripts/remove, 
-         debian/scripts/startup:
-       initial check-in
-
-2001-10-21  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * Changed erc-insert-hook to get two arguments, START and END of the region
-         which got inserted. CAREFUL! This could break stuff, but it makes the hook
-         much more useable.
-
-       * erc.el:
-       * Made erc-smiley a new option, currently set to t to showoff this feature. :)
-
-2001-10-20  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Add missing erc-mode-hook variable
-       * Add smiley-support (preliminary test)
-
-2001-10-20  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el:
-       Replaced all occurences of put-text-property with a call to
-       erc-put-text-property.
-       (erc-put-text-property): New function.
-       (erc-tracking-modified-channels): Moved to the front of the file such
-       that it is already defined when the menu is being defined.
-       (erc-modified-channel-string): Ditto.
-
-2001-10-18  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el: Removed some commentary.  The wiki page is the place to
-       put such information.
-       (erc-fill-prefix): Doc change.
-       (erc-notice-highlight-type): Doc change, now a user option.
-       (erc-pal-highlight-type): Doc change, now a user option.
-       (erc-fool-highlight-type): New option.
-       (erc-keyword-highlight-type): New option.
-       (erc-dangerous-host-highlight-type): New option.
-       (erc-uncontrol-input-line): Doc change.
-       (erc-interpret-controls-p): Doc change, now a user option.
-       (erc-multiline-input): Doc change.
-       (erc-auto-discard-away): Doc change.
-       (erc-pals): Changed from string to regexp.
-       (erc-fools): New option.
-       (erc-keywords): Renamed from erc-highlight-strings.  WATCH OUT:
-       Not backwards compatible change!
-       (erc-dangerous-hosts): Renamed from erc-host-danger-highlight.
-       WATCH OUT: Not backwards compatible change!
-       (erc-menu-definition): Added menu entries for fools, keywords and
-       dangerous hosts.
-       (erc-mode-map): Changed keybindings from C-c <plain ascii> to
-       various C-c <C-ascii> combinations.
-       (erc-dangerous-host-face): Renamed from erc-host-danger-face.
-       WATCH OUT: Not backwards compatible change!
-       (erc-fool-face): New face.
-       (erc-keyword-face): Renamed from erc-highlight-face.  WATCH OUT:
-       Not backwards compatible change!
-       (erc-parse-line-from-server): Fixed highlighting in the cases
-       where (equal erc-pal-highlight-type 'all), added code to handle
-       erc-fool-highlight-type, erc-dangerous-host-highlight-type
-       (erc-update-modes): Replaced erc-delete-string with delete.
-       (erc-keywords): Renamed from erc-highlight-strings, handle
-       erc-keyword-highlight-type.
-       (erc-delete-string): Removed.
-       (erc-list-match): New function.
-       (erc-pal-p): Use erc-list-match.
-       (erc-fool-p): New function.
-       (erc-keyword-p): New function.
-       (erc-dangerous-host-p): Renamed from erc-host-danger-p, use
-       erc-list-match.
-       (erc-directed-at-fool-p): New function.
-       (erc-add-entry-to-list): New function.
-       (erc-remove-entry-from-list): New function.
-       (erc-add-pal): Use erc-add-entry-to-list.
-       (erc-delete-pal): Use erc-remove-entry-from-list.
-       (erc-add-fool): New function.
-       (erc-delete-fool): New function.
-       (erc-add-keyword): New function.
-       (erc-delete-keyword): New function.
-       (erc-add-dangerous-host): New function.
-       (erc-delete-dangerous-host): New function.
-
-2001-10-07  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * irc vs ircd default port fixed
-
-       * erc.el: * Added topic-change to imenu
-
-       * erc.el: * More imenu spiffyness
-
-       * erc.el: * Added imenu support
-
-       * erc.el:
-       * Fix to /topic to show topic instead of setting it to null :)
-
-2001-10-05  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * First version of erc-rename-buffer
-
-       * erc.el: * more header-line tricks.
-
-       * erc.el:
-       * Small fix to do erc-update-mode-line-buffer in erc-update-channel-topic
-
-       * erc.el: * Added erc-header-line-format
-
-2001-10-04  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * mini-fix, add msgp to auto-query code
-
-       * erc.el: * Added command-names to completion (erc-command-table)
-       * New variable erc-auto-query. When set, every arriving message to you
-       will open a query buffer for that sender if not already open.
-       * Compatibility function fo non-existing line-beginning|end-position functions in XEmacs.
-
-2001-10-03  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * Removed alot of (progn ...) where they were not necessary
-       * Changed some (if ...) without else part to (when ...)
-       * Some (while ...) to use (dolist ...)
-       * Fix for completion popup generating tracebacks.
-       * New function erc-arrange-session-in-mulptiple-windows
-       * Lots of other stuff, read the diff
-
-2001-10-02  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Added erc-kill-input and keybinding C-c C-u for it
-
-2001-10-01  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Another fix to nick-completion
-       * Additional checks in erc-track-modified-channels
-
-2001-09-26  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Fixed completion (alex)
-         * Now popup buffer doesnt destroy your window configuration.
-       * Fixed away handling (incomplete)
-
-2001-09-24  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Fixed silly quoting-escape error
-
-2001-09-23  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Added auto-op support (unfinished)
-       * Added erc-latest-version.
-       * Added erc-ediff-latest-version.
-
-2001-09-21  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * Minor menu additions (invite only mode is now a checkbox)
-
-2001-09-20  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * Fix (erc-cmd-names): This should fix C-c C-n too, hoepfully it was the right fix and doesnt break anything else.
-
-       * erc.el: * Fixes XEmacs easymenu usage (2nd time).
-
-2001-09-19  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * (erc-complete-nick): Add ": " only if one completes directly after the erc-prompt, otherwise, add just one space
-
-       * erc.el:
-       * Changed menu-definition to use easymenu (hopefully this now works under Xemacs)
-       * Fix for custom problem with :must-match on XEmacs (thanks shapr)
-       * Added /COUNTRY command using (what-domain) from package mail-extr (shapr)
-       * Fix for case-sensitivity problem with pals (they are now all downcased)
-       * Different (erc-version) function which now can take prefix argument to insert the version information into the current buffer, 
-         instead of just displaying it in the minibuffer.
-
-2001-09-10  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Updated erc-version-string
-
-       * erc.el: Version number change and last read-through...
-
-2001-09-04  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Added some asterisks
-
-2001-08-24  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Fixed hidden channel buffer tracking (sort of), now using switch-to-buffer for advice.
-       This version is unofficially named 2.1prebeta1. Please test it and send
-       fixes to various problems you may encounter so that we can eventually
-       release 2.1 soon.
-
-2001-08-14  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Added function erc-bol and keybinding C-c C-a for it (contributed by Benjamin Rutt <brutt@bloomington.in.us)
-
-2001-08-07  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Checked in lathis code and modified it slightly. Still unsure about set-window-buffer advice, current attempt doesnt seem to work.
-       Removed (nick -> #channel) from mode-line. (CLOSED) and (AWAY...) should still be displayed when appropriate
-
-2001-08-06  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       added local-variable channel-list in session-buffers and make /LIST use it.
-       erc-join-channel can now do completion after /LIST was executed
-
-2001-08-05  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Tweaked erc-join-channel and erc-part-from-channel
-
-2001-07-27  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: some more defcustom stuff
-
-       * erc.el: Patch from Henrik Enberg <henrik@enberg.org>:
-          Adds variables erc-frame-alist and erc-frame-dedicated-p.
-
-       * erc.el: fixed erc-part-from-channel
-
-       * erc.el:
-       fixed match-string problem and added interactive topic setting function.
-
-       * erc.el: fixed silly string-match bug
-
-       * erc.el:
-       Added erc-join-channel and erc-part-from-channel (interactive prompts), as well as keybindings. C-c C-j #emacs RET is now enough :)
-
-2001-07-27  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-display-line-buffer): Simplified filling.
-       (erc-fill-region): New function.
-
-2001-07-27  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Added redundancy check in output
-
-2001-07-26  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-send-action): Add text-property stuff.
-       (erc-input-action): Removed text-property stuff.
-       (erc-command-table): Corrected command for DESCRIBE.  Still
-       doesn't work though.  No idea what it should do.  Looks like a no op.
-       (erc-cmd-me): Doc change.
-
-2001-07-26  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       fixed one occurence of a setq with only one argument (XEmacs didnt like that)
-
-       * erc.el:
-       Added erc-next-line-add-newlines customisation possibility.
-
-       * erc.el:
-       added erc-fill-prefix for defining your own way of filling and fixed filling somehow
-
-       * erc.el:
-       fixed small incompatibility in erc-parse-line-from-server at (and (= n 353) regexp
-
-2001-07-25  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Added erc-filling and filling code to erc-display-line-buffer.
-
-2001-07-08  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(try-complete-erc-nick): Make the ": " part of the
-       expansion
-
-       * erc.el: require ring
-
-2001-07-08  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: *** empty log message ***
-
-2001-07-07  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: typo
-
-       * erc.el: ommit
-       :wq
-
-2001-07-06  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-mode): Call erc-input-ring-setup.
-       (erc-send-current-line): Call erc-add-to-input-ring.
-       (erc-input-ring): New variable.  Currently not buffer local.
-       (erc-input-ring-index): New variable.  Currently not buffer local.
-       (erc-input-ring-setup): New function.
-       (erc-add-to-input-ring): New function.
-       (erc-previous-command): New function.
-       (erc-next-command): New function.
-       (erc-mode-map): Uncommented keybindings for erc-next-command and
-       erc-previous-command.
-
-2001-07-05  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-highlight-strings): Removed debug message.
-
-       * erc.el(erc-join-buffer): Changed default to 'buffer.
-       (erc-join-info-buffer): Changed default to 'disable.
-       (erc-nick-completion): Changed default to 'all.
-
-2001-07-04  uid31117  <uid31117@confusibombus>
-
-       * erc.el: Resolved...
-
-2001-07-03  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-highlight-strings): New option and new function.
-       (erc-parse-line-from-server): Use it.
-       Various empty lines removed.  Various doc strings fixed.
-
-       * erc.el: Removed more empty lines.
-
-       * erc.el(erc-member-string): replaced by plain member
-       Otherwise, lots of deleting of empty lines...  I'm not too happy with that
-       but I feel better when the code is "cleaned up".
-
-2001-07-03  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Ugly hack, but looks nicer when giving commands
-
-       * erc-speak.el: ugly hack, but looks nicer now
-
-2001-07-03  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(try-complete-erc-nick): New function.
-       (erc-try-complete-nick): New function.
-       (erc-nick-completion): New option.
-       (erc-complete): Call hippie-expand such that erc-try-complete-nick
-       will be called eventually.  Based on erc-nick-completion
-       try-complete-erc-nick will then complete on the nick at point.
-
-2001-07-02  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Insert (erc-current-nick) instead of (erc-display-prompt). good night :)
-
-       * erc.el:
-       small, but it was anoying, so I just did it (defcustom for erc-join-buffer and erc-join-info-buffer)
-
-2001-06-29  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el: Use defface to define all faces.
-       Removed some history from the commentary, as well as some other
-       commentary editing.
-
-2001-06-28  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: hmm, defcustom for erc-user-full-name
-
-       * erc-speak.el, erc.el: *** empty log message ***
-
-2001-06-27  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: typo
-
-       * erc.el: Some more defcustom
-
-       * erc-speak.el: nothing, really
-
-2001-06-26  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Some defcustom stuff. Still no defgroup though :)
-
-       * erc.el:
-       Initial change to erc.el (2.0). Mainly list of ideas and features
-       and syntax-table entries.
-
-       * erc-speak.el, erc.el: Initial Import
-
-       * erc-speak.el, erc.el: New file.
-
-    Copyright (C) 2001 Free Software Foundation, Inc.
-  Copying and distribution of this file, with or without modification,
-  are permitted provided the copyright notice and this notice are preserved.
-
-;; Local Variables:
-;; coding: utf-8
-;; End:
-
-;; arch-tag: 306c4b58-f9ae-4f3d-9fd9-db2d743f05a6
diff --git a/lisp/erc/ChangeLog.2002 b/lisp/erc/ChangeLog.2002
deleted file mode 100644 (file)
index 81b3169..0000000
+++ /dev/null
@@ -1,2607 +0,0 @@
-2002-12-31  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-split-command):
-       Removed assignment to free variable "continue".
-       (erc-strip-controls): New function.  Takes a string, returns the string with
-       all IRC color/bold/underline/etc. control codes stripped out.
-       (erc-interpret-controls): If variable erc-interpret-controls-p is nil, now
-       uses erc-strip-controls to strip control codes.
-       (erc-ctcp-reply-ECHO): Changed reference and assignment to free variable "s"
-       into reference/assignment to "msg", which appears to be the original author's
-       intent.
-
-       * erc-list.el(erc-chanlist):
-       Changed to use the new erc-once-with-server-event function
-       instead of the old macro of the same name.
-
-       * erc-notify.el(erc-notify-timer):
-       Changed to use the new erc-once-with-server-event function
-       instead of the old macro of the same name.  Also fixed a bug were variable
-       erc-last-ison was being read from a non-server buffer (thus giving its default
-       value instead of its per-server value).
-
-       * erc.el(erc-once-with-server-event):
-       This is now a function.  It was a macro with a
-       bug (the call to gensym happened at byte-compile-time not macro-call-time).
-       (erc-toggle-debug-irc-protocol): Now [return] is bound to this function in
-       the *erc-protocol* buffer.
-
-2002-12-30  Alex Schroeder  <alex@gnu.org>
-
-       * erc-autoaway.el(erc-autoaway-idletimer): Doc,
-       ref. erc-autoaway-use-emacs-idle.
-       (autoaway): Doc, explain different idle definitions.  Reestablish
-       the idletimer only when erc-autoaway-use-emacs-idle is non-nil.
-       (erc-auto-set-away): Doc, ref erc-auto-discard-away.
-       (erc-auto-discard-away): Doc, ref erc-auto-set-away.
-       (erc-autoaway-use-emacs-idle): Doc, ref erc-autoaway-mode, and
-       added a note that this feature is currently broken.
-       (erc-autoaway-reestablish-idletimer): Doc.
-       (erc-autoaway-possibly-set-away): Split test such that
-       erc-time-diff is only computed when necessary, add a comment why
-       erc-process-alive is not necessary.
-       (erc-autoaway-set-away): Test for erc-process-alive.
-
-2002-12-29  Alex Schroeder  <alex@gnu.org>
-
-       * erc-autoaway.el:
-       Changed the order of defcustoms to avoid errors in the :set property
-       of erc-autoaway-idle-seconds.
-
-2002-12-29  Damien Elmes  <erc@repose.cx>
-
-       * erc-track.el:
-       * (erc-track-get-active-buffer): remove superflous (+ arg 0)
-
-2002-12-29  Alex Schroeder  <alex@gnu.org>
-
-       * erc-autoaway.el(erc-autoaway): Moved the defgroup up to the
-       top, before the define-erc-module call.
-       (autoaway): Extended doc.
-       (erc-autoaway-idle-seconds): Use a :set property to handle
-       erc-autoaway-use-emacs-idle.
-       (erc-auto-set-away): Set default to t.  Added doc strings where
-       necessary, reformatted doc strings such that the first line can
-       stand on its own.  This is important for the output of M-x
-       apropos.
-
-2002-12-28  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-auto.in:
-       added (provide 'erc-auto), which is required for (require 'erc-auto) :)
-
-       * erc.el(erc-display-prompt):
-       Set the face property of the prompt to
-       everything but the last character.
-
-       * erc.el(erc-send-current-line):
-       Check wether point is in the input line. If
-       not, just beep and do nothing.
-
-2002-12-28  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-bol):
-       Fixed bug when there is only a prompt, and no property
-       change.
-
-       * erc.el(erc-display-prompt): Rewrote using a save-excursion
-       and erc-propertize.  No longer use a field for the prompt, but a
-       plain text property called erc-prompt.
-       (erc-bol): Use the erc-prompt text property instead of a field.
-       Return point instead of t.
-       (erc-parse-current-line): No need to call point here, then, since
-       erc-bol now returns point.
-
-       * Makefile:
-       make ChangeLog .PHONY, thus forcing it always to be rebuilt.
-
-2002-12-28  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-log-irc-protocol):
-       Removed check wether get-buffer-create
-           returned nil. "The value is never nil", says the docstring.
-
-       * erc.el: Day Of The Small Changes
-
-       (erc-display-prompt): Make the prompt 'front-sticky, which prevents it
-           from being modified. It *should* also make end-of-line move to the
-           end of the field (i.e. the end of the prompt) when point is at the
-           beginning of the prompt, but it doesn't. Dunno why. :(
-
-2002-12-27  Francis Litterio  <franl@users.sourceforge.net>
-
-       * Makefile:
-       Added "-f" to "rm" command in rule for target "realclean".
-
-       * erc.el:
-       New function: erc-log-irc-protocol.  Consolidates nearly duplicate code
-       from functions erc-send-command and erc-process-filter into one function.
-
-       * erc.el(erc-toggle-debug-irc-protocol):
-       Removed unneeded argument PREFIX and code
-       which referenced it at end of function.
-       (erc-send-command): Now we only append a newline to the logged copy
-       of output protocol text if it doesn't have one.
-
-2002-12-27  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-toggle-debug-irc-protocol):
-       Display buffer if it's not shown
-           already, and use view-mode.
-       (erc-toggle-debug-irc-protocol), (erc-send-command),
-           (erc-process-filter): inhibit-only t to insert into the
-           *erc-protocol* buffer (view-mode)
-
-2002-12-27  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-mode-map):
-       Removed keybinding for erc-toggle-debug-irc-protocol.
-       (erc-toggle-debug-irc-protocol): Now used erc-make-notice to propertize the
-       face of the enabled/disabled messages in the *erc-protocol* buffer.
-       (erc-send-command): Now outgoing IRC protocol traffic is logged too.
-
-       * erc.el:
-       Added user-customizable variable erc-debug-irc-protocol.
-       Added function erc-toggle-debug-irc-protocol.
-       (erc-process-filter): Now supports IRC protocol logging.  If variable
-       erc-debug-irc-protocol is non-nil, all IRC protocol traffic is appended
-       to buffer *erc-protocol*, which is created if necessary.
-
-2002-12-27  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-display-prompt):
-       Don't make the prompt intangible; that didn't
-           make things that much better for the user, but confused ispell,
-           which checked the prompt when it should check the first word
-
-2002-12-27  Alex Schroeder  <alex@gnu.org>
-
-       * AUTHORS: fixed resolve's email add
-
-       * AUTHORS: added damien
-
-       * erc.el(erc-truncate-buffer-on-save):
-       Removed documentation that
-       described behaviour now changed.  It used to say "When nil, no
-       buffer is ever truncated."  This is no longer true; even when
-       buffers are NOT truncated on save, they can be truncated, eg. by
-       adding erc-truncate-buffer to the hook.
-       (erc-logging-enabled): New function.
-       (erc-current-logfile): New function.
-       (erc): Use erc-logging-enabled and erc-current-logfile.
-       (erc-truncate-buffer-to-size): Rewrote it, and made sure to use a
-       (save-restriction (widen) ...) such that the truncation actually
-       runs in the whole buffer, not in the last message only (as
-       erc-insert-post-hook will do!).  This should fix rw's
-       out-of-bounds error.
-       (erc-generate-log-file-name-short): Made all but the BUFFER
-       argument optional.  Doc: Mention
-       erc-generate-log-file-name-function.
-       (erc-generate-log-file-name-long): Doc: Mention
-       erc-generate-log-file-name-function.
-       (erc-save-buffer-in-logs): Use erc-logging-enabled and
-       erc-current-logfile.  Doc: Mention erc-logging-enabbled.
-
-       (erc-encode-string-for-target): Only do the real work when
-       featurep mule; else just return the string unchanged.
-
-2002-12-27  Damien Elmes  <erc@repose.cx>
-
-       * erc.el:
-       erc-encoding-default: check for (coding-system-p) for older emacs versions
-
-       * erc.el(erc-connect): missing ()s added. "don't commit at 2am"
-
-       * erc.el(erc-connect):
-       check if (set-process-coding-system) is available before use
-
-2002-12-27  Alex Schroeder  <alex@gnu.org>
-
-       * AUTHORS: added franl
-
-2002-12-26  Alex Schroeder  <alex@gnu.org>
-
-       * erc-pcomplete.el(pcomplete-parse-erc-arguments):
-       Reworked, and fixed a bug that had
-       caused completions to corrupt preceding text under some circumstances.
-
-       * erc.el(erc-encoding-default): New.
-       (erc-encode-string-for-target): Use it instead of a hard-coded ctext.
-       (erc-encoding-coding-alist): Doc.
-
-2002-12-26  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el:
-       Removed fix for bug 658552 recently checked-in, because it doesn't work.
-
-       * erc.el(erc-kill-buffer-function):
-       Removed check that connection is up
-       before running erc-kill-server-hook hooks.  Those hooks should use
-       erc-process-alive to avoid interacting with the process.
-
-       * erc.el:
-       Fixed erc-send-current-line so it no longer assigns the free variable "s", and
-       it doesn't move point to end-of-buffer in non-ERC buffers.  Fixed
-       erc-kill-buffer-function so it doesn't run the erc-kill-server-hook hooks if the
-       server connection is closed.  Fixed bug 658552, which is described in detail at
-       http://sourceforge.net/tracker/index.php?func=detail&aid=658552&group_id=30118&atid=398125
-
-2002-12-26  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-cmd-SMV): Bug, now call erc-version-modules.
-
-       * erc-pcomplete.el(erc-pcomplete-version): New.
-
-2002-12-26  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc-pcomplete.el:
-       Fix for bug where you could not complete a nick when there was text following
-       the nick.
-
-2002-12-25  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-already-logged-in): Use erc-process-alive.
-       (erc-prepare-mode-line-format): Use erc-process-alive.
-       (erc-process-alive): Check erc-process for boundp and processp.
-
-       * erc.el(erc-kill-buffer-function):
-       Do not check wether the process is
-       alive before running the hook, because there might be functions on
-       the hook that need to run even when the process is dead.  And
-       function that wants to check this, should use (erc-process-alive).
-       (erc-process-alive): New function.
-       (erc-kill-server): Use it.
-       (erc-kill-channel): Use it.
-
-       * erc.el(erc-kill-buffer-function):
-       Reverted ignore-error change.
-       ignore-error is dangerous because we might miss bugs in functions
-       on erc-kill-server-hook.
-
-       * erc.el(erc-kill-buffer-function): Use memq instead of member
-       when checking process-status.  Added doc string with references to
-       the other hooks.
-       (erc-kill-server): Only send the command when the erc-process is
-       still alive.  This prevents the error: "Process
-       erc-irc.openprojects.net-6667 not running" when killing the buffer
-       after having used /QUIT.
-
-2002-12-24  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-server-ERROR):
-       Show the error reason, not only the originating host.
-
-       * erc.el(erc-kill-buffer-function):
-       (ignore-errors ...) in 'erc-kill-server-hook.
-           When the process for this server does not exist anymore, the hook
-           will cause an error, effectively preventing the buffer from being
-           killed.
-
-2002-12-24  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc-notify.el:
-       Fixed erc-notify-timer so that it passes the correct nick to
-       the functions on erc-notify-signoff-hook.
-
-2002-12-24  Alex Schroeder  <alex@gnu.org>
-
-       * erc-track.el: Doc
-
-       * erc-track.el(erc-make-mode-line-buffer-name): Removed a
-       superfluous if construct around erc-track-showcount-string.
-       (erc-track-modified-channels): Use 1+.
-       Plus some doc and comment changes.
-
-2002-12-23  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Fix (erc-version) string
-
-2002-12-23  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el:
-       Removed unnecessary assignment to free-variable "p" in erc-downcase.
-
-       * erc.el:
-       Now /PART reason strings are generated the same way /QUIT reason strings
-       are generated (see variable erc-part-reason).  Also, when a server buffer
-       is killed, a QUIT command is automatically sent to the server.
-
-       * erc.el:
-       Changed erc-string-no-properties so that it is more efficient.  Now it uses
-       set-text-properties instead of creating and deleting a temporary buffer.
-
-2002-12-21  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el:
-       erc-kill-input: added a check to prevent a (ding) and an error when
-           there's nothing to kill (thanks to Francis Litterio, franl on IRC)
-
-2002-12-21  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       AWAY notice duplication prevention. erc-prevent-duplicates now set to ("301") by default, and timeout to 60
-
-       * erc.el: erc-prevent-duplicates: New variable, see docstring
-
-2002-12-20  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-track.el:
-       erc-track-modified-channels: Use cddr of cell for old-face. cdr of
-           cell is '(1 . face-name), i have no idea why :)
-
-2002-12-20  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc-current-nick):
-       check the server buffer is active before using
-
-       Also tabified and cleaned up some trailing whitespace
-
-2002-12-15  Mario Lang  <mlang@delysid.org>
-
-       * erc-track.el: erc-track-count patch by az
-
-2002-12-14  Damien Elmes  <erc@repose.cx>
-
-       * erc.el:
-       last-peers: initialise to a cons. thanks to Francis Litterio
-           <franl@world.std.com> for the patch
-
-       * erc.el:
-       erc-kill-channel-hook, erc-kill-buffer-hook, (erc-kill-channel):
-           both hooks now call erc-save-buffer-in-logs, so that query buffers are
-           saved properly now, and not just channel buffers.
-
-2002-12-13  Alex Schroeder  <alex@gnu.org>
-
-       * erc-track.el(erc-unique-channel-names): Fix another #hurd
-       vs. #hurd-bunny bug.
-
-       * erc-match.el(match): No longer modify erc-send-modify-hook,
-       since it does not work without a parsed text property, anyway.
-       (erc-keywords): Allow cons cells.
-       (erc-remove-entry-from-list): Deal with cons cells.
-       (erc-keyword-p): Ditto.
-       (erc-match-message): Ditto.
-
-       Moved nil to the beginning of the list, removed :tags for the
-       -type variables:
-       (erc-current-nick-highlight-type): Ditto.
-       (erc-pal-highlight-type): Ditto.
-       (erc-fool-highlight-type): Ditto.
-       (erc-keyword-highlight-type): Ditto.
-       (erc-dangerous-host-highlight-type): Ditto.
-       (erc-log-matches-flag): Moved nil to the beginning.
-
-2002-12-11  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el:
-       erc-beg-of-input-line: Don't do (goto-char (beginning-of-line)), since
-           beginning-of-line always moves point and returns nil. Thanks to
-           franl on IRC for noting this.
-
-       * erc-stamp.el:
-       erc-insert-timestamp-left, erc-insert-timestamp-right: Made the
-           timestamp a 'field named 'erc-timestamp. Now end-of-line and
-           beginning-of-line will move over the timestamp.
-
-2002-12-10  Damien Elmes  <erc@repose.cx>
-
-       * erc-button.el(erc-button-add-button):
-       make the created button rear-nonsticky, to allow
-       cutting and pasting of buttons without worrying about the button properties
-       being inherited by the text typed afterwards.
-
-       * erc.el: save logfile when killing buffer
-
-2002-12-09  Alex Schroeder  <alex@gnu.org>
-
-       * erc-track.el(erc-modified-channels-display): Reworked.
-       (erc-track-face-more-important-p): Removed.
-       (erc-track-find-face): Return only one face.
-       (erc-track-modified-channels): Reworked.
-       (erc-modified-channels-string): Changed from (BUFFER FACE...) to
-       (BUFFER . FACE)
-
-       * erc-stamp.el(erc-insert-timestamp-right): Do not assume
-       erc-fill-column is available.
-
-2002-12-09  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el:
-       erc-ech-notices-in-minibuffer-flag, erc-minibuffer-notice: Clarified
-           the difference in the docstrings.
-
-2002-12-08  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el: erc-noncommands-list: added erc-cmd-SM and erc-cmd-SMV
-
-2002-12-08  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-cmd-SM): New.
-       (erc-cmd-SMV): New.
-
-       * erc.el(erc-modes): New.
-
-2002-12-08  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-compat.el:
-       field-end: use (not (fboundp 'field-end)) instead of (featurep 'xemacs)
-
-2002-12-08  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-version-modules): New.
-
-2002-12-08  Mario Lang  <mlang@delysid.org>
-
-       * debian/changelog, debian/control, debian/scripts/startup.erc:
-       debian release 3.0.cvs.20021208
-
-2002-12-08  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-split-command): Do the right thing with CTCPs.
-
-2002-12-08  Mario Lang  <mlang@delysid.org>
-
-       * erc-stamp.el: Be a bit more functional
-
-2002-12-08  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-compat.el:
-       XEmacs doesn't seem to have field-end, so we provide our own version here.
-
-2002-12-08  Mario Lang  <mlang@delysid.org>
-
-       * Makefile: Small fixes to debrelease target
-
-2002-12-08  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el:
-       make-obsolete-variable: xemacs doesn't have the WHEN parameter, remove it.
-
-2002-12-07  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-imenu.el(erc-create-imenu-index):
-       Use (forward-line 0) instead of
-         (beginning-of-line) now, sine the latter ignores fields (used in the
-         prompt).
-
-       * erc.el:
-       Rewrite of the prompt stuff to use a field named 'erc-prompt:
-
-       erc-prompt: Removed getter and setter functions. The properties were
-         already set (and overwritten) in erc-display-prompt.
-       (erc-prompt): Add the trailing space here, not all over the code.
-       (erc-display-prompt): Cleaned up a bit. The text-properties now are
-         valid on the whole prompt. Also, made the prompt 'intangible to
-         avoid confused users.
-       (erc-bol): Now use the field 'erc-prompt for finding the prompt
-       (erc-parse-current-line): Cleaned up considerably. Uses (erc-bol) now.
-       (erc-load-irc-script-lines): Adjusted for the new (erc-prompt).
-       (erc-save-buffer-in-logs): Adjusted for the new (erc-prompt).
-
-       * erc.el:
-       erc-uncontrol-input-line: The comment said "Consider it deprecated",
-       so I removed it now.
-       erc-prompt-interactive-input: Marked obsolete as of previous change.
-
-       * erc.el:
-       erc-smiley, erc-unmorse: Put at the end to separate it from the
-       important parts of erc.el.
-
-2002-12-07  Alex Schroeder  <alex@gnu.org>
-
-       * erc-stamp.el(erc-insert-timestamp-right): New algorithm.
-
-2002-12-07  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el:
-       last-peers, erc-message: Explained what last-peers is used for.
-
-2002-12-07  Alex Schroeder  <alex@gnu.org>
-
-       * erc-page.el(erc-cmd-PAGE): New function.
-       (erc-ctcp-query-PAGE): Use the catalog entry for the message, too.
-       (erc-ctcp-query-PAGE-hook): Added custom type.
-       (erc-page-function): Changed custom type from ... function-item to
-       ... function.
-       As well as doc strings.
-
-2002-12-06  Alex Schroeder  <alex@gnu.org>
-
-       * erc-page.el: provide feature at the end
-
-2002-12-06  Brian P Templeton  <bpt@tunes.org>
-
-       * erc-nickserv.el:
-       Added austnet in erc-nickserv.el (thanks to Damien Elmes
-       <resolve@repose.cx>)
-
-2002-12-05  Mario Lang  <mlang@delysid.org>
-
-       * erc-complete.el: Add autoload cookie
-
-       * erc-speak.el: Small fix to make proper voice-changes
-
-2002-12-05  Alex Schroeder  <alex@gnu.org>
-
-       * erc-lang.el: New
-
-2002-12-03  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el:
-       erc-mode-map: Put back C-c C-p (PART) and C-c C-q (QUIT)
-
-2002-12-02  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el:
-       erc-insert-post-hook: Add :options erc-make-read-only, erc-save-buffer-in-logs
-       erc-send-post-hook: Add :options erc-make-read-only
-
-       * erc.el: erc-insert-hook: Removed ("this hook is obsolescent")
-       erc-insert-post-hook: Added :options '(erc-truncate-buffer)
-
-2002-12-02  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Add missing requires
-
-2002-11-29  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-quit-reason-normal):
-       Remove v before %s so it's "Version ..." not
-          "vVersion ..."
-
-2002-11-26  Alex Schroeder  <alex@gnu.org>
-
-       * erc-compat.el(erc-encode-coding-string): Add second argument
-               coding-system, and for non-mule xemacsen, use a new defun instead
-               of identity.
-
-       * erc.el:  (define-erc-module): Use the appropriate group.
-       (erc-port): Changed custom type.
-       (erc-insert-hook): Custom group changed to erc-hooks.
-       (erc-after-connect): ditto
-       (erc-before-connect): ditto
-       (erc-disconnected-hook): ditto
-
-       * erc-button.el(erc-button): New group, changed all custom groups
-       from erc to erc-button, but left all erc-faces as-is.
-
-       * erc-track.el(erc-track): New group, changed all custom groups
-       from erc to erc-track.
-
-2002-11-26  Mario Lang  <mlang@delysid.org>
-
-       * erc-macs.el:
-       Macros for erc-victim handling.  Primary idea is to use setf and some fancy things to get nice syntax. have a look
-
-2002-11-26  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el:
-       pings, erc-cmd-PING, erc-ctcp-reply-PING, catalog entry CTCP-PING:
-       Cleaned up. Removed buffer-local variable pings which stored a list of
-       all sent CTCP PING requests. Now send our full time with the CTCP PING
-       request and interpret the answer.
-
-2002-11-25  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el: nick-stk: replaced by the local variable current-nick.
-
-2002-11-25  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-send-command): Use erc-encode-string-for-target.
-       (erc-encode-string-for-target): New.
-
-       * erc-compat.el(erc-encode-coding-string): Add second argument
-       coding-system, and for non-mule xemacsen, use a new defun instead
-       of identity.
-
-       * erc-nickserv.el(erc-nickserv-version): New.
-
-2002-11-25  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * Makefile:
-       UNCOMPILED: erc-chess.el depends on chess-network.el, which might not
-       be installed. Don't compile it.
-
-       * erc.el:
-       erc-mode-map: Added C-a as erc-bol (no reason why it shouldn't be),
-       and removed C-c C-p (part channel) and C-c C-q (quite server) as these
-       are a bit drastic in their consequences and easy to mistype.
-
-2002-11-24  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-track.el: erc-track-faces-priority-list: Extended list
-
-       * erc.el:
-       channel-members: Updated docstring: We have a VOICE predicate, too.
-
-       * erc-track.el(erc-unique-substrings):
-       Don't shorten a single channel to "#", but
-       always give at least 2 chars (except when there are no two chars).
-
-2002-11-23  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-nickserv.el:
-       support for BrasNET. Thanks to rw on IRC for the settings.
-
-2002-11-23  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el: (erc-default-recipients, erc-session-user-full-name)
-               (nick-stk, pings, erc-announced-server-name, erc-connected)
-               (channel-user-limit, last-peers, invitation, away, channel-list)
-               (last-sent-time, last-ping-time, last-ctcp-time, erc-lines-sent)
-               (erc-bytes-sent, quitting, bad-nick, erc-logged-in)
-               (erc-default-nicks): Defvars.
-
-       * erc-compat.el: Switched tests to iso-8859-1 instead of latin-1.
-
-       * erc-compat.el(erc-compat-version): New.
-
-2002-11-22  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(smiley): Smileys are a very small module, now.
-
-2002-11-22  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el:
-       erc-event-to-hook, erc-event-to-hook-name: eval-and-compile these,
-           since we need them in a macro. ERC now compiles again!
-
-       * erc-speak.el:
-       erc-minibuffer-privmsg: Removed setting this variable to nil, since it
-           was removed from erc.el.
-
-       * erc.el(erc-interactive-input-map): Added docstring.
-       (erc-wash-quit-reason): Extended docstring.
-       (erc-server-ERROR): Added docstring.
-       (erc-server-321): buffer-local variable channel-list probably
-           shouldn't be renamed erc-channel-list - removed FIXME.
-
-       * erc.el: small cleanup.
-       ("was not used anymore" here means "not used in erc/*.el nor in
-       fsbot", thanks to deego for checking that.)
-
-       erc-minibuffer-privmsg: Removed (was not used anymore)
-       (erc-reformat-command): Removed (was not used anymore)
-       (erc-strip-erc-parsed-property): Removed (was not used anymore)
-       (erc-process-ctcp-response): Removed (replaced by ctcp-query-XXX-hook)
-       (erc-send-paragraph): Removed ("Note that this function is obsolete,
-           erc-send-current-line handles multiline input.")
-       (erc-input-hook): Removed ("This hook is obsolete. See
-           `erc-send-pre-hook', `erc-send-modify-hook' and
-           `erc-send-post-hook' instead.")
-       (erc-message-hook): Removed ("This hook is obsolete. See
-           `erc-server-PRIVMSG-hook' and `erc-server-NOTICE-hook'.")
-       (erc-cmd-default-channel): Removed ("FIXME: no clue what this is
-           supposed to do." - it was supposed to prepend the default channel
-           to a command before sending it. E.g. typing "/FOO now!" would send
-           the IRC command "FOO #mycurrentchannel now!")
-
-       * erc.el:
-       erc-ctcp-query-PING: Send the whole argument back, not just the first
-       number. This is required for many clients (e.g. irssi, BitchX, ...)
-       which send their ping times in two different numbers for microsecond
-       accuracy.
-
-2002-11-22  Alex Schroeder  <alex@gnu.org>
-
-       * erc-track.el(erc-track-shorten-function): Allow nil.
-
-2002-11-21  Alex Schroeder  <alex@gnu.org>
-
-       * erc-track.el(erc-unique-channel-names): Fixed bug that appeared
-       if one target name was a substring of another -- eg. #hurd and
-       #hurd-bunny.  Added appropriate test.
-
-2002-11-20  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-track.el:
-       erc-unique-channel-names: Don't take a substring of channel that could
-       be longer than the channel, but at most (min (length candidate)
-       (length channel). (thanks to deego for noticing this)
-
-2002-11-19  Mario Lang  <mlang@delysid.org>
-
-       * erc-notify.el: * (require pcomplete): Only when compiling.
-
-2002-11-19  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-track.el:
-       erc-track-faces-priority-list: New variable, defines what faces will
-       be shown in the modeline. If set to nil, the old behavior ("all")
-       remains.
-       erc-track-face-more-important-p: new function
-       erc-track-find-face: new function
-
-2002-11-19  Alex Schroeder  <alex@gnu.org>
-
-       * erc-fill.el(erc-stamp): Require it.
-
-       * erc-match.el(away): devar for the compiler.
-
-       * erc-stamp.el(stamp): Moved.
-
-       * erc.el(erc-version-string): New version.
-
-       * erc-autoaway.el(erc-autoaway-idletimer): Moved to the front of
-       the file.
-
-       * erc-auto.in: (generated-autoload-file, command-line-args-left):
-       Added defvar without value to silence byte compiler.
-
-       * Makefile(realclean): renamed fullclean to realclean.
-       (UNCOMPILED): New list, for erc-bbdb.el, erc-ibuffer.el,
-       erc-speak.el.
-       (SOURCE): Do not compile UNCOMPILED.
-       (release): New target.
-       (ChangeLog): New target.
-       (todo): New target.
-
-       * erc-complete.el(erc-match): Require it.
-       (hippie-exp): Require it.
-
-       * erc-ezbounce.el(erc): Require it.
-
-       * erc-imenu.el(imenu): Require it.
-
-       * erc-nickserv.el(erc-networks): Moved up.
-
-       * erc-notify.el(pcomplete): Require it.
-
-       * erc-replace.el(erc): Require it.
-
-       * erc-sound.el(sound): Typo -- define-key in erc-mode-map.
-
-       * erc-speedbar.el(dframe): Require it.
-       (speedbar): Require it.
-
-       * erc-track.el(erc-default-recipients): devar for the compiler.
-
-       * README: New file.
-
-2002-11-18  Mario Lang  <mlang@delysid.org>
-
-       * AUTHORS: File needed for mkChangeLog
-
-       * mkChangeLog: Original code by mhp
-
-2002-11-18  Alex Schroeder  <alex@gnu.org>
-
-       * erc-button.el(erc-button-list): Renamed to erc-list and moved
-       to erc.el.
-
-       * erc.el(erc-list): New.
-
-       * erc-track.el(erc-make-mode-line-buffer-name): Simplified.
-       (erc-modified-channels-display): Simplified.  Now works with all
-       faces, and fixes the bug that when two faces where used (bold
-       erc-current-nick-face), then no faces was added.
-
-       * erc-track.el: Lots of new tests.  Moved some defuns around in
-       the file.
-       (erc-all-channel-names): Renamed.
-       (erc-all-buffer-names): New name, now include query buffers as
-       well.
-       (erc-modified-channels-update-inside): New variable.
-       (erc-modified-channels-update): Use it to prevent running display
-       if already inside it.  This prevented debugging of
-       `erc-modified-channels-display'.
-       (erc-make-mode-line-buffer-name): Moved.
-       (erc-track-shorten-names): Don't test using erc-channel-p as that
-       failed with query buffers.
-       (erc-unique-substrings): Move setq i + 1 to the end of the while
-       loop, so that start is used as a default value instead of start +
-       1.
-
-2002-11-18  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-track.el:
-       erc-unique-substrings: define this before using it in assert
-
-       * erc.el:
-       with-erc-channel-buffer: Define *before* using this macro. This
-       hopefully fixes a bug noted on IRC.
-
-       * erc-notify.el:
-       erc-notify-signon-hook, erc-notify-signoff-hook: New hooks. They're
-       even run when their name suggests!
-
-2002-11-18  Alex Schroeder  <alex@gnu.org>
-
-       * erc-list.el: Typo.
-
-       * erc-speedbar.el: Whitespace only.
-
-       * erc.el(define-erc-module): Avoid defining an alias if name and
-       alias are the same.
-
-       * erc-ibuffer.el: URL
-
-       * erc-imenu.el(erc-imenu-version): New constant.
-
-       * erc-ibuffer.el(erc-ibuffer-version): New constant.
-
-       * erc-ibuffer.el: File header, comments.
-
-       * erc-fill.el(erc-fill-version): New constant.
-
-       * erc-ezbounce.el(erc-ezb-version): New constant.
-
-       * erc-complete.el(erc-complete-version): New constant.
-
-       * erc-chess.el(erc-chess-version): New constant.
-
-       * erc-chess.el: Whitespace only.
-
-       * erc-bbdb.el(erc-bbdb-version): Typo.
-
-       * erc-bbdb.el(erc-bbdb-version): New constant.
-       Lots of whitespace changes.  Changes to the header.
-
-       * erc-track.el(erc-track-shorten-aggressively): Doc.
-       (erc-all-channel-names): New function.
-       (erc-unique-channel-names): New function.
-       (unique-substrings): Renamed.
-       (erc-unique-substrings): New name
-       (unique-substrings-1): Renamed.
-       (erc-unique-substring-1): New name.  Added lots of tests.
-       (erc-track-shorten-names): Call erc-unique-channel-names instead
-
-       * erc-match.el(match): Rewrote a as module.
-
-2002-11-17  Alex Schroeder  <alex@gnu.org>
-
-       * erc-netsplit.el(erc-netsplit-version): New.
-       (netsplit): Defined as a module, replacing erc-netsplit-initialize
-       and erc-netsplit-destroy.
-
-2002-11-17  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-track.el(erc-track-switch-buffer):
-       define-erc-module defines erc-track-mode,
-       not erc-track-modified-channels-mode.
-
-       * erc.el:
-       Variables erc-play-sound, erc-sound-path, erc-default-sound,
-       erc-play-command, erc-ctcp-query-SOUND-hook and functions
-       erc-cmd-SOUND, erc-ctcp-query-SOUND, erc-play-sound, erc-toggle-sound
-       moved to erc-sound.el
-
-       Variables erc-page-function, erc-ctcp-query-PAGE-hook and function
-       erc-ctcp-query-PAGE moved to erc-page.el
-
-       * erc-page.el:
-       erc-page.el: New file. CTCP PAGE support for ERC, extracted from erc.el.
-
-       * erc-sound.el:
-       defin-erc-module: Typo. Autoload should do erc-sound-mode and "erc-sound".
-
-       * erc-sound.el:
-       erc-sound.el: New file. Contains all the CTCP SOUND stuff from erc.el.
-
-       * erc.el(erc-process-ctcp-request):
-       Removed (old-style CTCP handling)
-       (erc-join-autogreet): Removed (was broken anyways)
-
-2002-11-17  Alex Schroeder  <alex@gnu.org>
-
-       * erc-button.el(erc-button-version): New constant.
-
-       * erc-button.el(button): rewrote as a module.
-
-2002-11-17  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el: New functions:
-       (erc-event-to-hook), (erc-event-to-hook-name): Convert an event to the
-       corresponding hook. The latter only returns the name, while the former
-       interns the hook symbol and returns it.
-
-2002-11-17  Alex Schroeder  <alex@gnu.org>
-
-       * erc-replace.el:
-       Practically total rewrite.  All smiley stuff deleted.
-
-       * erc-track.el(track): typo.
-
-       * erc.el(define-erc-module): Doc change.
-
-2002-11-17  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-autoaway.el: Changed to use define-erc-module.
-
-       * erc.el(define-erc-module):
-       Make the enable/disable functions interactive.
-
-       * erc.el(erc):
-       Don't use switch-to-buffer when we're in the minibuffer,
-       because that does not work. Use display-buffer instead. This leaves
-       two problems: The point does not advance to the end of the buffer for
-       whatever reason, and after leaving the minibuffer, the new window gets
-       buried.
-
-2002-11-17  Alex Schroeder  <alex@gnu.org>
-
-       * erc-stamp.el(stamp): Doc change.
-
-       * erc-stamp.el(erc-stamp-version): New constant.
-       (stamp): downcase alias name of the mode.
-
-       * erc.el(define-erc-module): Added defalias option, renamed
-       parameters again.
-
-       * erc-track.el: erc-track-modified-channels-mode is now only an
-       alias to erc-track-mode.  Only erc-track-mode is autoloaded.
-       (track): Rewrote call to define-erc-module.
-
-2002-11-16  Mario Lang  <mlang@delysid.org>
-
-       * debian/README.Debian: * Spelling fix
-
-       * erc-fill.el: * Fix autoload definition for erc-fill-mode
-
-       * debian/control, debian/maint/postinst, debian/maint/prerm:
-       * Remove /usr/doc -> /usr/share/doc link handling
-
-       * debian/changelog: * Sync with reality
-
-       * debian/scripts/startup.erc:
-       * Add /usr/share/emacs/site-lisp/erc/ to load-path
-       * (load "erc-auto")
-
-       * debian/README.Debian:
-       * Info about the changes since last release updated
-
-       * erc-pcomplete.el: * Fix emacs/xemacs compatibility
-
-       * debian/scripts/install: * Dont compile erc-compat, fix ELCDIR
-
-       * debian/control: * Change maintainer field
-
-       * erc.el:
-       * (defin-erc-module): Renamed argument mode-name to mname because silly byte-compiler thought we were talking about `mode-name'.
-
-       * Makefile: * Added debrelease target
-
-       * erc-bbdb.el, erc-pcomplete.el, erc-stamp.el, erc.el:
-       * (define-erc-module): Added mode-name argument.
-       * Converted erc-bbdb, erc-pcomplete and erc-stamp to new macro.
-       * autoload fixes
-
-       * erc-bbdb.el:
-       * Create a global-minor-mode (i.e., make it a proper erc-module)
-
-       * erc.el: * (define-erc-modle): New defmacro
-
-2002-11-16  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-autoaway.el(erc-autoaway-idle-seconds):
-       t in docstrings should be non-nil
-
-2002-11-16  Alex Schroeder  <alex@gnu.org>
-
-       * erc-autoaway.el, erc-button.el, erc-fill.el, erc-match.el, 
-         erc-menu.el, erc-ring.el, erc-track.el:
-       Cleanup of file headers: copyright years, GPL mumbo-jumbo, commentaries.
-
-       * erc-stamp.el(erc-insert-away-timestamp-function):
-       New custom type.
-       (erc-insert-timestamp-function): New custom type.
-
-       * erc-fill.el(erc-fill-function): Doc, new custom type.
-       (erc-fill-static): Doc.
-       (erc-fill-enable): New function.
-       (erc-fill-disable): New function.
-       (erc-fill-mode): New function.
-
-       * erc-match.el(erc-match-enable): add-hook for both
-       erc-insert-modify-hook and erc-send-modify-hook.
-       (erc-match-disable): remove-hook for both
-       erc-insert-modify-hook and erc-send-modify-hook.
-
-2002-11-15  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-autoaway.el:
-       - Added a way to use auto-away using emacs idle timers
-       - Renamed erc-set-autoaway to erc-autoaway-possibly-set-away for consistency
-
-2002-11-14  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el: erc-mode-map: Removed the C-c C-g binding for erc-grab
-
-       * erc.el:
-       (erc-server-341) Another instance of the channel/chnl problem i didn't
-       see last time
-
-2002-11-14  Alex Schroeder  <alex@gnu.org>
-
-       * erc-compat.el(erc-decode-coding-string): typo
-
-2002-11-14  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-server-341):
-       variable name should be chnl not channel, as it is
-       used this way in this function, and the other erc-server-[0-9]* use
-       chnl too.
-
-       * erc-autoaway.el:
-       Set back on all servers, not just the current one, since we're set
-       away on all servers as well.
-
-       * HISTORY: Fixed typo (ngu.org => gnu.org)
-
-       * erc-autoaway.el, erc-fill.el, erc.el: erc-autoaway.el:
-       * new file
-
-       erc.el:
-       * Removed auto-discard-away facility (now included in erc-autoaway.el)
-       * (erc-away-p): new function
-
-       erc-fill.el:
-       * (erc-fill-variable): Check wether erc-timestamp-format is bound before
-                              using it (erc-fill.el does not require erc-stamp).
-
-2002-11-10  Alex Schroeder  <alex@gnu.org>
-
-       * TODO:
-       TODO: moved it to http://www.emacswiki.org/cgi-bin/wiki.pl?ErcTODO
-
-       * erc.el(with-erc-channel-buffer): Rudimentary doc string.
-
-2002-11-09  Alex Schroeder  <alex@gnu.org>
-
-       * erc-button.el(erc-nick-popup-alist): Made a defcustom.
-
-       * erc-button.el(erc-button-disable): New function.
-       (erc-button-enable): New function, replaces the add-hook calls at top-level.
-       (erc-button-mode): New minor mode.
-
-2002-11-08  Alex Schroeder  <alex@gnu.org>
-
-       * erc-button.el(erc-button-entry): Use erc-button-syntax-table.
-
-       * erc.el, erc-stamp.el: Doc changes.
-
-       * erc-match.el(erc-match-mode): New function, replacing the
-       add-hook.
-       (erc-match-enable): New function.
-       (erc-match-disable): New function.
-       (erc-current-nick-highlight-type): Changed from 'nickname to 'nick
-       to make it consistent with the others.
-       (erc-match-message): Ditto.
-
-       * erc-button.el(erc-button-syntax-table): New variable.
-       (erc-button-add-buttons): Use it.
-
-2002-11-06  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       1) (bug) ERC pops up a new buffer and window when being messaged
-          from an ignored person. fixed
-       2) (misfeature) ERC notices the user in the minibuffer when it
-          ignores something - this can get very annoying, since the
-          minibuffer is also visible when not looking at ERC buffers.
-          Added a customizeable variable for this, the default is nil.
-       3) (wishlist) There is no IGNORE or UNIGNORE command.
-          Added.
-       4) (wishlist) Some IRC clients, notably irssi, allow the user to
-          ignore "replies" to ignored people. A reply is defined as a
-          line starting with "nick:", where nick is the nick of an
-          ignored person. Added that functionaly.
-       Done by Jorgen Schaefer <forcer@forcix.cx>
-
-2002-11-02  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-connect): set-process-coding-system to raw-text.
-
-2002-11-01  Brian P Templeton  <bpt@tunes.org>
-
-       * erc-pcomplete.el, erc-stamp.el, erc-track.el:
-       Fixed more autoloads
-
-       * erc-compat.el: Added autoload for erc-define-minor-mode
-
-2002-11-01  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * (erc-send-command): will break long messages into
-       a bunch of smaller ones, to prevent them from being truncated by the server.
-       The patch also axes some trailing whitespace. :-) <resolve>
-
-2002-10-31  Alex Schroeder  <alex@gnu.org>
-
-       * erc-pcomplete.el(erc-compat): Require.
-       (erc-completion-mode): Use erc-define-minor-mode.
-
-       * erc-track.el(erc-compat): Require.
-       (erc-track-modified-channels-mode): Use erc-define-minor-mode.
-
-       * erc-stamp.el(erc-compat): Require.
-       (erc-timestamp-mode): Use erc-define-minor-mode.
-
-       * erc-compat.el: New file with the code for erc-define-minor-mode,
-       erc-encode-coding-string and erc-decode-coding-string.  Essentially
-       all the stuff that cannot be tested for using a simple boundp or
-       fboundp -- eg. because the number of arguments are wrong.
-
-       * erc.el(erc-compat): Require.
-       (erc-process-coding-system): Moved to erc-compat.el.
-       (erc-connect): Do not set-process-coding-system.
-       (encode-coding-string): Compatibility code moved to erc-compat.el.
-       (decode-coding-string): Compatibility code moved to erc-compat.el.
-       (erc-encode-coding-string): Compatibility code moved to erc-compat.el.
-       (erc-decode-coding-string): Compatibility code moved to erc-compat.el.
-
-2002-10-27  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-display-line-1): Removed call to
-       erc-decode-coding-string.
-       (erc-parse-line-from-server): Added call to
-       erc-decode-coding-string before anything gets parsed at all.
-       (erc-decode-coding-string): Use undecided coding system.
-
-2002-10-24  Sandra Jean Chua  <sacha@free.net.ph>
-
-       * erc-button.el, erc.el:
-       Added LASTLOG command and action for nick-button
-
-2002-10-22  Sandra Jean Chua  <sacha@free.net.ph>
-
-       * erc-pcomplete.el:
-       Fixed nopruning bug, added /MODE channel (mode) [nicks...] completion - mode not completed yet.
-
-2002-10-16  Sandra Jean Chua  <sacha@free.net.ph>
-
-       * erc-pcomplete.el:
-       Fixed 'Hi delysid:' bug in SAY completion after realizing that pcomplete on commands already took care of completing the initial nick:
-
-2002-10-15  Mario Lang  <mlang@delysid.org>
-
-       * erc-pcomplete.el: update from sachac
-
-2002-10-13  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-emacs-time-to-erc-time): Catch when tm is nil.
-
-2002-10-11  Andreas Fuchs  <asf@void.at>
-
-       * erc.el:
-       * Fixed `erc-scroll-to-bottom' to scroll to the bottom even when
-         in the middle of a line. Might also fix the Magic ECHAN Bug[tm]. (-:
-
-2002-10-11  Mario Lang  <mlang@delysid.org>
-
-       * erc-nickserv.el: Fixed erc-networks for the opn->freenode change
-
-2002-10-08  Mario Lang  <mlang@delysid.org>
-
-       * erc-pcomplete.el:
-       Make erc-completion-mode work interactively with already joined channel buffers
-
-       * erc-chess.el: Add autoload cookies
-
-       * erc-notify.el: Add pcomplete support
-
-       * erc.el:
-       Remove autoload statments, remove autoload cookie from erc-mode and erc-info-mode
-
-       * erc-fill.el, erc-match.el: add/remove autoload cookies
-
-2002-10-06  Alex Schroeder  <alex@gnu.org>
-
-       * erc-pcomplete.el(erc-completion-mode): New global minor mode
-       with autoload cookie.
-       (erc-pcomplete-enable): Renamed erc-pcomplete-initialize.
-       (erc-pcomplete-disable): New function.
-
-       * erc-complete.el: Doc changes.
-
-       * erc-stamp.el(erc-stamp-enable): Renamed erc-stamp-initialize.
-       (erc-stamp-disable): Renamed erc-stamp-destroy.
-       (erc-timestamp-mode): Use new names.
-
-       * erc.el: Removed autload for erc-complete and
-       erc-track-modified-channels-mode -- the autoload cookie should do
-       that instead.
-       (erc-input-message): Doc string, removed binding for erc-complete.
-       (erc-mode-map): Removed binding for erc-complete.
-
-2002-10-03  Mario Lang  <mlang@delysid.org>
-
-       * erc-notify.el:
-       New functions erc-notify-JOIN and erc-notify-QUIT to catch some common cases (warning, untested)
-
-2002-10-01  Alex Schroeder  <alex@gnu.org>
-
-       * erc-stamp.el(erc-timestamp-mode): New function.  Removed call
-       to erc-stamp-initialize at the end.
-
-2002-09-25  Brian P Templeton  <bpt@tunes.org>
-
-       * erc.el:
-       Added customizable `erc-process-coding-system' variable.
-
-2002-09-22  Brian P Templeton  <bpt@tunes.org>
-
-       * erc-fill.el:
-       `erc-fill-variable' now does the right thing when `erc-hide-timestamps' is non-nil
-
-2002-09-21  Mario Lang  <mlang@delysid.org>
-
-       * erc-fill.el:
-       patch from Peter Solodov <peter@alcor.concordia.ca>  (note, its slightly broken still
-
-2002-09-05  Mario Lang  <mlang@delysid.org>
-
-       * erc-pcomplete.el: Added LEAVE as alias for PART
-
-2002-09-04  Mario Lang  <mlang@delysid.org>
-
-       * erc-pcomplete.el:
-       By sachac (good work!) keep up doing such things
-
-2002-08-31  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       A fix for Bug#133267: now you can put (erc-save-buffer-in-logs) on erc-insert-post-hook to save *every* incoming message.
-
-2002-08-30  Brian P Templeton  <bpt@tunes.org>
-
-       * erc.el:
-       Changed default value of erc-common-server-suffixes because of the OPN
-       name change
-
-2002-08-28  Mario Lang  <mlang@delysid.org>
-
-       * erc-stamp.el: Try to reactivate isearch in xemacs
-
-       * erc-stamp.el:
-       fixes issues related to comparative emacsology and a silly bug
-
-2002-08-27  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       New hook erc-send-completed-hook (for robot stuff), changed alexanders email address to reflect reality, little fix to erc-auto-query to get a bit of a speedup
-
-2002-08-22  Mario Lang  <mlang@delysid.org>
-
-       * erc-button.el:
-       Fixed case-fold-search (thanks sachac), now lambda works in erc-button-alist, added wardwiki+google+symvar+rfc+itime regexps from the wiki
-
-2002-08-19  Mario Lang  <mlang@delysid.org>
-
-       * erc-button.el:
-       erc-nick-popup-alist: New variable to make erc-nick-popup configurable
-
-2002-08-16  Alex Schroeder  <alex@gnu.org>
-
-       * erc-button.el(erc-recompute-nick-regexp): Fixed regexp.
-
-       * erc-button.el(erc-button-buttonize-nicks): Changed custom type
-       to integer.
-       (erc-button-add-buttons): Moved button removal code to new
-       function.
-       (erc-button-remove-old-buttons): New function.
-       (erc-button-add-button): Removed use of overlays and used
-       erc-button-add-face instead.
-       (erc-button-add-face): New function to merge faces as text
-       properties.  This should be much faster when lots of buttons
-       appear.
-       (erc-button-list): New helper function.
-
-       * erc.el(erc-display-message): Fixed argument list.
-       (erc-display-prompt): Reduced calls to length, use start-open
-       property for XEmacs to prevent a little box of erc-prompt-face at
-       the end of messages other people send.
-       (erc-refresh-channel-members): Fix XEmacs calls to split-string,
-       which may return an empty string at the end of the list.  This
-       would cause hangups in erc-button in re-search-forward loops.
-       (erc-get-channel-mode-from-keypress): Replaced control codes with
-       octal escape sequences.
-
-2002-08-14  Mario Lang  <mlang@delysid.org>
-
-       * erc-button.el:
-       Try to be compatible to XEmacs regexp-opt. (Im going to quit this job if I find more of those damn differencies
-
-       * debian/README.Debian, debian/scripts/install:
-       * Added info to README.Debian
-       * Finished debian/scripts/install
-
-2002-08-13  Mario Lang  <mlang@delysid.org>
-
-       * debian/scripts/install: First attempt to fix it
-
-       * debian/README.Debian, debian/changelog, debian/scripts/install:
-       changelog: Changed maintainer and added new entry
-       README.Debian: Re-explained the byte-compile issue
-       scripts/install: Exclude erc-bbdb|chess|ibuffer|speedbar from
-       byte-compiling
-
-       * erc-track.el: Added C-c C-SPC in addition to C-c C-@
-
-       * erc-notify.el: Little docstring change
-
-2002-08-09  Mario Lang  <mlang@delysid.org>
-
-       * erc-stamp.el:
-       Change one use of set-text-properties to add-text-properties (tnx Lathi)
-
-2002-08-02  Mario Lang  <mlang@delysid.org>
-
-       * erc-stamp.el: added erc-timestamp-only-if-changed-flag
-
-2002-07-22  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Removed timestamp related code and moved into erc-stampe.l
-
-       * erc-stamp.el:
-       Timestamping code moved out of erc.el. Additional, now we can timestamp either on the left or on the right side
-
-2002-07-16  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * Make ctcp ping return its message in the active buffer, instead of the server buffer
-       * Corrected minimal typo in catalog
-       * Added var and variable as alias for /set
-
-2002-07-08  Mario Lang  <mlang@delysid.org>
-
-       * erc-track.el:
-       * New function erc-track-switch-buffer (by resolve)
-         Bound to C-c C-SPC, enjoy!
-
-2002-07-08  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog: New snapshot deb
-
-       * debian/scripts/install: Rewrote in make.
-       Does not byte-compile erc-speak.el at all, and excludes erc-track.el too, if
-       ran for xemacs.
-
-       * debian/control: Added dependency on make
-
-       * debian/copyright: Updated copyright info
-
-       * debian/rules: Use $(wildcard *.el) instead of a hardcoded list
-
-2002-07-03  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el:
-       erc-iswitchb now works correctly if erc-modified-channels-alist is non-nil
-
-2002-07-01  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-menu.el:
-       * changed how we check if we should activate "Track hidden channels" and
-         whether it should be selected - fixes a bug Xemacs where whole menu bar
-         does not work if menu is loaded
-
-       * erc-menu.el:
-       * added "Disconnect from server", only selectable if erc-connected is non-nil
-
-       * topic is allowed to be set by normal users if channel mode is not +t
-
-       * add " ..." after description if arguments needed after selecting menu item
-
-       * only allow selecting of menu points needing a channel if current buffer is
-         a channel buffer - done by testing if channel-members is non-nil
-
-       * put erc-match functions in new group "Pals, fools and other keywords"
-
-       * erc.el:
-       * moved definition of erc-show-my-nick to GUI variables section
-
-       * erc-connected variable now defined with defvar
-         now set in channel and query buffers, was only in server buffer before
-         upon disconnect, set erc-connected to nil in all the server's buffers
-
-       * added erc-cmd-GQUIT and its alias erc-cmd-GQ - quit all servers at once
-
-       * added interactive function erc-quit-server, bound to C-c C-q
-
-       * added erc-server-WALLOPS
-
-       * added WALLOPS to english catalog, fixed s461 (was showing message twice)
-
-       * typo fixes, spacing change
-
-2002-06-29  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Use pp-to-string in /set (without args)
-
-       * erc-netsplit.el:
-       Make /set anonymous-lign set erc-anonymous-login, also report
-       which var was set to which val.
-
-2002-06-28  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-menu.el: added "Customize ERC"
-
-2002-06-25  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: New variable: erc-use-info-buffers, defaults to nil.
-         This prevents info-buffers from being created/updated.
-         Set to t if you use :INFO buffers.
-         (by rw)
-       Delete (erc-display-prompt) from reconnect to avoid clutter
-
-2002-06-23  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el:
-       erc-get-channel-mode-from-keypress is now bound to C-c C-m
-       erc-insert-mode-command is taken care of by this function as well
-
-2002-06-21  Mario Lang  <mlang@delysid.org>
-
-       * erc-track.el:
-       Fixed bug where buffer-names suddenly had text-properties.
-
-2002-06-19  Diane Murray  <disumu@x3y2z1.net>
-
-       * Makefile: changed erc-auto.el to $(SPECIAL) in make fullclean
-
-       * Makefile: remove erc-auto.el on make fullclean
-
-2002-06-18  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-match.el: fixed spelling error
-
-       * erc-track.el, erc-match.el: * erc-match.el:
-         highlight current nickname in its own face (deactivated by default):
-         - added erc-current-nick-highlight-type, erc-current-nick-face,
-           erc-current-nick-p
-
-       * erc-track.el:
-         added support for erc-current-nick-face
-
-2002-06-17  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el: * added beginning suport for 005 numerics:
-         - added buffer local variable erc-server-parameters
-         - added erc-server-005, which sets erc-server-parameters if the server has
-           used this code to show its parameters
-
-2002-06-16  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el:
-       * bugfix: when pasting lines with blank lines in between, remove the blank lines
-         but send the rest
-
-       * since we know the command, use it when checking what's in erc-hide-list
-         added check to erc-server-KICK
-
-       * added some blank lines for better readability
-
-2002-06-16  Alex Schroeder  <alex@gnu.org>
-
-       * erc-nickserv.el(erc-nickserv-alist): Fixed typo.
-
-2002-06-15  Alex Schroeder  <alex@gnu.org>
-
-       * erc-nickserv.el(erc-networks): Added doc string.
-       (erc-nickserv-alist): Added doc string.
-
-2002-06-14  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-ring.el:
-       fixed bug so that the prompt and command always get put at the end of the buffer
-
-2002-06-10  Mario Lang  <mlang@delysid.org>
-
-       * erc-nickserv.el: Added iip support.
-       Added :type for erc-nickserv-passwords custom.
-       Fixed hook usage.
-
-2002-06-07  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-nickserv.el: * added GalaxyNet
-
-       * erc-nickserv-alist:
-         - sorting networks alphabetically
-         - added two more pieces of information in erc-nickserv-alist:
-           word to use for identification and whether to use the nickname
-
-       * erc-current-network:
-         - made regex case insensitive, downcase server to match
-         - uses the new information
-         - now uses new variable erc-networks instead of doing checking manually
-
-       * added variable erc-networks
-
-       * fixed some indentation, documentation
-
-2002-06-07  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Fix for kill-buffer hook stuff
-
-2002-06-06  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Added /squery command
-
-2002-06-06  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-menu.el: * made group Channel modes
-         - moved change mode and invite only mode to here
-         - added secret, moderated, no external send, topic lock, limit, key
-
-       * check that user is in a channel buffer and user is a channel operator
-         for all op-related actions
-
-       * "Identify to nickserv" needs erc-nickserv-identify defined
-
-       * added "Show ERC version"
-
-       * erc.el:
-       * added erc-set-channel-limit, erc-set-channel-key, erc-toggle-channel-mode
-
-       * added erc-get-channel-mode-from-keypress, which is binded to C-c m
-         sends the next character which is typed to one of the 3 new functions
-         - did not remove erc-invite-only-mode and it's key binding in case
-           people are used to it, although it probably should be removed...
-
-       * in erc-server-MODE:
-         added check if tgt equal to user's nick
-         removed erc-display-line, only using the erc-display-message
-
-       * added s461 to english catalog
-
-       * fixed bug where Xemacs would not quit if erc-quit-reason was
-         set to erc-quit-reason-various and assoc-default was not defined
-
-2002-06-04  Andreas Fuchs  <asf@void.at>
-
-       * erc-ezbounce.el, erc-match.el:
-       * erc-ezbounce.el: Added. Provides support for ezbouncer; automatic login,
-                          session management implemented. I've contacted the author
-                          about stuff in EZBounce's logging.
-       * erc-match.el: Fixed a stupid mistake where
-                       "*** Your new nick is <foo>" would trigger an error.
-
-2002-06-04  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-nickserv.el, erc.el: * added erc-nickserv.el
-       * moved nickserv identification variables and functions to the new file
-         (require 'erc-nickserv) is now necessary for this to work
-
-       * erc.el:
-       * results of /COUNTRY now formatted as notice; errors are ignored, 
-         fixing
-         bug which made prompt disappear
-
-       * added undefined-ctcp error message to english catalog
-
-       * changed some (when (not erc-disable-ctcp-replies) to use unless instead
-         and some if's without else statments to use when or use
-
-       * CTCP replies now use erc-display-message, formatted as notices
-
-       * added following to english catalog:
-         - undefined-ctcp
-         - CTCP-CLIENTINFO, CTCP-ECHO, CTCP-FINGER, CTCP-PAGE, CTCP-PING,
-           CTCP-SOUND, CTCP-TIME, CTCP-UNKNOWN, CTCP-VERSION
-         - s303, s305, s306, s353
-
-       * split erc-server-305-or-306 into erc-server-305 and erc-server-306
-
-       * KICK already had buffer set, using it
-
-       * erc.el:
-       * erc-format-timestamp now only called from erc-display-message and
-         erc-send-current-line
-
-       * all instances of erc-display-line with erc-highlight-error
-         changed to use erc-display-message
-
-       * added following error messages to english catalog:
-         bad-ping-response, bad-syntax, cannot-find-file, cannot-read-file,
-         ctcp-request, flood-ctcp-off, flood-strict-mode, no-default-channel,
-         no-target, variable-not-bound
-
-       * added following server related messages to english catalog:
-         s324, s329, s331, s332, s333, s341, s406, KICK, KICK-you, KICK-by-you, MODE-nick
-
-       * ignoring server codes 315, 369
-
-       * added erc-server-341, erc-server-406
-
-       * channel topic and mode notices displayed in respective channel buffers if they
-         exist
-
-       * erc-server-KICK: display the message before removing this channel so that we
-         can track the kick
-
-       * send parsed to erc-ctcp-query-ACTION-hook so that actions can be checked
-         by erc-match
-
-       * fixed bug where nil was shown if no reason was given by users on /PART
-
-2002-06-03  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-match.el:
-       * fixed bug where erc-log-matches produced an error when the value of
-         (erc-default-target) was not a channel
-       * use erc-format-timestamp, if it's non-nil, for %t in erc-log-match-format
-
-2002-06-01  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-button.el:
-       * made action case insensitive in erc-nick-popup and added a more descriptive
-         error message
-
-2002-05-30  Brian P Templeton  <bpt@tunes.org>
-
-       * erc.el:
-       Removed multiple calls of `erc-prompt' in `erc-display-prompt'
-
-2002-05-29  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       First step timestampkiller cleanup. I'm tired, do the rest tomorrow.
-
-       * erc.el:
-       New functionality: Catch channel/server buffer kills through kill-buffer-hook.
-       Currently, it only does a PART if you kill a channel buffer.
-
-2002-05-28  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       defvar'ed some buffer-local variables to make elint at least a bit more happy.
-         Moved comments into docstrings.
-       Changed some instances of member to memq.
-
-       * erc-track.el, erc.el:
-       erc.el: (erc-message-type-member): New function, used to test
-       for message type. Require erc-parsed text-property.
-       erc-track.el: erc-track-exclude-types: New variable. Defaults to ("JOIN" "PART") right now for testing, it should eventually set to nil soon again.
-       (erc-track-modified-channels): Use above fun and var to optionally exclude certain message types from channel tracking.
-
-2002-05-28  Diane Murray  <disumu@x3y2z1.net>
-
-       * CREDITS: added myself, vain as it sounds ;)
-
-2002-05-25  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * Some small docstring fixes
-       * (erc-display-line): Now takes also a process object in the buffer argument.
-         Used for easy sending to the server buffer.
-       * Several places: Just pass proc, not (process-buffer proc)
-
-2002-05-24  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Mostly docstring fixes/additions
-
-       * erc-netsplit.el: Doc fixes, and a new netjoin-done message.
-
-       * erc-fill.el: Doc fixes, erc-fill custom group, autoloads.
-
-       * erc-netsplit.el: Fix to erc-netsplit-timer.
-
-       * erc-netsplit.el: Fixed a silly typo
-
-       * erc-maint.el: is this really necessary?
-
-       * erc.el: Added new variable erc-hide-list.
-       It affects erc globally right now, and is used to hide certain IRC type messages like JOIN and PART.
-
-       * Makefile: Doh, I should really test this before checkin :)
-
-       * Makefile: Silly cut&paste bug fixed
-
-       * erc-list.el: Added autoload cookie
-
-       * erc-match.el: Added missing require erc.
-
-       * erc-notify.el: Autoload cookies and a -initialize function.
-
-       * erc-chess.el: Added autoload cookies
-
-       * Makefile: Finally, we have a Makefile.
-       Primarily used for autoload definition generation right now.
-
-       * erc-auto.in: First version.
-
-       * erc-track.el: Added autoload cookie
-
-       * erc-netsplit.el:
-       New module, used to autodetect and hide netsplits.
-       (Untested, no netsplit happened yet :) )
-
-       * erc-nets.el: Added some old code I once worked on.
-       Added autoload cookie
-
-2002-05-24  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-fill.el:
-       removed reference in documentation to old variable, changed it to the new one
-
-       * erc.el:
-       * added new function erc-connection-established which is called after receiving
-         end of MOTD (does nothing if it's been called before)
-
-       * added new hook erc-after-connect which is called from
-         erc-connection-established with the arguments server (the announced server)
-         and nick - which other arguments should be sent??
-
-       * added buffer variable erc-connected which is set to t the first time
-         erc-connection-established is called, set to nil again if we've been
-         disconnected
-
-       * set initial user mode
-         - added custom variable erc-user-mode which can be a string or a function
-           which returns a string
-         - new function erc-set-initial-user-mode gets called from
-           erc-connection-established
-
-2002-05-22  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el: fixed bug where prompt was missing after reconnect
-
-2002-05-21  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el:
-       in erc-nickserv-identify: if network is unknown, just use "Nickserv"
-
-       * erc.el: * fixed some typos
-
-       * timestamping
-         - ctcp request messages and replies now have timestamp
-         - timestamps in front of error messages now in timestamp face
-         - added timestamp to more error messages
-
-       * ctcp reply messages, server ping message updated
-
-       * added variable erc-verbose-server-ping - check this instead of erc-paranoid
-
-       * added whowas on no such nick:
-         - added variable erc-whowas-on-nosuchnick
-         - in erc-server-401 do WHOWAS if erc-whowas-on-nosuchnick is non-nil
-
-       * erc.el: forgot documentaion for erc-nickserv-alist
-
-       * erc.el: NickServ identification changed and enhanced:
-       - erc-nickserv-identify-autodetect now called from erc-server-NOTICE-hook
-       - now possible to identify automatically without prompt:
-         - added custom variables erc-prompt-for-nickserv-password and
-           erc-nickserv-passwords
-       - added erc-nickserv-alist containing the different networks' nickserv details
-       - added function erc-current-network to determine the network symbol
-       - fixed bug where identification on dalnet didn't work, because they now
-         require NickServ@services.dal.net
-         now sends to all NickServ with nick@server where possible
-
-2002-05-17  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-fill.el:
-       * filling with erc-fill-variable now works with custom defined fill width:
-         - changed erc-fill-column from defvar to defcustom
-         - in erc-fill-variable: set fill-column to value of erc-fill-column
-
-       * erc.el: erc.el:
-       * fixed bug where topic wasn't being set when chanel name was provided
-
-       erc-fill.el:
-       * filling with erc-fill-variable now works with custom defined fill width:
-         - changed erc-fill-column from defvar to defcustom
-         - in erc-fill-variable: set fill-column to value of erc-fill-column
-
-2002-05-16  John Wiegley  <johnw@gnu.org>
-
-       * erc.el: whitespace fix
-
-2002-05-15  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el:
-       * added explanation of empty string working in erc-quit-reason-various-alist
-       * removed the text property from erc-send-message, it caused problems
-         with /SV (as noticed by gbvb on IRC) and is obviously not needed
-       * when receiving a ctcp query, convert type to uppercase to allow for
-         "/ctcp nick time" and not just "/ctcp nick TIME"
-       * timestamp in front of server notices now shown in the timestamp face
-
-2002-05-13  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el:
-       - in erc-format-privmessage: `erc-format-timestamp' added to message after
-         message's text properties are applied so that it doesn't lose its face
-
-       - /quit without reason now works when `erc-quit-reason' is set to
-         `erc-quit-reason-various' and the empty string "" is defined in
-         `erc-quit-reason-various-alist'
-
-2002-05-13  Andreas Fuchs  <asf@void.at>
-
-       * erc-bbdb.el:
-       * Applied Drewies patch to pop-up on nick changes when -popup-type is 'visible
-
-2002-05-12  Andreas Fuchs  <asf@void.at>
-
-       * erc-bbdb.el, erc.el:
-       * erc-bbdb.el: pop up the buffer on /whois when erc-bbdb-popup-type is 'visible
-       * erc.el: fix for empty quit reason problem by drewie.
-
-2002-05-12  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: disumu nick patch
-       - added erc-show-my-nick (default t)
-         if t, show nickname like <nickname>
-         if nil, only show a > character before the message
-       - added faces erc-nick-default-face and erc-nick-msg-face
-         - nicknames (channel, msgs, notices) are now in bold face by default
-         - the msg face matches the erc-direct-msg-face color
-
-2002-05-10  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-send-pre-hook): Doc change.
-
-       * CREDITS: Alexander L. Belikoff is confirmed original author.
-
-2002-05-10  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       timestamp fix by disumutimestamp fix by disumutimestamp fix by disumutimestamp fix by disumutimestamp fix by disumutimestamp fix by disumutimestamp fix by disumutimestamp fix by disumu
-
-2002-05-09  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: *** empty log message ***
-
-2002-05-06  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       New var: erc-echo-notices-in-minibuffer-flag. defaults to t.
-
-2002-05-04  John Wiegley  <johnw@gnu.org>
-
-       * TODO: *** empty log message ***
-
-2002-05-03  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el: Copyright notice, version string updates.
-
-2002-05-02  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el: Comment: dme is David Edmondson
-
-2002-05-01  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-warn-about-blank-lines): New option.
-       (erc-send-current-line): Use it.
-       (erc-quit-reason-various-alist): New option.
-       (erc-quit-reason): New option.
-       (erc-quit-reason-normal): New function.
-       (erc-quit-reason-zippy): New function.
-       (erc-quit-reason-various): New function.
-       (erc-cmd-QUIT): Use them.
-
-2002-04-30  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el: Version 2.92
-
-       * erc.el(erc-send-modify-hook): Default value is nil.
-
-2002-04-27  John Wiegley  <johnw@gnu.org>
-
-       * erc.el:
-       Don't redisplay the prompt if the ERC buffer is no longer alive.
-
-2002-04-26  John Wiegley  <johnw@gnu.org>
-
-       * erc.el:
-       Don't call `set-buffer' on old-buf unless the buffer is valid.  It's
-       often not when separate frames are being used.
-
-2002-04-23  Mario Lang  <mlang@delysid.org>
-
-       * erc-button.el: fixed up erc-nick-regexp
-
-2002-04-22  Brian P Templeton  <bpt@tunes.org>
-
-       * erc.el:
-       `erc-prompt' may now be a function that returns a string (which is
-       used as the prompt). I don't use Customize but I think customization
-       of it may be broken if it's not a string.
-
-       There is a new `erc-prompt' function that returns the prompt as a
-       string (e.g., returning either the result of `(funcall erc-prompt)' or
-       `erc-prompt').
-
-       This allows for dynamic prompts, such as a LispWorks-like prompt, or
-       one containing simply the current channel name. It was requested by
-       Mojo Nichols (nick michols) in #emacs today, 21-Apr-2002; cf. the
-       #emacs logs at <URL:http://www.tunes.org/~nef/logs/emacs/02.04.21.
-
-2002-04-17  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       fix erc-send-current-line to work on empty lines again (without sending the prompt)
-       Fix C-c C-t to not include the nick/time info
-       (both from antifuchs)
-
-       * erc-complete.el: Fix for xemacs elt behaviour
-
-2002-04-17  John Wiegley  <johnw@gnu.org>
-
-       * erc-chess.el:
-       Added a missing arg in a call to erc-chess-handler.
-
-2002-04-15  John Wiegley  <johnw@gnu.org>
-
-       * erc-chess.el: *** empty log message ***
-
-2002-04-14  John Wiegley  <johnw@gnu.org>
-
-       * erc-chess.el: *** empty log message ***
-
-2002-04-12  John Wiegley  <johnw@gnu.org>
-
-       * erc-chess.el: *** empty log message ***
-
-       * erc-chess.el: bug fixes
-
-       * erc-chess.el: *** empty log message ***
-
-2002-04-12  Mario Lang  <mlang@delysid.org>
-
-       * erc-chess.el: change order.
-
-       * erc-chess.el: more fixing.
-
-       Now, the 'match question works. It sends an accept back.
-       But display popup doesnt work..
-
-       * erc-chess.el: fixup (still far from working)
-
-2002-04-11  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * Added :options entry for erc-mode-hook (erc-add-scroll-to-bottom)
-
-2002-04-11  John Wiegley  <johnw@gnu.org>
-
-       * erc.el: remove trailing \n from any sent text
-
-       * servers.pl, erc-bbdb.el, erc-button.el, erc-chess.el, 
-         erc-complete.el, erc-fill.el, erc-ibuffer.el, erc-list.el, 
-         erc-match.el, erc-menu.el, erc-nets.el, erc-replace.el, 
-         erc-speak.el, erc-speedbar.el, erc-track.el, erc.el:
-       clean whitespace
-
-       * erc.el: Replaced erc-scroll-to-bottom.
-
-2002-04-11  Mario Lang  <mlang@delysid.org>
-
-       * erc-track.el:
-       try to fix behaviour when used with different frames.
-
-2002-04-09  Mario Lang  <mlang@delysid.org>
-
-       * erc-chess.el:
-       fixup release, far from ready for real usage, but it appears to work.
-
-       * erc.el:
-       speed improvments based on elp-instrument-package RET erc- RET results
-
-       * erc-chess.el: initial version.
-       please test it
-       Get chess.el from johnw's cvs:
-       cvs -d:pserver:anonymous@alice.dynodns.net:/usr/local/cvsroot login
-       cvs -d:pserver:anonymous@alice.dynodns.net:/usr/local/cvsroot co chess
-
-       (as usual, blank password)
-
-       Add the resulting dir to your load-path and reqire erc-chess.
-
-       Usage: Just do /chess nickname
-       The remote end much use erc, as no other irc client I know of supports this ...
-
-       See erc-chess-default-display and maybe set it to chess-images or chess-ics1 if you prefer those over chess-plain.
-       Also, see erc-chess-user-full-name to set the name you use in chess games.
-
-2002-04-04  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: New hackery latenightwise
-
-       * erc.el: upupadowndowncase
-
-2002-04-04  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog: Updated for the new snapshot
-
-       * debian/rules: Install README.Debian into the package
-
-       * debian/README.Debian: Initial check-in
-
-2002-04-04  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Fixed that /me in query buffers ended up in server buffer
-
-       * erc.el: * Implemented joining +k channels
-
-2002-03-14  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: New utility function: erc-channel-list
-       minor fix to erc-get-buffer. hopefully that helps shapr
-
-2002-03-12  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       New /command: /QUOTE for sending directly to the IRC server
-       Removed erc-fill from erc-insert-modify-hook. To activate filling, simply customize that var.
-
-2002-03-09  Brian P Templeton  <bpt@tunes.org>
-
-       * CREDITS: *** empty log message ***
-
-2002-03-09  Mario Lang  <mlang@delysid.org>
-
-       * erc-complete.el:
-       New variable: erc-nick-completion-ignore-case. Defaults to t.
-
-       * erc-track.el:
-       * erc-track-shorten-name-function can now be set to nil to avoid treating of channel names at all.
-
-2002-03-06  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog, debian/rules: update to new snapshot
-
-2002-03-06  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Fixed nasty bug which prevented channel limit from correctly display/handling
-
-       * erc-track.el: Made shortening code highly customizable.
-       Now, there is the variable erc-track-shorten-function which holds
-       a function which gets called with one argument, CHANNEL-NAMES, which is a list
-       of strings of the channel names.
-       It needs to return a list of strings of the same length with the modified values...
-
-       * erc-track.el:
-       Added erc-track-shorten-aggressively, default to nil
-       if it is set to t, erc will shorten a bit more.
-       if nil, erc will shorten the name only if it would get shorter than just
-       one char...
-
-       * erc-speak.el: added iirc to the abbreviation expansion list.
-
-       * erc-track.el:
-       Added customization variable: erc-track-use-faces. defaults to t.
-
-       * erc-track.el: *** empty log message ***
-
-       * erc-track.el:
-       experimental: Added face support to mode-line channel activity tracker.
-       Currently we use the faces used for indicating in the buffer (erc-pal-face for channels with pal acitivity...)
-
-2002-03-05  Mario Lang  <mlang@delysid.org>
-
-       * erc-complete.el: * added docfixes (thanks ore)
-
-       * erc-track.el: Fixed channel-name reduction.
-       thanks again alex.
-       Renamed the vars to erc-track-opt-start and erc-track-opt-cutoff.
-
-       * erc.el: fixed another silly error
-
-       * erc-track.el: Implemented channel name shortening.
-       Vars erc-track-cutoff says: all channel names longer than this will be shortened.
-       Var erc-track-minimum-channel-length says: dont make names shorten than this.
-       (Thanks go out to kensanata for the nice unique-substrings utility function).
-
-       * erc.el 2002-07-15T00:01:34Z!raeburn@raeburn.org: silly typo corrected
-
-       * erc.el:       * erc.el: * New varialbe: erc-common-server-name-suffixes
-         This alist can be used to change the server names displayed in mode-line
-         to a shorter version..
-       * New function: erc-shorten-server-name (uses var above)
-       * Changed erc-prepare-mode-line to use erc-shorten-server-name.
-
-2002-02-25  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       CTCP handling rewritten. Seems to work. please test and report probs.
-
-2002-02-24  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Fixed emacs20 backward compatibility (new defun/alias: erc-propertize)
-
-2002-02-22  Mario Lang  <mlang@delysid.org>
-
-       * erc-button.el: *** empty log message ***
-
-2002-02-21  Mario Lang  <mlang@delysid.org>
-
-       * erc-button.el, erc.el:
-       minor fixup related to read-only prompts and command renaming.
-
-2002-02-21  Andreas Fuchs  <asf@void.at>
-
-       * erc.el: * modify `erc-remove-text-properties-region' to work.
-         Could even be a little faster now. (-:
-
-2002-02-21  Mario Lang  <mlang@delysid.org>
-
-       * erc-ring.el:
-       fixed erc-replace-command to behave right when text is read-only.
-       Also, use erc-insert-marker and (point-max) now.
-
-       * erc.el: * Made erc-prompt read-only
-       * new function: erc-make-read-only. Can be used on erc-insert-post-hook and erc-send-post-hook to ensure read-only buffer text too
-
-2002-02-19  Mario Lang  <mlang@delysid.org>
-
-       * erc-list.el: added comment to docstring
-
-       * erc-speak.el: minor updates, use erc-nick-regexp now
-
-       * erc.el:
-       ensure that erc-timer-hook is called inside the server-buffer.
-
-2002-02-19  Andreas Fuchs  <asf@void.at>
-
-       * erc-match.el:
-       * Probably fixed the "number-char-or-marker-p: nil" bug.
-
-2002-02-19  Mario Lang  <mlang@delysid.org>
-
-       * erc-notify.el: Initial release.
-
-       * erc.el: added #303 handling
-       moved timer and added an arg (erc-current-time)
-
-       * erc-list.el, erc.el:
-       slightly changed the erc-once-with-server-event macro
-
-       * erc-button.el: erc-button-alist: doc fix and custom type fix
-
-2002-02-18  Mario Lang  <mlang@delysid.org>
-
-       * erc-list.el, erc.el: new macro: erc-once-with-server-event
-       erc-list.el: use it
-
-       * erc-match.el:
-       Minor fix related to hook call method change (-until-seccess now)
-
-       * erc.el: fixed ctcp behaviour abit (with auto-query on)
-
-       * erc-list.el: ChanList mode.
-       Load it, and type M-x erc-chanlist RET
-       Demonstrates how the new hook system can be nicely used.
-
-       * erc.el:
-       new hook: erc-default-server-hook. This one gets called if we dont have anything defined for a certain IRC server message.
-       New function: erc-default-server-handler. (used by above hook).
-       New function: erc-debug-missing-hooks: Used by above hook to save a list of unimplemented server messages.
-       New function: erc-server-buffer, erc-server-buffer-p.
-       Various places: use it.
-       Minor fixup.
-
-       * erc-button.el: fix regexp to not buttonize ~user@host hostnames
-
-2002-02-17  Mario Lang  <mlang@delysid.org>
-
-       * erc-complete.el, erc.el: Eliminated erc-command-table
-       Upcased the command defuns (erc-cmd-join is now erc-cmd-JOIN)
-       Fixed erc-complete to not require erc-command-table.
-       Implemented erc-cmd-HELP
-         (You have to try that, its tooo coool!)
-         e.g. /help auto-q
-       fixed autoloads for erc-add-pal and so on to be interactive.
-
-2002-02-17  Andreas Fuchs  <asf@void.at>
-
-       * erc-match.el:
-       * Fix unfunctional code in `erc-get-parsed-vector-type'.
-
-       * erc-bbdb.el, erc-button.el, erc-match.el, erc.el:
-       * Be careful: MANY changes ahead. I won't go into too much details.
-
-       * erc.el, new file erc-match.el: split out all pattern-matching code.
-       * erc.el: removed all defcusts for erc-{...}-highlight-props. They are
-         quite useless, anyway.
-       * moved erc-add-entry-to-list and -remove- over to erc-match. changed
-         their arg list.
-       * erc.el: add autoloads for erc-{add,delete}-{keyword,pal,fool,dangerous-host}
-       * erc.el: erc-server-PRIVMSG-or-NOTICE:
-         - remove all the highlighting crap
-         - add a (when (eq s nil) ...) so that untreated CTCP messages don't
-           get misdisplayed.
-       * erc.el: erc-mark-message: removed this function, it's useless
-       * erc.el: minor bugfixes.
-
-       * erc-match.el: first checkin. This file now contains all the pattern
-         matching stuff. there is now another defcust group, erc-match,
-         containing all match related stuff (erc-keywords, ...)
-       * erc-match.el: added functionality to log matching lines. Quite
-         customizable, check out the docstring of defun erc-log-matches
-       * erc-match.el: added functionality to make foolish messages
-         invisible/intangible. This could replace erc-ignore-list
-         sometime. it's more powerful right now, anyway.
-       * erc-match.el erc-text-matched-hook: new hook. run when Text matches
-         anything (pal, fool, etc.).
-
-       * erc-button.el: Make nick buttonization customizable.
-       * erc-button.el: Give nick buttonization a lower priority so that it
-         does not break url buttons.
-
-       * erc-bbdb.el: Add \n to the separators by which we split nicknames.
-
-2002-02-17  Mario Lang  <mlang@delysid.org>
-
-       * TODO: Added item
-
-2002-02-17  Brian P Templeton  <bpt@tunes.org>
-
-       * CREDITS, erc.el: Added invisible timestamp support.
-
-2002-02-16  Gergely Nagy  <algernon@debian.org>
-
-       * debian/changelog, debian/rules, debian/scripts/install:
-       updated to new snapshot
-
-2002-02-16  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Fixed channel limit format overflow in mode-line display.
-       (Having to use floats if integers are to large is quite strange, isn't it?)
-
-       * TODO: TODO list created.
-       Add comments and expand it.
-
-       * erc.el:
-       Fixed bug in query buffer handling (only happend in mixed-case situations)
-
-       * erc.el: shapr checkdoc patch #1
-       massive docfixes! yay, keep going!
-
-2002-02-15  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: various other fixes
-       make s301 a catalog entry
-
-2002-02-15  Andreas Fuchs  <asf@void.at>
-
-       * erc.el: * erc-server-NICK and erc-server-INVITE: fixed to use
-         `erc-display-message'. These I missed in the first checkin.  I
-         didn't say it in the last log message, but please test these.
-
-       * erc-fill.el, erc.el:
-       * erc.el: updated many functions to use `erc-display-message'. Now, we
-         should go for getting highlighting out of
-         erc-server-PRIVMSG-or-NOTICE. The part I want to attack has been
-         marked.
-       * erc-fill.el: updated static filling to leave the erc-parsed property alone.
-
-2002-02-15  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       first step, new function: erc-display-message
-
-       * erc.el: added numreply 379 and 405.
-
-       * erc.el: stupid typo fixed
-
-       * erc.el:
-       Finally renamed erc-frame-dedicated-p to erc-frame-dedicated-flag
-       Removed usage of erc-interpret-controls from info buffer drawing (major speedup)
-       Other speedups based on the results from elp.
-       ERC is now about 300%-500% faster in some situations with very full channels!!!!!
-
-2002-02-14  Andreas Fuchs  <asf@void.at>
-
-       * erc.el:
-       * erc-downcase now downcases {}|^ with []\~ -- 'stolen' from zenirc.
-       * various checkdoc fixes. Just the upper third of the file, but that
-         should help a little, too. (-: Again, if you have any writing
-         skills, take out that dusty keyboard and tap it to the beat of M-x
-         checkdoc!
-
-2002-02-14  Gergely Nagy  <algernon@debian.org>
-
-       * erc.el(erc-format-privmessage):
-       fix it, so timestamp-coloring works again (patch from antifuchs)
-
-2002-02-14  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Many fixes based on M-x checkdoc RET.
-       If you have write access, and some english knowledge, help document erc too!
-       M-x checkdoc RET, and follow the instructions.
-
-       * erc-button.el, erc-ibuffer.el: minor fixes
-
-       * erc.el: Use nreverse instead of reverse.
-       Use eq instead of equal where possible.
-       Rewrote erc-get-buffer to not use find-if (find-if does very deep function-call nesting, which isnt good ina  defun which is called so often)
-
-2002-02-13  Mario Lang  <mlang@delysid.org>
-
-       * erc-button.el, erc.el:
-       In erc.el, new hook: erc-channel-members-changed-hook.
-       erc-button.el: Now highlight all nicknames. uses regexp-opt.
-
-2002-02-04  Mario Lang  <mlang@delysid.org>
-
-       * erc-nets.el:
-       Database of irc networks. Use erc-server-select to interactively select one.
-
-       * erc.el: * erc-format-nick-function: New variable.
-       * (erc-format-nick): The default for above var. Just return the nick.
-       * (erc-format-@nick): Prefix NICK with @ or + if OP or VOICE.
-       * Removed erc-track-modified-channels related code and moved into erc-tracke.l
-          Its auto-loaded now
-
-       * erc-track.el: Split code from erc.el
-
-2002-02-01  Mario Lang  <mlang@delysid.org>
-
-       * erc-ibuffer.el:
-       * erc-target now uses erc-port-to-string
-
-       * servers.pl:
-       Script to convert mircs servers.ini to a elisp salist kind of thing.
-       (development tool, it doesnt help you much as a user)
-
-       * erc.el:
-       * erc-display-line-buffer: renamed to erc-display-line-1
-       * erc-port-equal: New function.
-       * erc-normalize-port: Used by erc-port-equal
-       * minor docstring fixes
-
-2002-02-01  Andreas Fuchs  <asf@void.at>
-
-       * erc.el:
-       * erc-already-logged-in-p: compare ports is more robust now.
-
-       * erc-button.el: * Add buttonization to erc-send-modify-hook, too
-
-2002-01-31  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Use insert-before-markers instead of insert in erc-display-line-buffer
-       This fixed point@column 0 problem and gives us some speedup! yay
-
-       * erc-ibuffer.el, erc.el: minor fixes
-
-       * erc.el:
-       * (erc-line-beginning-position): Renamed to erc-beg-of-input-line.
-       * (erc-line-end-position): Renamed to erc-end-of-input-line.
-       * erc-multiline-input-p: Variable removed.
-
-       * erc.el:
-       Minor docstring fixes (using M-x checkdoc-current-buffer)
-         If you find time, and you are native english speaker, do that too!!
-
-       * erc.el: fixed macro-invokation
-
-2002-01-31  Andreas Fuchs  <asf@void.at>
-
-       * erc.el: * erc-with-all-buffers-of-server: use erc-list-buffers
-       * erc-process-away, erc-{save,kill}-query-buffers: use it.
-       * erc-cmd-away-all: new command. Set away/back on all servers.
-
-       * erc.el:
-       * Fix last multiline bug in erc-send-distinguish-noncommands.
-
-2002-01-31  Mario Lang  <mlang@delysid.org>
-
-       * erc-ibuffer.el, erc.el: minor fixes
-
-2002-01-30  Mario Lang  <mlang@delysid.org>
-
-       * erc-ibuffer.el, erc-menu.el, erc-speak.el, erc.el:
-       Renamed erc-track-modified-channels-minor-mode to erc-track-modified-channels-mode (at least, its a bit shorter)
-       Added docstring to erc-server-hooks (through the macro)
-       Minor docfix in obsolete hook
-
-2002-01-30  Andreas Fuchs  <asf@void.at>
-
-       * erc.el:
-       * erc-send-current-line: fix behaviour where buffer changes.
-       * erc-mark-message: fix stupid face bug. highlighting of pals should work now.
-
-       * erc-ring.el, erc.el:
-       * new hooks: erc-send-pre-hook, erc-send-modify-hook, erc-send-post-hook
-       * erc-send-this: new variable
-       * erc-noncommands-list: new constant.
-       * erc-send-distinguish-noncommands: use it. (First filter function for sending! yay!)
-       * erc-send-current-line: nearly completely rewritten.
-         - now handles multiline input. (yay!)
-         - now uses the three hooks from above.
-       * erc-process-line: new arg, no-command: don't process this line as a command.
-
-2002-01-30  Mario Lang  <mlang@delysid.org>
-
-       * erc-bbdb.el, erc-button.el, erc-speak.el, erc.el:
-       hook handling rewrite phase 1.
-
-2002-01-30  Andreas Fuchs  <asf@void.at>
-
-       * erc.el: * Rework erc-server-PRIVMSG-or-NOTICE
-       * New function: erc-is-message-ctcp-p
-       * New function: erc-format-privmessage
-       * New function: erc-mark-message
-       * erc-server-PRIVMSG-or-NOTICE: use them.
-
-2002-01-30  Mario Lang  <mlang@delysid.org>
-
-       * CREDITS, HISTORY:
-       Initial checkin.
-
-2002-01-29  Andreas Fuchs  <asf@void.at>
-
-       * erc.el: * erc-put-text-properties: make OBJECT optional
-       * erc-put-text-property: same
-       * erc-server-PRIVMSG-or-NOTICE: use them.
-       * Make erc-display-line-buffer: add the "\n" even when the string would be invisible.
-       * same: make the \n invisible, too (:
-
-2002-01-29  Mario Lang  <mlang@delysid.org>
-
-       * erc-ibuffer.el, erc.el:
-       Rewrote channel tracking using window-configuration-change-hook instead of defadvices.
-
-2002-01-28  Andreas Fuchs  <asf@void.at>
-
-       * erc-fill.el, erc.el:
-       * Macro define-erc-highlight-customization: Ease up defining
-         erc-{fool,pal,..}-highlight-props defcusts.
-       * defcusts:
-         - erc-fool-highlight-props
-         - erc-pal-highlight-props
-         - erc-dangerous-host-highlight-props
-         - erc-keyword-highlight-props
-
-         Customizable to either nil or "Hide message".
-       * erc-string-invisible-p: check for invisible chars in string
-       * erc-display-line-buffer: use it.
-       * erc-put-text-properties: put a list of props into a piece of text.
-       * erc-server-PRIVMSG-or-NOTICE: use it; set appropriate
-         highlight-props for entire incoming message. This set of changes
-         allows you to e.g. auto-ignore fools.
-
-2002-01-28  Mario Lang  <mlang@delysid.org>
-
-       * erc-ibuffer.el:
-       Added highlight detection support to the Mark column.
-       Now p, k, f, and d indicate pal, keyword, fool and dangerous-host related activity.
-
-       * erc.el:
-       Highlight tracking finished. All necessary info should now be in erc-modified-channels.
-
-       * erc.el, erc-ibuffer.el, erc-speedbar.el:
-       Added highlight tracking to track-modified-channels
-          no display code yet, the info is just kept in erc-modified-channels
-       Added erc-modified column to ibuffer
-       speedbar update
-
-       * erc-ibuffer.el: Added erc-members column
-
-       * erc-ibuffer.el: *** empty log message ***
-
-2002-01-28  Andreas Fuchs  <asf@void.at>
-
-       * erc-bbdb.el:
-       * Fix a slight typo. The hook function should be called in
-         erc-server-376-hook (-:
-
-2002-01-28  Mario Lang  <mlang@delysid.org>
-
-       * erc-ibuffer.el: *** empty log message ***
-
-2002-01-27  Mario Lang  <mlang@delysid.org>
-
-       * erc-ibuffer.el: Fixup, it sort of works now. Try it
-
-       * erc-ibuffer.el: Initial version
-
-2002-01-26  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: *** empty log message ***
-
-2002-01-25  Andreas Fuchs  <asf@void.at>
-
-       * erc-bbdb.el: * fix two bad things:
-         - fix the "proc trick": pass proc as an arg through
-           ...-insinuate-... to ...-show-entry
-         - hook highlighting into the 376 hook. This one is bound to get
-           called (-:
-       * We now only append to hooks only.
-       * Highlighting of changing records gets updated automatically.
-
-2002-01-25  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: *** empty log message ***
-
-2002-01-25  Andreas Fuchs  <asf@void.at>
-
-       * erc-bbdb.el: * nearly complete rewrite of erc-bbdb:
-         -  Removed code duplication in erc-bbdb-NICK and -JOIN.
-         -  Made erc-bbdb-show-entry more general and intelligent.
-         -  erc-bbdb-insinuate-entry is now erc-bbdb-insinuate-and-show-entry
-            (note the different arglist!):
-         -  erc-search-name-and-create now creates "John Doe" users if name
-            is not specified.
-         -  No sign of "mail" anywhere anymore. It's all finger-host. (-:
-         -  erc-bbdb-popup-p is now called erc-bbdb-popup-type.
-         -  New customize values:
-            . erc-bbdb-irc-channel-field     channel field name
-            . erc-bbdb-irc-highlight-field   (see below)
-            . erc-bbdb-auto-create-on-nick-p auto-create record on join
-
-       * Highlighting based on BBDB is now here! Specify which type of
-         highlighting a person in the BBDB (whose nick you know) and have
-         fun! Read help to erc-bbdb-init-highlighting for details. Changes:
-         -  new function erc-bbdb-init-highlighting: gets called on server
-            connect.
-         -  new function erc-bbdb-highlight-record: highlights a person's
-            nick names.
-
-2002-01-24  Andreas Fuchs  <asf@void.at>
-
-       * erc-button.el:
-       * Fix the erc-button-alist regexp for EmacsWiki stuff. delYsid's version
-         is better (-:
-
-       * erc-button.el: * Added an Ewiki: specifier to the url-regexp.
-         <nickname> EmacsWiki: EmacsIRCClient tells you <bla>
-         should highlight "EmacsWiki: EmacsIRCClient" and allow you to
-         browse to the wiki when the button is activated.
-       * new custom: erc-emacswiki-url.
-       * new function: erc-browse-emacswiki: use it.
-
-2002-01-23  Mario Lang  <mlang@delysid.org>
-
-       * erc-bbdb.el:
-       erc-bbdb-NICK: Added regexp-quote around fingerhost search.
-
-2002-01-10  Andreas Fuchs  <asf@void.at>
-
-       * erc.el:
-       * Channel saving/killing on quit from server implemented:
-        - defcust erc-save-queries-on-quit: Save server's channel buffers on quitting from server
-        - defcust erc-kill-queries-on-quit: Kill server's channel buffers on quitting from server
-        - Macro erc-with-all-buffers-of-server: Run a form inside all the server's query buffers
-        - Functions erc-{kill,save}-query-buffers: use it.
-       * Added indent-tabs-mode: t to Local Variables section.
-
-2002-01-07  Andreas Fuchs  <asf@void.at>
-
-       * erc-replace.el: * fix stupid documentation errors.
-
-2002-01-07  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * (toplevel): Revert previous change. This resulted ina  recursive load...
-          You have to put (require 'erc-button) into your .emacs for now
-
-2002-01-05  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * Added require for erc-button. This is devel. so I need testers :)
-
-       * erc-button.el: * Added proper file headers (GPL).
-
-2002-01-04  Mario Lang  <mlang@delysid.org>
-
-       * erc-button.el: * erc-button-alist: Added entry for finger
-
-       * erc-button.el: * Removed bogus usage of :button-keymap.
-       P
-          Does anyone know what this was supposed to do anyway?
-
-       * erc-button.el: * Initial version.
-       * This module allows a way of buttonizing text in IRC buffers.
-         Default it is used for URLs, but other things could be added.
-         see if you can find another use, erc-button-alist
-
-See ChangeLog.2001 for earlier changes.
-
-    Copyright (C) 2002 Free Software Foundation, Inc.
-  Copying and distribution of this file, with or without modification,
-  are permitted provided the copyright notice and this notice are preserved.
-
-;; Local Variables:
-;; coding: utf-8
-;; End:
-
-;; arch-tag: a6779d5e-99fa-442b-98cf-90e73eb2c272
diff --git a/lisp/erc/ChangeLog.2003 b/lisp/erc/ChangeLog.2003
deleted file mode 100644 (file)
index 6d650c9..0000000
+++ /dev/null
@@ -1,2151 +0,0 @@
-2003-12-30  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-cmd-HELP):
-       Changed to prefer giving help for erc-cmd-* functions over
-          similarly-named Elisp functions (e.g., erc-cmd-LIST vs. list).
-
-2003-12-28  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-query-buffer-p): Added this function.
-
-2003-12-28  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-cmd-SV): Use erc-emacs-build-time.
-
-       * erc-compat.el: erc-emacs-build-time: New variable.
-
-       * erc.el(erc-cmd-SAY):
-       Reintroduced the feature where the spaces between
-       "/SAY" and the rest of the line were being sent with the message.
-
-2003-12-28  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-server-buffer-p):
-       Fixed a bug where this function sometimes would return
-           nil when it should return t.
-
-2003-12-27  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-generate-new-buffer-name):
-       Really fixed a bug where ERC would reuse
-           a connected server buffer when erc-reuse-buffers is non-nil.
-       (erc-cmd-JOIN): Now we tell the user when he attempts to join the same
-           channel twice on the same server.
-
-       * erc.el(erc-generate-new-buffer-name):
-       Fixed a bug where ERC would reuse a connected server buffer when erc-reuse-buffers is non-nil.
-
-       * erc.el(erc-cmd-SAY):
-       Fixed a bug where the spaces between "/SAY" and the rest of the
-           line were being sent with the message.
-
-       * erc-list.el: Fixed another typo.
-
-       * erc-list.el: Fixed a typo.
-
-       * erc-list.el:
-       Added text to the top of the channel list buffer describing the keybinding for
-       function erc-chanlist-join-channel.
-
-       * erc-list.el: Minor appearance changes.  No functional change.
-
-       * erc-list.el:
-       Implemented function erc-chanlist-join-channel.  Added variable
-       erc-chanlist-channel-line-regexp.  Got rid of function
-       erc-chanlist-pre-command-hook.  Changed the logic for how channel lines are
-       highlighted.
-
-2003-12-26  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc-list.el:
-       Removed a bunch of unused code.  No semantic change.
-
-       * erc-list.el: Added lots of functionality.
-
-2003-12-15  Mario Lang  <mlang@delysid.org>
-
-       * erc-track.el, erc.el:
-       New custom type erc-message-type, use it in erc-hide-list and erc-track-exclude-types
-
-2003-12-14  Alex Schroeder  <alex@gnu.org>
-
-       * erc-track.el(track-when-inactive): New module.
-       (erc-track-visibility): New option.
-       (erc-buffer-activity): New variable.
-       (erc-buffer-activity-timeout): New variable.
-       (erc-user-is-active): New function.
-       (erc-buffer-visible): New function.
-       (erc-modified-channels-update): Replace get-buffer-window call
-       with call to erc-buffer-visible.
-       (erc-track-modified-channels): Ditto.
-
-2003-12-14  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc-track.el(erc-modified-channels-update):
-       Force update of modeline.  Makes sure
-       that the tracked channels disappear in other buffers too.
-
-2003-12-06  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc.el(define-erc-module):
-       New optional argument LOCAL-P.  If non-nil, then
-       mode will be created as buffer-local rather than a global mode.
-       (erc-cmd-CTCP): Fix indentation from last commit.
-
-       * erc-compat.el(erc-define-minor-mode):
-       Deal with :global and :group keywords.
-
-       * erc-nickserv.el(erc-current-network):
-       Make server regex more permissive.
-
-       * erc.el(erc-cmd-CTCP):
-       Don't add a space to end of command when ARGS are
-       empty.  This fixes a bug whereby requests of the form "VERSION " were
-       being sent, and ignored.
-
-2003-11-27  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc-log.el: From Adrian Aichner <adrian@xemacs.org>
-       * erc-log.el (erc-log-file-coding-system): Use 'binary
-       coding-system under XEmacs (instead of 'emacs-mule).
-       * erc-log.el (erc-w32-invalid-file-characters): Removed as no
-       longer needed.
-       * erc-log.el (erc-generate-log-file-name-long): Use
-       `convert-standard-filename', which exists in XEmacs too.
-
-2003-11-16  Mario Lang  <mlang@delysid.org>
-
-       * erc-identd.el: Code provided by johnw, thanks!
-
-2003-11-09  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc.el(erc-latest-version): Clean up docstring.
-       Remove requirement for w3, wrap REQUIRE statement in IGNORE-ERRORS.
-       Update viewcvs url to correct location.
-       (erc-ediff-latest-version): Make sure that we find the uncompiled
-       erc.el, error if not.
-
-2003-11-07  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Add more info to /sv
-
-2003-11-06  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el: Added optional argument BUFFER to erc-server-buffer-p.
-
-2003-11-04  Mario Lang  <mlang@delysid.org>
-
-       * AUTHORS: Add sachac
-
-2003-11-02  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc.el(erc-server-366):
-       chnl is 4th element of parsed, not fifth.
-       (erc-channel-end-receiving-names): Pass correct number of arguments
-       to delete-if-not.
-
-       * erc.el(erc-update-current-channel-member):
-        Use erc-downcase when comparing
-       nick entries.  Cleanup indentation.
-
-2003-11-01  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc-sound.el: Added a (provide 'erc-sound) line.
-
-       * erc.el(erc-cmd-NAMES): send to TGT, not CHANNEL.
-
-2003-10-29  Sandra Jean Chua  <sacha@free.net.ph>
-
-       * erc-pcomplete.el, erc.el, CREDITS:
-       Merged Jeremy Maitin-Shepard's patch for time-sensitive nick completion.
-
-2003-10-27  Mario Lang  <mlang@delysid.org>
-
-       * Makefile, debian/changelog:
-       New Debian package 4.0.cvs.20031027
-
-2003-10-25  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Fix typo tuncate->rruncate
-
-2003-10-24  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el: From Stephan Stahl <stl@isogmbh.de>:
-        * (erc-dcc-send-block): Kill buffer if transfer completed correctly.
-
-2003-10-22  Mario Lang  <mlang@delysid.org>
-
-       * erc-track.el(erc-track-disable):
-       Do not deactivate all advices for `switch-to-buffer',
-       just disable the erc specific one. (Bug#217022).
-
-2003-10-18  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc-log.el(erc-log-file-coding-system): New variable.
-       (erc-save-buffer-in-logs): Use it.
-
-2003-10-17  Mario Lang  <mlang@delysid.org>
-
-       * erc.el(erc-interpret-mirc-color): New boolean defcustom
-
-       * erc.el: Do not use -nowait on darwin (thanks johnw)
-
-2003-10-15  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc.el(define-erc-module):
-       Set erc-FOO-mode appropriately in erc-FOO-enable
-       and erc-FOO-disable.
-
-2003-10-12  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-autoaway.el(erc-mode):
-       Reset idletime on connect. Fixes an annoying bug which
-       flooded the server with aways on reconnect.
-       (erc-autoway-reset-idletime): Accept optional args so we can hook it
-       onto erc-server-001-hook.
-
-2003-10-10  Mario Lang  <mlang@delysid.org>
-
-       * erc.el(erc-hide-list): Add a nice defcustom type
-
-2003-10-08  Mario Lang  <mlang@delysid.org>
-
-       * Makefile, debian/changelog, debian/control:
-       Debian snapshot 20031008
-
-       * erc-speedbar.el:
-       Patch from Eric M. Ludlam <eric@siege-engine.com>:
-        - (erc-install-speedbar-variables): Add functions list (needs new speedbar?)
-        - (erc-speedbar-buttons): Add doc.  Clear the buffer
-        - (erc-speedbar-sort-channel-members): New function.
-        - (erc-speedbar-expand-channel): Call new sort function.  Change some visuals.
-        - (erc-speedbar-insert-user): Change some visuals based on channel data.
-        - (erc-speedbar-line-text, erc-speedbar-item-info): New functions
-       Add proper elisp file header.
-
-2003-10-02  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc-match.el(erc-match-syntax-table): New variable.
-       (erc-match-current-nick-p): Use it.
-
-       * erc.el(erc-quit-reason-zippy, erc-part-reason-zippy): Use
-       `erc-replace-regexp-in-string' rather than
-       `replace-regexp-in-string'.
-       (erc-command-indicator-face): New face, used to show commands if
-       `erc-hide-prompt' is nil and `erc-command-indicator' is non-nil.
-       (erc-command-indicator): Clean up doc-string.
-       (erc-display-prompt): New optional argument FACE, use this rather
-       than `erc-prompt-face' to fontify the prompt if non-nil.
-       (erc-send-current-line): Pass in `erc-command-indicator-face' to
-       `erc-display-prompt'.
-
-       * erc-compat.el(erc-replace-regexp-in-string): New function.
-       Alias for `replace-regexp-in-string' on Emacs 21.
-       Argument massaging for `replace-in-string' for XEmacs.
-
-2003-09-28  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-keywords): Removed. Wasn't used by anything.
-
-2003-09-25  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc.el: ERC-HIDE-PROMPT: add custom group
-       ERC-COMMAND-INDICATOR: new variable.
-       ERC-COMMAND-INDICATOR: new function.
-       ERC-DISPLAY-PROMPT: new argument, PROMPT, used to override default
-       prompt.
-       ERC-SEND-CURRENT-LINE: pass ERC-COMMAND-INDICATOR to ERC-DISPLAY-PROMPT.
-
-2003-09-24  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-parse-line-from-server):
-       Ignore empty lines as required by RFC.
-
-2003-09-17  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Add lag time calculation
-
-2003-09-13  Mario Lang  <mlang@delysid.org>
-
-       * Makefile, debian/README.Debian, debian/changelog:
-       New debian release
-
-       * erc-notify.el:
-       Call erc-notify-install-message-catalogs on load, not on module init
-
-       * erc.el(erc-update-modules):
-       Use `load' instead of `require'.  XEmacs appears
-       to have the NOERROR arg only sometimes... Strange
-
-       * erc.el: No fboundp if we have a defvar
-
-       * erc.el: Properly defvar erc-ping-handler
-
-2003-09-11  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc-setup-periodical-server-ping):
-       check if erc-ping-handler is
-           bound before referencing it
-
-2003-09-10  Mario Lang  <mlang@delysid.org>
-
-       * erc.el(erc-cmd-NICK):
-       Warn about exceeded NICKLEN if we know it.
-
-       * erc.el: Make erc-server-PONG obey erc-verbose-server-ping.
-       Cancel old `erc-ping-handler' timer when restablishing connection in the same
-       buffer.
-
-       * debian/changelog, Makefile: New debian snapshot
-
-       * erc-dcc.el, erc-xdcc.el:
-       Use new function erc-dcc-file-to-name to convert spaces to underscores
-
-       * erc-xdcc.el: Add autoload for erc-xdcc-add-file
-
-2003-09-08  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el: indent fixes and copyright update
-
-       * erc.el:
-       erc-send-ping-interval: New defcustom which defaults to 60.
-       Every 60 seconds, we send PING now.
-       This should fix the "connection silently lost" bug.
-       Please test this change extensively, and report problems.
-
-2003-09-07  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-default-coding-system):
-       Test for undecided and utf-8
-       before setting.
-
-2003-09-01  Mario Lang  <mlang@delysid.org>
-
-       * erc.el(erc-modules): Add some more symbols to the set
-
-       * erc.el(erc-modules):  * erc.el(erc-modules): Add :greedy t to the set in 
-
-       * erc-dcc.el:
-       More autoloads which make dcc autoload upon ctcp dcc query received.
-
-       * erc-dcc.el(erc-cmd-DCC): Add Autoload.
-       (pcomplete/erc-mode/DCC): Ditto, makes DCC autoloadable just by using
-       completion.
-       Also only offer "send" if fboundp make-network-process.
-
-       * erc-autojoin.el: Update copyright
-
-       * erc-autojoin.el(erc-autojoin-add):
-       Only add the channel if it is not already there.
-
-       * erc-notify.el:
-       Use `define-erc-module' instead of old `erc-notify-initialize'.
-       Now defines the global minor mode erc-notify-mode, and should also
-       be controllable via `erc-modules' with symbol `notify'.
-
-       * erc.el(erc-modules):
-       Fix paren-in-column-zero bug in docstring.
-       Add a sort of bogus, but still better :type.
-       Add autojoin and netsplit by default.
-       (erc-update-modules): Dont barf with an error if `require' fails.
-       We can still error out if the mode is not defined.
-
-2003-08-31  Andreas Fuchs  <asf@void.at>
-
-       * erc.el:
-       * make 353 (NAMES reply) output go into the appropriate channel buffer
-         (if it exists) or into the active erc buffer (if not).
-
-2003-08-29  mtoledo  <mtoledo@confusibombus>
-
-       * erc.el:
-       Added the variable erc-echo-notices-in-current-buffer to make possible display notices in the current buffer (queries to nickserv/chanserv/memoserv). Defaults to nil so nothing changes from what we have today.
-
-2003-08-29  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Fix typo in varname which led to a compiler warning
-
-       * AUTHORS: Added lawrence
-
-2003-08-27  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el:
-       Set process and file-coding system to 'binary (for Windows)
-
-       * erc-stamp.el: Rename custom group erc-timestamp to erc-stamp.
-
-2003-08-07  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc-fill.el(erc-fill-disable):
-       Remove erc-fill, not erc-fill-static from
-       erc-insert-modify-hook.
-
-2003-08-05  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-send-current-line):
-       Now we display the prompt for previously entered commands
-           based on the value of customization variable erc-hide-prompt.  This change is
-           closely related to the immediate previous version by wencem.
-
-2003-08-04  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc.el(erc-send-current-line):
-       If we're sending a command, don't display
-       the prompt.
-
-2003-08-04  Damien Elmes  <erc@repose.cx>
-
-       * erc-track.el: patch from David Edmondson (dme AT dme DOT org)
-
-       This patch makes button 3 on the erc-track buffer names in the
-       modeline show the selected buffer in another window. It's analogous to
-       button 2 which shows the buffer in the current window.
-
-2003-07-31  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-display-line-1):
-       Fixed bad indentation on one line.  No semantic change.
-
-2003-07-29  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc-match.el:
-       Quote open paren in docstring of erc-text-matched-hook
-
-       * erc.el: Anchor match only at beginning in erc-ignored-user-p.
-
-       * erc-button.el: New variable erc-button-wrap-long-urls.
-       Modified erc-button-add-buttons:
-         New optional argument REGEXP.
-         If we're buttonising a URL and erc-button-wrap-long-urls is
-         non-nil, try and wrap them
-
-       Modified erc-button-add-buttons-1:
-         Pass regexp to erc-button-add-buttons.
-
-2003-07-28  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-network-name):
-       Improved docstring.  Removed an unnecessary call to erc-server-buffer.
-
-2003-07-28  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: By lawrence:
-       (erc-ignored-user-p): Use anchored regexp.
-       (smiley): Fix missing quote in `remove-hook' call.
-
-2003-07-26  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc-nets.el, erc-nickserv.el, erc.el:
-       Changed all references to Openprojects into references to Freenode.
-
-2003-07-25  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el:
-       Now variable erc-debug-irc-protocol is defvar'ed instead of defcustom'ed.
-       Made the docstring clearer too.
-
-       * erc.el: Fixed a wrong-type-argument error from window-live-p.
-
-2003-07-15  Damien Elmes  <erc@repose.cx>
-
-       * erc-log.el(erc-log-setup-logging):
-       set buffer-file-name to "", as (basic-save-buffer)
-           will prompt for a buffer name before invoking hooks. the buffer-file-name
-           will be overridden by (erc-save-buffer-in-logs) anyway - the main danger
-           of doing this is write-file-contents hooks. Let's see if anyone complains.
-       (erc-save-buffer-in-logs): return t, so that further write hooks are not run
-
-2003-07-09  Damien Elmes  <erc@repose.cx>
-
-       * erc-dcc.el(erc-dcc-open-network-stream):
-       -nowait still crashes emacs cvs - disable for now
-
-2003-07-02  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc): Minor docstring modification.
-
-2003-07-01  Damien Elmes  <erc@repose.cx>
-
-       * erc-match.el(erc-match-current-nick-p):
-       match only on word boundaries
-
-       * erc-log.el(erc-log-setup-logging):
-       not sure how this crept in again - make sure we set
-           buffer-file-name to nil, since otherwise it is not possible to open
-           previous correspondence in another buffer while a conversation is open
-
-2003-06-28  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-network-name):
-       Now makes some intelligent guesses if the server didn't tell
-           us the network name.
-
-2003-06-28  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-default-coding-system): Use utf-8 as the default
-       encoding for outgoing stuff and undecided as the default for
-       incoming stuff.
-       (erc-coding-sytem-for-target): New.
-       (erc-encode-string-for-target): Use it.
-       (erc-decode-string-from-target): Use it.  Removed the flet
-       erc-default-target hack and documented the dynamically bound
-       variable `target' instead.
-
-2003-06-25  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-log-irc-protocol):
-       Now we keep point on the bottom line of the window
-           displaying the *erc-protocol* buffer if it is at the end of the
-           *erc-protocol* buffer.
-
-       * erc.el:
-       Added some text to the docstring for variable erc-debug-irc-protocol.
-
-2003-06-23  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc-dcc.el(erc-dcc-auto-mask-p):
-       Fixed a docstring typo that caused a load-time error.
-
-       * erc-dcc.el(erc-dcc-auto-mask-p):
-       Changed reference to undefined variable erc-dcc-auto-mask-list
-           to erc-dcc-auto-masks.
-       Changed default value of variable erc-dcc-auto-masks to nil and added text to its
-           docstring.
-
-       * erc-notify.el(erc-notify-timer and erc-notify-QUIT):
-       Added network name to notify_off message.
-
-       * erc.el(erc-network-name):
-       Now returns the name of the IRC server if the network name
-           cannot be determined.
-
-       * erc-notify.el(erc-notify-JOIN and erc-notify-NICK):
-       Added argument ?m to call to erc-display-message.
-
-       * erc-dcc.el(erc-dcc-do-LIST-command):
-       Fixed a bug where I assumed (plist-get elt :type)
-           returns a string -- it really returns a symbol.
-
-       * erc-notify.el(erc-notify-timer):
-       Now we include the network name in the notify_on message.
-
-       * erc.el:
-       New function: erc-network-name.  Returns the name of the network that the
-           current buffer is associate with.  Not every server sends the 005 messages
-           that enable the network name to be known.  If the network name is
-           not known, the string "UNKNOWN" is returned.
-
-       * erc-dcc.el(erc-dcc-chat-setup):
-       Added a comment.  Fixed a bug where a DCC CHAT buffer has no
-           prompt when it first appears.
-
-       * erc-dcc.el(erc-dcc-chat-parse-output):
-       Now a DCC chat buffer displays the nick using
-           erc-nick-default-face just like in a channel buffer.
-
-2003-06-22  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-display-prompt):
-       Fixed incorrect indentation.  No semantic change.
-
-       * erc.el(erc-strip-controls):
-       Minor change to regexp that matches IRC color control
-           codes.  I was seeing usage as follows: ^C07colored text^C^C04other color.
-           Now we strip a ^C followed by zero, one, or two digits.  Before this change,
-           we stripped a ^C followed by one or two digits.
-
-       * erc-dcc.el(erc-dcc-do-LIST-command):
-       Improved format of output of /DCC LIST.  Now the
-           "Size" column for a DCC GET includes the percentage of the file that has
-           been retrieved.
-       (erc-dcc-do-GET-command): Now it works if erc-dcc-default-directory is set.
-
-2003-06-19  Damien Elmes  <erc@repose.cx>
-
-       * erc-log.el:
-       * added quickstart information to the comments up the top
-
-2003-06-16  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Default to open-network-stream on MS Windows. (thanks lawrence)
-
-2003-06-11  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc-process-input-line):
-       refactor so that wrong-number-of-arguments is
-           caught when using do-not-parse-args - this lets do-not-parse-args
-           commands display help messages on incorrect syntax in a uniform manner.
-           This no longer raises a bad-syntax error - was this a catch-all to stop a
-           backtrace? Does it belong?
-       (erc-cmd-APPENDTOPIC): the correct way to display help when you want to
-           accept an abitrary string is to (signal 'wrong-number-of-arguments nil).
-           This fixes a bug where people could not /at topics with a space in them.
-
-2003-06-09  Damien Elmes  <erc@repose.cx>
-
-       * erc.el:
-       Re-add the last few changes which weren't merged for some reason.
-
-       * erc.el(erc-cmd-APPENDTOPIC): show help when given no arguments
-
-       Patch from MrBump. Fixes problem with erc-set-topic inserting ^C characters
-       into the topic. Also removes dependency on CL.
-
-2003-06-08  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el:
-       Added comment to explain (eval-after-load "erc" '(erc-update-modules)).
-
-2003-06-01  Mario Lang  <mlang@delysid.org>
-
-       * erc-pcomplete.el: Add completion for /unignore
-
-2003-05-31  Alex Schroeder  <alex@gnu.org>
-
-       * erc-compat.el(erc-encode-coding-string): The default binding,
-       if encode-coding-string was not available, must be a defun that
-       takes multiple arguments.  Did that.
-
-2003-05-30  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Add handlers for 313 and 330 (by arne@rfc2549.org, thanks)
-
-2003-05-30  Damien Elmes  <erc@repose.cx>
-
-       * erc.el:
-       patch from MrBump to make /mode #foo +b work again (erc-cmd-BANLIST only
-       temporarily changes them now)
-
-2003-05-29  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-select):
-       server is now defaulted with erc-compute-server.
-       A few cosmetic fixes.
-       (erc-default-coding-system): Renamed from erc-encoding-default.
-       (erc-encoding-default): Renamed to erc-default-coding-system.
-       (erc-encoding-coding-alist): Documentation updated to cover regexps.
-       (erc-encode-string-for-target): Now considers keys of
-       erc-encoding-coding-alist to be regexps.  Rely on erc-compat
-       wrt. MULE support.
-       (erc-decode-string-from-target): New function.
-       (erc-send-current-line): eq -> char-equal fix.
-       (erc-server-TOPIC): topic is now decoded with
-       erc-decode-string-from-target.
-       (erc-parse-line-from-server): Line from server is no longer decoded
-       here.
-       (erc-server-PRIVMSG-or-NOTICE): Message from a user is decoded here,
-       sspec -> sender-spec for clarity.  Cosmetic if -> when fix.
-       (erc-server-TOPIC): sspec -> sender-spec
-       (erc-server-WALLOPS): Ditto.
-
-       * erc-compat.el(erc-decode-coding-string):
-       Now requires coding-system as an argument.
-
-2003-05-15  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       erc-part|quit-hook is only run on a part|quit directed to our nick, reflect that in the docstring to avoid confusion
-
-2003-05-01  Andreas Fuchs  <asf@void.at>
-
-       * erc-truncate.el:
-       * erc-truncate-buffer-to-size: use fboundp. Scheme takes its toll...
-
-2003-05-01  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-truncate.el: remove require of erc-log
-       (erc-truncate-buffer-to-size): use erc-save-buffer-in-logs when it's
-       there, else, dont.
-
-2003-04-29  Andreas Fuchs  <asf@void.at>
-
-       * erc-log.el, erc-truncate.el, erc.el: erc.el:
-               * erc-cmd-QUIT: Remove references to code in erc-log.el, to
-                 not force autoloading of erc-log.el
-               * erc-server-PART: ditto.
-               * erc-quit-hook: new hook, run when /quit command is
-                 processed.
-               * erc-cmd-QUIT: use it.
-               * erc-part-hook: new hook, run then PART message is
-                 processed.
-               * erc-cmd-PART: use it.
-               * erc-connect-pre-hook: new hook, run before connection to IRC
-                 server is started.
-               * erc: use it.
-               * erc-max-buffer-size: Move truncation variables and functions
-                 to erc-truncate.el
-               * erc-truncate-buffer-on-save: moved to erc-log.el
-               * erc-initialize-log-marker: new function.
-       erc-log.el:
-               * erc-truncate-buffer-on-save: New defcust here; from erc.el
-               * erc-truncate-buffer-on-save: Put it in group `erc-log'
-               * erc-log-channels-directory: Remove trailing slash from
-                 default value.
-               * Add functions to erc-connect-pre-hook, erc-part-hook and
-                 erc-quit-hook to avoid getting autoloaded.
-
-       erc-truncate.el:
-               * Contains the truncation functions and defcusts from erc.el.
-               * define-erc-module clause added; new erc-truncate-mode.
-
-2003-04-29  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc):
-       Check wether erc-save-buffer-in-logs is bound, too
-
-       * erc.el(erc):
-       Check wether erc-logging-enabled is bound before using it - not
-       everyone is using erc-log.el!
-
-2003-04-28  Andreas Fuchs  <asf@void.at>
-
-       * erc-log.el:
-       * while we're at it, remove the (declare (ignore ignore)) statements.
-
-       * erc-log.el:
-       * add autoload statement for erc-log-mode/etc. Sorry for the delay.
-
-       * erc-log.el, erc.el: * erc.el:
-               - move variables and functions to erc-log.el:
-                        defgroup `erc-log'
-                        defcustom `erc-log-channels-directory'
-                        defcustom `erc-log-insert-log-on-open'
-                        defcustom `erc-generate-log-file-name-function'
-                        defun `erc-save-buffer-in-logs' (autoloads from erc-log.el)
-                        defuns `erc-generate-log-file-name-*'
-                        defun `erc-current-logfile'
-                        defun `erc-logging-enabled' (autoloads from erc-log.el)
-               - erc-truncate-buffer-to-size: fix for double-saving bug when
-                 writing out truncated buffer contents. Thanks, lawrence mitchell <wence@gmx.li>!
-               - erc-remove-text-properties-region: Fix case for read-only text.
-               - erc-send-current-line: update insert-marker before calling the hooks.
-                                        also, wrap (erc-display-prompt) so that it doesn't toggle
-                                        buffer-modified-p.
-               - erc-interpret-controls: remove /very/ old commented-out function
-               - erc-last-saved-position: make it a marker
-               - erc: use it.
-
-       * erc-log.el: (thanks, lawrence mitchell <wence@gmx.li>!)
-               - Move logging code from erc.el here
-               - define-erc-module log: add; minor mode erc-log-mode is the
-                 same as adding the `erc-save-buffer-in-logs' to
-                 erc-send-post-hook and `erc-insert-post-hook'.
-               - erc-w32-invalid-file-characters: add.
-               - erc-enable-logging: add.
-               - erc-logging-enabled: use it.
-               - erc-logging-enabled: autoload.
-               - erc-save-buffer-in-logs: fix for truncating saved buffer with read-only text.
-               - erc-save-buffer-in-logs: use erc-last-saved-position.
-               - erc-save-buffer-in-logs: fix saving half-written messages on
-                 the prompt when saving the log file. (simply uses
-                 erc-insert-marker as an upper bound for saving).
-
-2003-04-27  Damien Elmes  <erc@repose.cx>
-
-       * erc.el:       * erc.el: erc-modules: added 
-
-2003-04-27  Alex Schroeder  <alex@gnu.org>
-
-       * Makefile(UNCOMPILED): Added erc-compat.el.
-       (clean): Remove .elc files, too.
-       Patch by Hynek Schlawack <hynek+erc@hys.in-berlin.de>
-
-2003-04-22  Damien Elmes  <erc@repose.cx>
-
-       * erc-button.el:
-       erc-button-keymap: set the parent keymap to erc-mode-map
-
-2003-04-20  Damien Elmes  <erc@repose.cx>
-
-       * erc.el:
-       erc-official-location: shouldn't the official location be the base URL of erc?
-
-       * erc.el:
-       erc-modules: updated the docstring to make the semantics clearer
-
-2003-04-19  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Fix problem where % in NOTICE produced errors (from mmc)
-
-2003-04-18  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc-toggle-debug-irc-protocol):
-       moved a reference to 'buf' inside the let
-           statement which defines it. it's difficult to tell what the original
-           intentions were here - at the moment the debug window is displayed when
-           toggling either way.
-
-       * README, erc.el:
-       (erc-update-modules: added a condition in for erc-nickserv -> erc-services
-
-       * erc-pcomplete.el:
-       - that change to erc-update-modules making it require the modules first means
-         we don't need any special case handling here, so i reverted the previous
-         change
-
-       * erc.el:
-       - don't require 'erc-auto, since windows users don't have access to make.
-         instead, we handle it in (erc-update-modules)
-
-2003-04-17  Damien Elmes  <erc@repose.cx>
-
-       * README, Makefile:
-       Updated Makefile and documentation to reflect the new release
-
-       * erc.el:
-       - note the previous change also updated the release number to erc 4.0!
-       (erc-connect): fix a bug introduced by the previous release
-
-       * erc.el:
-       fixed about 20 instances of (message (format ...)) which will break if the
-       format returns a string with %s in it
-
-       * erc.el: erc-error-face: make it red, not pink
-
-       * erc-pcomplete.el:
-       since pcomplete is autoloaded via erc-completion-mode, and completion is in
-       erc-modules by default, we remove completion when pcomplete is added
-
-       * erc.el(define-erc-module): no need for delete, use delq
-
-       * erc-members.el(erc-nick-channels):
-       (erc-person-channels) takes one arg
-       (erc-format-user): again, they all take an arg
-
-       * erc.el:
-       - require erc-auto when loading, so the default `erc-modules' can be loaded.
-         this makes erc-auto no longer a convenience but a necessity - all the name
-         of user friendliness.
-       (define-erc-module): the enable and disable routines now update erc-modules
-           accordingly
-       erc-modules: new variable controllig the modules which erc has loaded/will
-           load. when customising, it will automatically enable modules. it won't
-           automatically disable modules which are removed, yet.
-       (erc-update-modules): enable all modules in `erc-modules'
-
-       * erc-dcc.el(erc-dcc-open-network-stream):
-       use the -nowait equiv if available
-       erc-dcc-server-port: removed
-       erc-dcc-port-range: allows a range of values, so you can have more than one
-           dcc
-       (erc-dcc-server): support erc-dcc-port-range
-       (erc-dcc-chat): use OCHAT for outgoing chat for now. we need to fix the
-           issues with allowing more than one chat with the same person
-
-       * erc.el:
-       erc-log-channels: removed; set the directory to start logging
-       (erc-directory-writeable-p): create directory if it doesn't exist, check if
-           it's writeable
-       (erc-logging-enabled): don't reference erc-log-channels
-
-2003-04-07  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc):
-       but when inserting the contents of a previous logfile, use the logfile
-           name, not ""!
-
-       * erc.el(erc):
-       set buffer-file-name to "", since we have a custom saving function and
-           it's not needed. this enables one to open a log file with previous
-           correspondence, while talking to the person at the same time
-
-2003-03-29  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-prepare-mode-line-format):
-       Now strips all text properties from the target before
-           putting it in the mode line.  Keeps the mode line looking consistent.
-       (erc-channel-p): Improved docstring.
-
-2003-03-28  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-generate-log-file-name-with-date): New function.
-       (erc-generate-log-file-name-function): Make it available.
-
-2003-03-24  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Fix erc-prompt and erc-user-mode custom :type (Closes: #185794)
-
-2003-03-20  Damien Elmes  <erc@repose.cx>
-
-       * erc.el:
-       erc-server-hook-list: correct documentation of ordering of (proc parsed)
-
-2003-03-16  Alex Schroeder  <alex@gnu.org>
-
-       * erc-track.el(erc-modified-channels-string):
-       Make it a risky-local-variable.
-
-2003-03-16  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-track.el(erc-track-modified-channels):
-       Use (point-min) if we don't find a
-       parsed-property, so it won't error out with nil...
-
-2003-03-16  Damien Elmes  <erc@repose.cx>
-
-       * erc-track.el(erc-track-switch-buffer):
-       removed call to erc-modified-channels-update, as
-           this is done correctly on buffer switching in both emacs and xemacs now
-
-2003-03-15  Damien Elmes  <erc@repose.cx>
-
-       * erc-track.el(erc-find-parsed-property):
-       simplified a little, so it shouldn't return nil anymore
-
-       * erc.el: erc-send-post-hook: document narrowing which occurs
-
-2003-03-14  Alex Schroeder  <alex@gnu.org>
-
-       * erc-track.el(erc-find-parsed-property): New function.
-       (erc-track-modified-channels): Use it instead of relying on
-       point-min.
-
-2003-03-12  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       Fix erc-set-topic to accept a channel name as first word
-
-2003-03-11  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-dcc.el:
-       Small patch (<10 lines, also slightly modified by Jorgen Schäfer) from
-       David Spreen <netzwurm@debian.org> to add hostmask-authentication to
-       DCC auto-accept.
-
-       erc-dcc-auto-mask-list: New variable
-       (erc-dcc-handle-ctcp-send): Check erc-dcc-auto-mask-list
-       (erc-dcc-auto-mask-p): New function
-       erc-dcc-send-request: Docstring now mentions erc-dcc-auto-mask-list
-
-2003-03-10  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc-ring.el(erc-clear-input-ring):
-       New function.  Erases the contents of the input ring for
-          the current ERC buffer.
-
-2003-03-08  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el:
-       (erc-display-line-1) and (erc-send-current-line): Now these functions reset erc-insert-this
-           to t as soon as possible after consuming the value of that variable.  See the comments in
-           the code for the strange symptom this fixes.
-       (erc-bol): Changed to call point-at-eol instead of line-end-position.  This increases XEmacs
-           portability, since XEmacs doesn't have line-end-position.  Patch suggested by Scott Evans
-           on the ERC mailing list.
-
-2003-03-04  Damien Elmes  <erc@repose.cx>
-
-       * erc.el: banlist*: patch from mrbump to avoid using cl packages
-
-2003-03-04  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el:
-       Changed erc-noncommands-list from a constant to variable, so that users can
-           add their own erc-cmd-* functions to the list.  Improved the docstring too.
-
-2003-03-02  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-server-353):
-       Now the output of "/NAMES #channel" appears in the currently
-           active ERC buffer, even if the user is not a member of #channel.
-
-       * erc.el(erc-cmd-DEOP):
-       Fixed a syntax error: invalid read syntax ")" caused by my last change.
-
-2003-03-01  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-cmd-DEOP):
-       Fixed a wrong-type-argument error caused by calling split-string
-           on a list instead of on a string.  Removed the call to split-string entirely,
-           because it wasn't needed.
-
-       * erc.el(erc-cmd-HELP):
-       Changed to use intern-soft instead of intern.  Now "/HELP floob"
-           doesn't create a void function symbol erc-cmd-FLOOB.
-
-2003-02-25  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc-cmd-SERVER):
-       remove erroneous references to line, use server instead
-
-2003-02-23  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-toggle-debug-irc-protocol):
-       Fixed a bug where the global value of
-           kill-buffer-hook was being modified instead of the buffer-local value.
-
-2003-02-22  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-cmd-KICK):
-       Now supports any number of words in the REASON string.  Examples
-           of the /KICK command are:
-             /KICK franl You don't belong here
-             /KICK franl Bye
-             /KICK franl
-             /KICK #channel franl Go away now
-             /KICK #channel franl Bye
-             /KICK #channel franl
-
-2003-02-16  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-stamp.el(erc-insert-timestamp-right):
-       Make the timestamp rear-nonsticky, so
-       C-e works at the beginning of the next line.
-
-2003-02-16  Andreas Fuchs  <asf@void.at>
-
-       * erc-stamp.el:
-       * s/choose/choice/ in customize options, as kensanata requested.
-
-2003-02-15  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-toggle-debug-irc-protocol):
-       Now if the *erc-protocol* buffer is killed,
-           logging is turned off.  Prior to this change, the buffer would come back
-           into existence (generally unbeknownst to the user) after being killed.
-
-2003-02-11  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc-send-current-line):
-       we can't inhibit everything here when not connected,
-           as the user will expect commands like /server still to work. the
-           erc-cmd-handler should recover from errors instead
-
-2003-02-10  Damien Elmes  <erc@repose.cx>
-
-       * erc.el:
-       * we now run erc-after-connect on 422 (no motd) messages as well as the motd
-         messages
-       (erc-login): revert the previous change
-
-       * erc.el(erc-login): register that we're connected
-
-2003-02-10  Mario Lang  <mlang@delysid.org>
-
-       * erc-members.el: * Provide erc-members
-       * Fix excessive )
-       * Comment out broken self-tests
-
-2003-02-07  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc-connect):
-       notify the user we're trying to connect when using asych
-           connections
-
-       * erc.el(erc-connect): support an asyncronous connection
-       (erc-process-sentinel): ditto
-
-       * erc-track.el:
-       * advise switch-to-buffer in the case of xemacs, since it doesn't have
-         window-configuration-change-hook
-
-       * erc.el(erc-send-current-line):
-       if not connected, refuse to send either a message or
-           a command
-
-       * erc.el: (erc-save-buffer-in-logs):
-           - check for a sensibile region before saving the buffer. if the
-             connection process is killed early on, there is not a sensible region
-             to save
-           - don't set buffer-file-name on save. we don't need it, and it means we
-             can now find-file a log while an existing query is open with that
-             user
-
-       * erc.el(erc-process-input-line):
-       when displaying the help for a function, if no
-           documentation exists, don't fall over
-       (erc-cmd-SAY): new function for quoting lines begining with /
-       (erc-server-NICK):
-           - fix a bug where the "is now known as" message doesn't appear on newly
-             created /query buffers
-           - when a user changes their nick, update the query to point to the new
-             nick
-
-       * erc.el(erc-send-current-command):
-       don't reject multi-line commands. since
-           multiline-p is used as the no-command arg to erc-process-current-line,
-           multi-line text is never interpreted as a command. i believe this is the
-           correct behavior - it allows people to post the output of things like df
-           (sans header). if you want to change this, please provide a rationale
-           in the changelog
-
-       * erc.el(erc-send-current-line):
-       only match the first line when determining if a
-           multi-line command is allowed
-
-2003-02-07  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-bbdb.el(erc-bbdb-highlight-record):
-       Use alternate strings, not character
-       classes to split the nick-field.
-
-2003-02-06  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-process-sentinel):
-       Now we set erc-connected to nil every time we disconnect
-           from a server, not just when an unexpected disconnect happens.
-
-       * erc.el(erc-connected):
-       Removed redundant defvar of this variable.  Improved the
-           docstring.
-       (erc-login): Changed to send a correct RFC2812 USER message (see section
-           3.1.3 of RFC2812 for the documentation of the semantics of each argument
-           of the USER message.
-
-2003-02-02  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc-cmd-NOTICE): fix from mrbump
-
-2003-01-31  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-cmd-JOIN):
-       Now we only send one JOIN command to the server when a channel
-           key is provided.
-
-2003-01-30  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-remove-channel-member):
-       Fixed so that it runs erc-channel-members-changed-hook
-           with the channel buffer current, as is documented in the docstring for variable
-           erc-channel-members-changed-hook: "The buffer where the change happened is
-           current while this hook is called."
-
-2003-01-28  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el:
-       (erc-ignored-user-p),(erc-cmd-IGNORE),(erc-cmd-UNIGNORE): Now nicks are ignored
-           on a per-server basis.  Now, erc-ignore-list is only valid in server
-           buffers!  Do not reference it in channel buffers.
-
-       * erc.el(erc-cmd-IGNORE):
-       Now says "Ignore list is empty" if it erc-ignore-list is empty
-           instead of showing an empty list.
-
-2003-01-25  Alex Schroeder  <alex@gnu.org>
-
-       * erc-nickserv.el(services): Defined a module
-
-2003-01-25  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-process-ctcp-query):
-       Display recipient of CTCP query if it's not
-       our current nick.
-
-       * erc.el(erc-cmd-WHOIS):
-       Accept an optional second argument SERVER.
-
-2003-01-25  Alex Schroeder  <alex@gnu.org>
-
-       * erc-stamp.el(stamp): erc-add-timestamp must always be added
-       with the APPEND parameter -- not only when adding it on the right.
-
-2003-01-24  Alex Schroeder  <alex@gnu.org>
-
-       * erc-members.el(erc-channel-members-changed-hook): Obsolete, use
-       erc-members-changed-hook instead.  When it is set, add its content
-       to erc-members-changed-hook.
-       (erc-update-channel-member): Obsolete, use erc-update-member
-       instead.  Defalias to that effect.
-       (erc-remove-channel-member): New and already obsolete.  Use
-       erc-remove-nick-from-channel instead.
-       (erc-update-channel-info-buffer): Obsolete, use ignore instead.
-       Yes, these have to go.
-       (erc-channel-member-to-user-spec): Obsolete, use erc-format-user
-       instead.
-       (erc-format-user): New.
-       (erc-ignored-reply-p): New, use it.
-
-       * erc-members.el:
-       Further along the way.  Any function from erc.el that uses
-       channel-members should end up in this file, rewritten to use
-       erc-members.
-
-       (erc-person): Call erc-downcase before getting
-       something from the hash.
-       (erc-nick-in-channel): Checking wether erc-process must be used is
-       unnecessary -- this will be done in erc-person.
-       (erc-nick-channels): New.
-       (erc-add-nick-to-channel, erc-update-member): Call erc-downcase
-       before putting something into the hash.
-       (erc-buffer-list-with-nick): New.
-       (erc-format-nick, erc-format-@nick): New, backwards incompatible.
-       Must check for other places that call these!
-       (erc-server-PRIVMSG-or-NOTICE): Use the new version.
-
-       * erc-compat.el(view-mode-enter): defalias to view-mode, if
-       view-mode-enter is not fboundp and view-mode is -- as is the case
-       in XEmacs.  We need view-mode-enter in erc-match.el.
-
-2003-01-23  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-default-server-handler):
-       Minor performance improvement: allow the lambda
-           expression to be byte-compiled.
-
-2003-01-23  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc-cmd-BANLIST):
-       in the absence of a fill-column, use the screen width
-
-2003-01-22  Damien Elmes  <erc@repose.cx>
-
-       * erc.el:
-       patch from MrBump to delay fetching the banlist until /bl is run, so we don't
-       fetch it when joining a channel anymore
-
-       * erc-ring.el:
-       * instead of adjusting hooks when loaded, provide (erc-ring-mode). you'll
-         need to run (erc-ring-mode 1) now to get the ring
-       * (erc-previous-command), (erc-next-command):
-           - check if the ring exists and create it if necessary
-           - don't do anything if the ring is empty
-
-       * erc-pcomplete.el:
-       Put "how to use" documentation in the comments up the top
-
-2003-01-21  Alex Schroeder  <alex@gnu.org>
-
-       * erc-autojoin.el(erc-autojoin-version): New.
-
-       * erc-autojoin.el(erc-autojoin-add): Added body.
-       (erc-autojoin-remove): Added body.
-       (erc-autojoin): Provide it.
-
-2003-01-21  Damien Elmes  <erc@repose.cx>
-
-       * erc.el: erc-cmd-*: removed a bunch of references to force
-
-2003-01-21  Alex Schroeder  <alex@gnu.org>
-
-       * erc-autojoin.el(erc-autojoin-channels-alist): More doc.
-
-2003-01-20  Alex Schroeder  <alex@gnu.org>
-
-       * erc-autojoin.el:
-       new, based on resolve's mail, and the stuff on the wiki
-
-       * erc-members.el: new
-
-2003-01-19  Mario Lang  <mlang@delysid.org>
-
-       * debian/README.Debian, debian/changelog, debian/scripts/install, 
-         debian/scripts/startup.erc, Makefile:
-       Prepare for 20030119 debian package
-
-       * erc-dcc.el: <rant>
-       * (erc-decimal-to-ip): Since XEmacs decides that return a completely
-       and utterly wrong number from string-to-number if it is larger than
-       the integer boundary, instead of sanely converting the thing to
-       a float, we now (concat dec ".0").
-       </rant>
-
-       * erc.el:
-       * (erc-log-irc-protocol): Use erc-propertize, not propertize
-
-2003-01-19  Alex Schroeder  <alex@gnu.org>
-
-       * erc-button.el(erc-button-add-buttons): Added regexp-quote for
-       the list case, too.
-
-2003-01-19  Damien Elmes  <erc@repose.cx>
-
-       * erc-dcc.el(erc-dcc-member): fix for case where a prop is nil
-
-       * erc-dcc.el(erc-dcc-member):
-       fix for xemacs's version of plist-member
-
-2003-01-19  Mario Lang  <mlang@delysid.org>
-
-       * erc-notify.el: Delete empty strings from the ison-list
-
-       * erc-track.el:
-       * (erc-track-switch-buffer): Call erc-modified-channels-update here.
-
-       * erc-track.el: * toplevel: require 'erc-match
-
-       * erc-track.el: * (erc-track-mode): Make autoload interactive
-
-       * erc-button.el: * (button): Make the autoload interactive
-
-       * erc.el:
-       * (erc-mode): Comment out the case-table stuff, breaks xemacs
-       * (erc-downcase): Revert.
-
-       * erc-dcc.el:
-       * (erc-dcc-handle-ctcp-send): Use erc-decimal-to-ip on the ip we get...
-
-       * erc-speak.el:
-       Eliminate reference to erc-nick-regexp, which no longer exists
-
-2003-01-19  Alex Schroeder  <alex@gnu.org>
-
-       * erc-stamp.el(erc-timestamp-right-column): New, default nil.
-       (erc-insert-timestamp-right): Use it, if non-nil.  Verbose
-       doc string.
-
-2003-01-18  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-downcase): Use the old behavior in non-CVS Emacs.
-
-       * erc.el(erc-cmd-QUIT): Remove &rest. The correct fix follows.
-       (erc-cmd-GQUIT): Pass "" to erc-cmd-QUIT.
-       (erc-mode): Use the case-table only in CVS Emacs. See comment.
-
-       * erc.el(erc-cmd-QUIT): make reason optional.
-
-       * erc.el(erc-cmd-GQUIT): Fixed typo.
-
-2003-01-17  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * (erc-current-logfile): call expand-file-name, so that downcase doesn't mess up ~
-
-       * erc.el: * (erc-mode): Define a proper case-table.
-       * (erc-downcase): just call downcase for now, lets see if the case-table is portable, if yes, we'll remove all erc-downcase references anyway...
-
-       * erc-button.el: * (erc-button-add-buttons): regex-quote the nick
-
-2003-01-17  Alex Schroeder  <alex@gnu.org>
-
-       * erc-button.el(button): erc-channel-members-changed-hook no
-       longer has erc-recompute-nick-regexp.
-       (erc-button-alist): Use channel-members instead of
-       erc-nick-regexp.
-       (erc-button-add-buttons): Split some code into
-       erc-button-add-buttons-1, and now handle strings, lists, and
-       alists.  Regular expressions in lists and alists are enclosed in
-       < and >.
-       (erc-button-add-buttons-1): New.
-       (erc-nick-regexp): Deleted.
-       (erc-recompute-nick-regexp): Deleted.
-
-       * erc-button.el: Remove require cl again.
-       (erc-mode-map): No longer bind widget-backward and widget-forward.
-       (erc-button-alist): Explain why byte-compiling makes no sense, and
-       remove all calls to byte-compile.
-       (erc-button-keymap): Define it the standard way, without exposing
-       the list nature of the keymap.
-       (erc-button-marker-list): Deleted.
-       (erc-button-add-buttons): Simplify.  In particular, create the
-       button using the real callback, instead of using the intermediate
-       erc-button-push, and only store the data as described for
-       erc-button-alist.
-       (erc-button-remove-old-buttons): Simplify.  No more list munging.
-       Instead, just remove all the properties that we add in
-       erc-button-add-button.
-       (erc-widget-press-button): Deleted.
-       (erc-button-click-button): New, for mouse clicks.  Moves point to
-       where the mouse is, and calls erc-button-push.
-       (erc-button-push): Instead of matching again, just use the
-       erc-callback and erc-data properties at point to do the right
-       thing.
-       (erc-button-entry): Deleted.
-       (erc-button-next): Use error instead of the beep plus message
-       combo.
-
-2003-01-17  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-autoaway.el(erc-autoaway-set-back):
-       Don't pass a force argument to erc-cmd-GAWAY.
-
-       * erc.el(erc-cmd-AWAY): Removed usage of the force variable.
-
-2003-01-17  Alex Schroeder  <alex@gnu.org>
-
-       * erc-button.el(button):
-       erc-recompute-nick-regexp is no longer added to
-       erc-channel-members-changed-hook unconditionally, but only if
-       erc-button-mode is enabled, and if it is disabled, it is removed
-       again.
-       (erc): Require cl for delete-if.
-       (erc-button-remove-old-buttons): Rewrote using delete-if to
-       prevent exceesive consing.  Having the marker list is still ugly,
-       so another solution needs to be found.
-
-2003-01-17  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-banlist-store):
-       Don't assume there's always a setter in the banlist reply.
-
-2003-01-17  Alex Schroeder  <alex@gnu.org>
-
-       * erc-button.el(erc-button-url-regexp): Changed regexp according
-       to a suggestion by Max Froumentin <mf@w3.org>.
-
-2003-01-17  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       fix erc-remove-channel-member again to not error out on nil as first arg...
-
-       * erc.el: * (erc-occur): New function
-
-2003-01-17  Damien Elmes  <erc@repose.cx>
-
-       * erc.el: erc-banlist-*: return nil so further hooks are called
-
-       * erc.el(erc-server-368):
-       supress "end of ban list" messages - use /listbans now
-
-       * erc.el(erc-send-current-line):
-       removed the check for leading whitespace again - the
-           only time we want to prohibit multi-line commands is if / is the first
-           thing on the line
-       (erc-get-arglist): new defun for reading a function's arglist which should
-           work with older copies of emacs. we use help-function-arglist if it's
-           available, though, since that has support for reading subrs, etc
-
-       * erc.el(erc-cmd-JOIN): fixed (again)
-
-       * erc.el: * fixed call to erc-cmd-NICK when connecting
-       * support for listing bans and mass unbanning, again thanks to MrBump
-
-       * erc.el(erc-set-topic):
-       patch from MrBump (Mark Triggs, mst@dishvelled.net) to strip
-           control chars and topic attribution in C-c C-t
-
-2003-01-16  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * (erc-remove-channel-member): Do not use delq, modify the list using setcdr like delq does.
-       In theory, this should be way faster since the list doesnt get traverse two times.
-       Measurement didn't show any real difference though :(, this system is flawed for channels with >300 users it seems...
-       Also moved some defcustoms up.
-
-2003-01-16  Brian P Templeton  <bpt@tunes.org>
-
-       * erc.el: moved misplaced paren
-
-2003-01-16  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc-cmd-UNIGNORE):
-       reference argument directly - no string matching
-
-       * erc.el(erc-extract-command-from-line):
-       hmm, thinko in the canonicalisation. should
-           be fixed
-
-2003-01-16  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-send-current-line):
-       Changed the regexp used to match /COMMANDs so that leading
-           whitespace is taken into account.
-
-2003-01-16  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el: * (erc-dcc-do-SEND-command): Fix it
-
-       * erc-ezbounce.el, erc-lang.el: Arglist changes...
-
-       * erc.el: Various docstring fixes and additions.
-
-       * erc-notify.el:
-       * (erc-cmd-NOTIFY): Change the function arglist to (&rest args)
-
-       * erc-netsplit.el: * (erc-cmd-WHOLEFT): Has no args...
-
-2003-01-16  Damien Elmes  <erc@repose.cx>
-
-       * erc-fill.el:
-       erc-fill-column: default to 78, so things like docstrings don't get wrapped
-           in an ugly manner
-
-2003-01-16  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * (erc-cmd-default): Take a substring, now /mode works again.
-       * (erc-cmd-AWAY): Put do-not-parse-args t
-       * (erc-cmd-GAWAY): Ditto, and fix it.
-       * (erc-cmd-CTCP): Switch to argument system.
-       * (erc-cmd-KICK): Do the same.
-
-2003-01-15  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el:
-       * (erc-cmd-DCC): Fixed for the new scheme, simplified.
-       * (erc-dcc-do-CHAT-command): Ditto.
-       * (erc-dcc-do-CLOSE-command): Ditto.
-       * (erc-dcc-do-LIST-command): Ditto.
-
-2003-01-15  Damien Elmes  <erc@repose.cx>
-
-       * erc.el:
-       erc-error-face: setting a background doesn't work so well with multi-line
-           messages, so we don't. fg colour is negotiable ;-)
-       (erc-cmd-QUERY): fixed, new doco, supress (erc-delete-query) until we fix it
-       (erc-send-current-line): allow multi-line messages provided they don't start
-           with a slash - there's no need to prohibit them if the slash isn't the
-           first character
-
-       * erc.el: * bad-syntax now reports like incorrect-args
-       * bunch of extra cmds fixed, nick, sv etc.
-
-       * erc.el(erc-cmd-HELP): fixed
-       (erc-extract-command-from-line): when deterimining canon-defun, make sure we
-           have a valid symbol
-       (erc-cmd-KICK): fixed
-
-       * erc.el:
-       * removed duplicate do-no-parse-args properties for the defaliased defuns
-       (erc-process-input-line): show function signature when incorrect args
-       (erc-extract-command-from-line): canonicalise defaliases before extracting
-           plist
-       (erc-cmd-CLEAR): fixed
-       (erc-cmd-UNIGNORE): fixed again
-
-       * erc.el(erc-cmd-SET): fixed
-       (erc-cmd-UNIGNORE): fixed
-       (erc-process-input-line): report when incorrect arguments are provided to a
-           command, and show the command's docstring
-
-       * erc.el(erc-cmd-APPENDTOPIC): fixed
-       (erc-process-input-line): more informative error message than 'bad syntax'
-
-2003-01-15  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * (erc-cmd-IGNORE): fixed
-
-       * erc.el: * (erc-cmd-NAMES): fixed
-
-       * erc.el:
-       * (erc-cmd-CLEARTOPIC): Simplify, fix doc, make interactive
-
-2003-01-15  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc-cmd-JOIN):
-       correct invite behavior, and document it.
-
-2003-01-15  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: * (erc-cmd-PART): Put 'do-not-parse-args t
-
-2003-01-15  Damien Elmes  <erc@repose.cx>
-
-       * erc.el(erc-cmd-JOIN): new cmd argument syntax
-       (erc-process-input-line): check if (erc-extract-command-from-line) returned a
-           list, and apply if that's the case
-
-       * erc.el:
-       erc-cmd-*: remove optional force and references to `force' in the code
-       (erc-cmd-AMSG): call erc-trim-string, not trim-string
-
-2003-01-15  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * (erc-cmd-CLEARTOPIC): LINE is now ARGS and already parsed.
-       Set erc-cmd-TOPIC to 'do-not-parse-args for now.
-       (comment: I think we should have 'first, so that only first word is parsed...
-        Or we could autodetect erc-channel-p in the parser before that somehow...)
-
-       * erc.el: * (erc-cmd-OP): LINE is PEOPLE now, and already parsed.
-
-       * erc-notify.el:
-       * (erc-cmd-NOTIFY): Arg LINE is now ARGS, and already parsed.
-
-2003-01-15  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-stamp.el(erc-insert-timestamp-right):
-       Prefer erc-fill-column to window-width,
-       because on wide screens the timestamp could wander off too far to the
-       right.
-
-2003-01-15  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: This is the "everything is suddenly broken!" release
-       You know, this is CVS, you can still go back, and wait until the transition
-       is finished, but here is patch one, which basicly breaks every command
-       which is typed on the prompt.
-       Hit me, we can still revert, but something needs to be done about this.
-       * (erc-extract-command-from-line): intern-soft the function here.
-       If the function symbol has a property 'do-not-parse-args, operate as before,
-       otherwise, split the arguments prior to calling the command handler.
-       * (erc-process-input-line): Updated to accomodate the change above.
-       * (erc-send-distinguish-noncommands): Ditto.
-       * (erc-cmd-NAMES): Ditto.
-       * (erc-cmd-ME): Put 'do-not-parse-args property.
-
-       * erc-dcc.el:nick:      * erc-dcc.el: * erc-dcc-list: Renamed 
-       * (erc-dcc-member). Treat :nick as either a nick!user@host or nick,
-       do appropriate comparisons, simplified.
-       * (erc-dcc-list-add): New functions
-       various callers of (cons (list ...) erc-dcc-list) updated.
-       Other stuff I'm to bored to document now
-
-2003-01-15  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-stamp.el(erc-insert-timestamp-right):
-       Removed redundant code that overrid the
-       window-width. Now substracts (length string) from every found
-       indentation positions.
-
-2003-01-14  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * (erc-cmd-AMSG): Remove useless call to erc-display-message.
-
-       * erc-dcc.el:
-       * erc-dcc-chat/send-request: New variables, control how to treat
-       incoming dcc chat or send requests. Can be set to 'ask, which behaves
-       like it did before, 'auto, which accepts automatically, and
-       'ignore, which ignores those type of requests completely.
-       * (erc-cmd-CREQ): New user-level command.
-       * (erc-cmd-SREQ): Ditto.
-
-       * erc.el: * (erc-cmd-AMSG). New command.
-
-       * erc-xdcc.el: * (erc-xdcc): delete empty strings from ARGS
-
-       * erc-dcc.el: * erc-dcc-ipv4-regexp: New constant
-       * (erc-ip-to-decimal): Use it.
-       * erc-dcc-host:valid-regexp erc-dcc-ipv4-regexp:        * erc-dcc-host: :type
-       * (pcomplete/erc-mode/DCC): Add completion for GET and CLOSE.
-       * Some docstring/comment fixes.
-
-       * erc-stamp.el:
-       * (erc-insert-timestamp-right): Subtract (length string) from
-       POS in any case, otherwise, linewrap occurs.
-
-       * erc-dcc.el:
-       * Fixed the unibyte-multibyte problem (now a dcc get buffer is (set-buffer-multibyte nil), 
-         and saves correctly (tried with 21.3.50). Thanks to Eli for suggesting it!
-       * Added :start-time plist property/value to GET handling so that we can calculate elapsed-time.
-       * Some (unwind-protect (progn (set-buffer ...) ...)) constructs replaced with (with-current-buffer ...)
-
-2003-01-13  Mario Lang  <mlang@delysid.org>
-
-       * erc-xdcc.el:
-       * erc-xdcc-help-text: New variable which makes replies to the originator
-       much more flexible.
-       * erc-xdcc-help-format: Removed.
-       * (erc-xdcc-help): Handle the new variable.
-       * (erc-xdcc): Simplified
-
-       * erc-xdcc.el: * erc-xdcc-handler-alist: New variable.
-       * (erc-xdcc): Move code for list and send sub-commands into
-       * (erc-xdcc-help): New function.
-       * (erc-xdcc-list): New function.
-       * (erc-xdcc-send): New function.
-
-2003-01-12  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-server-JOIN):
-       Oops, send MODE command only when *we* joined a channel.
-
-       * erc.el:
-       Fixing ERCs behavior wrt IRCnet's !channels have a different name for
-       JOIN than in reality (e.g. you can join !forcertest or !!forcertest
-       and really get to !ABCDEforcertest)
-
-       (erc-cmd-JOIN): Removed erc-send-command MODE.
-       (erc-server-JOIN): Ask for MODE now.
-
-2003-01-12  Damien Elmes  <erc@repose.cx>
-
-       * erc-dcc.el:
-       (erc-dcc-get-filter), (erc-dcc-get-file): store size as a string, not an
-           integer. check size > 0 for the case where a size wasn't provided, since
-           string-to-int will return 0 on an empty string
-
-2003-01-12  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el: * Use RAWFILE arg with find-file-noselect
-       * Fix alist/plist conversion left-over
-       * Add verbose-info about sending blocks.
-
-2003-01-11  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el: * (pcomplete-erc-mode/DCC): Fixes
-
-       * erc-xdcc.el: Initial version.
-
-       * erc-pcomplete.el:
-       * (erc-pcomplete): Fix so that cycle-completion works again.
-       * (pcomplete-parse-erc-arguments): If there is a space after the last word
-       before point, we need to return a "" arg, and it's position.
-
-       * erc-dcc.el: Fix to pcomplete/erc-mode/DCC
-
-       * erc-dcc.el: * (pcomplete/erc-mode/DCC): New function
-
-       * erc-dcc.el: *** empty log message ***
-
-       * erc-dcc.el: Move code around, just basic changes
-
-2003-01-11  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-stamp.el(erc-insert-timestamp-right):
-       Check wether erc-fill-column is
-       available before using it. Else default to fill-column or if
-       everything else fails, the window width of the current window. For the
-       fill-columns, use them directly as the starting position for the
-       timestamp.
-
-2003-01-11  Andreas Fuchs  <asf@void.at>
-
-       * erc-stamp.el:
-       erc-insert-timestamp-right: use correct window's window-width. If
-                         buffer is not in a window, use erc-fill-column.
-
-2003-01-11  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el:   * erc-dcc.el: * (erc-dcc-do-LIST-command): Fix 
-
-       * erc-dcc.el:
-       * buffer-local variables erc-dcc-sent-marker and erc-dcc-send-confirmed marker removed
-         Keep This info in erc-dcc-member :sent and :confirmed plist values
-       * :     * :buffer plist for :type 'SEND removed, since we can get this with (marker-buffer 
-       * erc-dcc-send-connect-hook: New hook, defaults to erc-dcc-send-block and erc-dcc-send-conntected, which now prints a msg...
-
-       * erc-dcc.el:
-       * (erc-dcc-chat-accept): Renamed from erc-dcc-chat. Callers updated.
-       * (erc-dcc-chat): Renamed from erc-dcc-chat-request.
-       Callers updated, and interactive form added.
-       * (erc-dcc-server-accept): No longer do any type-specific stuff.
-       * (erc-dcc-chat-sentinel): Call erc-dcc-chat-setup if event is "open from "
-       from here, otherwise call erc-dcc-chat-close.
-
-       * (
-
-       * erc-dcc.el: *** empty log message ***
-
-       * erc-dcc.el: Moved some functions around.
-       Doc string fixes.
-       "/dcc send nick filename" works now
-
-2003-01-11  Alex Schroeder  <alex@gnu.org>
-
-       * erc.el(erc-send-command): Fixed flood protect message.
-
-       * erc-button.el(erc-button-syntax-table): Make `-' a legal nick
-       constituent.
-
-2003-01-10  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el: Some more steps toward dcc send.
-
-2003-01-10  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc-notify.el(erc-notify-timer):
-       Changed to make it IRC-case-insensitive when comparing nicks.
-       (erc-notify-JOIN): Changed to make it IRC-case-insensitive when comparing nicks.
-       (erc-notify-NICK): Changed to make it IRC-case-insensitive when comparing nicks.
-       (erc-notify-QUIT): Changed to make it IRC-case-insensitive when comparing nicks.
-       (erc-cmd-NOTIFY): Now "/notify -l" lists the nicks on your notify list.  Now
-           when you remove a nick from your notify list, you no longer recieve a spurious
-           signoff notification for that nick.  Changed to make it IRC-case-insensitive when
-           comparing nicks.
-
-       * erc.el(erc-ison-p):
-       Fixed so it calls erc-member-ignore-case instead of member.
-
-       * erc.el(erc-member-ignore-case):
-       New function.  Just like member-ignore-case, but obeys
-           the IRC protocol case matching rules.
-
-2003-01-10  Damien Elmes  <erc@repose.cx>
-
-       * erc-dcc.el:
-       (erc-dcc-do-GET-command), (erc-dcc-get-file): use the plist syntax, this
-           fixes dcc get again
-
-2003-01-10  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el: erc-complete-functions: New variable.
-       erc-mode-map: Bind \t to 'erc-complete-word
-       erc-complete-word: New function.
-
-       * erc-pcomplete.el(erc-pcomplete-mode):
-       Use new erc-complete-functions
-       (erc-pcomplete): Check that we're in the input line, else return nil.
-
-       * erc-button.el(erc-button-mode): Use new erc-complete-functions
-       erc-button-old-tab-command: Removed.
-       (erc-button-next-or-old): Removed
-       (erc-button-next): check that we're not in the input line, else just return nil.
-
-2003-01-10  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el: cleanup
-
-       * erc-dcc.el:
-       * (erc-dcc-chat-request): No longer use erc-send-ctcp-message.
-
-       * erc-dcc.el:
-       * (erc-dcc-no-such-nick): Also call delete-process if we have a peer already
-
-       * erc-dcc.el:
-       * (erc-dcc-no-such-nick): New function, server event handler for event 401.
-       If we send a CTCP message requesting something dcc related, we set up an
-       entry in erc-dcc-list before sending the request (for the server proc object
-       for listening conns for example).  But if that nick does not exist
-       on that server, we now nicely cleanup erc-dcc-list again.
-
-2003-01-09  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el: Moved code around a bit, and doc fixes
-
-       * erc-dcc.el: *** empty log message ***
-
-       * erc-dcc.el: Rename erc-dcc-plist to erc-dcc-list
-
-2003-01-09  Damien Elmes  <erc@repose.cx>
-
-       * erc-dcc.el(erc-dcc-server (erc-dcc-chat-setup):
-       use erc's (erc-setup-buffer) to determine how to
-           display new DCC windows
-       (erc-dcc-chat-buffer-killed): buffer-local hook for DCC buffers to close the
-           process
-       (erc-dcc-chat-close): code common to a killed buffer or a disconnection from
-           the other side
-       (erc-dcc-chat-sentinel): use (erc-dcc-chat-close)
-       (erc-dcc-server-accept): use (erc-log) instead of (message)
-
-       * erc.el:
-       (erc), (erc-setup-buffer): factor out window generation code so DCC can use
-           it too
-
-       * erc-dcc.el:
-       (erc-dcc-do-CLOSE-command), (erc-dcc-do-LIST-command): work with erc-dcc-plist
-
-       * erc-dcc.el:
-       erc-dcc-alist: became erc-dcc-plist, so we can more easily grab particular
-           properties
-       dcc catalog: unify use of DCC: and [dcc] (either's fine, but let's be
-           consistent)
-       (erc-dcc-member): takes an arbitrary list of constraints now
-       (erc-dcc-proc-member): removed, as (erc-dcc-member) can be used for this
-       (erc-dcc-do-CHAT-command): use the catalog to show the user what's going on
-       (erc-dcc-chat-server): removed
-       (erc-dcc-server): takes name sentinel and filter arguments, can be used for
-           both send and chat now
-
-       .. this release means all send/get support is broken until we fix up the
-       things that still expect to be using an alist. this include /dcc list, /dcc
-       close
-
-2003-01-09  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc-ring.el(erc-previous-command):
-       If you have a partially typed input line and press M-p,
-           you lose what you typed.  Now we save it so you can come back to it.
-
-2003-01-09  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-ring.el(erc-add-to-input-ring): s/nullp/null/
-
-2003-01-09  Damien Elmes  <erc@repose.cx>
-
-       * erc-ring.el(erc-add-to-input-ring):
-       set up the ring if it's not already setup
-
-       * erc-dcc.el(erc-dcc-member): case insensitive match of nicknames
-       (erc-dcc-do-CHAT-command): echo what we're doing (at least for now)
-
-2003-01-09  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el: (temporarily) fix erc-process setting...
-
-       * erc-dcc.el: * (erc-dcc-chat-send-line): Removed
-
-       * erc.el:
-       Check if target is stringp (we can now also have 'dcc as value...)
-
-       * erc-dcc.el(erc-dcc-chat-send-input-line):
-       New function, used for
-       erc-send-input-line-function.
-       Use erc-send-current-line now.
-
-       * erc-dcc.el: evt to elt...
-
-       * erc-dcc.el: Remove () from a var (how silly!)
-
-       * erc-dcc.el: * (erc-dcc-get-host): Use format-network-address.
-       * (erc-dcc-host): Change semantic.  If erc-dcc-host is set, use it.
-       Otherwise, try to figure out the host by calling erc-dcc-get-host.
-       * (erc-dcc-server-port): New variable.
-       * erc-dcc-chat-log: Renamed to erc-dcc-server-accept
-
-       * erc-dcc.el(erc-dcc-do-CHAT-command):
-       Change arg of call to erc-dcc-chat-request from elt to nick
-
-2003-01-09  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-send-current-line):
-       Now rejects multi-line commands (i.e., lines that
-           start with "/" and contain newlines).
-
-2003-01-09  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-button.el:
-       Functionality to use TAB to jump to the next button:
-
-       (erc-button-next-or-old): New function.
-       (erc-button-next): New function.
-       erc-button-keymap: added erc-button-next
-       erc-button-old-tab-command: New variable.
-       define-erc-module button: Add and remove 'erc-button-next-or-old as
-       appropriate.
-
-2003-01-09  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el:
-       New variable: erc-auto-reconnect (defaults to t).  If non-nil, ERC will
-           automatically reconnect to a server after an unexpected disconnection.
-       (erc-process-sentinel): Changed to refer to variable erc-auto-reconnect.
-
-2003-01-08  Mario Lang  <mlang@delysid.org>
-
-       * erc.el:
-       * erc-send-input-line-function: New variable, used for dispatch...
-
-2003-01-08  Damien Elmes  <erc@repose.cx>
-
-       * erc-dcc.el(erc-dcc-chat-sentinel):
-       check event type before killing process
-       (erc-dcc-chat-log): new, handles the setup of dcc chats for incoming
-           connections
-       (erc-dcc-chat): use (erc-dcc-chat-setup)
-       (erc-dcc-chat-setup): code common to incoming and outgoing DCC chats
-       (erc-dcc-chat-request): request a DCC chat with another user
-       (erc-dcc-proc-member): locate a member in erc-dcc-alist by process
-
-       The very first ERC to ERC DCC chat was held between delysid and resolve today!
-
-2003-01-08  Mario Lang  <mlang@delysid.org>
-
-       * erc-track.el(erc-all-buffer-names):
-       Check for erc-dcc-chat-mode too
-
-2003-01-08  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc-ring.el, erc.el(erc-kill-input):
-       Resets erc-input-ring-index to nil, so that invoking this
-           command conceptually puts you after your most recent input in the input
-           history.
-       (erc-previous-command and erc-next-command): Changed so that history movement
-           is more intuitive.  Also preserves the blank input line that marks the
-           place after the newest command in the history ring (i.e., you'll see a
-           blank command once every trip around the ring in either direction).
-
-2003-01-08  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el(erc-dcc-chat): Add docstring
-       Add self-test.
-       Fix error if /dcc chat nick doesnt find the nick
-
-2003-01-08  Francis Litterio  <franl@users.sourceforge.net>
-
-       * Makefile:
-       Changed so that "make" works correctly under Cygwin.  Before this change, the
-       pathname passed to Emacs on the command line under Cygwin had the form
-       "/cygwin/c/...", which prevented emacs from finding the file.  Now the pathname
-       has the form "c:/...".  This works for any drive letter.
-
-2003-01-08  Mario Lang  <mlang@delysid.org>
-
-       * erc-button.el: reindent some code, and add TODO to comments
-
-       * erc-dcc.el: *** empty log message ***
-
-       * erc-dcc.el: Make dcc-chat-ended a notice
-       Remove now bogus comment
-
-2003-01-08  Damien Elmes  <erc@repose.cx>
-
-       * erc-dcc.el(erc-pack-int): from erc-packed-int
-       (erc-unpack-int): new
-
-       * erc-dcc.el(erc-unpack-str): added
-
-2003-01-08  Mario Lang  <mlang@delysid.org>
-
-       * erc.el(erc-server-482):
-       New handler, handles KICK reply if you're not channel-op
-
-       * erc-dcc.el: Document SEND in erc-dcc-alist.
-       Move sproc, parent-proc and file into erc-dcc-alist
-
-       * erc-dcc.el: stubs
-
-       * erc-dcc.el(erc-dcc-get-host):
-       Change :iface to :local since Kim committed it now to CVS emacs
-
-       * erc-dcc.el(erc-dcc-get-host):
-       New function, requires the not-yet-in-CVS-emacs local-address.patch to process.c.
-       Some other minor additions
-
-2003-01-08  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc-cmd-IGNORE):
-       Now returns t to prevent "Bad syntax" error.
-       (erc-cmd-UNIGNORE): Now returns t to prevent "Bad syntax" error.
-       (erc-server-PRIVMSG-or-NOTICE): Capitalized first word in message to user.
-
-       * erc.el(erc-scroll-to-bottom):
-       Temporarilly bind resize-mini-windows to nil so that
-           users who have it set to a non-nil value will not suffer from premature
-           minibuffer shrinkage due to the below recenter call.  I have no idea why
-           this works, but it solves the problem, and has no negative side effects.
-
-2003-01-07  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc-dcc.el:
-       erc-dcc-ctcp-query-chat-regexp: The IP is not really an IP, but a
-       number (no . allowed there).
-       (erc-dcc-send-ctcp-string): use let* here to avoid cluttering up the
-       match data.
-       Also, use erc-decimal-to-ip to get the IP.
-       (erc-ip-to-decimal): Removed some pasted ERC timestamps
-       (erc-decimal-to-ip): New function.
-       erc-dcc-chat-mode-map: Return map in the initialization.
-
-2003-01-07  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc-match.el(erc-match-fool-p):
-       Changed to call erc-match-directed-at-fool-p instead of
-            erc-directed-at-fool-p.
-
-2003-01-07  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el(erc-cmd-DCC):
-       Change (cond ... (t nil)) to (when ...)
-
-       * erc-dcc.el: Use erc-current-nick-p
-
-2003-01-07  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el:
-       erc-join-buffer: Added 'window-noselect to docstring and :type.
-       erc-auto-query: Added 'window-noselect to :type.
-       (erc): Treat erc-join-buffer being 'window-noselect appropriately.
-
-       * erc.el(erc-current-nick-p): New function.
-       (erc-nick-equal-p): New function.
-       (erc-already-logged-in), (erc-server-JOIN), (erc-auto-query),
-       (erc-server-PRIVMSG-or-NOTICE): Use erc-current-nick-p.
-       (erc-update-channel-member): Use erc-nick-equal-p.
-
-       * erc-match.el(erc-match-current-nick-p):
-       Renamed from erc-current-nick-p
-       (erc-match-pal-p): Renamed from erc-pal-p
-       (erc-match-fool-p): Renamed from erc-fool-p
-       (erc-match-keyword-p): Renamed from erc-keyword-p
-       (erc-match-dangerous-host-p): Renamed from erc-dangerous-host-p
-       (erc-match-directed-at-fool-p): Renamed from erc-directed-at-fool-p
-       (erc-match-message): Use erc-match-TYPE-p instead of erc-TYPE-p
-
-       * erc.el:
-       Support for IRCnets' "nick/channel temporarily unavailable"
-
-       (erc-nickname-in-use): New function (mostly copied from erc-server-433).
-       (erc-server-433): Use erc-nickname-in-use
-       (erc-server-437): New function.
-       erc-server-hook-list: Added (437 erc-server-437).
-
-2003-01-07  Mario Lang  <mlang@delysid.org>
-
-       * erc-fill.el: Add autoload cookie
-
-       * erc-notify.el:
-       Now also pass SERVER argument to signon/off hooks, and provide a erc-notify-signon/off function for echo-area printing
-
-       * erc-notify.el(erc-notiy-QUIT):
-       Change use of delq to delete, delq does not work with strings
-
-2003-01-06  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-ctcp-query-VERSION):
-       v%s -> %s, so we are no longer vVersion...
-
-2003-01-06  Mario Lang  <mlang@delysid.org>
-
-       * erc.el: Small change to erc-ison-p, and fixme tag
-
-2003-01-06  Francis Litterio  <franl@users.sourceforge.net>
-
-       * erc.el(erc):
-       Fixed bug where variable "away" would be nil in new channel buffers
-              even if the user is away when joining the channel.
-       (erc-strip-controls): Fixed a bug where erc-strip-controls accidentally
-              removed all text properties from the string.
-
-2003-01-06  Mario Lang  <mlang@delysid.org>
-
-       * erc-dcc.el:
-       Some stub functions, some code, nothing really works yet
-
-       * erc.el(erc-ison-p): New function
-
-       * erc-dcc.el: Some functions which will be needed for dcc send
-
-       * erc-dcc.el(erc-ip-address-to-decimal):
-       New function, thanks lawrence
-
-       * erc-dcc.el: Again, simplify code, fix stuff, DCC CHAT works now
-
-       * erc-dcc.el: Many fixes, chat nearly works now
-
-       * erc-netsplit.el: Also detect fast netsplit/joins
-
-       * erc-dcc.el: some more fixes
-
-       * erc-dcc.el: Fixup stage 1, now dcc get works
-
-       * erc-dcc.el: make /dcc LIST work
-
-       * erc-dcc.el:
-       Initial checkin, dont use it!  its really far from complete.  Hackers: help!
-
-       * erc-notify.el:
-       New function erc-notify-NICK, and added signon/off hooks which were missing
-
-2003-01-05  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el(erc-truncate-buffer-to-size):
-       set inhibit-read-only to t for the
-       deletion. This is usually done by the function calling the hook, but
-       not if it's called interactively. Also, rewrote some weird if/if
-       combination.
-
-       * erc-track.el(erc-track-shortennames):
-       Documentation fix (erc-all-buffers is really
-       erc-all-buffer-names)
-
-       These changes make server buffers be tracked as well, as there are
-       quite a few interesting things going on there (e.g. CTCP etc.)
-       (erc-all-buffer-names): Check for (eq major-mode 'erc-mode) instead of
-       erc-default-recipients.
-       (erc-track-modified-channels): Don't require a default target (e.g.,
-       this-channel being non-nil)
-
-2003-01-03  Damien Elmes  <erc@repose.cx>
-
-       * erc.el:
-       erc-auto-query: can now be set to a symbol to control how new messages should
-           be popped up (or not popped up, as the case may be)
-       (erc-query): new function which handles the bulk of what (erc-cmd-QUERY) did
-           previously
-       (erc-cmd-QUERY): use (erc-query)
-       (erc-auto-query): use (erc-query)
-
-       * erc.el(erc-current-logfile):
-       Downcase result of log generation function, as IRC is
-       case insensitive. Fixes problems where "/query user" results in a different
-       log file to a query from "User". Avoided adding an extra flag to control this
-       behavior - if you think this was the wrong decision, please correct it and
-       I'll remember it for next time.
-
-See ChangeLog.2002 for earlier changes.
-
-    Copyright (C) 2003 Free Software Foundation, Inc.
-  Copying and distribution of this file, with or without modification,
-  are permitted provided the copyright notice and this notice are preserved.
-
-;; Local Variables:
-;; coding: utf-8
-;; End:
-
-;; arch-tag: 808865e1-3cce-4c5b-9997-95a8b7a9d384
diff --git a/lisp/erc/ChangeLog.2004 b/lisp/erc/ChangeLog.2004
deleted file mode 100644 (file)
index fd5e0af..0000000
+++ /dev/null
@@ -1,2080 +0,0 @@
-2004-12-29  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc-goodies.el (erc-interpret-controls-p): Changed docstring to
-       reflect the new meaning if this is set to 'remove.
-       (erc-controls-interpret): Rephrased docstring to be more accurate.
-       (erc-controls-strip): New function that behaves like the
-       recently-removed erc-strip-controls -- it removes all IRC color
-       and highlighting control characters.
-       (erc-controls-highlight): Changed to support the new 'remove value
-       that variable erc-interpret-controls-p might have.
-
-2004-12-28  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc-ibuffer.el, erc-list.el, erc-page.el, erc-speedbar.el:
-       Changed all calls to erc-interpret-controls (which no longer
-       exists) to call erc-controls-interpret (the new name of the same
-       function).
-
-2004-12-28  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc-goodies.el (erc-controls-interpret): Added this function to
-       replace the recently-removed erc-interpret-controls.  Also added
-       a (require 'erc) to solve a byte-compile problem.
-
-2004-12-28  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el (erc-controls-interpret): Added this function to replace
-       the recently-removed erc-interpret-controls.
-
-2004-12-27  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-truncate.el (erc-truncate-buffer-to-size): Check for
-       logging even better (via lawrence).
-
-2004-12-26  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-truncate.el (erc-truncate-buffer-to-size): Much saner
-       logging detection (via lawrence).
-
-2004-12-25  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-goodies.el (erc-controls-highlight): Treat single C-c
-       correctly.
-
-2004-12-24  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-goodies.el, erc.el: Deleted IRC control character processing
-       and implemented a sane version in erc-goodies.el as a module.
-
-       * erc.el (erc-merge-controls, erc-interpret-controls,
-       erc-decode-controls, erc-strip-controls, erc-make-property-list,
-       erc-prepend-properties): Removed.
-
-       (erc-interpret-controls-p, erc-interpret-mirc-color, erc-bold-face
-       erc-inverse-face, erc-underline-face, fg:erc-color-face0,
-       fg:erc-color-face1, fg:erc-color-face2, fg:erc-color-face3,
-       fg:erc-color-face4, fg:erc-color-face5, fg:erc-color-face6,
-       fg:erc-color-face7, fg:erc-color-face8, fg:erc-color-face9,
-       fg:erc-color-face10, fg:erc-color-face11, fg:erc-color-face2,
-       fg:erc-color-face13, fg:erc-color-face14, fg:erc-color-face15,
-       bg:erc-color-face1, bg:erc-color-face2, bg:erc-color-face3,
-       bg:erc-color-face4, bg:erc-color-face5, bg:erc-color-face6,
-       bg:erc-color-face7, bg:erc-color-face8, bg:erc-color-face9,
-       bg:erc-color-face10, bg:erc-color-face11, bg:erc-color-face2,
-       bg:erc-color-face13, bg:erc-color-face14, bg:erc-color-face15,
-       erc-get-bg-color-face, erc-get-fg-color-face,
-       erc-toggle-interpret-controls): Moved.
-
-       * erc-goodies.el (erc-beep-p, irccontrols, erc-controls-highlight,
-       erc-controls-propertize): New.
-
-2004-12-24  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-goodies.el, erc.el: The Small Extraction of Stuff[tm] commit.
-        Moved some functions from erc.el to erc-goodies.el, and
-       transformed them to erc modules in the process.
-       - imenu autoload stuff moved. I don't know why it is here at all.
-       - Moved: scroll-to-bottom, make-read-only, distinguish-noncommands,
-       smiley,   unmorse, erc-occur (the last isn't a module, but still
-       moved)
-       (erc-input-line-position, erc-add-scroll-to-bottom,
-       erc-scroll-to-bottom, erc-make-read-only, erc-noncommands-list,
-       erc-send-distinguish-noncommands, erc-smiley, erc-unmorse,
-       erc-occur): Moved from erc.el to erc-goodies.el.
-       (smiley): Module moved from erc.el to erc-goodies.el.
-       (scrolltobottom, readonly, noncommands, unmorse): New modules.
-
-2004-12-20  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el: (erc-format-away-status): Use `a', not `away' - that's
-       why it's there.
-       (erc-update-mode-line-buffer): The values of `mode-line-process'
-       and `mode-line-buffer-identification' are normally lists.
-       Conform.
-
-2004-12-18  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: (erc-process-ctcp-query, erc-process-ctcp-reply): Display
-       message in the active window, not the server window.
-
-2004-12-16  Edward O'Connor <ted@oconnor.cx>
-
-       * erc-track.el (erc-track-position-in-mode-line): Check for
-       'erc-track-mode variable with boundp. From Adrian Aichner
-       <adrian@xemacs.org>.
-
-2004-12-16  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-upcase-first-word): New function. The old way used
-       in erc-send-ctcp-message would eat consecutive whitespace etc.
-       (erc-send-ctcp-message, erc-send-ctcp-notice): Use it.
-
-2004-12-15  Edward O'Connor <ted@oconnor.cx>
-
-       * erc.el (erc-send-ctcp-message): Fix braino with my previous
-       patch. It always helps to C-x C-s before `cvs commit'.
-
-2004-12-15  Edward O'Connor <ted@oconnor.cx>
-
-       * erc.el (erc-send-ctcp-message): Only upcase the ctcp command,
-       and not the entire message. Brian Palmer's change of 2004-12-12 had broken /me.
-       Shouting is bad! :)
-
-2004-12-14  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-nets.el (erc-networks-alist): Change undernet to Undernet as
-       is used in `erc-server-alist', so that completion works when using
-       `erc-server-select'.  This should fix Debian bug #282003 (erc:
-       cannot connect to Undernet).
-
-2004-12-14  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-backend.el: (def-edebug-spec): Only run this if 'edebug is
-       available.
-
-2004-12-14  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el: The last change to `erc-mode-line-format' introduced a
-       bug in Xemacs - it can't handle the #(" "...) strings at all.  The
-       following changes fix the bug and simplify the mode-line handling
-       considerably.  (erc-mode-line-format): Now defined as a string
-       which will be formatted using `format-spec' and take the place of
-       `mode-line-buffer-identification' in the mode line.
-       (erc-header-line-format): Now defined as a string to be formatted
-       using `format-spec'.
-       (erc-prepare-mode-line-format): Removed.
-       (erc-format-target, erc-format-target-and/or-server,
-       erc-format-away-status, erc-format-channel-modes): New functions.
-       Basically the old `erc-prepare-mode-line-format' split apart.
-       (erc-update-mode-line-buffer): Set
-       `mode-line-buffer-identification' to the formatted
-       `erc-mode-line-format', set `mode-line-process' to ": CLOSED" if
-       the connection has been terminated, and set `header-line-format'
-       (if it is bound) to the formatted `erc-header-line-format', then
-       do a `force-mode-line-update'.
-
-2004-12-12  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-modules): Disable modules removed with `customize'.
-       (erc-update-modules): Try to give a more descriptive error
-       message.
-
-2004-12-12  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-complete.el, erc.el, erc-list.el, erc-nets.el,
-       erc-nicklist.el, erc-pcomplete.el, erc-replace.el, erc-speak.el,
-       erc-truncate.el: (erc-buffers, erc-coding-systems, erc-display,
-       erc-mode-line-and-header, erc-ignore, erc-query,
-       erc-quit-and-part, erc-paranoia, erc-scripts, erc-old-complete,
-       erc-list, erc-networks, erc-nicklist, erc-pcomplete, erc-replace,
-       erc-truncate): New customization groups.  (erc-join-buffer,
-       erc-frame-alist, erc-frame-dedicated-flag, erc-reuse-buffers): Use
-       'erc-buffers as `:group'.  (erc-default-coding-system,
-       erc-encoding-coding-alist): Use 'erc-coding-systems as `:group'.
-       (erc-hide-prompt, erc-show-my-nick, erc-prompt,
-       erc-input-line-position, erc-command-indicator, erc-notice-prefix,
-       erc-notice-highlight-type, erc-interpret-controls-p,
-       erc-interpret-mirc-color, erc-minibuffer-notice,
-       erc-format-nick-function): Use 'erc-display as `:group'.
-       (erc-mode-line-format, erc-header-line-format,
-       erc-header-line-uses-help-echo-p, erc-common-server-suffixes,
-       erc-mode-line-away-status-format): Use 'erc-mode-line-and-header
-       as `:group'.
-       (erc-hide-list, erc-ignore-list, erc-ignore-reply-list,
-       erc-minibuffer-ignored): Use 'erc-ignore as `:group'.
-       (erc-auto-query, erc-query-on-unjoined-chan-privmsg,
-       erc-format-query-as-channel-p): Use 'erc-query as `:group'.
-       (erc-kill-buffer-on-part, erc-kill-queries-on-quit,
-       erc-kill-server-buffer-on-quit, erc-quit-reason-various-alist,
-       erc-part-reason-various-alist, erc-quit-reason, erc-part-reason):
-       Use 'erc-quit-and-part as `:group'.
-       (erc-verbose-server-ping, erc-paranoid, erc-disable-ctcp-replies,
-       erc-anonymous-login, erc-show-channel-key-p): Use 'erc-paranoia as
-       `:group'.
-       (erc-startup-file-list, erc-script-path, erc-script-echo): Use
-       'erc-scripts as `:group'.
-       (erc-nick-completion, erc-nick-completion-ignore-case,
-       erc-nick-completion-postfix): Use 'erc-old-complete as `:group'.
-       (erc-chanlist-progress-message, erc-no-list-networks,
-       erc-chanlist-frame-parameters, erc-chanlist-hide-modeline,
-       erc-chanlist-mode-hook): Use 'erc-list as `:group'.
-       (erc-server-alist, erc-networks-alist): Use 'erc-networks as
-       `:group'.
-       (erc-settings): Use `defvar' instead of `defcustom' since this is
-       only a draft which doesn't work.
-       (erc-nicklist-window-size): Use 'erc-nicklist as `:group'.
-       (erc-pcomplete-nick-postfix,
-       erc-pcomplete-order-nickname-completions): Use 'erc-pcomplete as
-       `:group'.
-       (erc-replace-alist): Use 'erc-replace as `:group'.
-       (erc-speak-filter-timestamp): Use 'erc-speak as `:group'.
-       (erc-max-buffer-size): Use 'erc-truncate as `:group'.
-
-2004-12-12  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-scroll-to-bottom): Go to the end of the buffer
-       before recentering. This allows editing multiple lines more
-       conveniently in CVS Emacs. This also undos a change by antifuchs
-       who said this goto-char would mess up redisplay. Extensive testing
-       couldn't reproduce that problem.
-
-2004-12-12  Brian Palmer <bpalmer@gmail.com>
-
-       * erc.el (erc-send-ctcp-message): upcase the ctcp message (so that
-       version becomes VERSION, for example).
-       (erc-iswitchb): Make the argument optional in non-interactive
-       invocation, so erc-iswitchb can be substituted directly for
-       iswitchb in code.
-
-2004-12-11  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-track.el (erc-track-position-in-mode-line): Allow for the
-       fact that `erc-track-mode' isn't bound when file is loaded.
-
-2004-12-11  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-track.el (erc-track-position-in-mode-line): New customizable
-       variable.  (erc-track-remove-from-mode-line): New function.
-       Remove `erc-modified-channels-string' from the mode-line.
-       (erc-track-add-to-mode-line): New function.  Add
-       `erc-modified-channels-string' to the mode-line using the value of
-       `erc-track-position-in-mode-line' to determine whether to add it
-       to the beginning or the end of `mode-line-modes' (only available
-       with GNU Emacs versions above 21.3) or to the end of
-       `global-mode-string'.
-       (erc-track-mode, erc-track-when-inactive-mode): Use the new
-       functions.
-
-2004-12-11  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: (erc-cmd-BANLIST): Use (buffer-name) and not
-       (erc-default-target) for the buffer name - buffer names are case
-       sensitive.
-
-2004-12-11  Brian Palmer <bpalmer@gmail.com>
-
-       * erc.el (erc-message-type): Added the message "MODE" to the known
-       erc-message-type widget, so that (for example) people can tell
-       erc-track-exclude-types to ignore mode changes. The others tag
-       also needed to be made an inline list, so that it's merged with
-       the given constants, instead of being inserted as a list.
-
-2004-12-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-track.el, erc.el: Update to get ERC look nicely in CVS Emacs.
-
-       * erc.el (erc-mode-line-format): When on CVS emacs, use the new
-       format.
-
-       * erc-track.el (track module): When on CVS emacs, modify
-       mode-line-modes instead of global-mode-string. The latter is way
-       to far too the right.
-
-2004-11-18  Mario Lang <mlang@delysid.org>
-
-       * Makefile, debian/changelog: debian release 20041118-1
-
-2004-11-03  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-button.el (erc-button-buttonize-nicks): Set default value to
-       `t'.  Updated documentation and customization `:type' to reflect
-       usage.
-
-2004-10-29  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * AUTHORS: Added self.
-
-2004-10-17  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-list.el: Added local variables for this file.
-       (erc-list-version): New.
-       (erc-cmd-LIST): Take &rest rather than &optional arguments, as was
-       done in revision 1.21.  Allow for input when called interactively.
-       (erc-prettify-channel-list, erc-chanlist-toggle-sort-state): Use
-       `unless' instead of when not.
-
-2004-10-17  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-backend.el (erc-handle-unknown-server-response): Fixed so
-       that the contents are only shown once. (MOTD): Display lines in
-       the server buffer if it's the first MOTD sent upon connection.
-       This is to avoid the problem of having the MOTD of one server
-       showing up in another server's buffer if it took a while to get
-       connected.
-       (004): Fixed to show the user modes and channel modes correctly.
-       (303): Now displays the nicknames returned by ISON instead of the
-       user's nickname.
-       (367, 368): Moved up into 300's section of the code.  Added
-       documentation.  Use `multiple-value-bind' to set variables in 367.
-       (391): Fixed so that the server name is shown correctly.
-
-2004-10-17  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-process-sentinel): Use CPROC instead of
-       `erc-process' in debug message.  Should fix a bug where an error
-       saying "Buffer *scratch* has no process" would occur when
-       disconnected.
-       (erc-cmd-SV): Check for X toolkit after checking for more specific
-       features.  (erc--kill-server): Set `quitting' to non-nil so that
-       we don't automatically reconnect.
-
-2004-10-05  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: (erc-ignored-user-p): Don't require regexes to match the
-       beginning.
-
-2004-09-11  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: group erc: Moved to 'applications (patch by bojohan)
-
-2004-09-08  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-button.el: (erc-button-remove-old-buttons): Remove 'keymap
-       not 'local-map.
-
-2004-09-03  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-backend.el: JOIN response handler: Typo fix of the last
-       commit.
-
-2004-09-03  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-backend.el: JOIN response handler: Run `erc-join-hook'
-       without arguments as specified in the docstring.
-
-2004-08-27  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-send-current-line): Removed unused variable SENTP.
-
-2004-08-19  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: ERC-SEND-COMPLETED-HOOK used to be run when the prompt
-       was already displayed. We restore this behavior (thanks to bojohan
-       and TerryP for noticing). We also fix the docstring of
-       ERC-SEND-COMPLETED-HOOK, since the hook is (and used to be) called
-       even if nothing was sent to the server.
-       (erc-send-completed-hook): Fixed docstring.
-       (erc-send-current-line): Add incantation for
-       erc-send-completed-hook.
-       (erc-send-input): Remove incantation for erc-send-completed-hook.
-
-2004-08-18  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-backend.el: response-handler 368: Use s368, not s367.
-
-2004-08-17  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-scroll-to-bottom): Don't scroll when we're not
-       connected anymore.
-
-2004-08-17  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-backend.el, erc.el: Handle /mode #emacs b output without
-       errors and such. First, handle unknown format specs gracefully
-       (that is, give a useful error). Then, provide handlers for the
-       banlist replies.
-
-       * erc-backend.el: New handler for 367 and 368. Removed from default
-       handler.
-
-       * erc.el: Provide english catalog for s367 and s368.
-       (erc-format-message): Give an error message when we don't find an
-       entry.
-
-2004-08-17  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-fill.el: erc-fill-variable could be confused about really
-       long nicks. We put an upper limit on the length of the fill prefix.
-       (erc-fill-variable): Adjust fill-prefix.
-       erc-fill-variable-maximum-indentation: New variable.
-
-2004-08-17  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el (erc-send-input): Fixed a bug where this function
-       referenced variable "input" instead of variable "str".
-
-2004-08-16  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc-list.el (erc-chanlist-highlight-line): Fixed a bug where
-       this function failed to set the correct face for highlighting the
-       current line.
-
-2004-08-14  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-fill.el (erc-fill-variable): Don't fuck up when the
-       looking-at didn't work.
-
-2004-08-14  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-send-single-line): Call the hooks to change the
-       appearance for something only if we actually inserted something,
-       doh.
-       (erc-display-command): Display the prompt outside of the area that
-       set the text properties on.
-
-2004-08-14  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: Refactored erc-send-current-line. This should fix some
-       dormant bugs, and make the whole thing actually readable. Yay.
-       Some changes in behavior were made. Whitespace at the end of lines
-       sent is not removed anymore, but that shouldn't bother anyone.
-       Additionally, errors in commands or hooks shouldn't prevent the
-       prompt from showing up again now.
-       (erc-parse-current-line): Removed.
-       (erc-send-current-line): Refactored.
-       (erc-send-input): New function.
-       (erc-send-single-line): New function.
-       (erc-display-command): New function.
-       (erc-display-msg): New function.
-       (erc-user-input): New function.
-
-2004-08-13  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-cmd-SERVER): Use newer keyword call interface to
-       erc-select, and handle the error if it can't resolve the host.
-
-2004-08-11  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-backend.el, erc.el: erc-backend.el (404 response handler):
-       New function. We now support "cannot send to channel".
-
-       * erc.el (erc-define-catalog call): Added s404. erc.el
-       (erc-ctcp-ECHO-reply, erc-ctcp-CLIENTINFO-reply,
-       erc-ctcp-FINGER-reply, erc-ctcp-PING-reply, erc-ctcp-TIME-reply,
-       erc-ctcp-VERSION-reply): Display reply in the active window, not
-       the server window.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-with-all-buffers-of-server): Actually make it left
-       to right, doh.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-with-all-buffers-of-server): Evaluate left-to-right
-       so we don't surprise a user.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-process-input-line): Parentophobia! Another
-       paren-fix.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-backend.el: PRIVMSG NOTICE response handler: Killed one paren
-       too much. Poor paren. Got resurrected.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-track.el: Make server buffers showing up in the mode line
-       optional. Thanks to Daniel Knapp on the EmacsWiki for this patch.
-
-       erc-track-exclude-server-buffer: New variable.
-       (erc-track-modified-channels): Return a server buffer only if
-       erc-track-exclude-server-buffer is nil.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: (erc-cmd-DESCRIBE): Don't parse arguments.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-truncate.el: (erc-truncate-buffer-to-size): Use
-       erc-insert-marker, not (point-max), to decide the length of the
-       buffer. A long input line shouldn't make the buffer smaller.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-macs.el, erc-members.el: The change to hashes for channel
-       members has been made some time ago.  Clean up the various tries to
-       do this in the past.
-
-       erc-macs.el: Removed.  erc-members.el: Removed.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-backend.el, erc-ibuffer.el, erc-members.el, erc.el: Nothing
-       big changed here. Really. Uhm, maybe the info-buffers are gone or
-       so.  Can't really remember. Don't worry, nothing important is
-       missing.
-
-       erc-speedbar.el looks nice btw, did you know?
-
-       Adjusted various places in erc.el, erc-backend.el, erc-ibuffer.el
-       and erc-members.el - too numerous to list here, sorry.
-
-       * erc.el: erc-use-info-buffers: Removed.  erc-info-mode-map:
-       Removed.
-       (erc-info-mode): Removed.
-       (erc-find-channel-info-buffer): Removed.
-       (erc-update-channel-info-buffer): Removed.
-       (erc-update-channel-info-buffers): Removed.
-
-       * erc-members.el: erc-update-member renamed to
-       erc-update-channel-member for better clarity.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: This change improves the help output on a bogus command
-       invocation. We display the command as it would be typed by the
-       user, not as it is seen by Emacs.
-
-       (erc-get-arglist): Is now called erc-function-arglist, and returns
-       now an arglist without the enclosing parens.
-       (erc-command-name): New function.
-       (erc-process-input-line): Pass the command name, not the function
-       name.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: (erc-process-input-line): Fix bug when the command
-       doesn't have an arglist or no documentation. Thanks bojohan again
-       :)
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-match.el: (erc-add-entry-to-list),
-       (erc-remove-entry-from-list): Update docstring, a TEST argument is
-       not given.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-with-buffer): Really fix this docstring.
-
-2004-08-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-with-buffer): Fix double evaluation in macro, and
-       fix docstring.
-
-2004-08-10  Brian Palmer <bpalmer@gmail.com>
-
-       * erc.el (erc-cmd-JOIN): Use erc-member-ignore-case instead of
-       member-ignore-case.
-
-2004-08-09  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc-backend.el: Define an "Edebug specification" for the
-       `define-erc-response-handler' macro. This means that one can step
-       through response handlers defined by this macro with edebug. Maybe
-       more macros would benefit from this?
-
-2004-08-09  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc-pcomplete.el (pcomplete/erc-mode/CTCP): New function.
-       Completion for the /CTCP command.  (erc-pcomplete-ctcp-commands):
-       New variable. List of ctcp commands.
-
-2004-08-09  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc-list.el: Clean up docstrings.
-       (erc-prettify-channel-list): Extend properties to cover the entire
-       line, including the newline, to make it look
-       better.
-       (erc-chanlist-highlight-line): Ditto.
-       (erc-chanlist-mode-hook): Make it a defcustom.
-
-2004-08-09  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-compute-full-name): Typo fix, should be full-name,
-       not name.
-
-2004-08-09  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc): Setup the buffer to be shown in a window at the
-       end of this function. This enables 'window-noselect to work
-       properly.
-       (erc, erc-send-current-line): Fix some
-       goto-char/open-line/goto-char to goto-char/insert.
-
-2004-08-08  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-parse-user): Live with bogus info from bouncers.
-
-2004-07-31  Brian Palmer <bpalmer@gmail.com>
-
-       * erc.el (erc-select): Change the docstring to reflect the new
-       arguments; include the arguments in the docstring for non-cvs
-       emacs. Change the parameters to call erc-compute-* instead of
-       using the erc-* variables directly.
-       (erc-compute-server): Made argument optional.
-       (erc-compute-nick): ditto.
-       (erc-compute-full-name): ditto.  (erc-compute-port): ditto.
-
-2004-07-30  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el: (erc-cmd-BANLIST): Fixed a bug where channel-banlist was
-       not reset to nil before fetching an updated banlist from the
-       server.
-
-2004-07-30  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el: (erc-cmd-BANLIST): Fixed a bug where the
-       'received-from-server property on variable channel-banlist was not
-       being reset to nil.  This fixes the symptom where one types
-       /BANLIST and sees "No bans for channel: #whatever" when you know
-       there are bans.
-
-2004-07-23  Brian Palmer <bpalmer@gmail.com>
-
-       * erc.el: (erc-select-read-args): Use erc-compute-nick to
-       calculate the default nickname
-
-2004-07-20  Brian Palmer <bpalmer@gmail.com>
-
-       * erc.el: (erc-process-sentinel-1): New function. This is an
-       auxiliary function refactored out of erc-process-sentinel to
-       decide a server buffer's fate (whether it should be killed, and
-       whether erc should attempt to auto-reconnect).  Michael Olson
-       <mwolson@gnu.org> helped with this.
-       (erc-kill-server-buffer-on-quit): New variable. Used in
-       erc-process-sentinel-1 to decide whether to kill a server buffer
-       when the user quit normally.
-       (erc-process-sentinel): Auxiliary function erc-process-sentinel-1
-       split out.  The function body has `with-current-buffer' wrapped
-       around it, to ensure separation of messages if multiple
-       connections were being made.  Use `if' instead of `cond' in places
-       where the decision is binary.  The last (useless, since the server
-       connection is closed) prompt in the server buffer is removed.
-       Color "erc terminated" and "erc finished" messages with
-       erc-error-face.  Mark the buffer unmodified so that, if not killed
-       automatically, the user is not prompted to save it.
-
-2004-07-16  Brian Palmer <bpalmer@gmail.com>
-
-       * erc.el (erc-select-read-args): New function. Prompts the user
-       for arguments to pass to erc-select and erc-select-ssl.
-       (erc-select): Use (erc-select-read-args) when called interactively
-       to get its arguments.  When non-interactively, use keyword
-       arguments.
-       (erc-select-ssl): Ditto.
-       (erc-compute-port): New function. Parallel to erc-compute-server,
-       but comes up with a default value for an IRC server's port.
-
-2004-07-16  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-match.el (erc-match-message): Quote the current nickname.
-
-2004-07-12  Brian Palmer <bpalmer@gmail.com>
-
-       * erc-list.el (erc-chanlist-mode): Remove explicit invocation of
-       erc-chanlist-mode-hook, since it's automatically invoked by
-       define-derived-mode
-
-2004-07-03  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-match.el (erc-match-current-nick-p): Quote current nick for
-       regexp parsing.
-
-2004-06-27  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc-nickserv.el (erc-nickserv-identify-mode): Fix erroneous
-       parentheses in call to `completing-read'.
-
-2004-06-23  Alex Schroeder <alex@gnu.org>
-
-       * Makefile (release): Depend on autoloads, and copy erc-auto.el
-       into the tarball.
-
-2004-06-14  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el (erc-log-irc-protocol): Fixed minor bug where each line
-       received from a server was logged as two lines (one with text and
-       one blank).
-
-2004-06-08  Brian Palmer <bpalmer@gmail.com>
-
-       * erc-list.el (erc-chanlist-frame-parameters): Made customizable.
-       (erc-chanlist-header-face): Changed to use defface with some
-       reasonable defaults instead of make-face, and removed the
-       associated -face variable.
-       (erc-chanlist-odd-line-face): Ditto.
-       (erc-chanlist-even-line-face): Ditto.
-       (erc-chanlist-highlight-face): New variable. Holds a face used for
-       highlighting the current line.
-       (erc-cmd-LIST): Use erc-member-ignore-case instead of
-       member-ignore-case.
-       (erc-chanlist-post-command-hook): Change to move the highlight
-       overlay instead of refontifying the entire buffer.
-       (erc-chanlist-dehighlight-line): Added to detach the highlight
-       overlay from the buffer.
-
-2004-05-31  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: erc-mode-line-format: Add column numbers.
-
-2004-05-31  Adrian Aichner <adrian@xemacs.org>
-
-       * erc-autojoin.el: Typo fix.
-
-       * erc-dcc.el (erc-dcc-do-GET-command): Use expand-file-name.
-       (erc-dcc-get-file): XEmacs set-buffer-multibyte compatibility.
-
-       * erc-log.el: Append `erc-log-setup-logging' to
-       `erc-connect-pre-hook' so that `erc-initialize-log-marker' is run
-       first (markers are needed by `erc-log-setup-logging').
-       (erc-enable-logging): Docstring fix.
-       (erc-log-setup-logging): Move `erc-log-insert-log-on-open' to (1-
-       (point-max)) when doing `erc-log-insert-log-on-open'.  Modified
-       version of a patch by Lawrence Mitchell.
-       (erc-log-all-but-server-buffers): Do `save-excursion' as well.
-       (erc-current-logfile): Pass buffer name as target
-       argument to `erc-generate-log-file-name-function' if
-       `erc-default-target' is nil.
-       (erc-generate-log-file-name-with-date): Use expand-file-name.
-       (erc-generate-log-file-name-short): Ditto.
-       (erc-save-buffer-in-logs): Do `save-excursion' and test whether
-       erc-last-saved-position is a marker.
-
-       * erc-members.el: Avoid miscompiling macro `erc-log' and
-       `with-erc-channel-buffer' by requiring 'erc at compile time.
-
-       * erc-sound.el: Use expand-file-name.
-
-       * erc.el (erc-debug-log-file): Ditto.
-       (erc-find-file): Ditto.
-
-2004-05-26  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el, erc-backend.el (erc-cmd-BANLIST): Added a missing "'"
-       that was preventing /BANLIST from working.  In erc-backend.el,
-       added server repsonse handler for 367 and 368 reponses to get
-       /BANLIST working.
-
-2004-05-26  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el: Removed an eval-when-compile that was preventing the
-       byte-compiled version of this file from loading.
-
-2004-05-26  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el: Undid part of my last change.  I suspect it was wrong.
-
-2004-05-26  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el: Silenced several byte-compiler warnings.
-
-2004-05-26  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el (erc-log-irc-protocol): Fixed problem where this function
-       misformatted IRC protocol text if multiple lines were received from
-       the server at one time.
-
-2004-05-25  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el (erc-toggle-debug-irc-protocol): Cosmetic changes to the
-       informational text in the *erc-protocol* buffer.
-
-2004-05-24  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el (erc-log-irc-protocol, erc-process-filter): Now the lines
-       inserted in the *erc-protocol* buffer are prefixed with the name
-       of the network to/from which the data is going/coming.  This makes
-       reading the *erc-protocol* buffer much easier when connected to
-       multiple networks.
-
-2004-05-23  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
-
-       * erc-backend.el: Fixes server message parsing so that command
-       arguments specified after the colon are not treated specially. All
-       arguments are added to the `command-args' field, and the
-       `contents' points to the last element in the `command-args' list.
-       This allows ERC to connect to networks such as Undernet.  Although
-       keeping `contents' allows many of the response handlers to
-       continue to work as-is, many other are probably broken by this
-       patch.
-
-2004-05-20  Lawrence Mitchell <wence@gmx.li>
-
-       * HACKING: Add comment that C-c C-a can be useful if you write
-       ChangeLog entries using Emacs' standard functions.
-
-2004-05-17  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-speedbar.el: Ignore errors when attempting to require dframe
-       (there are a couple implementations of speedbar, one of which uses
-       of dframe).
-       (erc-speedbar-version): New.
-       (erc-speedbar-goto-buffer): Use dframe functions if dframe is
-       available.
-
-2004-05-17  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-autojoin.el: Added local variables for this file.
-       (erc-autojoin-add): The channel name is in `erc-response.contents'.
-
-2004-05-17  Mario Lang <mlang@delysid.org>
-
-       * erc-log.el: Dont autoload a define-key statement, erc-mode-map
-       might not be known yet
-
-2004-05-16  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-backend.el (erc-parse-server-response): Revert to original
-       `erc-parse-line-from-server' version, since new version breaks for
-       a number of edge cases.
-
-2004-05-14  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-backend.el (erc-handle-unknown-server-response): New
-       function.  Added to `erc-default-server-functions'.  Display
-       unknown responses to the user.
-       (221): Don't show nickname in modes list.
-       (254): Fixed to use 's254.
-       (303): Added docstring.
-       (315, 318, 323, 369): Ignored responses grouped together.
-       (391): New.
-       (406, 432): Use ?n, not ?c in `erc-display-message'.
-       (431, 445, 446, 451, 462, 463, 464, 465, 481, 483, 485, 491, 501,
-       502): All error responsess with no arguments grouped together.
-
-2004-05-14  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-message-type-member): Use `erc-response.command'.
-       `erc-track-exclude-types' should be respected again.
-       (erc-cmd-TIME): Fixed to work with and without server given as
-       argument.
-       (erc-define-catalog): Added, s391, s431, s445, s446, s451, s462,
-       s463, s464, s465, s483, s484, s485, s491, s501, s502.
-
-2004-05-14  Lawrence Mitchell <wence@gmx.li>
-
-       * HACKING: Typo fix.
-
-2004-05-14  Lawrence Mitchell <wence@gmx.li>
-
-       * Makefile (erc-auto.el): Pass -f flag to rm so that we don't fail
-       if erc-auto.elc doesn't exist.
-
-2004-05-14  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-backend.el (erc-with-buffer): Autoload.
-       (erc-parse-server-response): XEmacs' `replace-match' only replaces
-       subexpressions when operating on buffers, not strings, work around
-       it.
-       (461): Command with invalid arguments is `second', not `third'.
-
-2004-05-14  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-notify.el (erc-notify-NICK): Use `erc-response.contents' to
-       get nickname.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-track.el: Indentation fixes.
-       (track-when-inactive): Use `erc-server-FOO-functions', not
-       `erc-server-FOO-hook.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-notify.el (notify): Use `erc-server-FOO-functions', not
-       `erc-server-FOO-hook.
-       (erc-notify-timer, erc-notify-JOIN, erc-notify-NICK)
-       (erc-notify-QUIT): Use new accessors for PARSED argument.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-nickserv.el (services, erc-nickserv-identify-mode): Use
-       `erc-server-FOO-functions', not `erc-server-FOO-hook.
-       (erc-nickserv-identify-autodetect): Use new accessors for PARSED
-       argument.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-netsplit.el (netsplit): Use `erc-server-FOO-functions', not
-       `erc-server-FOO-hook.
-       (erc-netsplit-JOIN, erc-netsplit-MODE, erc-netsplit-QUIT): Use new
-       accessors for PARSED argument.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-nets.el: Use `erc-server-FOO-functions', not
-       `erc-server-FOO-hook.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-menu.el (erc-menu-definition): Only allow listing of
-       channels if `erc-cmd-LIST' is fboundp.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-match.el: Use `erc-server-FOO-functions', not
-       `erc-server-FOO-hook.
-       (erc-get-parsed-vector-nick, erc-get-parsed-vector-type): Use new
-       accessors for PARSED argument.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-list.el (erc-chanlist, erc-chanlist-322): Use new accessors
-       for PARSED argument.  Use `erc-server-FOO-functions', not
-       `erc-server-FOO-hook.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-ezbounce.el (erc-ezb-notice-autodetect): Use new accessors
-       for PARSED argument.
-       (erc-ezb-initialize): Use `erc-server-FOO-functions', not
-       `erc-server-FOO-hook.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-dcc.el: Use `erc-server-FOO-functions', not
-       `erc-server-FOO-hook.
-       (erc-dcc-no-such-nick): Use new accessors for PARSED argument.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-bbdb.el (erc-bbdb-whois, erc-bbdb-JOIN, erc-bbdb-NICK): Use
-       new accessors for PARSED argument.
-       (BBDB): Use `erc-server-FOO-functions', not `erc-server-FOO-hook.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-autojoin.el (autojoin): Use `erc-server-FOO-functions', not
-       `erc-server-FOO-hook.
-       (erc-autojoin-add, erc-autojoin-remove): Use new accessors for
-       PARSED argument.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-autoaway.el (autoaway): Use `erc-server-FOO-functions', not
-       `erc-server-FOO-hook.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-backend): Require.
-       (erc-disconnected-hook, erc-join-hook, erc-quit-hook)
-       (erc-part-hook, erc-kick-hook): Docstring fix, we now use
-       `erc-server-FOO-functions', rather than `erc-server-FOO-hook'.
-       (erc-event-to-hook-name, erc-event-to-hook): Remove.
-       (erc-once-with-server-event)
-       (erc-once-with-server-event-global): Use `erc-get-hook'
-       (erc-process-filter): Use `erc-parse-server-response'.
-       (erc-cmd-IDLE, erc-cmd-BANLIST, erc-cmd-MASSUNBAN): New accessors
-       for PARSED argument.  Rename all `erc-server-FOO-hook' to
-       `erc-server-FOO-functions'.
-       (erc-server-364-hook, erc-server-365-hook, erc-server-367-hook)
-       (erc-server-368-hook, erc-server-KILL-hook)
-       (erc-server-PONG-hook, erc-server-200-hook, erc-server-201-hook)
-       (erc-server-202-hook, erc-server-203-hook, erc-server-204-hook)
-       (erc-server-205-hook, erc-server-206-hook, erc-server-208-hook)
-       (erc-server-209-hook, erc-server-211-hook, erc-server-212-hook)
-       (erc-server-213-hook, erc-server-214-hook, erc-server-215-hook)
-       (erc-server-216-hook, erc-server-217-hook, erc-server-218-hook)
-       (erc-server-219-hook, erc-server-241-hook, erc-server-242-hook)
-       (erc-server-243-hook, erc-server-244-hook, erc-server-249-hook)
-       (erc-server-261-hook, erc-server-262-hook, erc-server-302-hook)
-       (erc-server-323-hook, erc-server-342-hook, erc-server-351-hook)
-       (erc-server-381-hook, erc-server-382-hook, erc-server-391-hook)
-       (erc-server-392-hook, erc-server-393-hook, erc-server-394-hook)
-       (erc-server-395-hook, erc-server-402-hook, erc-server-404-hook)
-       (erc-server-407-hook, erc-server-409-hook, erc-server-411-hook)
-       (erc-server-413-hook, erc-server-414-hook, erc-server-415-hook)
-       (erc-server-422-hook, erc-server-423-hook, erc-server-424-hook)
-       (erc-server-431-hook, erc-server-436-hook, erc-server-437-hook)
-       (erc-server-441-hook, erc-server-443-hook, erc-server-444-hook)
-       (erc-server-445-hook, erc-server-446-hook, erc-server-451-hook)
-       (erc-server-462-hook, erc-server-463-hook, erc-server-464-hook)
-       (erc-server-465-hook, erc-server-467-hook, erc-server-471-hook)
-       (erc-server-472-hook, erc-server-473-hook, erc-server-483-hook)
-       (erc-server-491-hook, erc-server-502-hook): Remove.
-       (erc-call-hooks, erc-parse-line-from-server): Remove
-       (erc-server-hook-list): Remove.  Remove top-level call too.
-       (erc-server-ERROR, erc-server-INVITE, erc-server-JOIN)
-       (erc-server-KICK, erc-server-MODE, erc-server-NICK)
-       (erc-server-PART, erc-server-PING, erc-server-PONG)
-       (erc-server-PRIVMSG-or-NOTICE, erc-server-QUIT)
-       (erc-server-TOPIC, erc-server-WALLOPS, erc-server-001)
-       (erc-server-004, erc-server-005, erc-server-221, erc-server-252)
-       (erc-server-253, erc-server-254, erc-server-301, erc-server-303)
-       (erc-server-305, erc-server-306, erc-server-311-or-314)
-       (erc-server-312, erc-server-313, erc-server-317, erc-server-319)
-       (erc-server-320, erc-server-321, erc-server-322, erc-server-324)
-       (erc-server-329, erc-server-330, erc-server-331, erc-server-332)
-       (erc-server-333, erc-server-341, erc-server-352, erc-server-353)
-       (erc-server-366, erc-server-MOTD, erc-server-379)
-       (erc-server-401, erc-server-403, erc-server-405, erc-server-406)
-       (erc-server-412, erc-server-421, erc-server-432, erc-server-433)
-       (erc-server-437, erc-server-442, erc-server-461, erc-server-474)
-       (erc-server-475, erc-server-477, erc-server-481, erc-server-482)
-       (erc-server-501): Move to erc-backend.el
-       (erc-auto-query, erc-banlist-store, erc-banlist-finished)
-       (erc-banlist-update, erc-connection-established)
-       (erc-process-ctcp-query, erc-display-server-message): Use new
-       accessors for PARSED argument.
-
-2004-05-13  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-backend.el: (erc-parse-server-response)
-       (erc-handle-parsed-server-response, erc-get-hook)
-       (define-erc-response-handler): New functions.
-       (erc-response): New struct for server responses.
-       (erc-server-responses): New variable.
-       (erc-call-hooks): Move from erc.el and rework.
-       (ERROR, INVITE, JOIN, KICK, MODE, NICK, PART, PING, PONG)
-       (PRIVMSG, NOTICE, QUIT, TOPIC, WALLOPS, 001, MOTD, 376, 004)
-       (252, 253, 254, 250, 301, 303, 305, 306, 311, 312, 313, 315)
-       (317, 318, 319, 320, 321, 322, 324, 329, 330, 331, 332, 333)
-       (341, 352, 353, 366, 369, 379, 401, 403, 405, 406, 412, 421)
-       (432, 433, 437, 442, 461, 474, 477, 481, 482, 501, 323, 221)
-       (002, 003, 371, 372, 374, 375, 422, 251, 255, 256, 257, 258)
-       (259, 265, 266, 377, 378, 314, 475, 364, 365, 367, 368, 381)
-       (382, 391, 392, 393, 394, 395, 200, 201, 202, 203, 204, 205)
-       (206, 208, 209, 211, 212, 213, 214, 215, 216, 217, 218, 219)
-       (241, 242, 243, 244, 249, 261, 262, 302, 342, 351, 402, 404)
-       (407, 409, 411, 413, 414, 415, 423, 424, 431, 436, 441, 443)
-       (444, 445, 446, 451, 462, 463, 464, 465, 467, 471, 472, 473)
-       (483, 491, 502, 005, KILL): Move from erc.el and rework using
-       `define-erc-response-handler' and erc-response struct.
-
-2004-05-12  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el: A few bug fixes to avoid errors after disconnect,
-       including the "Selecting deleted buffer" bug.
-       (erc-channel-user-op-p, erc-channel-user-voice-p): Make sure NICK
-       is non-nil (`erc-current-nick' can return nil).
-       (erc-server-buffer): Make sure the buffer isn't a #<killed
-       buffer>.
-       (erc-server-buffer-live-p): New function.
-       (erc-display-line, erc-join-channel, erc-prepare-mode-line-format,
-       erc-away-p): Use `erc-server-buffer-live-p' to make sure process
-       buffer exists.
-       (erc-send-current-line): If there is no server buffer, let the
-       user know.
-
-2004-05-12  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el, erc-log.el: C-c C-l keybinding now defined in
-       erc-log.el.
-       (erc-log-version): New.
-       (erc-cmd-JOIN): Fix applied for bug where /join -invite causes
-       errors when there's no `invitation'.
-
-2004-05-11  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el: (erc-cmd-JOIN): Make sure `chnl' is non-nil before trying
-       to join anything (chnl is not set if /join -invite is used but
-       there's no `invitation').
-
-2004-05-10  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-log.el: Define C-c C-l keybinding outside of `erc-log-mode',
-       making it available all the time; autoload definition.
-       (erc-log-version): New.
-
-2004-05-09  Diane Murray <disumu@x3y2z1.net>
-
-       * AUTHORS, CREDITS, Makefile, erc-autoaway.el, erc-autojoin.el,
-       erc-button.el, erc-chess.el, erc-dcc.el, erc-ezbounce.el,
-       erc-fill.el, erc-ibuffer.el, erc-imenu.el, erc-lang.el,
-       erc-list.el, erc-log.el, erc-macs.el, erc-match.el, erc-members.el,
-       erc-menu.el, erc-nets.el, erc-netsplit.el, erc-nickserv.el,
-       erc-notify.el, erc-page.el, erc-ring.el, erc-speak.el,
-       erc-speedbar.el, erc-stamp.el, erc-track.el, erc-truncate.el,
-       erc-xdcc.el, erc.el: Applied all relevant bug fixes and code
-       cleanup made between the time of the ERC_4_0_RELEASE tag until now.
-
-2004-05-09  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-menu.el: Updated copyright years.
-
-2004-05-09  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-update-channel-info-buffer): Correct bug in sorting
-       of channel users.  Tiny change from Andreas Schwab
-       <schwab@suse.de>.
-
-2004-05-09  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-fill.el (erc-fill-variable): Fix docstring.
-
-2004-05-09  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-button.el (erc-button-add-button): Use 'keymap
-       text-property, rather than 'local-map, since it's cross-emacs
-       compatible.  Pass :mouse-down-action into `widget-convert-button'
-       as 'erc-button-click-button, to make XEmacs happy.  Replace bogus
-       reference to erc-widget-press-button with erc-button-press-button.
-       (erc-button-click-button): New (ignored) first argument, to make
-       XEmacs behave when pressing buttons.
-       (erc-button-press-button): New (ignored) &rest argument.
-
-2004-05-09  Adrian Aichner <adrian@xemacs.org>
-
-       * erc-log.el (erc-conditional-save-buffer): Fix docstring
-       reference to erc-save-queries-on-quit.
-       (erc-conditional-save-queries): Ditto.
-
-2004-05-06  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-speedbar.el: Updated copyright years.  Added local variables
-       for this file; fixed indenting.
-       (erc-speedbar): New group.
-       (erc-speedbar-sort-users-type): New variable.
-       (erc-speedbar-buttons): Handle query buffers (fixes a bug where an
-       error would be thrown if the current buffer was a query).  Ignore
-       unknown buffers.
-       (erc-speedbar-expand-channel): Show limit and key with channel
-       modes. Sort users according to `erc-speedbar-sort-users-type'.
-       (erc-speedbar-insert-user): Fixed bug where only nicks with more
-       info were being listed, and those were shown twice.
-       (erc-speedbar-goto-buffer): Don't use dframe functions, as dframe
-       isn't available with the default speedbar.
-
-2004-05-06  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el: (erc-sort-channel-users-alphabetically): New function.
-       (erc-server-412, erc-server-432, erc-server-475): New functions.
-       (erc-server-412-hook, erc-server-432-hook, erc-server-475-hook):
-       Use them.
-       (erc-server-401, erc-server-403, erc-server-405)
-       (erc-server-421, erc-server-474, erc-server-481): Use catalog
-       messages.
-       (erc-define-catalog): Added s401, s403, s405, s412, s421, s432,
-       s474, s475, and s481.
-
-2004-05-06  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-nickserv.el: Added documentation to Commentary, Usage.
-       Removed `outline-mode' from file local variables.
-       (erc-services-mode): Use `erc-nickserv-identify-mode' to add
-       hooks.
-       (erc-nickserv-identify-mode): New function.
-       (erc-nickserv-identify-mode): New variable.
-       (erc-prompt-for-nickserv-password, erc-nickserv-passwords):
-       Changed docstring.
-       (erc-nickserv-identify-autodetect): Use
-       `erc-nickserv-call-identify-function'. Docstring change.
-       (erc-nickserv-identify-on-connect,
-       erc-nickserv-identify-on-nick-change,
-       erc-nickserv-call-identify-function): New functions.
-       (erc-nickserv-identify): PASSWORD is not optional.  Autoload
-       function.
-
-2004-05-05  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-join-hook, erc-quit-hook, erc-part-hook,
-       erc-kick-hook, erc-connect-pre-hook): Now customizable.
-       (erc-nick-changed-functions): New hook.
-       (erc-server-NICK): Run `erc-nick-changed-functions' with the
-       arguments NEW-NICK and OLD-NICK.
-       (erc-channel-user-voice-p, erc-channel-user-voice-p): Shortened
-       docstring.
-
-2004-05-05  Lawrence Mitchell <wence@gmx.li>
-
-       * HACKING: New section on function/variable naming and coding
-       conventions.
-
-2004-05-05  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-wash-quit-reason): Quote regexp special characters
-       in NICK, LOGIN and HOST.
-
-2004-05-04  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-server-parameters): Typo fix in docstring.
-       (erc-input-line-position): `:type' is now a choice between integer
-       and nil.  (erc-mode-map): Bind `erc-get-channel-mode-from-keypress'
-       to C-c C-o instead of C-c RET (C-c C-m).  (erc-cmd-GQUIT): Use
-       REASON as argument when calling `erc-cmd-QUIT'.
-
-2004-05-03  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-nicklist.el: Initial version.
-
-2004-04-28  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-menu.el: Added local variables for file, fixed indenting.
-       (erc-menu-version): New variable.
-       (erc-menu-definition): "List channels": New.  "Join channel": Use
-       `erc-connected' as test.  "Start a query": New.  "List channel
-       operators": New.  "Input action": Moved up.  "Set topic": Fixed
-       test so it's only active in channels.  "Leave this channel": Moved
-       down.  "Track hidden channel buffers": Removed.  "Enable/Disable
-       ERC Modules": New.
-
-2004-04-28  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-mode-map): Removed binding for
-       `erc-save-buffer-in-logs' (moved to erc-log.el).
-       (erc-cmd-QUERY, erc-cmd-OPS): Now interactive.
-
-2004-04-28  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-log.el: Added local variables for this file.
-       (erc-log-channels-directory): Added directory as a choice in
-       `:type'.
-       (define-erc-module): Define and undefine key binding (C-c
-       C-l) for `erc-save-buffer-in-logs' here.
-
-2004-04-28  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-nets.el: Added local variables for this file.
-       (erc-networks-alist): Fixed `:type' to work better in
-       customization.
-
-2004-04-28  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-match.el: Added local variables for file.  (erc-keywords):
-       Use `list' instead of `cons' in `:type'.  Fixes bug where mismatch
-       was shown in customization.  (erc-current-nick-highlight-type):
-       Escape parentheses in docstring.  Added keyword, nick-or-keyword as
-       options in `:type'.
-
-2004-04-28  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-stamp.el: Added local variables for file.
-       (erc-away-timestamp-format): Allow nil as a choice in `:type'.
-       (erc-timestamp-intangible): Changed `:type' to boolean.
-       (erc-timestamp-right-column): Added `:group' and `:type'.
-
-2004-04-28  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-modules): Added bbdb, log, match, sound, and stamp
-       as `:type' options; changed documentation for autojoin, fill,
-       pcomplete, track.  (erc-prompt-for-channel-key): New variable.
-       (erc-join-channel): Only prompt for key if
-       `erc-prompt-for-channel-key' is non-nil.  (erc-format-my-nick): New
-       function.  (erc-send-message, erc-send-current-line): Use it.
-
-2004-04-24  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc-track.el: (erc-track-modified-channels): Fix indentation.
-
-2004-04-24  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc-match.el: (erc-hide-fools): Docstring fix.
-       (erc-log-matches-types-alist): Added `current-nick' to valid
-       choices.
-
-2004-04-20  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-page.el, erc-ezbounce.el, erc-speak.el, erc-match.el,
-       erc-track.el (erc-ezbounce, erc-page, erc-speak): Groups defined.
-       (erc-match, erc-track): `erc' is parent group.
-       (erc-ezb-regexp, erc-ezb-login-alist): Added `:group'.
-
-2004-04-20  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-fill.el: Fixed erc-fill-static so it breaks the lines at the
-       right column and respects timestamps. Patch by Simon Siegler
-       <simon@trz-kril.de>
-       (erc-fill-static): Major rewrite and split up into some functions.
-       (erc-count-lines): Removed.
-       (erc-fill-regarding-timestamp): New function.
-       (erc-timestamp-offset): New function.
-       (erc-restore-text-properties): New function.
-       (erc-fill-variable): Respect leftbound timestamp.  This is still
-       broken if someone has both erc-timestamp-only-if-changed-flag set
-       and erc-insert-timestamp-function set to
-       'erc-insert-timestamp-left, but otherwise it works now.
-
-2004-04-20  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el: (erc-cmd-SV): Show features gtk, mac-carbon, multi-tty.
-       Fixed so that arguments fit the format (build date was not being
-       shown).
-
-2004-04-19  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el: (erc-update-channel-topic); Error if `channel-topic' is
-       unbound.  Remove %-sign substitution.
-       (erc-update-mode-line-buffer): Escape %-signs in `channel-topic'
-       here.
-
-2004-04-19  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el: (erc-send-action, erc-ctcp-query-ACTION,
-       erc-ctcp-reply-ECHO-hook): Let `erc-display-message-highlight'
-       propertize the message.
-       (erc-display-message-highlight): Allow for any erc-TYPE-face.
-       (erc-cmd-JOIN): Display error message instead of throwing an error
-       if there's no `invitation'.
-       (erc-cmd-PART): Allow for no reason if channel is provided.  Fixes
-       bug where user would part the current channel with the other
-       channel's name as reason when no reason was given.
-       (erc-server-vectors, erc-debug-missing-hooks): Added docstring.
-       (erc-server-JOIN): Moved `erc-join-hook' to JOIN-you section.
-       `erc-join-hook' called by `run-hook-with-args', sending the ARGS
-       `chnl' and the channel's buffer.  Changed an instance of if
-       without else to when.
-       (erc-server-477): New function.
-       (erc-server-477-hook): Use `erc-server-477'.
-       (erc-define-catalog): Added `no-invitation'.
-
-2004-04-14  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-nickserv.el: Local variables for file added.
-       (erc-nickserv-passwords): Customization: Network symbols updated
-       to reflect `erc-nickserv-alist'.  Allow user to type in network
-       symbol.
-       (erc-nickserv-alist): Now customizable variable.
-
-2004-04-09  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-autoaway.el (erc-autoaway-reset-idletime): Make sure `line'
-       is a string to avoid errors upon startup.
-
-2004-04-06  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-autoaway.el (erc-autoaway-version): New variable.
-       (erc-auto-discard-away): Updated docstring.
-       (erc-autoaway-no-auto-back-regexp): New variable.
-       (erc-autoaway-reset-idletime): Use it.  Hopefully a better solution
-       which allows for aliases to "/away" and any other text that the
-       user wants to ignore when `erc-auto-discard-away' is non-nil.
-
-2004-04-06  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-autoaway.el (erc-autoaway-reset-idletime): Forgot /gaway in
-       regexp.
-
-2004-04-06  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-autoaway.el (erc-autoaway-reset-idletime): If the user sends
-       an "/away" command, don't call `erc-autoaway-set-back', fixes bug
-       where ERC would send "/away" when user was already away and sent an
-       "/away reason".  Changed `l' to `line' for better understanding.
-       (erc-autoaway-set-back): Changed `l' to `line' for better
-       understanding.
-
-2004-04-05  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-set-channel-key): Now able to remove key.
-       (erc-set-channel-limit): Now able to remove limit.
-       (erc-get-channel-mode-from-keypress): Fixed docstring.
-
-2004-04-04  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-join-channel): Allow for optional channel key.
-       (erc-set-modes): Need to set `channel-key' to nil in case of mode
-       changes during split.
-       (erc-show-channel-key-p): New variable.
-       (erc-prepare-mode-line-format): Only show key if
-       `erc-show-channel-key-p' is non-nil.
-
-2004-04-04  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (channel-key): New variable.
-       (erc-update-channel-key): New function.
-       (erc-set-modes, erc-parse-modes, erc-update-modes, erc,
-       erc-update-channel-info-buffer): Deal with channel keys.
-       (erc-prepare-mode-line-format): Show channel key in header-line.
-       (erc-server-NICK): Show nick change in server buffer as well.
-       (erc, erc-send-command, erc-banlist-store, erc-banlist-update,
-       erc-load-irc-script-lines,
-       erc-arrange-session-in-multiple-windows, erc-handle-login,
-       erc-find-channel-info-buffer): Changed when not to unless.
-       (erc-server-MODE): Changed if without else to when.
-
-2004-03-27  Adrian Aichner <adrian@xemacs.org>
-
-       * erc.el: (erc-cmd-BANLIST): Use `truncate-string-to-width'
-       instead of `truncate-string' alias.
-       (erc-nickname-in-use): Ditto.
-
-2004-03-27  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc-list.el (erc-cmd-list): Fixed error caused by erc-cmd-LIST
-       passing a non-sequence to erc-chanlist.
-
-2004-03-22  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
-
-       * erc.el: Add new hook `erc-join-hook', which is run when we join a
-       channel.
-
-2004-03-22  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
-
-       * erc.el: Replaced existing notice user notification system and
-       the configuration options, which consisted of
-       `erc-echo-notices-in-minibuffer-flag' and
-       `erc-echo-notices-in-current-buffer' with two new hooks,
-       `erc-echo-notice-hook' and `erc-echo-notice-always-hook'.
-
-       When user notification is needed, `erc-echo-notice-always-hook' is
-       first run using `run-hook-with-args', then `erc-echo-notice-hook'
-       is run using `run-hook-with-args-until-success'.
-
-       In addition to these hooks, a large number of functions, which are
-       described in the documentation strings of those hooks, were added
-       which can be used to achieve a large variety of different
-       behaviors.
-
-       The current default behavior, which is identical to the existing
-       default behavior, is for `erc-echo-notice-always-hook' to be set to
-       `(erc-echo-notice-in-default-buffer).
-
-2004-03-21  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-track.el: (erc-modified-channels-display): Added a space
-       before opening bracket.
-
-2004-03-21  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el: (erc-format-query-as-channel-p): New variable.
-       (erc-server-PRIVMSG-or-NOTICE): If `erc-format-query-as-channel-p'
-       is nil, messages in the query buffer are formatted like private
-       messages.
-
-       (erc-server-252-hook, erc-server-253-hook, erc-server-254-hook,
-       erc-server-256-hook, erc-server-257-hook, erc-server-258-hook,
-       erc-server-259-hook, erc-server-371-hook, erc-server-372-hook,
-       erc-server-374-hook, erc-server-374-hook, erc-server-442-hook,
-       erc-server-477-hook): Removed, now defined in
-       `erc-server-hook-list'.
-       (erc-display-server-message): New function.
-       (erc-server-252, erc-server-253, erc-server-254, erc-server-442):
-       New functions.
-       (erc-server-hook-list): Added 250, 256, 257, 258, 259, 265, 266,
-       377, 378, 477 - using `erc-display-server-message'.  251, 255 now
-       use `erc-display-server-message'.  Added 252, 253, 254, 442 -
-       using respective erc-server-* functions.  371, 372, 374, 375 now
-       defined here.
-       (erc-define-catalog): Added s252, s253, s254, s442.
-       (erc-server-001, erc-server-004, erc-server-005): Fixed
-       documentation.
-
-2004-03-20  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-stamp.el: Commentary: Changed `erc-stamp-mode' to
-       `erc-timestamp-mode'.
-       (erc-insert-timestamp-left): Use `erc-timestamp-face' on filler
-       spaces as well.
-
-2004-03-19  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-send-action): Use `erc-input-face'.
-       (erc-display-message-highlight): If the requested highlighting
-       type doesn't match, just display the string with no highlighting
-       and warn about it with `erc-log'.. (erc-cmd-JOIN): If user is
-       already on the requested channel, switch to that channel's buffer.
-       (erc-ctcp-query-ACTION): Use `erc-action-face' for nick as well.
-       (erc-header-line-use-help-echo-p): New variable.
-       (erc-update-mode-line-buffer): Use `help-echo' for header-line if
-       `erc-header-line-use-help-echo-p' is non-nil.
-
-2004-03-18  Adrian Aichner <adrian@xemacs.org>
-
-       * erc-nets.el: Use two arguments version of `make-obsolete', if
-       third argument is not supported (for XEmacs).
-
-2004-03-18  Andreas Fuchs <asf@void.at>
-
-       * CREDITS: added CREDITS entry for Adrian Aichner
-
-2004-03-18  Andreas Fuchs <asf@void.at>
-
-       * erc-xdcc.el, erc.el, erc-autoaway.el, erc-autojoin.el,
-       erc-button.el, erc-dcc.el, erc-ezbounce.el, erc-imenu.el,
-       erc-list.el, erc-log.el, erc-match.el, erc-members.el,
-       erc-menu.el, erc-netsplit.el, erc-notify.el, erc-speedbar.el,
-       erc-stamp.el, erc-track.el, erc-truncate.el:
-       (erc-coding-sytem-for-target): Removed.
-       (erc-coding-system-for-target): New.
-       (erc-autoaway-use-emacs-idle): Typo fix.
-       (erc-auto-set-away): Ditto.
-       (erc-auto-discard-away): Ditto.
-       (autojoin): Ditto.
-       (erc-button-alist): Ditto.
-       (erc-dcc-auto-masks): Ditto.
-       (erc-dcc-chat-send-input-line): Ditto.
-       (erc-ezb-get-login): Ditto.
-       (erc-unfill-notice): Ditto.
-       (erc-save-buffer-in-logs): Ditto.
-       (match): Ditto.
-       (erc-log-matches-types-alist): Ditto.
-       (erc-match-directed-at-fool-p): Ditto.
-       (erc-match-message): Ditto.
-       (erc-update-member): Ditto.
-       (erc-ignored-reply-p): Ditto.
-       (erc-menu-definition): Ditto.
-       (erc-netsplit-QUIT): Ditto.
-       (erc-notify-list): Ditto.
-       (erc-speedbar-update-channel): Ditto.
-       (erc-speedbar-item-info): Ditto.
-       (erc-stamp): Ditto.
-       (erc-timestamp-intangible): Ditto.
-       (erc-add-timestamp): Ditto.
-       (erc-timestamp-only-if-changed-flag): Ditto.
-       (erc-show-timestamps): Ditto.
-       (erc-track-priority-faces-only): Ditto.
-       (erc-modified-channels-alist): Ditto.
-       (erc-unique-substrings): Ditto.
-       (erc-find-parsed-property): Ditto.
-       (erc-track-switch-direction): Ditto.
-       (erc-truncate-buffer-to-size): Ditto.
-       (erc-xdcc): Ditto.
-       (erc-auto-reconnect): Ditto.
-       (erc-startup-file-list): Ditto.
-       (erc-once-with-server-event): Ditto.
-       (erc-once-with-server-event-global): Ditto.
-       (erc-mode): Ditto.
-       (erc-generate-new-buffer-name): Ditto.
-       (erc): Ditto.
-       (erc-open-ssl-stream): Ditto.
-       (erc-default-coding-system): Ditto.
-       (erc-encode-string-for-target): Ditto.
-       (erc-decode-string-from-target): Ditto.
-       (erc-scroll-to-bottom): Ditto.
-       (erc-decode-controls): Ditto.
-       (erc-channel-members-changed-hook): Ditto.
-       (erc-put-text-property): Ditto.
-       (erc-add-default-channel): Ditto.
-
-2004-03-17  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-process-sentinel): Cancel ping timer upon
-       disconnect.
-       (erc-cmd-PART): Use same regexp as `erc-cmd-QUIT' when no #channel
-       is provided.
-       (erc-nick-uniquifier, erc-manual-set-nick-on-bad-nick-p): `:group'
-       was missing, added.
-       (erc-part-reason-zippy, erc-part-reason-zippy): Removed FIXME
-       comments.  I see no problem allowing typed in reasons.
-
-2004-03-16  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-stamp.el: (erc-insert-timestamp-left): Added support for
-       `erc-timestamp-only-if-changed-flag' and added docstring.
-       (erc-timestamp-only-if-changed-flag): Updated documentation.
-
-2004-03-13  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc-nets.el (erc-network-name): No longer marked as obsolete.
-       Why was this function made obsolete?  There is no other function
-       that performs this task.  Some of us use these functions in our
-       personal ERC configs.
-
-2004-03-12  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-buffer-filter): Use `with-current-buffer'.
-       (erc-process-input-line): Append newline to documentation.  Fixes a
-       bug whereby the prompt would be put on the same line as the output.
-       (erc-cmd-GQUIT): Only try and send QUIT if the process is alive.
-
-2004-03-12  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-log.el: Only add top-level hooks if `erc-enable-logging' is
-       non-nil.
-
-2004-03-10  Damien Elmes <erc@repose.cx>
-
-       * erc-nets.el: From Adrian Aichner (adrian /at/ xemacs /dot/ org)
-       * erc-nets.el: XEmacs make-obsolete only takes two arguments.
-
-2004-03-10  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-nets.el (erc-determine-network): Use `erc-session-server' if
-       `erc-announced-server' is nil to avoid error if server does not
-       send 004 (RPL_MYINFO) message.
-
-2004-03-10  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-nets.el (erc-server-alistm erc-settings): Use lowercase
-       "freenode", as in `erc-networks-alist'.
-
-2004-03-10  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-nickserv.el (erc-nickserv-alist): Use lowercase "freenode",
-       as in `erc-networks-alist'.
-
-2004-03-10  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-dcc.el (pcomplete/erc-mode/DCC): Append "send" as a list.
-
-2004-03-10  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc-nets.el (erc-networks-alist): Changed "Freenode" to
-       "freenode".
-
-2004-03-10  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc-list.el (erc-cmd-LIST): Improved the docstring.   Made
-       message to user more accurate   depending on whether a single
-       channel is being listed or not.
-
-2004-03-10  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-nets.el (erc-determine-network): Make matching logic simpler
-       (suggested by Damian Elmes).
-       (erc-current-network, erc-network-name): Add `make-obsolete' form.
-       (erc-set-network-name): Indentation fix.
-       (erc-ports-list): Add docstring.  Rework function body to use
-       `nconc'.
-
-2004-03-09  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-list.el, erc-notify.el: (require 'erc-nets): added
-
-2004-03-08  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-network-name): Function definition moved to
-       erc-nets.el.  The functions `erc-determine-network' and
-       `erc-network' in erc-nets.el do what this did before.  Deprecated.
-       Use (erc-network) instead.
-
-2004-03-08  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-nickserv.el: Changed copyright notice.  Now require
-       erc-nets.  erc-nets.el now takes care of network-related functions
-       and variables.
-       (erc-nickserv-alist): Changed network symbols to match those in
-       `erc-networks-alist' in erc-nets.el.
-       (erc-nickserv-identify-autodetect): Use `erc-network'.
-       (erc-nickserv-identify): Use `erc-network'.  Changed wording for
-       interactive use, now shows current nick.
-       (erc-networks): Removed.  Use `erc-networks-alist' as defined in
-       erc-nets.el.
-       (erc-current-network): Function definition moved to erc-nets.el.
-       The functions `erc-determine-network' and `erc-network' in
-       erc-nets.el do what this did before.  Deprecated.  Use
-       (erc-network) instead.
-
-2004-03-08  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-nets.el: Added commentary, `erc-nets-version'.
-       (erc-server-alist): Changed Brasnet to BRASnet.
-       (erc-networks-alist): All networks (except EFnet and IRCnet) now
-       have a MATCHER.  (erc-network): New variable.
-       (erc-determine-network): New function. Determine the network the
-       user is on.  Use the server parameter NETWORK, if provided, else
-       parse the server name and search for a match (regexp and loop by
-       wencem) in `erc-networks-alist'.  Return the name of the network
-       or "Unknown" as a symbol.
-       (erc-network): New function.  Returns value of `erc-network'.  Use
-       this when the current buffer is not the server process buffer.
-       (erc-current-network): Returns the value of `erc-network' as
-       expected by users who used the function as it was defined in
-       erc-nickserv.el.  Deprecated.
-       (erc-network-name): Returns the value of `erc-network' as expected
-       by users who used the function as it was defined in erc.el.
-       Deprecated.
-       (erc-set-network-name): New function.  Added to
-       `erc-server-375-hook' and `erc-server-422-hook'.
-       (erc-unset-network-name): New function.  Added to
-       `erc-disconnected-hook'.
-       (erc-server-select): Small documentation word change.
-
-2004-03-07  Diane Murray <disumu@x3y2z1.net>
-
-       * AUTHORS, CREDITS: disumu info updated
-
-2004-03-06  Lawrence Mitchell <wence@gmx.li>
-
-       * erc-list.el (erc-cmd-LIST): Take &rest rather than &optional
-       arguments.
-       (erc-chanlist): Construct correct LIST command from list of
-       channels.
-
-2004-03-06  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-update-mode-line-buffer): Add 'help-echo property to
-       header-line text.  This allows header lines longer than the width
-       of the current window to be seen.
-
-2004-03-06  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-match.el (erc-match-directed-at-fool-p): Also check for
-       "FOOL, "
-
-2004-03-06  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-match.el (erc-match-message): Only use nick-or-keyword if
-       we're matching our nick.
-
-2004-03-06  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-match.el: The highlight type for the current nickname can
-       now also be 'nick-or-keyword, to highlight the nick of the sender
-       if that is available, but fall back to highlighting your nickname
-       in the whole message otherwise.
-       (erc-current-nick-highlight-type): Adapted docstring accordingly.
-       (erc-match-message): Added new condition. Also added some comments
-       to this monster of a function.
-
-2004-03-06  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-is-valid-nick-p): Don't check for length less or
-       equal to 9.
-
-2004-03-06  Damien Elmes <erc@repose.cx>
-
-       * erc-nickserv.el (erc-current-network): the last change resulted
-       in this function failing when a network identifies itself as
-       anything other than var.netname.com, so for instance
-       'vic.au.austnet.org' fails. This version is only a marginal
-       improvement over the original, but if we want to be more flexible
-       we'll probably have to do the iteration ourselves instead of using
-       assoc.
-
-2004-03-05  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el: Added erc-server-001 which runs when the server sends
-       its welcome message.  It sets the current-nick to reflect the
-       server's settings. This fixes a bug where nicks that were too long
-       and got truncated by ther server were still set to the old value.
-       (nickname-in-use): If user wants to try again manually, let user
-       know that the nick is taken.  If not, go through erc-default-nicks
-       until none are left, and then try one last time with
-       erc-nick-uniquifier.  If it's still a bad-nick, make the user
-       change nick manually.  When applying uniquifier, use NICKLEN if
-       it's in the server parameters, otherwise use what RFC 2812 says is
-       the max nick length (9 chars).  Added custom variable
-       erc-manual-set-nick-on-bad-nick-p, which is set to nil and
-       erc-nick-change-attempt-count.  Reset erc-default-nicks and
-       erc-nick-change-attempt-count when the nick has been changed
-       successfully.  This fixes the bug where ERC would get caught in a
-       neverending loop of trying to set the same nick if the nick was
-       too long and the uniquified nick was not available.
-
-       * added erc-cmd-WHOAMI
-
-       * added custom variable erc-mode-line-away-status-format, use this
-       instead of   the previous hard-coded setting
-
-       * erc-server-315|318|369-hook defvar lines removed - they're
-       already defined in erc-server-hook-list
-
-2004-03-04  Lawrence Mitchell <wence@gmx.li>
-
-       * HACKING: Initial commit.  Some thoughts on coding standards.
-
-2004-03-03  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-track.el: added the variable erc-track-priority-faces-only
-       which adds the option to ignore changes in a channel unless there
-       are faces from the erc-track-faces-priority-list in the message
-       options are nil, 'all, or a list of channel name strings
-
-2004-03-01  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el, erc-ibuffer.el, erc-menu.el: Changed erc-is-channel-op
-       and erc-is-channel-voice to erc-channel-user-op-p and
-       erc-channel-user-voice-p to better match erc-channel-user
-       structure (and emacs lisp usage)
-
-2004-03-01  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el, erc-ibuffer.el, erc-menu.el:
-       erc-track-modified-channels-mode is now erc-track-mode
-
-2004-02-29  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-match.el: Added 'keyword option to
-       erc-current-nick-highlight-type highlights all instances of
-       current-nick in the message ('nickname option in cvs revisions 1.9
-       - 1.11 had same effect)
-
-2004-02-28  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-button.el: Add Lisp: prefix for the EmacsWiki Elisp area.
-       (erc-button-alist): Added Lisp: prefix.
-       (erc-emacswiki-lisp-url): New variable.
-       (erc-browse-emacswiki-lisp): New function.
-
-2004-02-27  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-get-arglist): Use `substitute-command-keys', rather
-       than hard-coding C-h f for `describe-function'.
-
-2004-02-26  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc-log.el (erc-save-buffer-in-logs): bind `inhibit-read-only'
-       to t around call to `erase-buffer'.
-
-2004-02-23  Edward O'Connor <ted@oconnor.cx>
-
-       * erc-chess.el, erc-dcc.el, erc-ezbounce.el, erc-list.el,
-       erc-macs.el, erc-ring.el, erc-stamp.el, erc.el: Normalized buffer
-       local variable creation.
-
-2004-02-17  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-scroll-to-bottom, erc-add-scroll-to-bottom): Mention
-       `erc-input-line-position' in docstring.
-
-2004-02-13  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-kick-hook): Typo fix.
-
-2004-02-13  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
-
-       * erc.el: Added `erc-kick-hook', which is called when the local
-       user is kicked from a channel.  Fixed a bug in `erc-cmd-OPS', such
-       that the command now works.  Added `erc-remove-channel-users', in
-       order to fix a number of significant bugs relating to channel
-       parting.
-
-2004-02-12  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-display-prompt): Remove last change. This caused a
-       lot of trouble :(
-
-2004-02-12  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-display-prompt): Also set 'field property, so C-j
-       works on an empty prompt.
-
-2004-02-12  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-update-channel-topic): Ensure that `channel-topic'
-       does not contain any bare format controls.
-
-2004-02-10  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc-stamp.el (erc-timestamp-intangible): New variable (user
-       feature request)
-       (erc-format-timestamp): Use erc-timestamp-intangible.
-
-2004-02-07  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
-
-       * erc-button.el: Fixed bug related to nickname buttonizing and text
-       fields due to erc-stamp.
-
-2004-02-07  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
-
-       * CREDITS: Added mention of my change of ERC to use hash tables.
-
-2004-02-07  Jeremy Bertram Maitin-Shepard <jbms@gentoo.org>
-
-       * AUTHORS: Added myself to the list.
-
-2004-02-05  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el: From Jeremy Maitin-Shepard <jbms@attbi.com>:
-       (erc-remove-channel-user): Use `delq' not `delete'.
-       (erc-get-buffer): Pass PROC through to `erc-buffer-filter'.
-       (erc-process-sentinel): Use `erc' rather than `erc-reconnect' for
-       auto-reconnection.
-
-2004-02-02  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el: (erc-buffer-list-with-nick): Apply `erc-downcase' NICK.
-
-2004-01-30  Alex Schroeder <alex@gnu.org>
-
-       * erc.el: (erc-get-buffer): Use erc-buffer-filter.
-
-2004-01-30  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc.el: From jbms: (erc-get-channel-nickname-list): New function.
-       (erc-get-server-nickname-list): New function.
-       (erc-get-server-nickname-alist): New function.
-       (erc-get-channel-nickname-alist): New function.
-
-2004-01-30  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc-match.el: (erc-add-entry-to-list,
-       erc-remove-entry-from-list): Use `erc-member-ignore-case' to
-       compare entries.
-       (erc-add-pal, erc-add-fool): Fix type bug. Use
-       `erc-get-server-nickname-alist'.
-
-2004-01-29  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc.el: From jbms: Adds xemacs compatibility to hash table
-       channel-members patch.
-
-2004-01-29  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc.el: (erc-update-undo-list): Rewritten. Update
-       buffer-undo-list in place.  Deal with XEmacsesque
-       entries (extents) in the list.
-       (erc-channel-users): Fix unescaped open-paren in left column in
-       docstring.
-
-2004-01-29  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc-ring.el: (erc-replace-current-command): Exclude the prompt
-       from the deleted region and don't redisplay the prompt (because
-       `erc-display-prompt' flushes `buffer-undo-list').
-
-2004-01-29  Johan Bockgard <bojohan@users.sourceforge.net>
-
-       * erc-match.el: (erc-add-entry-to-list): Use `symbol-value' instead
-       of `eval'.
-
-2004-01-28  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: (erc-kill-buffer-function): maphash was missing an
-       argument.
-
-2004-01-28  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * Makefile, erc-autoaway.el, erc-button.el, erc-ibuffer.el,
-       erc-lang.el, erc-list.el, erc-match.el, erc-menu.el, erc-page.el,
-       erc-pcomplete.el, erc-speedbar.el, erc.el: HUGE change by jbms.
-       This makes channel-members a hash, erc-channel-users.
-
-       Modified files: Makefile erc-autoaway.el erc-button.el
-       erc-ibuffer.el erc-lang.el erc-list.el erc-match.el erc-menu.el
-       erc-page.el erc-pcomplete.el erc-speedbar.el erc.el
-
-       The changes are too numerous to document properly. Have fun with
-       the breakage.
-
-2004-01-27  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: (erc-send-input-line): Add a space to empty lines so the
-       server likes them.
-
-2004-01-25  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: erc-send-whitespace-lines: New variable.
-       (erc-send-current-line): Use erc-send-whitespace-lines. Also,
-       removed superflous test for empty line in the mapc, since the
-       blank line test should find all. I do like to be able to send an
-       empty line when i want to!
-       (erc-send-current-line): Check for point being in input line
-       before checking for blank lines.
-
-2004-01-21  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el: (erc-display-line-1): Move `erc-update-undo-list' outside
-       `save-restriction'.  Removing need for temporary variable.
-       (erc-send-current-line): Fix bug introduced by last change, remove
-       complement in blank line regexp.
-
-2004-01-20  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el: (erc-update-undo-list): Add logic to catch the case when
-       `buffer-undo-list' is t, indentation cleanup.
-       (erc-send-current-line):  Reverse logic for matching blank lines.
-
-2004-01-20  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-input-line-position): New variable.  If non-nil,
-       specifies the argument to `recenter' in `erc-scroll-to-bottom'.
-       (erc-scroll-to-bottom): Use it.
-
-2004-01-20  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el: From Johan BockgÃ¥rd <bojohan+news@dd.chalmers.se>:
-       (erc-update-undo-list): New function.  Update `buffer-undo-list'
-       so that calling `undo' in an ERC buffer doesn't mess up the
-       existing text.
-       (erc-display-line-1): Use it.
-
-2004-01-19  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-beg-of-input-line): Use `forward-line' rather than
-       `beginning-of-line'.  Docstring fix.
-       (erc-end-of-input-line): Docstring fix.
-
-2004-01-13  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-display-prompt): Remove the undo list after
-       displaying the prompt, so the user can't undo ERC changes, which
-       breaks some stuff anyways. This way the user can still undo his
-       editing, but not ours.
-
-2004-01-12  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el (erc-scroll-to-bottom): Should recenter on the bottom
-       line, not the second-to-last one.
-
-2004-01-12  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el: (erc-bol): Fix bug introduced in my changes from 2004-01-11.
-
-2004-01-12  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el: From Brian Palmer <bpalmer@gmail.com>
-       (erc-cmd-JOIN): Use `erc-member-ignore-case', rather than
-       `member-ignore-case'.
-
-2004-01-12  Jorgen Schaefer <forcer@users.sourceforge.net>
-
-       * erc.el: There was an inconsistency where the values of op and
-       voice in channel-names could be 'on or 'off after an update, t and
-       nil before.  The intended version was to have t or nil, so i fixed
-       it to do so.
-       (channel-names): Updated docstring.
-       (erc-update-current-channel-member): Clarified docstring, fixed so
-       it sets t or nil on an update as well, not only on an add.
-       (erc-cmd-OPS): Updated not to check for 'on (the only function that
-       did this!)
-
-2004-01-12  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-part-reason-various-alist,
-       erc-update-mode-line-buffer): Fix docstring
-
-2004-01-11  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-update-mode-line): Fix typo.
-
-2004-01-11  Lawrence Mitchell <wence@gmx.li>
-
-       * erc.el (erc-prompt-interactive-input): Removed.
-       (erc-display-prompt): Removed `erc-prompt-interactive-input'
-       option.  (erc-interactive-input-map): Removed.
-
-       Major docstring fixes.
-
-2004-01-07  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el (erc-cmd-OPS): Added this function.
-       (erc-cmd-IDLE): Switched from using erc-display-message-highlight
-       to erc-make-notice.
-
-2004-01-07  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc-list.el (erc-cmd-LIST): Switched from using
-       erc-display-message-highlight to erc-make-notice.
-
-2004-01-07  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el (erc-once-with-server-event): Added a sentence to the
-       docstring.  Now returns the uninterned symbol that is added to the
-       server hook.
-       (erc-cmd-IDLE): Changed to use erc-once-with-server-event instead
-       of erc-once-with-server-event-global.
-
-2004-01-06  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc-list.el (erc-chanlist-hide-modeline): New variable.
-       (erc-chanlist): Now displays message as a notice.  Also hides the
-       modeline if erc-chanlist-hide-modeline is non-nil.
-
-2004-01-05  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el (erc-server-PRIVMSG-or-NOTICE): Now nicks appear as
-       <nick> in query buffers, instead of as *nick*.
-
-2004-01-03  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el (erc-once-with-server-event-global): Changed to return
-       the uninterned symbol that it creates.
-       (erc-cmd-LIST): Changed to clean up hooks that don't run.
-
-2004-01-03  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc-pcomplete.el (pcomplete/erc-mode/IDLE): Added to support new
-       /IDLE command.
-
-2004-01-03  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc.el (erc-once-with-server-event-global): New function.  Like
-       erc-once-with-server-event, except it modifies the global value of
-       the event hook.
-       (erc-cmd-IDLE): New function.  Implements the new /IDLE command.
-       Usage: /IDLE NICK (erc-seconds-to-string): New function.  Converts
-       a number of seconds to an Engligh phrase.
-
-2004-01-02  Francis Litterio <franl@users.sourceforge.net>
-
-       * erc-list.el: Added variable erc-chanlist-mode-hook.
-
-See ChangeLog.2003 for earlier changes.
-
-    Copyright (C) 2004 Free Software Foundation, Inc.
-  Copying and distribution of this file, with or without modification,
-  are permitted provided the copyright notice and this notice are preserved.
-
-;; Local Variables:
-;; coding: utf-8
-;; End:
-
-;; arch-tag: cc606d2d-635b-4b36-829b-a50e3c51e2d1
diff --git a/lisp/erc/ChangeLog.2005 b/lisp/erc/ChangeLog.2005
deleted file mode 100644 (file)
index 09dc245..0000000
+++ /dev/null
@@ -1,1228 +0,0 @@
-2005-11-23  Johan BockgÃ¥rd  <bojohan@users.sourceforge.net>
-
-       * erc.el (erc-cmd-SAY): Strip leading space in input line.
-
-2005-10-29  Michael Olson  <mwolson@gnu.org>
-
-       * FOR-RELEASE: Add stuff that needs to be done before the 5.1
-       release.  Longer-term items can be added to the 5.2 section.
-
-       * Makefile (SITEFLAG): New variable that indicates what variant of
-       "--site-flag" to use.  XEmacs needs "-site-flag".
-       (INSTALLINFO): New variable indicating how we should call
-       install-info when installing documentation.
-       (erc-auto.el, .elc.el): Use $(SITEFLAG).
-
-       * NEWS: Note that last release was 5.0.4.
-
-       * erc.texi: Initial and incomplete draft of ERC documentation.
-       Commence collaborate-documentation-hack-mode :^) .
-
-2005-10-29  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-ring.el (erc-replace-current-command): Revert last change
-       since it made the prompt disappear when using `erc-next-command'
-       and `erc-previous-command'.
-
-2005-10-28  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el (erc-input-marker): New variable that indicates the
-       position where text from the user begins, after the prompt.
-       (erc-mode-map): Bind <HOME> to erc-bol, just like C-a.
-       (erc): Initialize erc-input-marker.
-       (erc-display-prompt): Even in case where no prompt is desired by
-       the user, clear the undo buffer and set the input marker.
-       (erc-bol, erc-user-input): Simplify by using erc-input-marker.
-
-       * erc-pcomplete.el (pcomplete-parse-erc-arguments): Use
-       erc-insert-marker.
-
-       * erc-ring.el (erc-previous-command)
-       (erc-replace-current-command): Use erc-insert-marker.
-
-       * erc-spelling.el (erc-spelling-init): Make sure that even Emacs21
-       obeys erc-spelling-flyspell-verify.
-       (erc-spelling-flyspell-verify): Use erc-input-marker.  This should
-       make it considerably faster when switching to a buffer that has
-       seen a lot of activity since last viewed.
-
-2005-10-25  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-backend.el (erc-server-version, 004): Re-added setting of
-       `erc-server-version'.  It doesn't hurt to set, and it could be
-       used in modules or users' settings.
-
-       * NEWS: Added descriptions of some new features.
-
-2005-10-20  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-match.el (erc-current-nick-highlight-type): Set to `keyword'
-       as default.
-       (erc-beep-match-types): New variable.
-       (erc-text-matched-hook): Doc fix.  Added `erc-beep-on-match' to
-       customization options.
-       (erc-beep-on-match): New function.  If the MATCH-TYPE is found in
-       `erc-beep-match-types', beep.
-
-       * erc-compat.el (erc-make-obsolete, erc-make-obsolete-variable):
-       New functions to deal with the difference in the number of
-       arguments accepted by `make-obsolete' and `make-obsolete-variable'
-       in Emacs and XEmacs.
-
-       * erc.el, erc-nets.el: Use `erc-make-obsolete' and
-       `erc-make-obsolete-variable'.
-
-       * erc-compat.el (erc-make-obsolete, erc-make-obsolete-variable):
-       Handle `wrong-number-of-arguments' error instead of checking for
-       xemacs feature as future versions of XEmacs might accept three
-       arguments.
-
-2005-10-18  Edward O'Connor  <ted@oconnor.cx>
-
-       * erc.el: Tell emacs-lisp-mode how to font-lock define-erc-module
-       docstrings.
-
-2005-10-08  Diane Murray  <disumu@x3y2z1.net>
-
-       * AUTHORS, CREDITS, ChangeLog, ChangeLog.2002, ChangeLog.2004:
-       Updated my email address.
-
-2005-10-06  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el (erc-send-input-line, erc-cmd-KICK, erc-cmd-PART)
-       (erc-cmd-QUIT, erc-cmd-TOPIC, erc-kill-server, erc-kill-channel):
-       Adapt to new TARGET parameter of erc-server-send.
-
-       * erc-backend.el (erc-server-connect): Don't specify encoding for
-       erc-server-process, since we set this each time we send a line to
-       the server.
-       (erc-encode-string-for-target): Remove.
-       (erc-server-send): Allow TARGET to be specified.  This was how it
-       used to be before my more-backend work.  Set encoding of server
-       process just before sending text to it.  Associate encoding with
-       text if we are using the queue.
-       (erc-server-send-queue): Pull encoding from queue.
-       (erc-message, erc-send-ctcp-message, erc-send-ctcp-notice): Adapt
-       to new TARGET parameter of erc-server-send.
-
-2005-10-05  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el (erc-toggle-debug-irc-protocol): Use erc-view-mode-enter
-       rather than view-mode.
-
-       * erc-backend.el (erc-encode-string-for-target): If given a nil or
-       empty string, return "".
-       (erc-server-send-queue): XEmacs fix: Use erc-cancel-timer rather
-       than cancel-timer.
-
-       * erc-compat.el (erc-view-mode-enter): New function that is
-       aliased to the correct way of entering view-mode.
-
-       * erc-match.el (erc-log-matches-make-buffer): Use
-       erc-view-mode-enter rather than view-mode-enter.
-
-2005-10-05  Edward O'Connor  <ted@oconnor.cx>
-
-       * erc-backend.el (erc-encode-string-for-target): If str is nil,
-       pass the empty string to erc-encode-coding-string instead, which
-       allows one to /part and /quit without providing a reason again.
-
-2005-10-03  Michael Olson  <mwolson@gnu.org>
-
-       * erc-backend.el (erc-message, erc-send-ctcp-message)
-       (erc-send-ctcp-notice): Encode string for target before sending.
-
-       * erc.el (erc-cmd-KICK, erc-cmd-PART, erc-cmd-QUIT, erc-cmd-TOPIC)
-       (erc-kill-server, erc-kill-channel): Ditto.
-
-2005-09-05  Johan BockgÃ¥rd  <bojohan@users.sourceforge.net>
-
-       * erc-page.el (erc-ctcp-query-PAGE): (message text) -> (message
-       "%s" text).
-       (erc-cmd-PAGE): Simplify regexp. Put `do-not-parse-args' t.
-
-2005-09-05  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el (erc-flood-limit, erc-flood-limit2): Remove since they
-       are no longer needed.
-       (erc-send-input): Detect whether we want flood control to be
-       active.  The previous behavior was to always force the message.
-       (erc-toggle-flood-control): Adapt to new flood control method.  No
-       more 'strict.
-       (erc-cmd-SV): Use concat rather than
-       format-time-string.
-       (erc-format-target, erc-format-target-and/or-server): Shorten
-       logic statements.
-
-       * erc-compat.el (erc-emacs-build-time): Use a string
-       representation rather than trying to coerce a time out of a string
-       on XEmacs.
-
-       * erc-identd.el (erc-identd-start): Use make-network-process
-       instead of open-network-stream.  Error out if this is not defined.
-
-       * erc-backend.el (erc-send-line): New command that sends a line
-       using flood control, using a callback for display.  It isn't used
-       yet.
-
-2005-09-04  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el: Add defvaralias and make-obsolete-variable for
-       erc-default-coding-system.
-       (channel-topic, channel-modes, channel-user-limit, channel-key,
-       invitation, away, channel-list, bad-nick): Rename globally to
-       erc-{name-of-variable}.
-
-2005-09-03  Johan BockgÃ¥rd  <bojohan@users.sourceforge.net>
-
-       * erc.el (erc-message): Simplify regexp.
-       (erc-cmd-DEOP, erc-cmd-OP): Simplify.
-
-2005-08-29  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el: Alias erc-send-command to erc-server-send.  ErBot needs
-       this to work without modification.  Add defvaralias for
-       erc-process.  Make this and the other backwards-compatibility
-       functions and variables be marked obsolete as of ERC 5.1.
-
-       * erc-backend.el: Add autoload for erc-log macro.
-       (erc-server-connect): Set some variables before defining process
-       handlers.  It probably doesn't make any difference.
-
-2005-08-26  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el: Add defvaralias for erc-announced-server-name, since
-       this seems to be widely used.
-
-2005-08-17  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el (erc): Remove unnecessary boundp check.
-
-       * erc-autoaway.el: Fix compiler warning.
-
-       * erc-backend.el (erc-server-version): Since this isn't used by
-       any code, and isn't generally useful, remove it.
-       (erc-server-send-queue): Use erc-current-time rather than
-       float-time.
-       (004): Don't set erc-server-version.
-
-       * erc-dcc.el (erc-dcc-chat-request, erc-dcc-get-parent): Move to
-       fix a compiler warning.
-
-       * erc-ibuffer.el (erc-server): Remove unnecessary boundp check.
-
-       * erc-identd.el (erc-identd-start): Use read-string instead of
-       read-input.
-
-       * erc-imenu.el (erc-unfill-notice): Use a while loop instead of
-       replace-regexp.
-
-       * erc-nicklist.el: Add conditional dependency on erc-bbdb.
-       (erc-nicklist-insert-contents): Tighten some regexps.
-
-       * erc-notify.el (erc-notify-list): Docfix.
-
-       * erc-spelling.el (erc-spelling-dictionaries): Add :type and
-       :group to silence a compiler warning.
-
-2005-08-14  Michael Olson  <mwolson@gnu.org>
-
-       * erc-backend.el (erc-session-server, erc-session-port)
-       (erc-announced-server-name, erc-server-version)
-       (erc-server-parameters): Moved here from erc.el.
-       (erc-server-last-peers): Moved, renamed from last-peers.
-       (erc-server-lag): Moved, renamed from erc-lag.
-       (erc-server-duplicates): Moved, renamed from erc-duplicates.
-       (erc-server-duplicate-timeout): Moved, renamed from
-       erc-duplicate-timeout.
-       (erc-server): New customization group hosting all options from
-       this file.
-       (erc-server-prevent-duplicates): Moved, renamed from
-       erc-prevent-duplicates.
-       (erc-server-duplicate-timeout): Moved, renamed from
-       erc-duplicate-timeout.
-       (erc-server-auto-reconnect, erc-split-line-length)
-       (erc-server-coding-system, erc-encoding-coding-alist)
-       (erc-server-connect-function, erc-server-flood-margin)
-       (erc-server-flood-penalty): Change group to 'erc-server.
-       (erc-server-send-ping-interval): Moved, renamed from
-       erc-ping-interval.
-       (erc-server-ping-handler): Moved, renamed from erc-ping-handler.
-       (erc-server-setup-periodical-server-ping): Moved, renamed from
-       erc-setup-periodical-server-ping.
-       (erc-server-connect): Add to docstring.  Move more initialization
-       here.
-       (erc-server-processing-p): Docfix.
-       (erc-server-connect): Use 'raw-text like in the original version.
-       (erc-server-filter-function): Don't reset process coding system.
-
-       * erc-stamp.el (erc-add-timestamp): If the text at point is
-       invisible, don't insert a timestamp.  Thanks to Pascal
-       J. Bourguignon for the suggestion.
-
-       * erc-match.el (erc-text-matched-hook): Don't hide fools by
-       default, but include it in the available options.
-
-2005-08-13  Michael Olson  <mwolson@gnu.org>
-
-       * erc-*.el: s/erc-send-command/erc-server-send/g.
-       s/erc-process/erc-server-process/g (sort of).  Occasional
-       whitespace and indentation fixes.
-
-       * erc-backend.el: Specify a few local variables for indentation.
-       Take one item off of the TODO list.
-       (erc-server-filter-data): Renamed from erc-previous-read.  From
-       circe.
-       (erc-server-processing-p): New variable that indicates when we're
-       currently processing a message.  From circe.
-       (erc-split-line-length): New option that gives the maximum line
-       length of a single message.  From circe.
-       (erc-default-coding-system): Moved here from erc.el.
-       (erc-split-line): Renamed from erc-split-command and taken from
-       circe.
-       (erc-connect-function, erc-connect, erc-process-sentinel-1)
-       (erc-process-sentinel, erc-flood-exceeded-p, erc-send-command)
-       (erc-message, erc-upcase-first-word, erc-send-ctcp-message)
-       (erc-send-ctcp-notice): Moved here from erc.el.
-       (erc-server-filter-function): Renamed from erc-process-filter.
-       From circe.
-       (erc-server-process): Renamed from `erc-process' and moved here
-       from erc.el.
-       (erc-server-coding-system): Renamed from
-       `erc-default-coding-system'.
-       (erc-encoding-coding-alist): Moved here from erc.el.
-       (erc-server-flood-margin, erc-server-flood-penalty):
-       (erc-server-flood-last-message, erc-server-flood-queue):
-       (erc-server-flood-timer): New options from circe that allow
-       tweaking of flood control.
-       (erc-server-connect-function): Renamed from erc-connect-function.
-       (erc-flood-exceeded-p): Removed.
-       (erc-coding-system-for-target)
-       (erc-encode-string-for-target, erc-decode-string-from-target):
-       Moved here from erc.el
-       (erc-server-send): Renamed from erc-send-command.  Adapted from
-       the circe function by the same name.
-       (erc-server-send-queue): New function from circe that implements
-       handling of a flood queue.
-       (erc-server-current-nick): Renamed from current-nick.
-       (erc-server-quitting): Renamed from `quitting'.
-       (erc-server-last-sent-time): Renamed from `last-sent-time'.
-       (erc-server-last-ping-time): Renamed from `last-ping-time'.
-       (erc-server-lines-sent): Renamed from `lines-sent'.
-       (erc-server-auto-reconnect): Renamed from `erc-auto-reconnect'.
-       (erc-server-coding-system): Docfix.
-       (erc-server-connect): Renamed from `erc-connect'.  Require SERVER
-       and PORT parameters.  Initialize several variables here.  Don't
-       set `erc-insert-marker'.  Use a per-server coding system via
-       erc-server-default-encoding.
-
-       * erc.el (erc-version-string): Changed to indicate we are running
-       the `more-backend' branch.
-       (erc-send-single-line): Implement flood control using
-       erc-split-line.
-       (erc-send-input): Move functionality of erc-send-single-line in
-       here.
-       (erc-send-single-line): Assimilated!
-       (erc-display-command, erc-display-msg): Handle display hooks.
-       (erc-auto-reconnect, current-nick, last-sent-time)
-       (last-ping-time, last-ctcp-time, erc-lines-sent, erc-bytes-sent)
-       (quitting): Moved to erc-backend.el.
-       (erc): Docfix.  Don't initialize quite so many things here.
-
-2005-08-10  Michael Olson  <mwolson@gnu.org>
-
-       * debian/copyright (Copyright): Remove notices for 4 people, since
-       they didn't contribute legally-significant changes, or have had
-       these changes overwritten.
-
-       * erc-log.el: Remove copyright notice.
-
-       * erc.el: Remove 3 copyright notices.
-
-2005-08-09  Michael Olson  <mwolson@gnu.org>
-
-       * debian/changelog: Create 5.0.4-3 package.  This doesn't serve
-       any purpose other than to thank Romain Francoise for some advice.
-
-       * Makefile (debrelease): Allow last upload and extra build options
-       to be specified.
-
-2005-08-08  Michael Olson  <mwolson@gnu.org>
-
-       * debian/changelog: Create 5.0.4-2 package.
-
-       * debian/control (Uploaders): Add Romain Francoise.
-       (Standards-Version): Update to 3.6.2.
-       (Depends): Add `emacsen'.
-
-       * debian/scripts/startup.erc (load-path): Minor whitespace fixup.
-
-       * Makefile (clean): Split target from realclean and make it remove
-       files that aren't packaged in releases.
-       (clean, release): Minor cleanups.
-       (debrelease): Use debuild rather than dpkg-buildpackage since the
-       former calls lintian.  Minor cleanups.
-       (debrelease-mwolson): New target that removes old Debian packages,
-       calls debrelease, and copies the resulting package to my dist dir.
-       (upload): New target that automates the process of uploading an
-       ERC release to sourceforge.
-
-       * erc.el (erc-mode): Use `make-local-variable' instead of
-       `make-variable-buffer-local'.
-
-2005-07-12  Michael Olson  <mwolson@gnu.org>
-
-       * debian/changelog: Build 5.0.4-1.
-
-       * Makefile (release): Prepare zip file in addition to tarball.
-
-       * NEWS: Add item for the undo fix.
-
-2005-07-09  Michael Olson  <mwolson@gnu.org>
-
-       * erc-nicklist.el (erc-nicklist-insert-contents): Check
-       erc-announced-name before erc-session-server.  Make sure that we
-       can never get a stringp (nil) error.
-       (erc-nicklist-call-erc-command): If given no command, do nothing.
-       This fixes an error that used to occur when a stray mouse click
-       was made outside of the popup window, but on the erc-nicklist
-       menu.
-
-       * erc-bbdb.el (erc-bbdb-search-name-and-create): Get rid of the
-       infinite input loop when you want to create a new record.  Replace
-       most of that with a completing read of existing nicks.  If no nick
-       is chosen, create a new John Doe record.  The net effect of this
-       is that the old behavior is re-instated, with the addition of one
-       completing read that happens when you do a /whois.
-
-2005-07-09  Johan BockgÃ¥rd  <bojohan@users.sourceforge.net>
-
-       * erc.el (erc-process-input-line): Docfix.
-       (erc-update-mode-line-buffer): Use `erc-propertize' instead of
-       `propertize'.
-       (erc-propertize): Move to erc-compat.el.
-
-       * erc-compat.el (erc-propertize): Move here from erc.el. Always
-       return a copy of the string (like `propertize' in GNU Emacs).
-
-       * erc-nicklist.el (erc-nicklist-icons-directory)
-       (erc-nicklist-voiced-position)
-       (erc-nicklist-insert-medium-name-or-icon): Docfix.
-       (erc-nicklist-insert-contents): Simplify.
-       (erc-nicklist-mode-map): Bind RET instead of `return'. Bind
-       `down-mouse-3' instead of `mouse-3'.
-       (erc-nicklist-kbd-cmd-QUERY): Cleanup regexp.
-       (erc-nicklist-channel-users-info): Docfix. Simplify.
-
-2005-07-02  Michael Olson  <mwolson@gnu.org>
-
-       * images: New directory containing the images that are used by
-       erc-nicklist.el.  These are from Gaim, and are thought to be
-       available under the terms of the GPL.
-
-       * erc-bbdb.el: Add local variables section to preserve tabs, since
-       that is the style used throughout this file.  Apply patch from
-       Edgar Gonçalves as follows.
-       (erc-bbdb-bitlbee-name-field): New variable that indicates the
-       field name to use for annotating the "displayed name" of a bitlbee
-       contact.
-       (erc-bbdb-irc-highlight-field): Docfix.
-       (erc-bbdb-search-name-and-create): Prompt the user for the name of
-       a contact if none was found.  Merge the new entries into the
-       specified contact.  If new arg SILENT is non-nil, do not prompt
-       the user for a name or offer to merge the new entry.
-       (erc-bbdb-insinuate-and-show-entry): New arg SILENT is accepted,
-       which is passed on to erc-bbdb-search-name-and-create.
-       (erc-bbdb-whois): Tell erc-bbdb-search-name-and-create to prompt
-       for name if necessary.
-       (erc-bbdb-JOIN, erb-bbdb-NICK): Forbid
-       erc-bbdb-search-name-and-create from prompting for a name.
-
-       * erc-nicklist.el: Add local variables section to preserve tabs,
-       since that is the style used throughout this file.  Apply patch
-       from Edgar Gonçalves as follows.
-       (erc-nicklist-use-icons): New option; if non-nil, display an icon
-       instead of the name of the chat medium.
-       (erc-nicklist-icons-directory): New option indicating the path to
-       the PNG files that are used for chat icons.
-       (erc-nicklist-use-icons): New option indicating whether to put
-       voiced nicks on top, bottom, or not to differentiate them.  The
-       default is to put them on the bottom.
-       (erc-nicklist-bitlbee-connected-p): New variable that indicates
-       whether or not we are currently using bitlbee.  An attempt will be
-       made to auto-detect the proper value.  This is bound in the
-       `erc-nicklist-insert-contents' function.
-       (erc-nicklist-nicklist-images-alist): New variable that maps a
-       host type to its icon.  This is set by `erc-nicklist'.
-       (erc-nicklist-insert-medium-name-or-icon): New function that
-       inserts an icon or string that identifies the current host type.
-       (erc-nicklist-search-for-nick): New function that attempts to find
-       a BBDB record that corresponds with this contact given its
-       finger-host.  If found, return its bitlbee-nick field.
-       (erc-nicklist-insert-contents): New function that inserts the
-       contents of the nick list, including text properties and images.
-       (erc-nicklist): Populate `erc-nicklist-images-alist'.  Move
-       nicklist content generation code to
-       `erc-nicklist-insert-contents'.
-       (erc-nicklist-mode-map): Map C-j to erc-nicklist-kbd-menu and RET
-       to erc-nicklist-kbd-cmd-QUERY.
-       (erc-nicklist-call-erc-command): Make use of
-       `switch-to-buffer-other-window'.
-       (erc-nicklist-cmd-QUERY): New function that opens a query buffer
-       for the given contact.
-       (erc-nicklist-kbd-cmd-QUERY): Ditto; contains most of the code.
-       (erc-nicklist-kbd-menu): New function that shows the nicklist
-       action menu.
-       (erc-nicklist-channel-users-info): Renamed from
-       `erc-nicklist-channel-nicks'.  Implement sorting voiced users.
-
-2005-06-29  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
-
-       * erc-nickserv.el (erc-nickserv-alist): Fix regexp for Azzurra.
-
-2005-06-26  Michael Olson  <mwolson@gnu.org>
-
-       * erc-autojoin.el (erc-autojoin-add, erc-autojoin-remove): Use
-       `erc-session-server' if `erc-announced-server-name' is nil.  This
-       happens when servers don't send a 004 message.
-
-       * erc.el (erc-quit-server): Ditto.
-
-       * erc-ibuffer.el (erc-server, erc-server-name): Ditto.
-
-       * erc-notify.el (erc-notify-JOIN, erc-notify-NICK)
-       (erc-notify-QUIT): Ditto.
-
-2005-06-24  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
-
-       * erc.el (erc-default-coding-system)
-       (erc-handle-user-status-change): Docstring fix.
-       (with-erc-channel-buffer): Removed.
-       (erc-ignored-reply-p): Replace `with-erc-channel-buffer' with
-       `erc-with-buffer'.
-       (erc-display-line-1): Fix broken undo.
-
-2005-06-23  Michael Olson  <mwolson@gnu.org>
-
-       * CREDITS: Add entries for Luigi Panzeri and Andreas Schwab.
-
-       * erc-nickserv.el (erc-nickserv-alist): Add entries for Azzurra
-       and OFTC.  Thanks to Luigi Panzeri and Andreas Schwab for
-       providing these.
-
-2005-06-16  Michael Olson  <mwolson@gnu.org>
-
-       * CREDITS: Add John Paul Wallington.
-
-       * erc.el: Thanks to John Paul Wallington for the following.
-       (erc-nickname-in-use): Use `string-to-number' instead of
-       `string-to-int'.
-
-       * erc-dcc.el (erc-dcc-handle-ctcp-send)
-       (erc-dcc-handle-ctcp-chat, erc-dcc-get-file)
-       (erc-dcc-chat-accept): Ditto.
-
-       * erc-identd.el (erc-identd-start): Ditto.
-
-2005-06-16  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
-
-       * erc.el (erc-mode-map): Suppress `font-lock-fontify-block' key
-       binding since it destroys face properties.
-
-2005-06-08  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el (erc-cmd-UNIGNORE): Use `erc-member-ignore-case' instead
-       of `member-ignore-case'.  Thanks to bpalmer for the heads up.
-
-2005-06-06  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el (erc-modules): Fix a mistake I made when editing this a
-       few days ago.  Modes should now be disabled properly.
-       (erc-cmd-BANLIST, erc-cmd-MASSUNBAN): Remove unnecessary call to
-       `format'.  Thanks to Andreas Schwab for reporting this.
-
-       * debian/changelog: Close "README file missing" bug.
-
-       * debian/rules (binary-erc): Install README file.
-
-2005-06-03  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el (erc-with-buffer): Set `lisp-indent-function' so Emacs
-       Lisp mode knows how to indent erc-with-buffer blocks.
-       (with-erc-channel-buffer): Ditto.
-       (erc-with-all-buffers-of-server): Ditto.
-       (erc-modules): Use pcomplete by default, not completion, since
-       erc-complete.el is deprecated.  Use `fboundp' instead of
-       `symbol-value' to check for existence of a function before calling
-       it.  This was causing an error when untoggling the `completion'
-       option and trying to save via the customize interface.
-
-       * erc-track.el (erc-modified-channels-update): If a buffer is not
-       currently connected, remove it from the modified channels list.
-       This should fix the problem where residue was left on the mode
-       line after quitting ERC.
-
-       * erc-list.el (erc-prettify-channel-list): Docfix; thanks to John
-       Paul Wallington for reporting this.
-
-2005-05-31  Michael Olson  <mwolson@gnu.org>
-
-       * debian/changelog: First draft of entries for the 5.0.3 release.
-
-       * debian/README.Debian: Note that ERC will now install correctly
-       on versions of Emacs or XEmacs that do not have the `format-spec'
-       library.  Correct some grammar and prune the content a bit.
-
-       * debian/scripts/install (emacs20): Remove line since we no longer
-       need to deal with format-spec.el.
-
-       * NEWS: Add entries for the upcoming 5.0.3 release.
-
-       * erc.el: Don't require format-spec since this is provided in
-       erc-compat.el now.
-       (erc-process-sentinel, erc-setup-periodical-server-ping): Use
-       `erc-cancel-timer' instead of `cancel-timer'.
-       (erc-version-string): Update to 5.0.3.
-
-       * erc-autoaway.el (autoaway, erc-autoaway-reestablish-idletimer):
-       Use `erc-cancel-timer' instead of `cancel-timer'.
-
-       * erc-compat.el (format-spec, format-spec-make): If we cannot load
-       the `format-spec' library, provide versions of these functions.
-       This should keep problems from surfacing with Emacs21 Debian
-       builds.
-       (erc-cancel-timer): New function created to take the place of
-       `cancel-timer' since XEmacs calls it something else.
-
-       * erc-track.el (erc-modified-channels-update): Accept any number
-       of arguments, which are ignored.  This allows it to be run from
-       `erc-disconnected-hook' without extra bother.
-       (track): Add `erc-modified-channels-update' to
-       `erc-disconnected-hook' so that the indicators are removed
-       correctly in some edge cases.
-       (erc-modified-channels-display): Make sure that we never pass nil
-       to the function in `erc-track-shorten-function'.  This happens
-       when we have deleted buffers in `erc-modified-channels-alist'.
-       Also, make sure that the buffer has a non-nil short-name before
-       adding it to the string list.  This should fix some XEmacs
-       warnings when running /quit with unchecked buffers, as well as get
-       rid of a stray buffer problem (or so it is hoped).
-
-2005-05-31  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
-
-       * erc-replace.el, erc-speak.el: Clean up comment formatting.
-
-       * erc-ring.el (ring, erc-input-ring-index, erc-clear-input-ring):
-       Clean up docstring formatting.
-
-2005-05-30  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
-
-       * erc.el (erc-cmd-BANLIST, erc-cmd-MASSUNBAN): Delete superfluous
-       arg to `format'.
-       (erc-load-irc-script): Use `insert-file-contents' instead of
-       `insert-file'. Simplify.
-
-2005-05-29  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el (erc-version-string): Move this up so that it is
-       evaluated before the `require' statements.  Not a major change.
-
-2005-04-27  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
-
-       * erc.el (erc-complete-word): Simplify.
-
-2005-04-27  Michael Olson  <mwolson@gnu.org>
-
-       * Makefile (debrelease): Use a slightly different approach when
-       removing CVS and Arch cruft.
-
-       * debian/changelog: Update for 5.0.2-1 package.
-
-2005-04-25  Michael Olson  <mwolson@gnu.org>
-
-       * erc-autoaway.el (erc-autoaway-reestablish-idletimer): Move code
-       block higher in file to fix a load failure when using Emacs21.
-       Thanks to Daniel Brockman for the report and fix.
-
-2005-04-24  Adrian Aichner  <adrian@xemacs.org>
-
-       * erc-backend.el (JOIN): save-excursion so that
-       `erc-current-logfile' inserts into the correct channel buffers
-       when using erc-log-insert-log-on-open in combination with autojoin
-       to multiple channels.
-
-2005-04-17  Adrian Aichner  <adrian@xemacs.org>
-
-       * erc-log.el: Remove stray whitespace.
-       * erc.el: Ditto.
-
-2005-04-09  Aidan Kehoe  <kehoea@parhasard.net>
-
-       * erc.el: autoload erc-select-read-args, which, because it parses
-       erc-select's args, can be called before erc.el is loaded. 
-
-2005-04-07  Edward O'Connor  <ted@oconnor.cx>
-       
-       * erc-viper.el: Remove final newlines from previously-existing ERC
-       buffers. (Minor bug fix.)
-
-2005-04-06  Michael Olson  <mwolson@gnu.org>
-
-       * Makefile (debrelease): Ignore errors from deleting Arch and CVS
-       metadata.
-
-2005-04-05  Michael Olson  <mwolson@gnu.org>
-
-       * ChangeLog, CREDITS, AUTHORS: Correct name and email address of
-       Marcelo Toledo.
-
-2005-04-04  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el (erc-modules): Add entry for spelling module.
-
-       * erc-spelling.el: Add autoload line.
-
-       * erc-backend.el: Apply latest non-ascii patch from Kai Fan.
-       (erc-decode-parsed-server-response): Search
-       erc-response.command-args for channel name.  Decode the
-       erc-response struct using this channel name as key according to
-       the `erc-encoding-coding-alist'.
-
-       * erc-track.el: Apply patch from Henrik Enberg.
-       (erc-modified-channels-object): Use optimal amount of whitespace
-       around modified channels indicator.
-
-2005-04-02  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
-
-       * erc.el (define-erc-module, erc-with-buffer)
-       (erc-with-all-buffers-of-server, with-erc-channel-buffer): Add
-       edebug-form-spec.
-
-       * erc-compat (erc-define-minor-mode): Ditto.
-
-2005-03-29  Jorgen Schaefer  <forcer@forcix.cx>
-
-       * erc-spelling.el: New file.
-
-2005-03-24  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
-
-       * erc-backend.el (define-erc-response-handler): Add
-       `definition-name' property to constructed symbols so that
-       find-function and find-variable will find them.
-
-2005-03-21  Michael Olson  <mwolson@gnu.org>
-
-       * erc-dcc.el, erc-goodies.el, erc-list.el, erc-notify.el,
-       erc-ring.el, erc.el: Copyright assignment occurred.
-
-       * debian/scripts/install: Make a shell wrapper around the original
-       Makefile and inline the Makefile.  The problem is that Debian
-       passes all the Emacs variants at once, rotating them at every
-       invocation of the install script, which happens once per variant.
-       This caused each installation to happen N-1 times more often than
-       it should have.  As a result, we need to only deal with the first
-       argument.
-       (ELFILES): Only add format-spec.el if we are compiling for
-       emacs21.  Don't filter out erc-compat.el.
-       (SITEFLAG): New variable that indicates that the "nosite" option
-       should look like.
-       (.DEFAULT): Use $(FLAVOUR) instead of $@ for clarity.
-
-       * debian/rules: Install NEWS file and compress it.
-
-       * debian/maint/postinst: Be more cautious about configuration
-       step.
-
-       * debian/copyright (Copyright): Another assignment came in.
-
-       * debian/control (Standards-Version): Update to a newer version as
-       recommended by lintian.
-
-       * debian/changelog: Changes made for the Debian package.
-
-       * debian/README.Debian: Keep only the General Notes section.
-
-       * NEWS: Move old history items here from debian/README.Debian.
-
-       * Makefile (SNAPSHOTDATE): Deprecate this option since we hope to
-       release more often.
-
-2005-03-20  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el (erc-define-catalog, `ctcp-request-to'): Fix typo (%: ->
-       %t:).
-
-2005-03-01  Michael Olson  <mwolson@gnu.org>
-
-       * erc-log.el (erc-save-buffer-in-logs): Replace tabs with spaces
-       in code indentation.
-
-2005-02-28  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el (erc-display-message): Apply corrected patch from Henrik
-       Enberg.
-
-2005-02-27  Michael Olson  <mwolson@gnu.org>
-
-       * erc.el (erc-display-message): Apply patch from Henrik Enberg.
-       Check here to see if a message should be hidden, rather than
-       relying on code in each individual command.
-       (erc-version-string): Add "(CVS)" to the version string for
-       clarity.
-
-       * erc-backend.el (JOIN, KICK, MODE, NICK, PART, QUIT, TOPIC):
-       Don't check `erc-hide-list' here.
-
-       * erc-list.el, erc-match.el, erc.el, debian/copyright: Update
-       copyright information as a few more people have assignments
-       registered.
-
-2005-02-06  Michael Olson  <mwolson@gnu.org>
-
-       * erc-backend.el: Apply patch from Kai Fan for non-ASCII character
-       support.
-       (erc-parse-server-response): Add call to
-       `erc-decode-parsed-server-response'.
-       (erc-decode-parsed-server-response): New function that decodes a
-       pre-parsed server response before it can be handled.
-       (PRIVMSG): Comment out call to `erc-decode-string-from-target'.
-       (TOPIC): Ditto.
-
-2005-02-01  Jorgen Schaefer  <forcer@users.sourceforge.net>
-
-       * erc.el (erc-process-sentinel-1): Don't reconnect on connection
-       refused. This error is reported differently when using
-       open-network-stream-nowait.
-
-2005-01-26  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el (erc-cmd-APPENDTOPIC, erc-set-topic): The control
-       character in `channel-topic' was changed to \C-o - replaced \C-c
-       with \C-o so that these functions work as expected again.
-       (erc-get-channel-mode-from-keypress): Doc fix.
-
-2005-01-25  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el, erc-button.el, erc-compat.el, erc-goodies.el,
-       erc-match.el, erc-nets.el, ChangeLog, NEWS: Merged bug fixes made
-       on release_5_0_branch since 5.0.1 release.
-
-2005-01-24  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
-
-       * erc.el (erc-input-action): Quote `erc-action-history-list' so
-       that input history actually works.
-       (erc-process-ctcp-query): Fix and simplify logic.
-       (erc-get-channel-mode-from-keypress): Use `C-' string syntax.
-       (erc-load-irc-script-lines): Use `erc-command-indicator' instead
-       of `erc-prompt'.
-
-2005-01-23  Edward O'Connor  <ted@oconnor.cx>
-       
-       * erc-viper.el: Ensure that `viper-comint-mode-hook' runs in
-       buffers whose `erc-mode-hook' has already run when this file is
-       loaded.
-       Explicitly `require' erc.el.
-
-2005-01-22  Edward O'Connor  <ted@oconnor.cx>
-       
-       * erc.el (erc-mode): Remove frobbing of `require-final-newline'.
-
-       * erc-log.el (erc-save-buffer-in-logs): Remove frobbing of
-       `require-final-newline'.
-
-       * erc-viper.el: New file. This is where all ERC/Viper
-       compatiibilty code should live. When and if ERC is bundled with
-       Emacs, some of the hacks in this file should be merged into Viper
-       itself.
-
-2005-01-21  Edward O'Connor  <ted@oconnor.cx>
-       
-       * erc.el (erc-mode): Set `require-final-newline' to nil in ERC
-       buffers. This prevents a Viper misfeature whereby extraneous
-       newlines are inserted into the ERC buffer when switching between
-       viper states.
-
-       * erc-log.el (erc-save-buffer-in-logs): Bind `require-final-newline'
-       to t when calling `write-region' to ensure that further log
-       entries start on fresh lines.
-       
-2005-01-21  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-button.el (erc-button-add-face): Reverted my change to the
-       order faces since it had the unwanted effect of putting the button
-       face after all others.
-       (erc-button-face-has-priority): Removed this variable as it is not
-       necessary anymore - it was used to compensate for the above
-       mentioned change.
-
-       * NEWS: Added the latest fixes.
-
-2005-01-20  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-button.el, erc-match.el:
-       (erc-button-syntax-table, erc-match-syntax-table): Added \ as a
-       legal character for nicknames.
-
-       * erc-nets.el (erc-server-select): Fixed so that only networks
-       with servers found in `erc-server-alist' are available as choices.
-
-       * erc.el, erc-compat.el, erc-goodies.el:
-       (erc-replace-match-subexpression-in-string): New function.  Needed
-       because `replace-match' in XEmacs doesn't replace regular
-       expression subexpressions in strings, only in buffers.
-       (erc-seconds-to-string, erc-controls-interpret): Use the new
-       function.
-
-       * erc-button.el (erc-button-add-button): Use the `:button-face'
-       key combined with an `erc-mode' local `widget-button-face' set to
-       nil to get the widget overlay face suppressed in XEmacs.
-
-2005-01-19  Francis Litterio  <franl@world.std.com>
-
-       * erc-button.el (erc-button-add-face): The face added by this
-       function is more important than the existing text's face, so we
-       now prepend erc-button-face to the list of existing faces when
-       adding a button.  To instead append erc-button-face to existing
-       faces, set variable `erc-button-face-has-priority' to nil.
-       (erc-button-face-has-priority): New variable to control how
-       erc-button-add-face adds erc-button-face to existing faces.
-       (erc-button-press-button): Silenced a byte-compiler warning about
-       too few arguments in a call to `error'.
-
-2005-01-19  Diane Murray  <disumu@x3y2z1.net>
-
-       * NEWS: Added list of 5.0.1 fixes.
-
-2005-01-19  Michael Olson  <mwolson@gnu.org>
-
-       * AUTHORS: Move to format that cscvs can understand.  As an added
-       perk, entries line up nicer.
-
-       * erc.el, erc-fill.el, erc-pcomplete.el, debian/copyright: Merge a
-       few more copyright lines thanks to Alex Schroeder's BBDB file.
-
-       * Makefile: Change version to correspond with our new scheme.
-
-2005-01-18  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-list.el (erc-chanlist-channel-line-regexp): Now matches
-       private channels, the channels `#' and `&', and channels with
-       names including non-ascii characters.
-       (erc-chanlist-join-channel): Don't attempt to join private
-       channels since the channel name is unknown.
-
-       * erc-goodies.el (erc-make-read-only): Add `rear-nonsticky'
-       property to avoid `Text is read-only' errors during connection.
-       `front-nonsticky' does not exist, changed to `front-sticky'.
-       (erc-controls-interpret, erc-controls-strip): Just work on the
-       string, don't open a temporary buffer.
-       (erc-controls-propertize): Now accepts optional argument STR.
-
-2005-01-17  Michael Olson  <mwolson@gnu.org>
-
-       * Makefile: Version is 5.01, but only in the Makefile.  It has not
-       been released yet.
-
-       * erc-auto.in, erc-autojoin.el, erc-bbdb.el, erc-button.el,
-       erc-chess.el, erc-complete.el, erc-dcc.el, erc-fill.el,
-       erc-goodies.el, erc-ibuffer.el, erc-identd.el, erc-imenu.el,
-       erc-list.el, erc-match.el, erc-menu.el, erc-nets.el,
-       erc-netsplit.el, erc-nickserv.el, erc-notify.el, erc-pcomplete.el,
-       erc-ring.el, erc-speak.el, erc-speedbar.el, erc-stamp.el,
-       erc-track.el, erc-xdcc.el, erc.el, debian/copyright: Update
-       copyright notices.  If anyone has signed papers for Emacs in
-       general, merge them with the FSF's entry.
-
-2005-01-16  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el (erc): `erc-set-active-buffer' was being called before
-       `erc-process' was set, so that channels weren't being marked
-       active correctly upon join; fixed.
-
-2005-01-15  Johan BockgÃ¥rd  <bojohan+sf@dd.chalmers.se>
-
-       * erc-backend.el (def-edebug-spec): This macro caused problems (in
-       XEmacs). Use its expansion directly.
-
-2005-01-15  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-button.el (erc-button-add-button): Reverted previous change
-       since `:suppress-face' doesn't seem to be checked for a certain
-       face.
-       (erc-button-add-face): FACE is now appended to the `old' face.
-       This should fix the problem of faces being "covered" by
-       `erc-button-face'.
-
-2005-01-14  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el, erc-backend.el (erc-cmd-OPS, erc-cmd-COUNTRY,
-       erc-cmd-NICK, erc-process-ctcp-query, ERROR, PONG, 311, 312, 313,
-       314, 317, 319, 320, 321, 322, 330, 352): Use catalog entries
-       instead of hard-coded text messages.
-       (english): Added new catalog entries `country', `country-unknown',
-       `ctcp-empty', `ctcp-request-to', `ctcp-too-many', `nick-too-long',
-       `ops', `ops-none', `ERROR', `PONG', `s311', `s312', `s313',
-       `s314', `s317', `s317-on-since', `s319', `s320', `s321', `s322',
-       `s330', and `s352'.
-       (erc-send-current-line): Use `erc-set-active-buffer' (change was
-       lost in previous bug fix).
-
-2005-01-14  Francis Litterio  <franl@world.std.com>
-
-       * erc-button.el (erc-button-add-button): Fixed a bug where the
-       overlay created by widget-convert-button has a `face' property
-       that hides the `face' property set on the underlying button text.
-
-       * erc-goodies.el: Docstring fix.
-
-       * erc-button.el: Improved docstring for variable erc-button-face.
-
-2005-01-13  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-menu.el (erc-menu-definition): "Topic set by channel
-       operator": Small word change.  "Identify to NickServ...": Check
-       that we're connected to the server.  Added "Save buffer in log"
-       and "Truncate buffer".
-
-2005-01-13  Lawrence Mitchell  <wence@gmx.li>
-
-       * erc.el (erc-display-line-1): Widen before we try to insert
-       anything, this makes sure input isn't broken when the buffer is
-       narrowed by the user.
-       (erc-beg-of-input-line): Simplify, just return the position of
-       `erc-insert-marker' or error if does not exist.
-       (erc-send-current-line): Widen before trying to send anything.
-
-2005-01-13  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc.el, erc-backend.el, erc-list.el:
-       (erc-update-mode-line-buffer): Strip controls characters from
-       `channel-topic' since we add our own control character to it.
-       (TOPIC, 332): Use \C-o instead of \C-c to force an end of IRC
-       control characters as it also ends bold, underline, and inverse -
-       \C-c only ends colors.
-       (erc-chanlist-322): Strip control characters from channel and
-       topic.  No need to interpret controls when we're applying overlays
-       to the lines.
-
-       * erc.el, erc-backend.el, erc-button.el, erc-netsplit.el,
-       erc-nicklist.el: Fixed so that each server has an active buffer.
-       (erc-active-buffer): Now a buffer-local variable.
-       (erc-active-buffer, erc-set-active-buffer): New functions.
-       (erc-display-line, erc-echo-notice-in-active-non-server-buffer,
-       erc-process-away, MODE): Call `erc-active-buffer' to get the
-       active buffer for the current server.
-       (erc, erc-process-sentinel-1, erc-grab-region, erc-input-action,
-       erc-send-current-line, erc-invite-only-mode,
-       erc-toggle-channel-mode, erc-channel-names, MODE, erc-nick-popup,
-       erc-nicklist-call-erc-command): Use `erc-set-active-buffer' to set
-       the active buffer for the current server.
-       (erc-cmd-WHOLEFT): Use 'active as BUFFER in `erc-display-message'.
-
-       * erc-track.el (erc-track-modified-channels): Server buffers are
-       now treated the same as channels and queries.  This means that
-       `erc-track-priority-faces-only', `erc-track-exclude', and
-       `erc-track-exclude-types' now work with server buffers.
-
-2005-01-12  Diane Murray  <disumu@x3y2z1.net>
-
-       * erc-backend.el (475): Prompt for the channel's key if
-       `erc-prompt-for-channel-key' is non-nil.  Send a new JOIN message
-       with the key if a key is provided.
-
-       * erc.el (erc-command-indicator): Fixed customization choices so
-       that there's no `mismatch' message when nil is the value.
-
-2005-01-11  Michael Olson  <mwolson@gnu.org>
-
-       * erc-bbdb.el (bbdb): Lowercase the name of the module.  This
-       fixes a bug which caused an error to occur when trying to enable
-       the module using the customization interface.
-
-2005-01-08  Edward O'Connor  <ted@oconnor.cx>
-
-       * erc-track.el: Support using faces to indicate channel activity
-       in the modeline under XEmacs.
-       (erc-modified-channels-object): New function.
-       (erc-modified-channels-display): Use it.
-       `erc-modified-channels-string' renamed to
-       `erc-modified-channels-object' (because it's no longer a string on
-       XEmacs). The new function `erc-modified-channels-object' is used
-       to generate updated values for the same-named variable.
-
-2005-01-08  Diane Murray <disumu@x3y2z1.net>
-
-       * ChangeLog.2002: Changed instances of my sourceforge username and
-       email address to real name and email.
-
-       * erc.el (erc-modules): Changed customization tag descriptions, so
-       that they all start with a verb; added new modules to choices.
-
-2005-01-08  Mario Lang  <mlang@delysid.org>
-
-       * debian/rules: Introduce new variable DOCDIR to simplify stuff a
-       bit.
-
-2005-01-08  Michael Olson  <mwolson@gnu.org>
-
-       * AUTHORS, ChangeLog.2004: Change bpalmer's email address as
-       requested.
-
-       * CREDITS: Add everyone who is mentioned in the ChangeLogs.
-
-       * debian/copyright (Copyright): Add last few people.  This can now
-       be considered a complete list, as far as CVS entries are
-       concerned.  If people have assigned copyright to the FSF, merge
-       them with the entry for the FSF.
-
-       * debian/README.Debian: Add entry for XEmacs-related change in
-       `erc-track.el'.
-
-       * erc.el (erc-cmd-MODE): New command that changes or displays the
-       mode for a channel or user.  The functionality was present before
-       this change, but there was no documentation for it.
-
-       * erc-auto.in, erc-*.el: Fully investigate copyright headers and
-       change them appropriately.  If a file has been pulled off of
-       erc.el at one time, keep track of copyright from the time of
-       separation, but not before.  If a file has been derived from a
-       work outside of erc, keep copyright statements in place.
-
-       * Makefile (VERSION): Change to 5.0! :^) Congrats on all the great
-       work.  I'll wait until hober commits his XEmacs compatibility
-       patch to erc-track.el, and then release.
-       (distclean): Alias for `realclean' target.
-
-2005-01-07  Michael Olson  <mwolson@gnu.org>
-
-       * AUTHORS: Add Marcelo Toledo, who has CVS access to this project.
-
-       * ChangeLog.2004: Add my name to my one contribution to erc last
-       year.
-
-       * CREDITS: Add people that were discovered while scouring
-       ChangeLogs.
-
-       * debian/copyright: Add everyone from `AUTHORS' to Upstream
-       Authors.  Anyone who has contributed 15 or more lines of
-       code (according to ChangeLogs) is listed in Copyright section.
-       Accurate years are included.
-
-       * debian/README.Debian: Paste content of NEWS and reformat
-       slightly.
-
-       * debian/rules: Concatenate the ChangeLogs during the Debian
-       install process and then gzip them.
-
-       * Makefile (MISC): Add ChangeLog.yyyy files to list.
-       (ChangeLog): Remove rule since we do not dynamically generate the
-       ChangeLog anymore.
-
-       * MkChangeLog: Removed since we do not use it to generate the
-       ChangeLog anymore.  cvs2cl does a much better job anyway.
-
-       * NEWS: Use 3rd level heading instead of bullets for lists that
-       contain descriptions.
-
-2005-01-07  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-list.el: Require 'sort.
-       (erc-chanlist): Disable undo in the channel list buffer.
-
-       * erc.el, erc-menu.el: The `IRC' menu is now automatically added
-       to the menu-bar.  Add the call to `easy-menu-add' to
-       `erc-mode-hook' when running in XEmacs (without this the menu
-       doesn't appear).
-
-       * NEWS: Added the information from
-       http://emacswiki.org/cgi-bin/wiki/ErcCvsFeatures and the newer
-       changes which weren't yet documented on that page.
-
-2005-01-06  Hoan Ton-That  <hoan@ton-that.org>
-
-       * erc-log.el (erc-current-logfile): Only downcase the logfile
-       name, not the whole filename.  Also expand relative to
-       `erc-log-channels-directory'.
-       (erc-generate-log-file-name-with-date)
-       (erc-generate-log-file-name-short)
-       (erc-generate-log-file-name-long): Don't expand filename, done in
-       `erc-current-logfile'.
-
-2005-01-06  Lawrence Mitchell  <wence@gmx.li>
-
-       * NEWS: New file, details user visible changes from version to
-       version.
-
-       * HACKING (NEWS entries): Mention NEWS file, and what its purpose
-       is.
-
-2005-01-05  Michael Olson  <mwolson@gnu.org>
-
-       * FOR-RELEASE: New file containing the list of release-critical
-       tasks.  Feel free to add to it.
-
-       * debian/rules (binary-erc): Add ChangeLog files.
-
-2005-01-04  Michael Olson  <mwolson@gnu.org>
-
-       * ChangeLog.2001, ChangeLog.2002, ChangeLog.2003, ChangeLog.2004:
-       ChangeLog entries from previous years.
-
-       * ChangeLog: New file containing ChangeLog entries for the current
-       year.  Please update this file manually whenever a change is
-       committed.  This is a new policy.
-
-       * AUTHORS: Add myself to list.  Some entries were space-delimited
-       instead of TAB-delimited, and since the latter seemed to be the
-       default, make the other entries conform.
-
-       * HACKING (ChangeLog Entries): Update section to reflect new
-       policy toward ChangeLog entries, which is that they should be
-       manually updated whenever a change is committed.
-
-2005-01-04  Diane Murray <disumu@x3y2z1.net>
-
-       * erc.el (erc-connection-established, erc-login): Update the
-       mode-line.
-       (erc-update-mode-line-buffer): If `erc-current-nick' returns nil,
-       use an empty string for ?n character in format spec.  Set
-       `mode-line-process' to ":connecting" while the connection is being
-       established.
-
-2005-01-04  Lawrence Mitchell <wence@gmx.li>
-
-       * AUTHORS: Update list of authors.
-
-2005-01-02  Diane Murray <disumu@x3y2z1.net>
-
-       * erc-goodies.el (erc-control-characters): New customization
-       group.
-       (erc-interpret-controls-p): Small fix, addition to
-       documentation. Updated customization to allow 'remove as a value.
-       Use 'erc-control-characters as `:group'.
-       (erc-interpret-mirc-color): Use 'erc-control-characters as
-       `:group'.
-       (erc-beep-p): Updated documentation.  Use 'erc-control-characters
-       as `:group'.
-       (define-erc-module irccontrols): Add `erc-controls-highlight' to
-       `erc-insert-modify-hook' and `erc-send-modify-hook' since it
-       changes the text's appearance.
-       (erc-controls-remove-regexp, erc-controls-interpret-regexp): New
-       variables.
-       (erc-controls-highlight): Fixed so that highlighting works even if
-       there is no following control character.  Fixed mirc color
-       highlighting; now respecting `erc-interpret-mirc-color'.  Fixed a
-       bug where emacs would get stuck in a loop when \C-g was in a
-       message and `erc-beep-p' was set to nil (default setting).
-
-See ChangeLog.2004 for earlier changes.
-
-    Copyright (C) 2005 Free Software Foundation, Inc.
-  Copying and distribution of this file, with or without modification,
-  are permitted provided the copyright notice and this notice are preserved.
-
-;; Local Variables:
-;; coding: utf-8
-;; End:
-
-;; arch-tag: 70f1733a-3e2f-43c2-91c3-d9ace93f82ba
diff --git a/lisp/erc/erc-autojoin.el b/lisp/erc/erc-autojoin.el
deleted file mode 100644 (file)
index 06b1547..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-;;; erc-autojoin.el --- autojoin channels on connect and reconnects
-
-;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
-
-;; Author: Alex Schroeder <alex@gnu.org>
-;; Keywords: irc
-;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcAutoJoin
-
-;; This file is part of GNU Emacs.
-
-;; GNU Emacs is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; GNU Emacs is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
-
-;;; Commentary:
-
-;; This allows us to customize an `erc-autojoin-channels-alist'.  As
-;; we /JOIN and /PART channels, this alist is updated to reflect our
-;; current setup, so that when we reconnect, we rejoin the same
-;; channels.  The alist can be customized, so that the customized
-;; value will be used when we reconnect in our next Emacs session.
-
-;;; Code:
-
-(require 'erc)
-(eval-when-compile (require 'cl))
-
-(defgroup erc-autojoin nil
-  "Enable autojoining."
-  :group 'erc)
-
-;;;###autoload (autoload 'erc-autojoin-mode "erc-autojoin" nil t)
-(define-erc-module autojoin nil
-  "Makes ERC autojoin on connects and reconnects."
-  ((add-hook 'erc-after-connect 'erc-autojoin-channels)
-   (add-hook 'erc-server-JOIN-functions 'erc-autojoin-add)
-   (add-hook 'erc-server-PART-functions 'erc-autojoin-remove))
-  ((remove-hook 'erc-after-connect 'erc-autojoin-channels)
-   (remove-hook 'erc-server-JOIN-functions 'erc-autojoin-add)
-   (remove-hook 'erc-server-PART-functions 'erc-autojoin-remove)))
-
-(defcustom erc-autojoin-channels-alist nil
-  "Alist of channels to autojoin on IRC networks.
-Every element in the alist has the form (SERVER . CHANNELS).
-SERVER is a regexp matching the server, and channels is the
-list of channels to join.
-
-Customize this variable to set the value for your first connect.
-Once you are connected and join and part channels, this alist
-keeps track of what channels you are on, and will join them
-again when you get disconnected.  When you restart Emacs, however,
-those changes are lost, and the customization you saved the last
-time is used again."
-  :group 'erc-autojoin
-  :type '(repeat (cons :tag "Server"
-                      (regexp :tag "Name")
-                      (repeat :tag "Channels"
-                              (string :tag "Name")))))
-
-(defcustom erc-autojoin-domain-only t
-  "Truncate host name to the domain name when joining a server.
-If non-nil, and a channel on the server a.b.c is joined, then
-only b.c is used as the server for `erc-autojoin-channels-alist'.
-This is important for networks that redirect you to other
-servers, presumably in the same domain."
-  :group 'erc-autojoin
-  :type 'boolean)
-
-(defun erc-autojoin-channels (server nick)
-  "Autojoin channels in `erc-autojoin-channels-alist'."
-  (dolist (l erc-autojoin-channels-alist)
-    (when (string-match (car l) server)
-      (dolist (chan (cdr l))
-       (erc-server-send (concat "join " chan))))))
-
-(defun erc-autojoin-add (proc parsed)
-  "Add the channel being joined to `erc-autojoin-channels-alist'."
-  (let* ((chnl (erc-response.contents parsed))
-        (nick (car (erc-parse-user (erc-response.sender parsed))))
-        (server (with-current-buffer (process-buffer proc)
-                  (or erc-server-announced-name erc-session-server))))
-    (when (erc-current-nick-p nick)
-      (when (and erc-autojoin-domain-only
-                (string-match "[^.]+\\.\\([^.]+\\.[^.]+\\)$" server))
-       (setq server (match-string 1 server)))
-      (let ((elem (assoc server erc-autojoin-channels-alist)))
-       (if elem
-           (unless (member chnl (cdr elem))
-             (setcdr elem (cons chnl (cdr elem))))
-         (setq erc-autojoin-channels-alist
-               (cons (list server chnl)
-                     erc-autojoin-channels-alist))))))
-  ;; We must return nil to tell ERC to continue running the other
-  ;; functions.
-  nil)
-
-;; (erc-parse-user "kensanata!~user@dclient217-162-233-228.hispeed.ch")
-
-(defun erc-autojoin-remove (proc parsed)
-  "Remove the channel being left from `erc-autojoin-channels-alist'."
-  (let* ((chnl (car (erc-response.command-args parsed)))
-        (nick (car (erc-parse-user (erc-response.sender parsed))))
-        (server (with-current-buffer (process-buffer proc)
-                  (or erc-server-announced-name erc-session-server))))
-    (when (erc-current-nick-p nick)
-      (when (and erc-autojoin-domain-only
-                (string-match "[^.]+\\.\\([^.]+\\.[^.]+\\)$" server))
-       (setq server (match-string 1 server)))
-      (let ((elem (assoc server erc-autojoin-channels-alist)))
-       (when elem
-         (setcdr elem (delete chnl (cdr elem)))
-         (unless (cdr elem)
-           (setq erc-autojoin-channels-alist
-                 (delete elem erc-autojoin-channels-alist)))))))
-  ;; We must return nil to tell ERC to continue running the other
-  ;; functions.
-  nil)
-
-(provide 'erc-autojoin)
-
-;;; erc-autojoin.el ends here
-;;
-;; Local Variables:
-;; indent-tabs-mode: t
-;; tab-width: 8
-;; End:
-
-;; arch-tag: d62d8b15-8e31-49d6-8a73-12f11e717414
diff --git a/lisp/erc/erc-complete.el b/lisp/erc/erc-complete.el
deleted file mode 100644 (file)
index dd01301..0000000
+++ /dev/null
@@ -1,221 +0,0 @@
-;;; erc-complete.el --- Provides Nick name completion for ERC
-
-;; Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
-
-;; Author: Alex Schroeder <alex@gnu.org>
-;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcCompletion
-
-;; This file is part of GNU Emacs.
-
-;; GNU Emacs is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; GNU Emacs is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
-
-;;; Commentary:
-
-;; This file is obsolete.  Use completion from erc-pcomplete instead.
-;; This file is based on hippie-expand, while the new file is based on
-;; pcomplete.  There is no autoload cookie in this file.  If you want
-;; to use the code in this file, add the following to your ~/.emacs:
-
-;; (autoload 'erc-complete "erc-complete" "Complete nick at point." t)
-
-;;; Code:
-
-(require 'erc)
-(require 'erc-match); for erc-pals
-(require 'hippie-exp); for the hippie expand stuff
-
-;;;###autoload
-(defun erc-complete ()
-  "Complete nick at point.
-See `erc-try-complete-nick' for more technical info.
-This function is obsolete, use `erc-pcomplete' instead."
-  (interactive)
-  (let ((hippie-expand-try-functions-list '(erc-try-complete-nick)))
-    (hippie-expand nil)))
-
-(defgroup erc-old-complete nil
-  "Nick completion.  Obsolete, use erc-pcomplete instead."
-  :group 'erc)
-
-(defcustom erc-nick-completion 'all
-  "Determine how the list of nicks is determined during nick completion.
-See `erc-complete-nick' for information on how to activate this.
-
-pals:   Use `erc-pals'.
-all:    All channel members.
-
-You may also provide your own function that returns a list of completions.
-One example is `erc-nick-completion-exclude-myself',
-or you may use an arbitrary lisp expression."
-  :type '(choice (const :tag "List of pals" pals)
-                (const :tag "All channel members" all)
-                (const :tag "All channel members except yourself"
-                       erc-nick-completion-exclude-myself)
-                (repeat :tag "List" (string :tag "Nick"))
-                function
-                sexp)
-  :group 'erc-old-complete)
-
-(defcustom erc-nick-completion-ignore-case t
-  "*Non-nil means don't consider case significant in nick completion.
-Case will be automatically corrected when non-nil.
-For instance if you type \"dely TAB\" the word completes and changes to
-\"delYsid\"."
-  :group 'erc-old-complete
-  :type 'boolean)
-
-(defun erc-nick-completion-exclude-myself ()
-  "Get a list of all the channel members except you.
-
-This function returns a list of all the members in the channel, except
-your own nick.  This way if you're named foo and someone is called foobar,
-typing \"f o TAB\" will directly give you foobar.  Use this with
-`erc-nick-completion'."
-  (remove
-   (erc-current-nick)
-   (erc-get-channel-nickname-list)))
-
-(defcustom erc-nick-completion-postfix ": "
-  "*When `erc-complete' is used in the first word after the prompt,
-add this string when a unique expansion was found."
-  :group 'erc-old-complete
-  :type 'string)
-
-(defun erc-command-list ()
-  "Returns a list of strings of the defined user commands."
-  (let ((case-fold-search nil))
-    (mapcar (lambda (x)
-             (concat "/" (downcase (substring (symbol-name x) 8))))
-           (apropos-internal "erc-cmd-[A-Z]+"))))
-
-(defun erc-try-complete-nick (old)
-  "Complete nick at point.
-This is a function to put on `hippie-expand-try-functions-list'.
-Then use \\[hippie-expand] to expand nicks.
-The type of completion depends on `erc-nick-completion'."
-  (cond ((eq erc-nick-completion 'pals)
-        (try-complete-erc-nick old erc-pals))
-       ((eq erc-nick-completion 'all)
-        (try-complete-erc-nick old (append
-                                    (erc-get-channel-nickname-list)
-                                    (erc-command-list))))
-       ((functionp erc-nick-completion)
-        (try-complete-erc-nick old (funcall erc-nick-completion)))
-       (t
-        (try-complete-erc-nick old erc-nick-completion))))
-
-(defvar try-complete-erc-nick-window-configuration nil
-  "The window configuration for `try-complete-erc-nick'.
-When called the first time, a window config is stored here,
-and when completion is done, the window config is restored
-from here.  See `try-complete-erc-nick-restore' and
-`try-complete-erc-nick'.")
-
-(defun try-complete-erc-nick-restore ()
-  "Restore window configuration."
-  (if (not try-complete-erc-nick-window-configuration)
-      (when (get-buffer "*Completions*")
-       (delete-windows-on "*Completions*"))
-    (set-window-configuration
-     try-complete-erc-nick-window-configuration)
-    (setq try-complete-erc-nick-window-configuration nil)))
-
-(defun try-complete-erc-nick (old completions)
-  "Try to complete current word depending on `erc-try-complete-nick'.
-The argument OLD has to be nil the first call of this function, and t
-for subsequent calls (for further possible completions of the same
-string).  It returns t if a new completion is found, nil otherwise.  The
-second argument COMPLETIONS is a list of completions to use.  Actually,
-it is only used when OLD is nil.  It will be copied to `he-expand-list'
-on the first call.  After that, it is no longer used.
-Window configurations are stored in
-`try-complete-erc-nick-window-configuration'."
-  (let (expansion
-       final
-       (alist (if (consp (car completions))
-                  completions
-                (mapcar (lambda (s)
-                          (if (and (erc-complete-at-prompt)
-                                   (and (not (= (length s) 0))
-                                        (not (eq (elt s 0) ?/))))
-                              (list (concat s erc-nick-completion-postfix))
-                            (list (concat s " "))))
-                        completions))) ; make alist if required
-       (completion-ignore-case erc-nick-completion-ignore-case))
-    (he-init-string (he-dabbrev-beg) (point))
-    ;; If there is a string to complete, complete it using alist.
-    ;; expansion is the possible expansion, or t.  If expansion is t
-    ;; or if expansion is the "real" thing, we are finished (final is
-    ;; t).  Take care -- expansion can also be nil!
-    (unless (string= he-search-string "")
-      (setq expansion (try-completion he-search-string alist)
-           final (or (eq t expansion)
-                     (and expansion
-                          (eq t (try-completion expansion alist))))))
-    (cond ((not expansion)
-          ;; There is no expansion at all.
-          (try-complete-erc-nick-restore)
-          (he-reset-string)
-          nil)
-         ((eq t expansion)
-          ;; The user already has the correct expansion.
-          (try-complete-erc-nick-restore)
-          (he-reset-string)
-          t)
-         ((and old (string= expansion he-search-string))
-          ;; This is the second time around and nothing changed,
-          ;; ie. the user tried to expand something incomplete
-          ;; without making a choice -- hitting TAB twice, for
-          ;; example.
-          (try-complete-erc-nick-restore)
-          (he-reset-string)
-          nil)
-         (final
-          ;; The user has found the correct expansion.
-          (try-complete-erc-nick-restore)
-          (he-substitute-string expansion)
-          t)
-         (t
-          ;; We found something but we are not finished.  Show a
-          ;; completions buffer.  Substitute what we found and return
-          ;; t.
-          (setq try-complete-erc-nick-window-configuration
-                (current-window-configuration))
-          (with-output-to-temp-buffer "*Completions*"
-            (display-completion-list (all-completions he-search-string alist)))
-          (he-substitute-string expansion)
-          t))))
-
-(defun erc-at-beginning-of-line-p (point &optional bol-func)
-  (save-excursion
-    (funcall (or bol-func
-                'erc-bol))
-    (equal point (point))))
-
-(defun erc-complete-at-prompt ()
-  "Returns t if point is directly after `erc-prompt' when doing completion."
-  (erc-at-beginning-of-line-p (he-dabbrev-beg)))
-
-(provide 'erc-complete)
-
-;;; erc-complete.el ends here
-;;
-;; Local Variables:
-;; indent-tabs-mode: t
-;; tab-width: 8
-;; End:
-
-;; arch-tag: 3be13ee8-8fdb-41ab-83c2-6582c757b91e
diff --git a/lisp/erc/erc-hecomplete.el b/lisp/erc/erc-hecomplete.el
new file mode 100644 (file)
index 0000000..763d75c
--- /dev/null
@@ -0,0 +1,225 @@
+;;; erc-hecomplete.el --- Provides Nick name completion for ERC
+
+;; Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
+
+;; Author: Alex Schroeder <alex@gnu.org>
+;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcCompletion
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation; either version 2, or (at your option)
+;; any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING.  If not, write to the
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
+
+;;; Commentary:
+
+;; This file is considered obsolete.  It is recommended to use
+;; completion from erc-pcomplete instead.
+
+;; This file is based on hippie-expand, while the new file is based on
+;; pcomplete.
+
+;;; Code:
+
+(require 'erc)
+(require 'erc-match); for erc-pals
+(require 'hippie-exp); for the hippie expand stuff
+
+;;;###autoload (autoload 'erc-hecomplete-mode "erc-hecomplete" nil t)
+(define-erc-module hecomplete nil
+  "Complete nick at point."
+  ((add-hook 'erc-complete-functions 'erc-hecomplete))
+  ((remove-hook 'erc-complete-functions 'erc-hecomplete)))
+
+(defun erc-hecomplete ()
+  "Complete nick at point.
+See `erc-try-complete-nick' for more technical info.
+This function is obsolete, use `erc-pcomplete' instead."
+  (interactive)
+  (let ((hippie-expand-try-functions-list '(erc-try-complete-nick)))
+    (hippie-expand nil)))
+
+(defgroup erc-hecomplete nil
+  "Nick completion.  It is recommended to use erc-pcomplete instead."
+  :group 'erc)
+
+(defcustom erc-nick-completion 'all
+  "Determine how the list of nicks is determined during nick completion.
+See `erc-complete-nick' for information on how to activate this.
+
+pals:   Use `erc-pals'.
+all:    All channel members.
+
+You may also provide your own function that returns a list of completions.
+One example is `erc-nick-completion-exclude-myself',
+or you may use an arbitrary lisp expression."
+  :type '(choice (const :tag "List of pals" pals)
+                (const :tag "All channel members" all)
+                (const :tag "All channel members except yourself"
+                       erc-nick-completion-exclude-myself)
+                (repeat :tag "List" (string :tag "Nick"))
+                function
+                sexp)
+  :group 'erc-hecomplete)
+
+(defcustom erc-nick-completion-ignore-case t
+  "*Non-nil means don't consider case significant in nick completion.
+Case will be automatically corrected when non-nil.
+For instance if you type \"dely TAB\" the word completes and changes to
+\"delYsid\"."
+  :group 'erc-hecomplete
+  :type 'boolean)
+
+(defun erc-nick-completion-exclude-myself ()
+  "Get a list of all the channel members except you.
+
+This function returns a list of all the members in the channel, except
+your own nick.  This way if you're named foo and someone is called foobar,
+typing \"f o TAB\" will directly give you foobar.  Use this with
+`erc-nick-completion'."
+  (remove
+   (erc-current-nick)
+   (erc-get-channel-nickname-list)))
+
+(defcustom erc-nick-completion-postfix ": "
+  "*When `erc-complete' is used in the first word after the prompt,
+add this string when a unique expansion was found."
+  :group 'erc-hecomplete
+  :type 'string)
+
+(defun erc-command-list ()
+  "Returns a list of strings of the defined user commands."
+  (let ((case-fold-search nil))
+    (mapcar (lambda (x)
+             (concat "/" (downcase (substring (symbol-name x) 8))))
+           (apropos-internal "erc-cmd-[A-Z]+"))))
+
+(defun erc-try-complete-nick (old)
+  "Complete nick at point.
+This is a function to put on `hippie-expand-try-functions-list'.
+Then use \\[hippie-expand] to expand nicks.
+The type of completion depends on `erc-nick-completion'."
+  (cond ((eq erc-nick-completion 'pals)
+        (try-complete-erc-nick old erc-pals))
+       ((eq erc-nick-completion 'all)
+        (try-complete-erc-nick old (append
+                                    (erc-get-channel-nickname-list)
+                                    (erc-command-list))))
+       ((functionp erc-nick-completion)
+        (try-complete-erc-nick old (funcall erc-nick-completion)))
+       (t
+        (try-complete-erc-nick old erc-nick-completion))))
+
+(defvar try-complete-erc-nick-window-configuration nil
+  "The window configuration for `try-complete-erc-nick'.
+When called the first time, a window config is stored here,
+and when completion is done, the window config is restored
+from here.  See `try-complete-erc-nick-restore' and
+`try-complete-erc-nick'.")
+
+(defun try-complete-erc-nick-restore ()
+  "Restore window configuration."
+  (if (not try-complete-erc-nick-window-configuration)
+      (when (get-buffer "*Completions*")
+       (delete-windows-on "*Completions*"))
+    (set-window-configuration
+     try-complete-erc-nick-window-configuration)
+    (setq try-complete-erc-nick-window-configuration nil)))
+
+(defun try-complete-erc-nick (old completions)
+  "Try to complete current word depending on `erc-try-complete-nick'.
+The argument OLD has to be nil the first call of this function, and t
+for subsequent calls (for further possible completions of the same
+string).  It returns t if a new completion is found, nil otherwise.  The
+second argument COMPLETIONS is a list of completions to use.  Actually,
+it is only used when OLD is nil.  It will be copied to `he-expand-list'
+on the first call.  After that, it is no longer used.
+Window configurations are stored in
+`try-complete-erc-nick-window-configuration'."
+  (let (expansion
+       final
+       (alist (if (consp (car completions))
+                  completions
+                (mapcar (lambda (s)
+                          (if (and (erc-complete-at-prompt)
+                                   (and (not (= (length s) 0))
+                                        (not (eq (elt s 0) ?/))))
+                              (list (concat s erc-nick-completion-postfix))
+                            (list (concat s " "))))
+                        completions))) ; make alist if required
+       (completion-ignore-case erc-nick-completion-ignore-case))
+    (he-init-string (he-dabbrev-beg) (point))
+    ;; If there is a string to complete, complete it using alist.
+    ;; expansion is the possible expansion, or t.  If expansion is t
+    ;; or if expansion is the "real" thing, we are finished (final is
+    ;; t).  Take care -- expansion can also be nil!
+    (unless (string= he-search-string "")
+      (setq expansion (try-completion he-search-string alist)
+           final (or (eq t expansion)
+                     (and expansion
+                          (eq t (try-completion expansion alist))))))
+    (cond ((not expansion)
+          ;; There is no expansion at all.
+          (try-complete-erc-nick-restore)
+          (he-reset-string)
+          nil)
+         ((eq t expansion)
+          ;; The user already has the correct expansion.
+          (try-complete-erc-nick-restore)
+          (he-reset-string)
+          t)
+         ((and old (string= expansion he-search-string))
+          ;; This is the second time around and nothing changed,
+          ;; ie. the user tried to expand something incomplete
+          ;; without making a choice -- hitting TAB twice, for
+          ;; example.
+          (try-complete-erc-nick-restore)
+          (he-reset-string)
+          nil)
+         (final
+          ;; The user has found the correct expansion.
+          (try-complete-erc-nick-restore)
+          (he-substitute-string expansion)
+          t)
+         (t
+          ;; We found something but we are not finished.  Show a
+          ;; completions buffer.  Substitute what we found and return
+          ;; t.
+          (setq try-complete-erc-nick-window-configuration
+                (current-window-configuration))
+          (with-output-to-temp-buffer "*Completions*"
+            (display-completion-list (all-completions he-search-string alist)))
+          (he-substitute-string expansion)
+          t))))
+
+(defun erc-at-beginning-of-line-p (point &optional bol-func)
+  (save-excursion
+    (funcall (or bol-func
+                'erc-bol))
+    (equal point (point))))
+
+(defun erc-complete-at-prompt ()
+  "Returns t if point is directly after `erc-prompt' when doing completion."
+  (erc-at-beginning-of-line-p (he-dabbrev-beg)))
+
+(provide 'erc-hecomplete)
+
+;;; erc-hecomplete.el ends here
+;;
+;; Local Variables:
+;; indent-tabs-mode: t
+;; tab-width: 8
+;; End:
+
+;; arch-tag: 3be13ee8-8fdb-41ab-83c2-6582c757b91e
diff --git a/lisp/erc/erc-join.el b/lisp/erc/erc-join.el
new file mode 100644 (file)
index 0000000..da41ea7
--- /dev/null
@@ -0,0 +1,139 @@
+;;; erc-join.el --- autojoin channels on connect and reconnects
+
+;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+
+;; Author: Alex Schroeder <alex@gnu.org>
+;; Keywords: irc
+;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcAutoJoin
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation; either version 2, or (at your option)
+;; any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING.  If not, write to the
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
+
+;;; Commentary:
+
+;; This allows us to customize an `erc-autojoin-channels-alist'.  As
+;; we /JOIN and /PART channels, this alist is updated to reflect our
+;; current setup, so that when we reconnect, we rejoin the same
+;; channels.  The alist can be customized, so that the customized
+;; value will be used when we reconnect in our next Emacs session.
+
+;;; Code:
+
+(require 'erc)
+(eval-when-compile (require 'cl))
+
+(defgroup erc-autojoin nil
+  "Enable autojoining."
+  :group 'erc)
+
+;;;###autoload (autoload 'erc-autojoin-mode "erc-join" nil t)
+(define-erc-module autojoin nil
+  "Makes ERC autojoin on connects and reconnects."
+  ((add-hook 'erc-after-connect 'erc-autojoin-channels)
+   (add-hook 'erc-server-JOIN-functions 'erc-autojoin-add)
+   (add-hook 'erc-server-PART-functions 'erc-autojoin-remove))
+  ((remove-hook 'erc-after-connect 'erc-autojoin-channels)
+   (remove-hook 'erc-server-JOIN-functions 'erc-autojoin-add)
+   (remove-hook 'erc-server-PART-functions 'erc-autojoin-remove)))
+
+(defcustom erc-autojoin-channels-alist nil
+  "Alist of channels to autojoin on IRC networks.
+Every element in the alist has the form (SERVER . CHANNELS).
+SERVER is a regexp matching the server, and channels is the
+list of channels to join.
+
+Customize this variable to set the value for your first connect.
+Once you are connected and join and part channels, this alist
+keeps track of what channels you are on, and will join them
+again when you get disconnected.  When you restart Emacs, however,
+those changes are lost, and the customization you saved the last
+time is used again."
+  :group 'erc-autojoin
+  :type '(repeat (cons :tag "Server"
+                      (regexp :tag "Name")
+                      (repeat :tag "Channels"
+                              (string :tag "Name")))))
+
+(defcustom erc-autojoin-domain-only t
+  "Truncate host name to the domain name when joining a server.
+If non-nil, and a channel on the server a.b.c is joined, then
+only b.c is used as the server for `erc-autojoin-channels-alist'.
+This is important for networks that redirect you to other
+servers, presumably in the same domain."
+  :group 'erc-autojoin
+  :type 'boolean)
+
+(defun erc-autojoin-channels (server nick)
+  "Autojoin channels in `erc-autojoin-channels-alist'."
+  (dolist (l erc-autojoin-channels-alist)
+    (when (string-match (car l) server)
+      (dolist (chan (cdr l))
+       (erc-server-send (concat "join " chan))))))
+
+(defun erc-autojoin-add (proc parsed)
+  "Add the channel being joined to `erc-autojoin-channels-alist'."
+  (let* ((chnl (erc-response.contents parsed))
+        (nick (car (erc-parse-user (erc-response.sender parsed))))
+        (server (with-current-buffer (process-buffer proc)
+                  (or erc-server-announced-name erc-session-server))))
+    (when (erc-current-nick-p nick)
+      (when (and erc-autojoin-domain-only
+                (string-match "[^.]+\\.\\([^.]+\\.[^.]+\\)$" server))
+       (setq server (match-string 1 server)))
+      (let ((elem (assoc server erc-autojoin-channels-alist)))
+       (if elem
+           (unless (member chnl (cdr elem))
+             (setcdr elem (cons chnl (cdr elem))))
+         (setq erc-autojoin-channels-alist
+               (cons (list server chnl)
+                     erc-autojoin-channels-alist))))))
+  ;; We must return nil to tell ERC to continue running the other
+  ;; functions.
+  nil)
+
+;; (erc-parse-user "kensanata!~user@dclient217-162-233-228.hispeed.ch")
+
+(defun erc-autojoin-remove (proc parsed)
+  "Remove the channel being left from `erc-autojoin-channels-alist'."
+  (let* ((chnl (car (erc-response.command-args parsed)))
+        (nick (car (erc-parse-user (erc-response.sender parsed))))
+        (server (with-current-buffer (process-buffer proc)
+                  (or erc-server-announced-name erc-session-server))))
+    (when (erc-current-nick-p nick)
+      (when (and erc-autojoin-domain-only
+                (string-match "[^.]+\\.\\([^.]+\\.[^.]+\\)$" server))
+       (setq server (match-string 1 server)))
+      (let ((elem (assoc server erc-autojoin-channels-alist)))
+       (when elem
+         (setcdr elem (delete chnl (cdr elem)))
+         (unless (cdr elem)
+           (setq erc-autojoin-channels-alist
+                 (delete elem erc-autojoin-channels-alist)))))))
+  ;; We must return nil to tell ERC to continue running the other
+  ;; functions.
+  nil)
+
+(provide 'erc-join)
+
+;;; erc-join.el ends here
+;;
+;; Local Variables:
+;; indent-tabs-mode: t
+;; tab-width: 8
+;; End:
+
+;; arch-tag: d62d8b15-8e31-49d6-8a73-12f11e717414
index 785e4d197505a3dff0898238478c913a685c6cee..9bc561523d9a20ae996f325f4368d12d11742170 100644 (file)
@@ -32,7 +32,7 @@
 ;;; Code:
 
 (require 'erc)
-(require 'erc-nets)
+(require 'erc-networks)
 (require 'sort)
 (unless (fboundp 'make-overlay)
   (require 'overlay))
diff --git a/lisp/erc/erc-nets.el b/lisp/erc/erc-nets.el
deleted file mode 100644 (file)
index 716a429..0000000
+++ /dev/null
@@ -1,861 +0,0 @@
-;;; erc-nets.el --- IRC networks
-
-;; Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
-
-;; Author: Mario Lang <mlang@lexx.delysid.org>
-;; Keywords: comm
-
-;; This file is part of GNU Emacs.
-
-;; GNU Emacs is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; GNU Emacs is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
-
-;;; Commentary:
-
-;; This file deals with IRC networks.
-;;
-;; Usage:
-;;
-;; Put into your .emacs:
-;;
-;; (require 'erc-nets)
-;;
-;; M-x erc-server-select provides an alternative way to connect to servers by
-;; choosing networks.
-;; You can use (eq (erc-network) 'Network) if you'd like to set variables or do
-;; certain actions according to which network you're connected to.
-;; If a network you use is not listed in `erc-networks-alist', you can put
-;; (add-to-list 'erc-networks-alist '(Network "irc.server-name.net")) in your
-;; config file.
-
-;;; Code:
-
-(require 'erc)
-(eval-when-compile (require 'cl))
-
-;; Variables
-
-(defgroup erc-networks nil
-  "IRC Networks"
-  :group 'erc)
-
-(defcustom erc-server-alist
-'(("4-irc: Random server" 4-irc "4-irc.com" 6667)
-  ("A5KNet: Random server" A5KNet "irc.a5knet.com" ((6660 6669)))
-  ("AbleNet: Random server" AbleNet "irc.ablenet.org" 6667)
-  ("Accessirc: Random server" Accessirc "irc.accessirc.net" 6667)
-  ("Acestar: Random server" Acestar "irc.acestar.org" 6667)
-  ("Action-IRC: Random server" Action-IRC "irc.action-irc.net" ((6660 6669)))
-  ("AfterNET: Random server" AfterNET "irc.afternet.org" 6667)
-  ("Alternativenet: Random server" Alternativenet "irc.altnet.org" 6667)
-  ("AmigaNet: Random server" AmigaNet "irc.amiganet.org" 6667)
-  ("AngelEyez: Random server" AngelEyez "irc.angeleyez.net" ((6666 7000)))
-  ("AnotherNet: Random server" Anothernet "irc.another.net" (6667 7000 ))
-  ("ArabChat: Random server" ArabChat "irc.arabchat.org" ((6660 6667)))
-  ("AsiaTalk: Random server" AsiaTalk "irc.asiatalk.org" ((6667 6669) 7000 ))
-  ("AstroLink: Random server" AstroLink "irc.astrolink.org" ((6660 6667)))
-  ("Asylumnet: Random server" Asylumnet "irc.asylum-net.org" ((6661 6669) 7000 7777 ))
-  ("Austnet: Random AU server" Austnet "au.austnet.org" 6667)
-  ("Austnet: Random NZ server" Austnet "nz.austnet.org" 6667)
-  ("Austnet: Random SG server" Austnet "sg.austnet.org" 6667)
-  ("Austnet: Random US server" Austnet "us.austnet.org" 6667)
-  ("AwesomeChat: Random server" AwesomeChat "irc.awesomechat.net" ((6661 6669)))
-  ("Awesomechristians: Random server" Awesomechristians "irc.awesomechristians.com" 7000)
-  ("Axenet: Random server" Axenet "irc.axenet.org" ((6660 6667)))
-  ("BeyondIRC: Random server" Beyondirc "irc.beyondirc.net" ((6660 6669)))
-  ("BGIRC: Random server" BGIRC "irc.bulgaria.org" ((6666 6669) 7000 ))
-  ("Blabbernet: Random server" Blabbernet "irc.blabber.net" (6667 7000 ))
-  ("Blitzed: Random server" Blitzed "irc.blitzed.org" (6667 7000 ))
-  ("Brasirc: Random server" Brasirc "irc.brasirc.net" ((6666 6667)))
-  ("Brasirc: BR, PA, Belem" Brasirc "irc.libnet.com.br" ((6666 6668) 7777 8002 ))
-  ("BRASnet: Random European server" BRASnet "eu.brasnet.org" ((6665 6669)))
-  ("BRASnet: Random US server" BRASnet "us.brasnet.org" ((6665 6669)))
-  ("BubbleNet: Random server" BubbleNet "irc.bubblenet.org" ((6667 6669)))
-  ("CCnet: Random server" CCnet "irc.cchat.net" (6667 7000 ))
-  ("CCnet: US, TX, Dallas" CCnet "irc2.cchat.net" (6667 7000 ))
-  ("Chat-Net: Random server" Chat-Net "irc.chat-net.org" 6667)
-  ("Chat-Solutions: Random server" Chat-Solutions "irc.chat-solutions.org" 6667)
-  ("Chatcafe: Random server" Chatcafe "irc.chatcafe.net" 6667)
-  ("Chatchannel: Random server" Chatchannel "irc.chatchannel.org" ((6666 6669) 7000 ))
-  ("ChatCircuit: Random server" ChatCircuit "irc.chatcircuit.com" 6668)
-  ("Chatlink: Random server" Chatlink "irc.chatlink.org" 6667)
-  ("Chatnet: Random AU server" Chatnet "au.chatnet.org" 6667)
-  ("Chatnet: Random EU server" Chatnet "eu.chatnet.org" 6667)
-  ("Chatnet: Random US server" Chatnet "us.chatnet.org" 6667)
-  ("ChatNut: Random server" ChatNut "irc.chatnut.net" (6667 7000 ))
-  ("Chatpinoy: Random server" Chatpinoy "irc.chatpinoy.com" 6667)
-  ("ChatPR: Random server" ChatPR "irc.chatpr.org" 6667)
-  ("Chatroom: Random server" Chatroom "irc.chatroom.org" 6667)
-  ("Chatster: Random server" Chatster "irc.chatster.org" 6667)
-  ("ChatX: Random server" ChatX "irc.chatx.net" 6667)
-  ("China263: Random server" China263 "irc.263.net" 6667)
-  ("Cineplex1: Random server" Cineplex1 "irc.cineplex1.com" ((6666 6668)))
-  ("CNN: CNN News discussions" CNN "chat.cnn.com" ((6667 6669) 7000 ))
-  ("CobraNet: Random server" CobraNet "irc.cobra.net" 6667)
-  ("Coolchat: Random server" Coolchat "irc.coolchat.net" 6667)
-  ("Criten: Random server" Criten "irc.criten.net" 6667)
-  ("Cyberchat: Random server" Cyberchat "irc.cyberchat.org" (6667 6668 ))
-  ("CyGanet: Random server" CyGanet "irc.cyga.net" 6667)
-  ("DALnet: AS, MY, Coins" DALnet "coins.dal.net" ((6663 6668) 7000 ))
-  ("DALnet: CA, ON, Sodre" DALnet "sodre.on.ca.dal.net" ((6661 6669) 7000 ))
-  ("DALnet: EU, DE, Nexgo" DALnet "nexgo.de.eu.dal.net" ((6664 6669) 7000 ))
-  ("DALnet: EU, NO, Powertech" DALnet "powertech.no.eu.dal.net" ((6666 6667) 7000 ))
-  ("DALnet: EU, SE, Borg" DALnet "borg.se.eu.dal.net" (6667 7000 ))
-  ("DALnet: EU, SE, Ced" DALnet "ced.se.eu.dal.net" (6667 7000 ))
-  ("DALnet: US, GA, Astro" DALnet "astro.ga.us.dal.net" ((6661 6669) 7000 ))
-  ("DALnet: US, GA, Dragons" DALnet "dragons.ga.us.dal.net" ((6661 6669) 7000 ))
-  ("DALnet: US, GA, Elysium" DALnet "elysium.ga.us.dal.net" ((6661 6669) 7000 ))
-  ("DALnet: US, MA, Twisted" DALnet "twisted.ma.us.dal.net" ((6660 6669) 7001 7002 ))
-  ("DALnet: US, MO, Global" DALnet "global.mo.us.dal.net" ((6661 6669) 7000 ))
-  ("DALnet: US, NJ, Liberty" DALnet "liberty.nj.us.dal.net" ((6662 6669) 7000 ))
-  ("DALnet: US, VA, Wombat" DALnet "wombat.va.us.dal.net" ((6661 6669) 7000 ))
-  ("DALnet: Random EU server" DALnet "irc.eu.dal.net" 6667)
-  ("DALnet: Random US server" DALnet "irc.dal.net" ((6660 6667)))
-  ("Dark-Tou-Net: Random server" Dark-Tou-Net "irc.d-t-net.de" 6667)
-  ("Darkfire: Random server" Darkfire "irc.darkfire.net" (6667 7000 8000 ))
-  ("DarkMyst: Random server" DarkMyst "irc.darkmyst.org" 6667)
-  ("Darkserv: Random server" Darkserv "irc.darkserv.net" 6667)
-  ("Darksystem: Random server" Darksystem "irc.darksystem.com" 6667)
-  ("Darktree: Random server" Darktree "irc.darktree.net" 6667)
-  ("DayNet: Random server" DayNet "irc.daynet.org" 6667)
-  ("Deepspace: Disability network" Deepspace "irc.deepspace.org" 6667)
-  ("Different: Random server" Different "irc.different.net" 6667)
-  ("Digarix: Random server" Digarix "irc.digarix.net" 6667)
-  ("Digatech: Random server" Digatech "irc.digatech.net" 6667)
-  ("Digital-Base: Random server" Digital-Base "irc.digital-base.net" ((6660 7000)))
-  ("Digitalirc: Random server" Digitalirc "irc.digitalirc.net" 6667)
-  ("Discussioni: Random server" Discussioni "irc.discussioni.org" ((6666 6669)))
-  ("DorukNet: TR, Istanbul" DorukNet "irc.doruk.net.tr" ((6660 6669) 7000 8888 ))
-  ("Dreamcast: Random server" Dreamcast "irc0.dreamcast.com" 6667)
-  ("DWChat: Random server" DWChat "irc.dwchat.net" 6667)
-  ("Dynastynet: Random server" Dynastynet "irc.dynastynet.net" 6667)
-  ("EFnet: CA, AB, Edmonton (arcti)" EFnet "irc.arcti.ca" 6667)
-  ("EFnet: CA, AB, Edmonton (mpls)" EFnet "irc.mpls.ca" ((6660 6669)))
-  ("EFnet: CA, ON, Toronto" EFnet "irc2.magic.ca" 6667)
-  ("EFnet: CA, QB, Montreal" EFnet "irc.qeast.net" 6667)
-  ("EFnet: EU, DK, Aarhus" EFnet "irc.inet.tele.dk" 6667)
-  ("EFnet: EU, FI, Helsinki" EFnet "efnet.cs.hut.fi" 6667)
-  ("EFnet: EU, FR, Paris" EFnet "irc.isdnet.fr" ((6667 6669)))
-  ("EFnet: EU, NL, Amsterdam" EFnet "efnet.vuurwerk.nl" 6667)
-  ("EFnet: EU, NO, Homelien" EFnet "irc.homelien.no" (5190 (6666 6667) (7000 7001) ))
-  ("EFnet: EU, NO, Oslo" EFnet "irc.daxnet.no" ((6666 7000)))
-  ("EFnet: EU, PL, Warszawa" EFnet "irc.efnet.pl" 6667)
-  ("EFnet: EU, RU, Moscow" EFnet "irc.rt.ru" ((6661 6669)))
-  ("EFnet: EU, SE, Dalarna" EFnet "irc.du.se" ((6666 6669)))
-  ("EFnet: EU, SE, Gothenberg" EFnet "irc.hemmet.chalmers.se" ((6666 7000)))
-  ("EFnet: EU, SE, Sweden" EFnet "irc.light.se" 6667)
-  ("EFnet: EU, UK, London (carrier)" EFnet "irc.carrier1.net.uk" ((6666 6669)))
-  ("EFnet: EU, UK, London (demon)" EFnet "efnet.demon.co.uk" ((6665 6669)))
-  ("EFnet: ME, IL, Inter" EFnet "irc.inter.net.il" ((6665 6669)))
-  ("EFnet: US, AZ, Phoenix" EFnet "irc.easynews.com" (6660 (6665 6667) 7000 ))
-  ("EFnet: US, CA, San Jose" EFnet "irc.concentric.net" ((6665 6668)))
-  ("EFnet: US, CA, San Luis Obispo" EFnet "irc.prison.net" ((6666 6667)))
-  ("EFnet: US, GA, Atlanta" EFnet "irc.mindspring.com" ((6660 6669)))
-  ("EFnet: US, MI, Ann Arbor" EFnet "irc.umich.edu" 6667)
-  ("EFnet: US, MN, Twin Cities" EFnet "irc.umn.edu" ((6665 6669)))
-  ("EFnet: US, NY, Mineola" EFnet "irc.lightning.net" ((6665 7000)))
-  ("EFnet: US, NY, New York (east)" EFnet "irc.east.gblx.net" 6667)
-  ("EFnet: US, NY, New York (flamed)" EFnet "irc.flamed.net" ((6665 6669)))
-  ("EFnet: US, TX, Houston" EFnet "ircd.lagged.org" ((6660 6669)))
-  ("EFnet: US, VA, Ashburn" EFnet "irc.secsup.uu.net" ((6665 6669) 8080 ))
-  ("EFnet: Random AU server" EFnet "au.rr.efnet.net" 6667)
-  ("EFnet: Random CA server" EFnet "ca.rr.efnet.net" 6667)
-  ("EFnet: Random EU server" EFnet "eu.rr.efnet.net" 6667)
-  ("EFnet: Random US server" EFnet "us.rr.efnet.net" 6667)
-  ("EgyptianIRC: Random server" EgyptianIRC "irc.egyptianirc.net" ((6667 6669)))
-  ("Eircnet: Random server" Eircnet "irc.eircnet.org" ((6660 6669) 7000 ))
-  ("Eleethal: Random server" Eleethal "irc.eleethal.com" ((6660 6669) 7000 ))
-  ("EntertheGame: Random server" EntertheGame "irc.enterthegame.com" ((6667 6669)))
-  ("EpiKnet: Random server" EpiKnet "irc.epiknet.org" ((6660 6669) 7000 7001 ))
-  ("EsperNet: Random server" EsperNet "irc.esper.net" (5555 (6667 6669) ))
-  ("Esprit: Random server" Esprit "irc.esprit.net" 6667)
-  ("euIRC: Random server" euIRC "irc.euirc.net" ((6665 6669)))
-  ("Evilzinc: Random server" Evilzinc "irc.evilzinc.net" ((6660 6669) 7000 8000 ))
-  ("ExodusIRC: Random server" ExodusIRC "irc.exodusirc.net" ((6660 6669)))
-  ("FDFnet: Random server" FDFnet "irc.fdfnet.net" ((6666 6668) 9999 ))
-  ("FEFnet: Random server" FEFnet "irc.fef.net" 6667)
-  ("Financialchat: Random server" Financialchat "irc.financialchat.com" ((6667 6669) 7000 ))
-  ("Forestnet: Random server" Forestnet "irc.forestnet.org" (6667 7000 ))
-  ("ForeverChat: Random server" ForeverChat "irc.foreverchat.net" ((6660 6669) 7000 ))
-  ("Fraggers: Random server" Fraggers "irc.fraggers.co.uk" ((6661 6669) (7000 7001) ))
-  ("FreedomChat: Random server" FreedomChat "chat.freedomchat.net" 6667)
-  ("FreedomIRC: Random server" FreedomIRC "irc.freedomirc.net" 6667)
-  ("Freenode: Random server" freenode "irc.freenode.net" 6667)
-  ("Freenode: Random EU server" freenode "irc.eu.freenode.net" 6667)
-  ("Freenode: Random US server" freenode "irc.us.freenode.net" 6667)
-  ("FunNet: Random server" FunNet "irc.funnet.org" 6667)
-  ("Galaxynet: Random server" GalaxyNet "irc.galaxynet.org" ((6662 6668) 7000 ))
-  ("Galaxynet: AU, NZ, Auckland" GalaxyNet "auckland.nz.galaxynet.org" ((6661 6669)))
-  ("Galaxynet: EU, BE, Online" GalaxyNet "online.be.galaxynet.org" ((6661 6669)))
-  ("Galaxynet: US, FL, Florida" GalaxyNet "gymnet.us.galaxynet.org" ((6661 6669)))
-  ("Gamesnet: Random east US server" Gamesnet "east.gamesnet.net" 6667)
-  ("Gamesnet: Random west US server" Gamesnet "west.gamesnet.net" 6667)
-  ("GammaForce: Random server" GammaForce "irc.gammaforce.org" ((6660 6669) 7000 ))
-  ("GIKInet: Random server" GIKInet "irc.giki.edu.pk" 6667)
-  ("GizNet: Random server" GizNet "irc.giznet.org" ((6666 6669) 7000 ))
-  ("Globalchat: Random server" Globalchat "irc.globalchat.org" 6667)
-  ("GlobIRC: Random server" GlobIRC "irc.globirc.net" ((6666 6668) 9999 ))
-  ("Goldchat: Random server" Goldchat "irc.goldchat.nl" ((6660 6669) 7000 ))
-  ("Goodchatting: Random server" Goodchatting "irc.goodchatting.com" ((6661 6669) 7000 ))
-  ("GravityLords: Random server" GravityLords "irc.gravitylords.net" 6667)
-  ("Grnet: Random EU server" GRnet "gr.irc.gr" (6667 7000 ))
-  ("Grnet: Random server" GRnet "srv.irc.gr" (6667 7000 ))
-  ("Grnet: Random US server" GRnet "us.irc.gr" (6667 7000 ))
-  ("GulfChat: Random server" GulfChat "irc.gulfchat.net" ((6660 6669)))
-  ("HabberNet: Random server" HabberNet "irc.habber.net" 6667)
-  ("HanIRC: Random server" HanIRC "irc.hanirc.org" 6667)
-  ("Hellenicnet: Random server" Hellenicnet "irc.mirc.gr" (6667 7000 ))
-  ("IceNet: Random server" IceNet "irc.icenet.org.za" 6667)
-  ("ICQnet: Random server" ICQnet "irc.icq.com" 6667)
-  ("Infatech: Random server" Infatech "irc.infatech.net" ((6660 6669)))
-  ("Infinity: Random server" Infinity "irc.infinity-irc.org" 6667)
-  ("Infomatrix: Random server" Infomatrix "irc.infomatrix.net" 6667)
-  ("Inside3D: Random server" Inside3D "irc.inside3d.net" ((6661 6669)))
-  ("InterlinkChat: Random server" InterlinkChat "irc.interlinkchat.net" ((6660 6669) 7000 ))
-  ("IRC-Chile: Random server" IRC-Chile "irc.cl" 6667)
-  ("IRC-Hispano: Random server" IRC-Hispano "irc.irc-hispano.org" 6667)
-  ("IRCchat: Random server" IRCchat "irc.ircchat.tk" 6667)
-  ("IRCGate: Random server" IRCGate "irc.ircgate.net" ((6667 6669)))
-  ("IRCGeeks: Random server" IRCGeeks "irc.ircgeeks.org" ((6660 6669)))
-  ("IRChat: Random server" IRChat "irc.irchat.net" ((6660 6669)))
-  ("IrcLordz: Random server" IrcLordz "irc.irclordz.com" 6667)
-  ("IrcMalta: Random server" IrcMalta "irc.ircmalta.org" ((6660 6667)))
-  ("IRCnet: EU, FR, Random" IRCnet "irc.fr.ircnet.net" 6667)
-  ("IRCnet: EU, IT, Random" IRCnet "irc.ircd.it" ((6665 6669)))
-  ("IRCnet: AS, IL, Haifa" IRCnet "ircnet.netvision.net.il" ((6661 6668)))
-  ("IRCnet: AS, JP, Tokyo" IRCnet "irc.tokyo.wide.ad.jp" 6667)
-  ("IRCnet: AS, TW, Seed" IRCnet "irc.seed.net.tw" 6667)
-  ("IRCnet: EU, AT, Linz" IRCnet "linz.irc.at" ((6666 6668)))
-  ("IRCnet: EU, AT, Wien" IRCnet "vienna.irc.at" ((6666 6669)))
-  ("IRCnet: EU, BE, Brussels" IRCnet "irc.belnet.be" 6667)
-  ("IRCnet: EU, BE, Zaventem" IRCnet "ircnet.wanadoo.be" ((6661 6669)))
-  ("IRCnet: EU, CZ, Prague" IRCnet "irc.felk.cvut.cz" 6667)
-  ("IRCnet: EU, DE, Berlin" IRCnet "irc.fu-berlin.de" ((6665 6669)))
-  ("IRCnet: EU, DE, Dusseldorf" IRCnet "irc.freenet.de" ((6665 6669)))
-  ("IRCnet: EU, DE, Stuttgart" IRCnet "irc.belwue.de" ((6665 6669)))
-  ("IRCnet: EU, DK, Copenhagen" IRCnet "irc.ircnet.dk" 6667)
-  ("IRCnet: EU, EE, Tallinn" IRCnet "irc.estpak.ee" ((6666 6668)))
-  ("IRCnet: EU, FI, Helsinki" IRCnet "irc.cs.hut.fi" 6667)
-  ("IRCnet: EU, GR, Thessaloniki" IRCnet "irc.ee.auth.gr" ((6666 6669)))
-  ("IRCnet: EU, HU, Budapest" IRCnet "irc.elte.hu" 6667)
-  ("IRCnet: EU, IS, Reykjavik (ircnet)" IRCnet "irc.ircnet.is" ((6661 6669)))
-  ("IRCnet: EU, IS, Reykjavik (simnet)" IRCnet "irc.simnet.is" ((6661 6669)))
-  ("IRCnet: EU, IT, Rome" IRCnet "irc.tin.it" ((6665 6669)))
-  ("IRCnet: EU, NL, Amsterdam (nlnet)" IRCnet "irc.nl.uu.net" ((6660 6669)))
-  ("IRCnet: EU, NL, Amsterdam (xs4all)" IRCnet "irc.xs4all.nl" ((6660 6669)))
-  ("IRCnet: EU, NL, Enschede" IRCnet "irc.snt.utwente.nl" ((6660 6669)))
-  ("IRCnet: EU, NL, Nijmegen" IRCnet "irc.sci.kun.nl" ((6660 6669)))
-  ("IRCnet: EU, NO, Oslo" IRCnet "irc.ifi.uio.no" 6667)
-  ("IRCnet: EU, NO, Trondheim" IRCnet "irc.pvv.ntnu.no" 6667)
-  ("IRCnet: EU, PL, Lublin" IRCnet "lublin.irc.pl" ((6666 6668)))
-  ("IRCnet: EU, PL, Warsaw" IRCnet "warszawa.irc.pl" ((6666 6668)))
-  ("IRCnet: EU, RU, Moscow" IRCnet "irc.msu.ru" 6667)
-  ("IRCnet: EU, SE, Lulea" IRCnet "irc.ludd.luth.se" ((6661 6669)))
-  ("IRCnet: EU, UK, London (Demon)" IRCnet "ircnet.demon.co.uk" ((6665 6669)))
-  ("IRCnet: EU, UK, London (Easynet)" IRCnet "ircnet.easynet.co.uk" ((6666 6669)))
-  ("IRCnet: US, NY, New York" IRCnet "irc.stealth.net" ((6660 6669)))
-  ("IRCnet: Random AU server" IRCnet "au.ircnet.org" 6667)
-  ("IRCnet: Random EU server" IRCnet "eu.ircnet.org" ((6665 6668)))
-  ("IRCnet: Random US server" IRCnet "us.ircnet.org" ((6665 6668)))
-  ("IRCSoulZ: Random server" IRCSoulZ "irc.ircsoulz.net" 6667)
-  ("IRCSul: BR, PR, Maringa" IRCSul "irc.wnet.com.br" 6667)
-  ("IrcTalk: Random server" IrcTalk "irc.irctalk.net" ((6660 6669)))
-  ("Irctoo: Random server" Irctoo "irc.irctoo.net" 6667)
-  ("IRCtown: Random server" IRCtown "irc.irctown.net" ((6666 6669) 7000 ))
-  ("IRCworld: Random server" IRCworld "irc.ircworld.org" 6667)
-  ("ircXtreme: Random server" ircXtreme "irc.ircXtreme.net" ((6660 6669)))
-  ("Israelnet: Random server" Israelnet "irc.israel.net" 6667)
-  ("K0wNet: Random server" K0wNet "irc.k0w.net" ((6660 6669)))
-  ("KDFSnet: Random server" KDFSnet "irc.kdfs.net" ((6667 6669)))
-  ("Kemik: Random server" Kemik "irc.kemik.net" 6667)
-  ("Kewl.Org: Random server" Kewl.Org "irc.kewl.org" (6667 7000 ))
-  ("Kickchat: Random server" Kickchat "irc.kickchat.com" ((6660 6669) 7000 ))
-  ("Kidsworld: Random server" KidsWorld "irc.kidsworld.org" ((6666 6669)))
-  ("Knightnet: AF, ZA, Durban" Knightnet "orc.dbn.za.knightnet.net" (6667 5555 ))
-  ("Knightnet: US, CA, Goldengate" Knightnet "goldengate.ca.us.knightnet.net" (6667 5555 ))
-  ("Konfido.Net: Random server" Konfido.Net "irc.konfido.net" 6667)
-  ("KreyNet: Random server" Kreynet "irc.krey.net" 6667)
-  ("Krono: Random server" Krono "irc.krono.net" ((6660 6669) 7000 ))
-  ("Krushnet: Random server" Krushnet "irc.krushnet.org" 6667)
-  ("LagNet: Random server" LagNet "irc.lagnet.org.za" 6667)
-  ("LagNet: AF, ZA, Cape Town" LagNet "reaper.lagnet.org.za" 6667)
-  ("LagNet: AF, ZA, Johannesburg" LagNet "mystery.lagnet.org.za" 6667)
-  ("Librenet: Random server" Librenet "irc.librenet.net" 6667)
-  ("LinkNet: Random server" LinkNet "irc.link-net.org" ((6667 6669)))
-  ("Liquidized: Random server" Liquidized "irc.liquidized.net" (6667 7000 ))
-  ("M-IRC: Random server" M-IRC "irc.m-sys.org" ((6667 6669)))
-  ("MagicStar: Random server" MagicStar "irc.magicstar.net" 6667)
-  ("Mavra: Random server" Mavra "irc.mavra.net" 6667)
-  ("MediaDriven: Random server" MediaDriven "irc.mediadriven.com" ((6667 6669)))
-  ("mIRC-X: Random server" mIRC-X "irc.mircx.com" (6667 7000 ))
-  ("Morat: Random server" Morat "irc.morat.net" 6667)
-  ("MusicCity: Random server" MusicCity "chat.musiccity.com" 6667)
-  ("Mysteria: Random server" Mysteria "irc.mysteria.net" (6667 7000 ))
-  ("Mysterychat: Random server" Mysterychat "irc.mysterychat.net" ((6667 6669)))
-  ("Mystical: Random server" Mystical "irc.mystical.net" (6667 7000 ))
-  ("Narancs: Random server" Narancs "irc.narancs.com" ((6667 6669) 7000 ))
-  ("Net-France: Random server" Net-France "irc.net-france.com" 6667)
-  ("Nevernet: Random server" Nevernet "irc.nevernet.net" 6667)
-  ("Newnet: Random server" Newnet "irc.newnet.net" ((6665 6667)))
-  ("Nexusirc: Random server" Nexusirc "irc.nexusirc.org" 6667)
-  ("Nightstar: Random server" NightStar "irc.nightstar.net" ((6665 6669)))
-  ("NitrousNet: Random server" NitrousNet "irc.nitrousnet.net" 6667)
-  ("Novernet: Random server" Novernet "irc.novernet.com" ((6665 6669) 7000 ))
-  ("Nullrouted: Random server" Nullrouted "irc.nullrouted.org" ((6666 6669) 7000 ))
-  ("NullusNet: Random server" NullusNet "irc.nullus.net" 6667)
-  ("OpChat: Random server" OpChat "irc.opchat.org" ((6667 6669)))
-  ("Othernet: Random server" Othernet "irc.othernet.org" 6667)
-  ("Othernet: US, FL, Miami" Othernet "miami.fl.us.othernet.org" 6667)
-  ("Othernet: US, MO, StLouis" Othernet "stlouis.mo.us.othernet.org" 6667)
-  ("Otherside: Random server" OtherSide "irc.othersideirc.net" 6667)
-  ("Outsiderz: Random server" Outsiderz "irc.outsiderz.com" 6667)
-  ("OzOrg: AU, Perth" OzOrg "iinet.perth.oz.org" 6667)
-  ("Peacefulhaven: Random server" Peacefulhaven "irc.peacefulhaven.net" ((6660 6669) 7000 ))
-  ("PhazedIRC: Random server" PhazedIRC "irc.phazedirc.net" 6667)
-  ("Philchat: Random server" Philchat "irc.philchat.net" 6667)
-  ("phrozN: Random server" phrozN "irc.phrozn.net" 6667)
-  ("PiNet: Random server" PiNet "irc.praetorians.org" ((6665 6669)))
-  ("Pinoycentral: Random server" Pinoycentral "chat.abs-cbn.com" 6667)
-  ("Planetarion: Random server" Planetarion "irc.planetarion.com" 6667)
-  ("POLNet: Random server" POLNet "irc.ircnet.pl" 6667)
-  ("Psionics: CA, PQ, Montreal" Psionics "chat.psionics.net" ((6660 6669)))
-  ("PTirc: Random server" PTirc "irc.ptirc.com.pt" 6667)
-  ("PTlink: Random server" PTlink "irc.ptlink.net" 6667)
-  ("PTnet: Random server" PTnet "irc.ptnet.org" 6667)
-  ("QChat: Random server" QChat "irc.qchat.net" 6667)
-  ("QuakeNet: Random German server" QuakeNet "de.quakenet.org" ((6667 6669)))
-  ("QuakeNet: Random server" QuakeNet "irc.quakenet.eu.org" ((6667 6669)))
-  ("QuakeNet: Random Swedish server" QuakeNet "se.quakenet.org" ((6667 6669)))
-  ("QuakeNet: Random UK server" QuakeNet "uk.quakenet.org" ((6667 6669)))
-  ("QuakeNet: Random US server" QuakeNet "us.quakenet.org" ((6667 6669)))
-  ("Realirc: Random server" Realirc "irc.realirc.org" 6667)
-  ("RealmNET: Random server" RealmNET "irc.realmnet.com" 6667)
-  ("Rebelchat: Random server" Rebelchat "irc.rebelchat.org" 6667)
-  ("Red-Latina: Random server" Red-Latina "irc.red-latina.org" 6667)
-  ("RedLatona: Random server" RedLatona "irc.redlatona.net" (6667 6668 ))
-  ("Relicnet: Random server" Relicnet "irc.relic.net" 6667)
-  ("Rezosup: Random server" Rezosup "irc.rezosup.org" 6667)
-  ("Risanet: Random server" Risanet "irc.risanet.com" ((6667 6669)))
-  ("Rubiks: Random server" Rubiks "irc.rubiks.net" 6667)
-  ("Rusnet: EU, RU, Tomsk" Rusnet "irc.tsk.ru" ((6667 6669) (7770 7775) ))
-  ("Rusnet: EU, RU, Vladivostok" Rusnet "irc.vladivostok.ru" ((6667 6669) (7770 7775) ))
-  ("Rusnet: EU, UA, Kiev" Rusnet "irc.kar.net" ((6667 6669) (7770 7775) ))
-  ("Sandnet: Random server" Sandnet "irc.sandnet.net" ((6660 6669) 7000 ))
-  ("Scunc: Random server" Scunc "irc.scunc.net" 6667)
-  ("SerbianCafe: Random server" SerbianCafe "irc.serbiancafe.ws" ((6665 6669)))
-  ("SexNet: Random server" SexNet "irc.sexnet.org" 6667)
-  ("ShadowFire: Random server" ShadowFire "irc.shadowfire.org" 6667)
-  ("ShadowWorld: Random server" ShadowWorld "irc.shadowworld.net" 6667)
-  ("SkyNet: Random server" SkyNet "irc.bronowski.pl" ((6666 6668)))
-  ("Slashnet: Random server" Slashnet "irc.slashnet.org" 6667)
-  ("SolarStone: Random server" SolarStone "irc.solarstone.net" ((6660 6669)))
-  ("Sorcerynet: Random server" Sorcery "irc.sorcery.net" (6667 7000 9000 ))
-  ("Sorcerynet: EU, SE, Karlskrona" Sorcery "nexus.sorcery.net" (6667 7000 9000 ))
-  ("Sorcerynet: US, CA, Palo Alto" Sorcery "kechara.sorcery.net" (6667 7000 9000 ))
-  ("SourceIRC: Random server" SourceIRC "irc.sourceirc.net" ((6667 6669) 7000 ))
-  ("SpaceTronix: Random server" SpaceTronix "irc.spacetronix.net" ((6660 6669) 7000 ))
-  ("Spirit-Harmony: Random server" Spirit-Harmony "irc.spirit-harmony.com" ((6661 6669)))
-  ("StarChat: Random server" StarChat "irc.starchat.net" ((6667 6669) 7000 ))
-  ("StarEquinox: Random server" StarEquinox "irc.starequinox.net" ((6660 6669)))
-  ("StarLink: Random server" Starlink "irc.starlink.net" ((6660 6669)))
-  ("StarLink-irc: Random server" starlink-irc "irc.starlink-irc.org" 6667)
-  ("StarWars-IRC: Random server" StarWars-IRC "irc.starwars-irc.net" ((6663 6667)))
-  ("Stormdancing: Random server" Stormdancing "irc.stormdancing.net" ((6664 6669) 7000 9000 ))
-  ("Superchat: Random server" Superchat "irc.superchat.org" ((6660 6668)))
-  ("Sysopnet: Random server" Sysopnet "irc.sysopnet.org" ((6666 6668)))
-  ("Telstra: Random server" Telstra "irc.telstra.com" ((6667 6669)))
-  ("TR-net: EU, TR, Ankara" TR-net "irc.dominet.com.tr" 6667)
-  ("TR-net: EU, Tr, Istanbul" TR-net "irc.teklan.com.tr" 6667)
-  ("Tri-net: Random server" Tri-net "irc.tri-net.org" 6667)
-  ("TriLink: Random server" TriLink "irc.ft4u.net" 6667)
-  ("TurkishChat: Random server" TurkishChat "irc.turkishchat.org" ((6660 6669) 7000 ))
-  ("UberNinja: Random server" UberNinja "irc.uberninja.net" ((6667 6669)))
-  ("UICN: Random server" UICN "irc.uicn.net" 6667)
-  ("UltraIRC: Random server" UltraIRC "irc.ultrairc.net" 6667)
-  ("UnderChat: Random server" UnderChat "irc.underchat.it" ((6660 6669) 7000 ))
-  ("Undernet: CA, ON, Toronto" Undernet "toronto.on.ca.undernet.org" ((6661 6669)))
-  ("Undernet: CA, QC, Montreal" Undernet "montreal.qu.ca.undernet.org" ((6660 6669)))
-  ("Undernet: EU, AT, Graz" Undernet "graz.at.eu.undernet.org" ((6661 6669)))
-  ("Undernet: EU, BE, Antwerp" Undernet "flanders.be.eu.undernet.org" ((6660 6669)))
-  ("Undernet: EU, BE, Brussels" Undernet "brussels.be.eu.undernet.org" 6667)
-  ("Undernet: EU, CH, Geneva" Undernet "geneva.ch.eu.undernet.org" ((6660 6669) 7777 8000 ))
-  ("Undernet: EU, FR, Caen" Undernet "caen.fr.eu.undernet.org" ((6666 6669)))
-  ("Undernet: EU, NL, Diemen" Undernet "diemen.nl.eu.undernet.org" ((6660 6669)))
-  ("Undernet: EU, NL, Haarlem" Undernet "haarlem.nl.eu.undernet.org" ((6660 6669)))
-  ("Undernet: EU, NO, Oslo" Undernet "oslo.no.eu.undernet.org" ((6660 6669)))
-  ("Undernet: EU, SE, Stockholm" Undernet "stockholm.se.eu.undernet.org" ((6666 6669)))
-  ("Undernet: EU, UK, Surrey" Undernet "surrey.uk.eu.undernet.org" ((6660 6669)))
-  ("Undernet: US, AZ, Mesa" Undernet "mesa.az.us.undernet.org" ((6665 6667)))
-  ("Undernet: US, CA, San Diego" Undernet "sandiego.ca.us.undernet.org" ((6660 6670)))
-  ("Undernet: US, DC, Washington" Undernet "washington.dc.us.undernet.org" ((6660 6669)))
-  ("Undernet: US, KS, Manhattan" Undernet "manhattan.ks.us.undernet.org" ((6660 6669)))
-  ("Undernet: US, NV, Las Vegas" Undernet "lasvegas.nv.us.undernet.org" ((6660 6669)))
-  ("Undernet: US, TX, Austin" Undernet "austin.tx.us.undernet.org" ((6660 6669)))
-  ("Undernet: US, UT, Saltlake" Undernet "saltlake.ut.us.undernet.org" ((6660 6669)))
-  ("Undernet: US, VA, Arlington" Undernet "arlington.va.us.undernet.org" ((6660 6669)))
-  ("Undernet: US, VA, McLean" Undernet "mclean.va.us.undernet.org" ((6666 6669)))
-  ("Undernet: Random EU server" Undernet "eu.undernet.org" 6667)
-  ("Undernet: Random US server" Undernet "us.undernet.org" 6667)
-  ("UnderZ: Random server" UnderZ "irc.underz.org" ((6667 6668)))
-  ("UniChat: Random server" UniChat "irc.uni-chat.net" 6667)
-  ("UnionLatina: Random server" UnionLatina "irc.unionlatina.org" 6667)
-  ("Univers: Random server" Univers "irc.univers.org" ((6665 6669)))
-  ("UnixR: Random server" UnixR "irc.unixr.net" ((6667 6669)))
-  ("Vidgamechat: Random server" Vidgamechat "irc.vidgamechat.com" 6667)
-  ("VirtuaNet: Random server" VirtuaNet "irc.virtuanet.org" ((6660 6669) 7000 ))
-  ("Vitamina: Random server" Vitamina "irc.vitamina.ca" 6667)
-  ("Voila: Random server" Voila "irc.voila.fr" 6667)
-  ("Wahou: Random server" Wahou "irc.wahou.org" ((6665 6669)))
-  ("Warpednet: Random server" Warpednet "irc.warped.net" 6667)
-  ("Weaklinks: Random server" Weaklinks "irc.weaklinks.net" ((6667 6669)))
-  ("Webnet: Random server" Webnet "irc.webchat.org" ((6667 6669) 7000 ))
-  ("Webnet: US, CA, Santa Clara" Webnet "webmaster.ca.us.webchat.org" ((6661 6669)))
-  ("WinChat: Random server" WinChat "irc.winchat.net" ((6661 6669)))
-  ("WinIRC: Random server" WinIRC "irc.winirc.org" ((6667 6669) 4400 ))
-  ("WorldIRC: Random server" WorldIRC "irc.worldirc.org" ((6660 6667)))
-  ("WyldRyde: Random server" WyldRyde "irc.wyldryde.net" ((6666 6669)))
-  ("XentoniX: Random server" XentoniX "irc.xentonix.net" ((6661 6669)))
-  ("Xevion: Random server" Xevion "irc.xevion.net" (6667 7000 ))
-  ("XNet: Random server" XNet "irc.xnet.org" 6667)
-  ("XWorld: Random server" XWorld "irc.xworld.org" 6667)
-  ("ZAnet Net: Random server" ZAnetNet "irc.zanet.net" 6667)
-  ("ZAnet Org: UK, London" ZAnetOrg "mystic.zanet.org.za" 6667)
-  ("ZiRC: Random server" ZiRC "irc.zirc.org" ((6660 6669)))
-  ("ZUHnet: Random server" ZUHnet "irc.zuh.net" 6667)
-  ("Zurna: Random server" Zurna "irc.zurna.net" 6667))
-  "Alist of irc servers. (NAME NET HOST PORTS) where
-NAME is a name for that server,
-NET is a symbol indicating to which network from `erc-networks-alist' this
-  server corresponds,
-HOST is the servers hostname and
-PORTS is either a number, a list of numbers, or a list of port ranges."
-  :group 'erc-networks
-  :type 'sexp)
-
-(defcustom erc-networks-alist
-  '((4-irc "4-irc.com")
-    (A5KNet "a5knet.com")
-    (AbleNet "ablenet.org")
-    (Accessirc "accessirc.net")
-    (Acestar "acestar.org")
-    (Action-IRC "action-irc.net")
-    (AfterNET "afternet.org")
-    (Alternativenet "altnet.org")
-    (AmigaNet "amiganet.org")
-    (AngelEyez "angeleyez.net")
-    (Anothernet "another.net")
-    (ArabChat "arabchat.org")
-    (AsiaTalk "asiatalk.org")
-    (AstroLink "astrolink.org")
-    (Asylumnet "asylumnet.org")
-    (Austnet "austnet.org")
-    (AwesomeChat "awesomechat.net")
-    (Awesomechristians "awesomechristians.com")
-    (Axenet "axenet.org")
-    (Beyondirc "beyondirc.net")
-    (BGIRC "bulgaria.org")
-    (Blabbernet "blabber.net")
-    (Blitzed "blitzed.org")
-    (BrasIRC "brasirc.net")
-    (BRASnet "brasnet.org")
-    (BubbleNet "bubblenet.org")
-    (CCnet "christian-chat.net")
-    (Chat-Net "chat-net.org")
-    (Chat-Solutions "chat-solutions.org")
-    (Chatcafe "chatcafe.net")
-    (Chatchannel "chatchannel.org")
-    (ChatCircuit "chatcircuit.com")
-    (Chatlink "chatlink.org")
-    (Chatnet "chatnet.org")
-    (ChatNut "chatnut.net")
-    (Chatpinoy "chatpinoy.com")
-    (ChatPR "chatpr.org")
-    (Chatroom "chatroom.org")
-    (Chatster "chatster.org")
-    (ChatX "chatx.net")
-    (China263 "263.net")
-    (Cineplex1 "cineplex1.com")
-    (CNN "cnn.com")
-    (CobraNet "cobra.net")
-    (Coolchat "coolchat.net")
-    (Criten "criten.net")
-    (Cyberchat "cyberchat.org")
-    (CyGanet "cyga.net")
-    (DALnet "dal.net")
-    (Dark-Tou-Net "d-t-net.de")
-    (Darkfire "darkfire.net")
-    (DarkMyst "darkmyst.org")
-    (Darkserv "darkserv.net")
-    (Darksystem "darksystem.com")
-    (Darktree "darktree.net")
-    (DayNet "daynet.org")
-    (Deepspace "deepspace.org")
-    (Different "different.net")
-    (Digarix "digarix.net")
-    (Digatech "digatech.net")
-    (Digital-Base "digital-base.net")
-    (Digitalirc "digitalirc.net")
-    (Discussioni "discussioni.org")
-    (DorukNet "doruk.net.tr")
-    (DWChat "dwchat.net")
-    (Dynastynet "dynastynet.net")
-    (EFnet nil)
-    (EgyptianIRC "egyptianirc.net")
-    (Eircnet "eircnet.org")
-    (Eleethal "eleethal.com")
-    (EntertheGame "enterthegame.com")
-    (EpiKnet "epiknet.org")
-    (EsperNet "esper.net")
-    (Esprit "esprit.net")
-    (euIRC "euirc.net")
-    (Evilzinc "evilzinc.net")
-    (ExodusIRC "exodusirc.net")
-    (FDFnet "fdfnet.net")
-    (FEFnet "fef.net")
-    (Financialchat "financialchat.com")
-    (Forestnet "forestnet.org")
-    (ForeverChat "foreverchat.net")
-    (Fraggers "fraggers.co.uk")
-    (FreedomChat "freedomchat.net")
-    (FreedomIRC "freedomirc.net")
-    (freenode "freenode.net")
-    (FunNet "funnet.org")
-    (GalaxyNet "galaxynet.org")
-    (Gamesnet "gamesnet.net")
-    (GammaForce "gammaforce.org")
-    (GIKInet "giki.edu.pk")
-    (GizNet "giznet.org")
-    (Globalchat "globalchat.org")
-    (GlobIRC "globirc.net")
-    (Goldchat "goldchat.nl")
-    (Goodchatting "goodchatting.com")
-    (GravityLords "gravitylords.net")
-    (GRnet "irc.gr")
-    (GulfChat "gulfchat.net")
-    (HabberNet "habber.net")
-    (HanIRC "hanirc.org")
-    (Hellenicnet "mirc.gr")
-    (IceNet "icenet.org.za")
-    (ICQnet "icq.com")
-    (iip "anon.iip")
-    (Infatech "infatech.net")
-    (Infinity "infinity-irc.org")
-    (Infomatrix "infomatrix.net")
-    (Inside3D "inside3d.net")
-    (InterlinkChat "interlinkchat.net")
-    (IRC-Chile "irc.cl")
-    (IRC-Hispano "irc-hispano.org")
-    (IRCchat "ircchat.tk")
-    (IRCGate "ircgate.net")
-    (IRCGeeks "ircgeeks.org")
-    (IRChat "irchat.net")
-    (IrcLordz "irclordz.com")
-    (IrcMalta "ircmalta.org")
-    (IRCnet nil)
-    (IRCSoulZ "ircsoulz.net")
-    (IRCSul "wnet.com.br")
-    (IrcTalk "irctalk.net")
-    (Irctoo "irctoo.net")
-    (IRCtown "irc.irctown.net")
-    (IRCworld "ircworld.org")
-    (ircXtreme "ircXtreme.net")
-    (Israelnet "israel.net")
-    (K0wNet "k0w.net")
-    (KDFSnet "kdfs.net")
-    (Kemik "kemik.net")
-    (Kewl\.Org "kewl.org")
-    (Kickchat "kickchat.com")
-    (KidsWorld "kidsworld.org")
-    (Knightnet "knightnet.net")
-    (Konfido\.Net "konfido.net")
-    (Kreynet "krey.net")
-    (Krono "krono.net")
-    (Krushnet "krushnet.org")
-    (LagNet "lagnet.org.za")
-    (Librenet "librenet.net")
-    (LinkNet "link-net.org")
-    (Liquidized "liquidized.net")
-    (M-IRC "m-sys.org")
-    (MagicStar "magicstar.net")
-    (Mavra "mavra.net")
-    (MediaDriven "mediadriven.com")
-    (mIRC-X "mircx.com")
-    (Morat "morat.net")
-    (MusicCity "musiccity.com")
-    (Mysteria "mysteria.net")
-    (Mysterychat "mysterychat.net")
-    (Mystical "mystical.net")
-    (Narancs "narancs.com")
-    (Net-France "net-france.com")
-    (Nevernet "nevernet.net")
-    (Newnet "newnet.net")
-    (Nexusirc "nexusirc.org")
-    (NightStar "nightstar.net")
-    (NitrousNet "nitrousnet.net")
-    (Novernet "novernet.com")
-    (Nullrouted "nullrouted.org")
-    (NullusNet "nullus.net")
-    (OpChat "opchat.org")
-    (Openprojects "openprojects.net")
-    (Othernet "othernet.org")
-    (OtherSide "othersideirc.net")
-    (Outsiderz "outsiderz.com")
-    (OzOrg "oz.org")
-    (Peacefulhaven "peacefulhaven.net")
-    (PhazedIRC "phazedirc.net")
-    (Philchat "philchat.net")
-    (phrozN "phrozn.net")
-    (PiNet "praetorians.org")
-    (Pinoycentral "abs-cbn.com")
-    (Planetarion "planetarion.com")
-    (POLNet "ircnet.pl")
-    (Psionics "psionics.net")
-    (PTirc "ptirc.com.pt")
-    (PTlink "ptlink.net")
-    (PTnet "ptnet.org")
-    (QChat "qchat.net")
-    (QuakeNet "quakenet.org")
-    (Realirc "realirc.org")
-    (RealmNET "realmnet.com")
-    (Rebelchat "rebelchat.org")
-    (Red-Latina "red-latina.org")
-    (RedLatona "redlatona.net")
-    (Relicnet "relic.net")
-    (Rezosup "rezosup.org")
-    (Risanet "risanet.com")
-    (Rubiks "rubiks.net")
-    (Rusnet "nil")
-    (Sandnet "sandnet.net")
-    (Scunc "scunc.net")
-    (SerbianCafe "serbiancafe.ws")
-    (SexNet "sexnet.org")
-    (ShadowFire "shadowfire.org")
-    (ShadowWorld "shadowworld.net")
-    (SkyNet "bronowski.pl")
-    (SlashNET "slashnet.org")
-    (SolarStone "solarstone.net")
-    (Sorcery "sorcery.net")
-    (SourceIRC "sourceirc.net")
-    (SpaceTronix "spacetronix.net")
-    (Spirit-Harmony "spirit-harmony.com")
-    (StarChat "starchat.net")
-    (StarEquinox "starequinox.net")
-    (Starlink "starlink.net")
-    (starlink-irc "starlink-irc.org")
-    (StarWars-IRC "starwars-irc.net")
-    (Stormdancing "stormdancing.net")
-    (Superchat "superchat.org")
-    (Sysopnet "sysopnet.org")
-    (Telstra "telstra.com")
-    (TR-net "dominet.com.tr")
-    (Tri-net "tri-net.org")
-    (TriLink "ft4u.net")
-    (TurkishChat "turkishchat.org")
-    (UberNinja "uberninja.net")
-    (UICN "uicn.net")
-    (UltraIRC "ultrairc.net")
-    (UnderChat "underchat.it")
-    (Undernet "undernet.org")
-    (UnderZ "underz.org")
-    (UniChat "irc.uni-chat.net")
-    (UnionLatina "unionlatina.org")
-    (Univers "univers.org")
-    (UnixR "unixr.net")
-    (Vidgamechat "vidgamechat.com")
-    (VirtuaNet "virtuanet.org")
-    (Vitamina "vitamina.ca")
-    (Voila "voila.fr")
-    (Wahou "wf-net.org")
-    (Warpednet "warped.net")
-    (Weaklinks "weaklinks.net")
-    (Webnet "webchat.org")
-    (WinChat "winchat.net")
-    (WinIRC "winirc.org")
-    (WorldIRC "worldirc.org")
-    (WyldRyde "wyldryde.net")
-    (XentoniX "xentonix.net")
-    (Xevion "xevion.net")
-    (XNet "xnet.org")
-    (XWorld "xworld.org")
-    (ZAnetNet "zanet.net")
-    (ZAnetOrg "zanet.org.za")
-    (ZiRC "zirc.org")
-    (ZUHnet "zuh.net")
-    (Zurna "zurna.net"))
-  "Alist of IRC networks. (NET MATCHER) where
-NET is a symbol naming that IRC network and
-MATCHER is used to find a corresponding network to a server while connected to
-  it. If it is regexp, it's used to match against `erc-server-announced-name'.
-  It can also be a function (predicate). Then it is executed with the
-  server buffer as current-buffer."
-  :group 'erc-networks
-  :type '(repeat
-         (list :tag "Network"
-               (symbol :tag "Network name")
-               (choice :tag "Network's common server ending"
-                (regexp)
-                (const :tag "Network has no common server ending" nil)))))
-
-(defvar erc-network nil
-  "The name of the network you are connected to (a symbol).")
-(make-variable-buffer-local 'erc-network)
-
-;; Functions:
-
-;;;###autoload
-(defun erc-determine-network ()
-  "Return the name of the network or \"Unknown\" as a symbol.  Use the
-server parameter NETWORK if provided, otherwise parse the server name and
-search for a match in `erc-networks-alist'."
-  ;; The server made it easy for us and told us the name of the NETWORK
-  (if (assoc "NETWORK" erc-server-parameters)
-      (intern (cdr (assoc "NETWORK" erc-server-parameters)))
-    (or
-     ;; Loop through `erc-networks-alist' looking for a match.
-     (let ((server (or erc-server-announced-name erc-session-server)))
-       (loop for (name matcher) in erc-networks-alist
-            when (and matcher
-                      (string-match (concat matcher "\\'") server))
-            do (return name)))
-     'Unknown)))
-
-(defun erc-network ()
-  "Return the value of `erc-network' for the current server."
-  (with-current-buffer (erc-server-buffer) erc-network))
-
-(defun erc-current-network ()
-  "Deprecated.  Use `erc-network' instead.  Return the name of this server's
-network as a symbol."
-  (with-current-buffer (erc-server-buffer)
-    (intern (downcase (symbol-name erc-network)))))
-
-(erc-make-obsolete 'erc-current-network 'erc-network
-                  "Obsolete since erc-nets 1.5")
-
-(defun erc-network-name ()
-  "Returns the name of the current network as a string."
-  (with-current-buffer (erc-server-buffer) (symbol-name erc-network)))
-
-(defun erc-set-network-name (proc parsed)
-  "Set `erc-network' to the value returned by `erc-determine-network'."
-  (unless erc-server-connected
-    (setq erc-network (erc-determine-network)))
-  nil)
-
-(defun erc-unset-network-name (nick ip reason)
-  "Set `erc-network' to nil."
-  (setq erc-network nil)
-  nil)
-
-(add-hook 'erc-server-375-functions 'erc-set-network-name)
-(add-hook 'erc-server-422-functions 'erc-set-network-name)
-(add-hook 'erc-disconnected-hook 'erc-unset-network-name)
-
-(defun erc-ports-list (ports)
-  "Return a list of PORTS.
-
-PORTS should be a list of either:
-  A number, in which case it is returned a list.
-  Or a pair of the form (LOW HIGH), in which case, a list of all the
-  numbers between LOW and HIGH (inclusive) is returned.
-
-As an example:
-  (erc-ports-list '(1)) => (1)
-  (erc-ports-list '((1 5))) => (1 2 3 4 5)
-  (erc-ports-list '(1 (3 5))) => (1 3 4 5)"
-  (let (result)
-    (dolist (p ports)
-      (cond ((numberp p)
-            (push p result))
-           ((listp p)
-            (setq result (nconc (loop for i from (cadr p) downto (car p)
-                                      collect i)
-                                result)))))
-    (nreverse result)))
-
-;;;###autoload
-(defun erc-server-select ()
-  "Interactively select a server to connect to using `erc-server-alist'."
-  (interactive)
-  (let* ((completion-ignore-case t)
-        (net (intern
-              (completing-read "Network: "
-                               (erc-delete-dups
-                                (mapcar (lambda (x)
-                                          (list (symbol-name (nth 1 x))))
-                                        erc-server-alist)))))
-        (srv (assoc
-              (completing-read "Server: "
-                               (delq nil
-                                     (mapcar (lambda (x)
-                                               (when (equal (nth 1 x) net)
-                                                 x))
-                                             erc-server-alist)))
-              erc-server-alist))
-        (host (nth 2 srv))
-        (ports (if (listp (nth 3 srv))
-                   (erc-ports-list (nth 3 srv))
-                 (list (nth 3 srv))))
-        (port (nth (random (length ports)) ports)))
-    (erc host port erc-nick erc-user-full-name t)))
-
-;;; The following experimental
-;; It does not work yet, help me with it if you
-;; think it is worth the effort.
-
-(defvar erc-settings
-  '((pals freenode ("kensanata" "shapr" "anti\\(fuchs\\|gone\\)"))
-    (format-nick-function (freenode "#emacs") erc-format-@nick))
-  "Experimental: Alist of configuration options.
-The format is (VARNAME SCOPE VALUE) where
-VARNAME is a symbol identifying the configuration option,
-SCOPE is either a symbol which identifies an entry from
-  `erc-networks-alist' or a list (NET TARGET) where NET is a network symbol and
-  TARGET is a string identifying the channel/query target.
-VALUE is the options value.")
-
-(defun erc-get (var &optional net target)
-  (let ((items erc-settings)
-       elt val)
-    (while items
-      (setq elt (car items)
-           items (cdr items))
-      (when (eq (car elt) var)
-       (cond ((and net target (listp (nth 1 elt))
-                   (eq net (car (nth 1 elt)))
-                   (string-equal target (nth 1 (nth 1 elt))))
-              (setq val (nth 2 elt)
-                    items nil))
-             ((and net (eq net (nth 1 elt)))
-              (setq val (nth 2 elt)
-                    items nil))
-             ((and (not net) (not target) (not (nth 1 elt)))
-              (setq val (nth 2 elt)
-                    items nil)))))
-    val))
-
-(erc-get 'pals 'freenode)
-
-
-(provide 'erc-nets)
-
-;;; erc-nets.el ends here
-;;
-;; Local Variables:
-;; indent-tabs-mode: t
-;; tab-width: 8
-;; End:
-
-;; arch-tag: 68cccabd-f66b-456c-9abe-5f993a2dc91c
diff --git a/lisp/erc/erc-networks.el b/lisp/erc/erc-networks.el
new file mode 100644 (file)
index 0000000..b79a56a
--- /dev/null
@@ -0,0 +1,860 @@
+;;; erc-networks.el --- IRC networks
+
+;; Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
+
+;; Author: Mario Lang <mlang@lexx.delysid.org>
+;; Keywords: comm
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation; either version 2, or (at your option)
+;; any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING.  If not, write to the
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
+
+;;; Commentary:
+
+;; This file deals with IRC networks.
+;;
+;; Usage:
+;;
+;; Put into your .emacs:
+;;
+;; (require 'erc-networks)
+;;
+;; M-x erc-server-select provides an alternative way to connect to servers by
+;; choosing networks.
+;; You can use (eq (erc-network) 'Network) if you'd like to set variables or do
+;; certain actions according to which network you're connected to.
+;; If a network you use is not listed in `erc-networks-alist', you can put
+;; (add-to-list 'erc-networks-alist '(Network "irc.server-name.net")) in your
+;; config file.
+
+;;; Code:
+
+(require 'erc)
+(eval-when-compile (require 'cl))
+
+;; Variables
+
+(defgroup erc-networks nil
+  "IRC Networks"
+  :group 'erc)
+
+(defcustom erc-server-alist
+'(("4-irc: Random server" 4-irc "4-irc.com" 6667)
+  ("A5KNet: Random server" A5KNet "irc.a5knet.com" ((6660 6669)))
+  ("AbleNet: Random server" AbleNet "irc.ablenet.org" 6667)
+  ("Accessirc: Random server" Accessirc "irc.accessirc.net" 6667)
+  ("Acestar: Random server" Acestar "irc.acestar.org" 6667)
+  ("Action-IRC: Random server" Action-IRC "irc.action-irc.net" ((6660 6669)))
+  ("AfterNET: Random server" AfterNET "irc.afternet.org" 6667)
+  ("Alternativenet: Random server" Alternativenet "irc.altnet.org" 6667)
+  ("AmigaNet: Random server" AmigaNet "irc.amiganet.org" 6667)
+  ("AngelEyez: Random server" AngelEyez "irc.angeleyez.net" ((6666 7000)))
+  ("AnotherNet: Random server" Anothernet "irc.another.net" (6667 7000 ))
+  ("ArabChat: Random server" ArabChat "irc.arabchat.org" ((6660 6667)))
+  ("AsiaTalk: Random server" AsiaTalk "irc.asiatalk.org" ((6667 6669) 7000 ))
+  ("AstroLink: Random server" AstroLink "irc.astrolink.org" ((6660 6667)))
+  ("Asylumnet: Random server" Asylumnet "irc.asylum-net.org" ((6661 6669) 7000 7777 ))
+  ("Austnet: Random AU server" Austnet "au.austnet.org" 6667)
+  ("Austnet: Random NZ server" Austnet "nz.austnet.org" 6667)
+  ("Austnet: Random SG server" Austnet "sg.austnet.org" 6667)
+  ("Austnet: Random US server" Austnet "us.austnet.org" 6667)
+  ("AwesomeChat: Random server" AwesomeChat "irc.awesomechat.net" ((6661 6669)))
+  ("Awesomechristians: Random server" Awesomechristians "irc.awesomechristians.com" 7000)
+  ("Axenet: Random server" Axenet "irc.axenet.org" ((6660 6667)))
+  ("BeyondIRC: Random server" Beyondirc "irc.beyondirc.net" ((6660 6669)))
+  ("BGIRC: Random server" BGIRC "irc.bulgaria.org" ((6666 6669) 7000 ))
+  ("Blabbernet: Random server" Blabbernet "irc.blabber.net" (6667 7000 ))
+  ("Blitzed: Random server" Blitzed "irc.blitzed.org" (6667 7000 ))
+  ("Brasirc: Random server" Brasirc "irc.brasirc.net" ((6666 6667)))
+  ("Brasirc: BR, PA, Belem" Brasirc "irc.libnet.com.br" ((6666 6668) 7777 8002 ))
+  ("BRASnet: Random European server" BRASnet "eu.brasnet.org" ((6665 6669)))
+  ("BRASnet: Random US server" BRASnet "us.brasnet.org" ((6665 6669)))
+  ("BubbleNet: Random server" BubbleNet "irc.bubblenet.org" ((6667 6669)))
+  ("CCnet: Random server" CCnet "irc.cchat.net" (6667 7000 ))
+  ("CCnet: US, TX, Dallas" CCnet "irc2.cchat.net" (6667 7000 ))
+  ("Chat-Net: Random server" Chat-Net "irc.chat-net.org" 6667)
+  ("Chat-Solutions: Random server" Chat-Solutions "irc.chat-solutions.org" 6667)
+  ("Chatcafe: Random server" Chatcafe "irc.chatcafe.net" 6667)
+  ("Chatchannel: Random server" Chatchannel "irc.chatchannel.org" ((6666 6669) 7000 ))
+  ("ChatCircuit: Random server" ChatCircuit "irc.chatcircuit.com" 6668)
+  ("Chatlink: Random server" Chatlink "irc.chatlink.org" 6667)
+  ("Chatnet: Random AU server" Chatnet "au.chatnet.org" 6667)
+  ("Chatnet: Random EU server" Chatnet "eu.chatnet.org" 6667)
+  ("Chatnet: Random US server" Chatnet "us.chatnet.org" 6667)
+  ("ChatNut: Random server" ChatNut "irc.chatnut.net" (6667 7000 ))
+  ("Chatpinoy: Random server" Chatpinoy "irc.chatpinoy.com" 6667)
+  ("ChatPR: Random server" ChatPR "irc.chatpr.org" 6667)
+  ("Chatroom: Random server" Chatroom "irc.chatroom.org" 6667)
+  ("Chatster: Random server" Chatster "irc.chatster.org" 6667)
+  ("ChatX: Random server" ChatX "irc.chatx.net" 6667)
+  ("China263: Random server" China263 "irc.263.net" 6667)
+  ("Cineplex1: Random server" Cineplex1 "irc.cineplex1.com" ((6666 6668)))
+  ("CNN: CNN News discussions" CNN "chat.cnn.com" ((6667 6669) 7000 ))
+  ("CobraNet: Random server" CobraNet "irc.cobra.net" 6667)
+  ("Coolchat: Random server" Coolchat "irc.coolchat.net" 6667)
+  ("Criten: Random server" Criten "irc.criten.net" 6667)
+  ("Cyberchat: Random server" Cyberchat "irc.cyberchat.org" (6667 6668 ))
+  ("CyGanet: Random server" CyGanet "irc.cyga.net" 6667)
+  ("DALnet: AS, MY, Coins" DALnet "coins.dal.net" ((6663 6668) 7000 ))
+  ("DALnet: CA, ON, Sodre" DALnet "sodre.on.ca.dal.net" ((6661 6669) 7000 ))
+  ("DALnet: EU, DE, Nexgo" DALnet "nexgo.de.eu.dal.net" ((6664 6669) 7000 ))
+  ("DALnet: EU, NO, Powertech" DALnet "powertech.no.eu.dal.net" ((6666 6667) 7000 ))
+  ("DALnet: EU, SE, Borg" DALnet "borg.se.eu.dal.net" (6667 7000 ))
+  ("DALnet: EU, SE, Ced" DALnet "ced.se.eu.dal.net" (6667 7000 ))
+  ("DALnet: US, GA, Astro" DALnet "astro.ga.us.dal.net" ((6661 6669) 7000 ))
+  ("DALnet: US, GA, Dragons" DALnet "dragons.ga.us.dal.net" ((6661 6669) 7000 ))
+  ("DALnet: US, GA, Elysium" DALnet "elysium.ga.us.dal.net" ((6661 6669) 7000 ))
+  ("DALnet: US, MA, Twisted" DALnet "twisted.ma.us.dal.net" ((6660 6669) 7001 7002 ))
+  ("DALnet: US, MO, Global" DALnet "global.mo.us.dal.net" ((6661 6669) 7000 ))
+  ("DALnet: US, NJ, Liberty" DALnet "liberty.nj.us.dal.net" ((6662 6669) 7000 ))
+  ("DALnet: US, VA, Wombat" DALnet "wombat.va.us.dal.net" ((6661 6669) 7000 ))
+  ("DALnet: Random EU server" DALnet "irc.eu.dal.net" 6667)
+  ("DALnet: Random US server" DALnet "irc.dal.net" ((6660 6667)))
+  ("Dark-Tou-Net: Random server" Dark-Tou-Net "irc.d-t-net.de" 6667)
+  ("Darkfire: Random server" Darkfire "irc.darkfire.net" (6667 7000 8000 ))
+  ("DarkMyst: Random server" DarkMyst "irc.darkmyst.org" 6667)
+  ("Darkserv: Random server" Darkserv "irc.darkserv.net" 6667)
+  ("Darksystem: Random server" Darksystem "irc.darksystem.com" 6667)
+  ("Darktree: Random server" Darktree "irc.darktree.net" 6667)
+  ("DayNet: Random server" DayNet "irc.daynet.org" 6667)
+  ("Deepspace: Disability network" Deepspace "irc.deepspace.org" 6667)
+  ("Different: Random server" Different "irc.different.net" 6667)
+  ("Digarix: Random server" Digarix "irc.digarix.net" 6667)
+  ("Digatech: Random server" Digatech "irc.digatech.net" 6667)
+  ("Digital-Base: Random server" Digital-Base "irc.digital-base.net" ((6660 7000)))
+  ("Digitalirc: Random server" Digitalirc "irc.digitalirc.net" 6667)
+  ("Discussioni: Random server" Discussioni "irc.discussioni.org" ((6666 6669)))
+  ("DorukNet: TR, Istanbul" DorukNet "irc.doruk.net.tr" ((6660 6669) 7000 8888 ))
+  ("Dreamcast: Random server" Dreamcast "irc0.dreamcast.com" 6667)
+  ("DWChat: Random server" DWChat "irc.dwchat.net" 6667)
+  ("Dynastynet: Random server" Dynastynet "irc.dynastynet.net" 6667)
+  ("EFnet: CA, AB, Edmonton (arcti)" EFnet "irc.arcti.ca" 6667)
+  ("EFnet: CA, AB, Edmonton (mpls)" EFnet "irc.mpls.ca" ((6660 6669)))
+  ("EFnet: CA, ON, Toronto" EFnet "irc2.magic.ca" 6667)
+  ("EFnet: CA, QB, Montreal" EFnet "irc.qeast.net" 6667)
+  ("EFnet: EU, DK, Aarhus" EFnet "irc.inet.tele.dk" 6667)
+  ("EFnet: EU, FI, Helsinki" EFnet "efnet.cs.hut.fi" 6667)
+  ("EFnet: EU, FR, Paris" EFnet "irc.isdnet.fr" ((6667 6669)))
+  ("EFnet: EU, NL, Amsterdam" EFnet "efnet.vuurwerk.nl" 6667)
+  ("EFnet: EU, NO, Homelien" EFnet "irc.homelien.no" (5190 (6666 6667) (7000 7001) ))
+  ("EFnet: EU, NO, Oslo" EFnet "irc.daxnet.no" ((6666 7000)))
+  ("EFnet: EU, PL, Warszawa" EFnet "irc.efnet.pl" 6667)
+  ("EFnet: EU, RU, Moscow" EFnet "irc.rt.ru" ((6661 6669)))
+  ("EFnet: EU, SE, Dalarna" EFnet "irc.du.se" ((6666 6669)))
+  ("EFnet: EU, SE, Gothenberg" EFnet "irc.hemmet.chalmers.se" ((6666 7000)))
+  ("EFnet: EU, SE, Sweden" EFnet "irc.light.se" 6667)
+  ("EFnet: EU, UK, London (carrier)" EFnet "irc.carrier1.net.uk" ((6666 6669)))
+  ("EFnet: EU, UK, London (demon)" EFnet "efnet.demon.co.uk" ((6665 6669)))
+  ("EFnet: ME, IL, Inter" EFnet "irc.inter.net.il" ((6665 6669)))
+  ("EFnet: US, AZ, Phoenix" EFnet "irc.easynews.com" (6660 (6665 6667) 7000 ))
+  ("EFnet: US, CA, San Jose" EFnet "irc.concentric.net" ((6665 6668)))
+  ("EFnet: US, CA, San Luis Obispo" EFnet "irc.prison.net" ((6666 6667)))
+  ("EFnet: US, GA, Atlanta" EFnet "irc.mindspring.com" ((6660 6669)))
+  ("EFnet: US, MI, Ann Arbor" EFnet "irc.umich.edu" 6667)
+  ("EFnet: US, MN, Twin Cities" EFnet "irc.umn.edu" ((6665 6669)))
+  ("EFnet: US, NY, Mineola" EFnet "irc.lightning.net" ((6665 7000)))
+  ("EFnet: US, NY, New York (east)" EFnet "irc.east.gblx.net" 6667)
+  ("EFnet: US, NY, New York (flamed)" EFnet "irc.flamed.net" ((6665 6669)))
+  ("EFnet: US, TX, Houston" EFnet "ircd.lagged.org" ((6660 6669)))
+  ("EFnet: US, VA, Ashburn" EFnet "irc.secsup.uu.net" ((6665 6669) 8080 ))
+  ("EFnet: Random AU server" EFnet "au.rr.efnet.net" 6667)
+  ("EFnet: Random CA server" EFnet "ca.rr.efnet.net" 6667)
+  ("EFnet: Random EU server" EFnet "eu.rr.efnet.net" 6667)
+  ("EFnet: Random US server" EFnet "us.rr.efnet.net" 6667)
+  ("EgyptianIRC: Random server" EgyptianIRC "irc.egyptianirc.net" ((6667 6669)))
+  ("Eircnet: Random server" Eircnet "irc.eircnet.org" ((6660 6669) 7000 ))
+  ("Eleethal: Random server" Eleethal "irc.eleethal.com" ((6660 6669) 7000 ))
+  ("EntertheGame: Random server" EntertheGame "irc.enterthegame.com" ((6667 6669)))
+  ("EpiKnet: Random server" EpiKnet "irc.epiknet.org" ((6660 6669) 7000 7001 ))
+  ("EsperNet: Random server" EsperNet "irc.esper.net" (5555 (6667 6669) ))
+  ("Esprit: Random server" Esprit "irc.esprit.net" 6667)
+  ("euIRC: Random server" euIRC "irc.euirc.net" ((6665 6669)))
+  ("Evilzinc: Random server" Evilzinc "irc.evilzinc.net" ((6660 6669) 7000 8000 ))
+  ("ExodusIRC: Random server" ExodusIRC "irc.exodusirc.net" ((6660 6669)))
+  ("FDFnet: Random server" FDFnet "irc.fdfnet.net" ((6666 6668) 9999 ))
+  ("FEFnet: Random server" FEFnet "irc.fef.net" 6667)
+  ("Financialchat: Random server" Financialchat "irc.financialchat.com" ((6667 6669) 7000 ))
+  ("Forestnet: Random server" Forestnet "irc.forestnet.org" (6667 7000 ))
+  ("ForeverChat: Random server" ForeverChat "irc.foreverchat.net" ((6660 6669) 7000 ))
+  ("Fraggers: Random server" Fraggers "irc.fraggers.co.uk" ((6661 6669) (7000 7001) ))
+  ("FreedomChat: Random server" FreedomChat "chat.freedomchat.net" 6667)
+  ("FreedomIRC: Random server" FreedomIRC "irc.freedomirc.net" 6667)
+  ("Freenode: Random server" freenode "irc.freenode.net" 6667)
+  ("Freenode: Random EU server" freenode "irc.eu.freenode.net" 6667)
+  ("Freenode: Random US server" freenode "irc.us.freenode.net" 6667)
+  ("FunNet: Random server" FunNet "irc.funnet.org" 6667)
+  ("Galaxynet: Random server" GalaxyNet "irc.galaxynet.org" ((6662 6668) 7000 ))
+  ("Galaxynet: AU, NZ, Auckland" GalaxyNet "auckland.nz.galaxynet.org" ((6661 6669)))
+  ("Galaxynet: EU, BE, Online" GalaxyNet "online.be.galaxynet.org" ((6661 6669)))
+  ("Galaxynet: US, FL, Florida" GalaxyNet "gymnet.us.galaxynet.org" ((6661 6669)))
+  ("Gamesnet: Random east US server" Gamesnet "east.gamesnet.net" 6667)
+  ("Gamesnet: Random west US server" Gamesnet "west.gamesnet.net" 6667)
+  ("GammaForce: Random server" GammaForce "irc.gammaforce.org" ((6660 6669) 7000 ))
+  ("GIKInet: Random server" GIKInet "irc.giki.edu.pk" 6667)
+  ("GizNet: Random server" GizNet "irc.giznet.org" ((6666 6669) 7000 ))
+  ("Globalchat: Random server" Globalchat "irc.globalchat.org" 6667)
+  ("GlobIRC: Random server" GlobIRC "irc.globirc.net" ((6666 6668) 9999 ))
+  ("Goldchat: Random server" Goldchat "irc.goldchat.nl" ((6660 6669) 7000 ))
+  ("Goodchatting: Random server" Goodchatting "irc.goodchatting.com" ((6661 6669) 7000 ))
+  ("GravityLords: Random server" GravityLords "irc.gravitylords.net" 6667)
+  ("Grnet: Random EU server" GRnet "gr.irc.gr" (6667 7000 ))
+  ("Grnet: Random server" GRnet "srv.irc.gr" (6667 7000 ))
+  ("Grnet: Random US server" GRnet "us.irc.gr" (6667 7000 ))
+  ("GulfChat: Random server" GulfChat "irc.gulfchat.net" ((6660 6669)))
+  ("HabberNet: Random server" HabberNet "irc.habber.net" 6667)
+  ("HanIRC: Random server" HanIRC "irc.hanirc.org" 6667)
+  ("Hellenicnet: Random server" Hellenicnet "irc.mirc.gr" (6667 7000 ))
+  ("IceNet: Random server" IceNet "irc.icenet.org.za" 6667)
+  ("ICQnet: Random server" ICQnet "irc.icq.com" 6667)
+  ("Infatech: Random server" Infatech "irc.infatech.net" ((6660 6669)))
+  ("Infinity: Random server" Infinity "irc.infinity-irc.org" 6667)
+  ("Infomatrix: Random server" Infomatrix "irc.infomatrix.net" 6667)
+  ("Inside3D: Random server" Inside3D "irc.inside3d.net" ((6661 6669)))
+  ("InterlinkChat: Random server" InterlinkChat "irc.interlinkchat.net" ((6660 6669) 7000 ))
+  ("IRC-Chile: Random server" IRC-Chile "irc.cl" 6667)
+  ("IRC-Hispano: Random server" IRC-Hispano "irc.irc-hispano.org" 6667)
+  ("IRCchat: Random server" IRCchat "irc.ircchat.tk" 6667)
+  ("IRCGate: Random server" IRCGate "irc.ircgate.net" ((6667 6669)))
+  ("IRCGeeks: Random server" IRCGeeks "irc.ircgeeks.org" ((6660 6669)))
+  ("IRChat: Random server" IRChat "irc.irchat.net" ((6660 6669)))
+  ("IrcLordz: Random server" IrcLordz "irc.irclordz.com" 6667)
+  ("IrcMalta: Random server" IrcMalta "irc.ircmalta.org" ((6660 6667)))
+  ("IRCnet: EU, FR, Random" IRCnet "irc.fr.ircnet.net" 6667)
+  ("IRCnet: EU, IT, Random" IRCnet "irc.ircd.it" ((6665 6669)))
+  ("IRCnet: AS, IL, Haifa" IRCnet "ircnet.netvision.net.il" ((6661 6668)))
+  ("IRCnet: AS, JP, Tokyo" IRCnet "irc.tokyo.wide.ad.jp" 6667)
+  ("IRCnet: AS, TW, Seed" IRCnet "irc.seed.net.tw" 6667)
+  ("IRCnet: EU, AT, Linz" IRCnet "linz.irc.at" ((6666 6668)))
+  ("IRCnet: EU, AT, Wien" IRCnet "vienna.irc.at" ((6666 6669)))
+  ("IRCnet: EU, BE, Brussels" IRCnet "irc.belnet.be" 6667)
+  ("IRCnet: EU, BE, Zaventem" IRCnet "ircnet.wanadoo.be" ((6661 6669)))
+  ("IRCnet: EU, CZ, Prague" IRCnet "irc.felk.cvut.cz" 6667)
+  ("IRCnet: EU, DE, Berlin" IRCnet "irc.fu-berlin.de" ((6665 6669)))
+  ("IRCnet: EU, DE, Dusseldorf" IRCnet "irc.freenet.de" ((6665 6669)))
+  ("IRCnet: EU, DE, Stuttgart" IRCnet "irc.belwue.de" ((6665 6669)))
+  ("IRCnet: EU, DK, Copenhagen" IRCnet "irc.ircnet.dk" 6667)
+  ("IRCnet: EU, EE, Tallinn" IRCnet "irc.estpak.ee" ((6666 6668)))
+  ("IRCnet: EU, FI, Helsinki" IRCnet "irc.cs.hut.fi" 6667)
+  ("IRCnet: EU, GR, Thessaloniki" IRCnet "irc.ee.auth.gr" ((6666 6669)))
+  ("IRCnet: EU, HU, Budapest" IRCnet "irc.elte.hu" 6667)
+  ("IRCnet: EU, IS, Reykjavik (ircnet)" IRCnet "irc.ircnet.is" ((6661 6669)))
+  ("IRCnet: EU, IS, Reykjavik (simnet)" IRCnet "irc.simnet.is" ((6661 6669)))
+  ("IRCnet: EU, IT, Rome" IRCnet "irc.tin.it" ((6665 6669)))
+  ("IRCnet: EU, NL, Amsterdam (nlnet)" IRCnet "irc.nl.uu.net" ((6660 6669)))
+  ("IRCnet: EU, NL, Amsterdam (xs4all)" IRCnet "irc.xs4all.nl" ((6660 6669)))
+  ("IRCnet: EU, NL, Enschede" IRCnet "irc.snt.utwente.nl" ((6660 6669)))
+  ("IRCnet: EU, NL, Nijmegen" IRCnet "irc.sci.kun.nl" ((6660 6669)))
+  ("IRCnet: EU, NO, Oslo" IRCnet "irc.ifi.uio.no" 6667)
+  ("IRCnet: EU, NO, Trondheim" IRCnet "irc.pvv.ntnu.no" 6667)
+  ("IRCnet: EU, PL, Lublin" IRCnet "lublin.irc.pl" ((6666 6668)))
+  ("IRCnet: EU, PL, Warsaw" IRCnet "warszawa.irc.pl" ((6666 6668)))
+  ("IRCnet: EU, RU, Moscow" IRCnet "irc.msu.ru" 6667)
+  ("IRCnet: EU, SE, Lulea" IRCnet "irc.ludd.luth.se" ((6661 6669)))
+  ("IRCnet: EU, UK, London (Demon)" IRCnet "ircnet.demon.co.uk" ((6665 6669)))
+  ("IRCnet: EU, UK, London (Easynet)" IRCnet "ircnet.easynet.co.uk" ((6666 6669)))
+  ("IRCnet: US, NY, New York" IRCnet "irc.stealth.net" ((6660 6669)))
+  ("IRCnet: Random AU server" IRCnet "au.ircnet.org" 6667)
+  ("IRCnet: Random EU server" IRCnet "eu.ircnet.org" ((6665 6668)))
+  ("IRCnet: Random US server" IRCnet "us.ircnet.org" ((6665 6668)))
+  ("IRCSoulZ: Random server" IRCSoulZ "irc.ircsoulz.net" 6667)
+  ("IRCSul: BR, PR, Maringa" IRCSul "irc.wnet.com.br" 6667)
+  ("IrcTalk: Random server" IrcTalk "irc.irctalk.net" ((6660 6669)))
+  ("Irctoo: Random server" Irctoo "irc.irctoo.net" 6667)
+  ("IRCtown: Random server" IRCtown "irc.irctown.net" ((6666 6669) 7000 ))
+  ("IRCworld: Random server" IRCworld "irc.ircworld.org" 6667)
+  ("ircXtreme: Random server" ircXtreme "irc.ircXtreme.net" ((6660 6669)))
+  ("Israelnet: Random server" Israelnet "irc.israel.net" 6667)
+  ("K0wNet: Random server" K0wNet "irc.k0w.net" ((6660 6669)))
+  ("KDFSnet: Random server" KDFSnet "irc.kdfs.net" ((6667 6669)))
+  ("Kemik: Random server" Kemik "irc.kemik.net" 6667)
+  ("Kewl.Org: Random server" Kewl.Org "irc.kewl.org" (6667 7000 ))
+  ("Kickchat: Random server" Kickchat "irc.kickchat.com" ((6660 6669) 7000 ))
+  ("Kidsworld: Random server" KidsWorld "irc.kidsworld.org" ((6666 6669)))
+  ("Knightnet: AF, ZA, Durban" Knightnet "orc.dbn.za.knightnet.net" (6667 5555 ))
+  ("Knightnet: US, CA, Goldengate" Knightnet "goldengate.ca.us.knightnet.net" (6667 5555 ))
+  ("Konfido.Net: Random server" Konfido.Net "irc.konfido.net" 6667)
+  ("KreyNet: Random server" Kreynet "irc.krey.net" 6667)
+  ("Krono: Random server" Krono "irc.krono.net" ((6660 6669) 7000 ))
+  ("Krushnet: Random server" Krushnet "irc.krushnet.org" 6667)
+  ("LagNet: Random server" LagNet "irc.lagnet.org.za" 6667)
+  ("LagNet: AF, ZA, Cape Town" LagNet "reaper.lagnet.org.za" 6667)
+  ("LagNet: AF, ZA, Johannesburg" LagNet "mystery.lagnet.org.za" 6667)
+  ("Librenet: Random server" Librenet "irc.librenet.net" 6667)
+  ("LinkNet: Random server" LinkNet "irc.link-net.org" ((6667 6669)))
+  ("Liquidized: Random server" Liquidized "irc.liquidized.net" (6667 7000 ))
+  ("M-IRC: Random server" M-IRC "irc.m-sys.org" ((6667 6669)))
+  ("MagicStar: Random server" MagicStar "irc.magicstar.net" 6667)
+  ("Mavra: Random server" Mavra "irc.mavra.net" 6667)
+  ("MediaDriven: Random server" MediaDriven "irc.mediadriven.com" ((6667 6669)))
+  ("mIRC-X: Random server" mIRC-X "irc.mircx.com" (6667 7000 ))
+  ("Morat: Random server" Morat "irc.morat.net" 6667)
+  ("MusicCity: Random server" MusicCity "chat.musiccity.com" 6667)
+  ("Mysteria: Random server" Mysteria "irc.mysteria.net" (6667 7000 ))
+  ("Mysterychat: Random server" Mysterychat "irc.mysterychat.net" ((6667 6669)))
+  ("Mystical: Random server" Mystical "irc.mystical.net" (6667 7000 ))
+  ("Narancs: Random server" Narancs "irc.narancs.com" ((6667 6669) 7000 ))
+  ("Net-France: Random server" Net-France "irc.net-france.com" 6667)
+  ("Nevernet: Random server" Nevernet "irc.nevernet.net" 6667)
+  ("Newnet: Random server" Newnet "irc.newnet.net" ((6665 6667)))
+  ("Nexusirc: Random server" Nexusirc "irc.nexusirc.org" 6667)
+  ("Nightstar: Random server" NightStar "irc.nightstar.net" ((6665 6669)))
+  ("NitrousNet: Random server" NitrousNet "irc.nitrousnet.net" 6667)
+  ("Novernet: Random server" Novernet "irc.novernet.com" ((6665 6669) 7000 ))
+  ("Nullrouted: Random server" Nullrouted "irc.nullrouted.org" ((6666 6669) 7000 ))
+  ("NullusNet: Random server" NullusNet "irc.nullus.net" 6667)
+  ("OpChat: Random server" OpChat "irc.opchat.org" ((6667 6669)))
+  ("Othernet: Random server" Othernet "irc.othernet.org" 6667)
+  ("Othernet: US, FL, Miami" Othernet "miami.fl.us.othernet.org" 6667)
+  ("Othernet: US, MO, StLouis" Othernet "stlouis.mo.us.othernet.org" 6667)
+  ("Otherside: Random server" OtherSide "irc.othersideirc.net" 6667)
+  ("Outsiderz: Random server" Outsiderz "irc.outsiderz.com" 6667)
+  ("OzOrg: AU, Perth" OzOrg "iinet.perth.oz.org" 6667)
+  ("Peacefulhaven: Random server" Peacefulhaven "irc.peacefulhaven.net" ((6660 6669) 7000 ))
+  ("PhazedIRC: Random server" PhazedIRC "irc.phazedirc.net" 6667)
+  ("Philchat: Random server" Philchat "irc.philchat.net" 6667)
+  ("phrozN: Random server" phrozN "irc.phrozn.net" 6667)
+  ("PiNet: Random server" PiNet "irc.praetorians.org" ((6665 6669)))
+  ("Pinoycentral: Random server" Pinoycentral "chat.abs-cbn.com" 6667)
+  ("Planetarion: Random server" Planetarion "irc.planetarion.com" 6667)
+  ("POLNet: Random server" POLNet "irc.ircnet.pl" 6667)
+  ("Psionics: CA, PQ, Montreal" Psionics "chat.psionics.net" ((6660 6669)))
+  ("PTirc: Random server" PTirc "irc.ptirc.com.pt" 6667)
+  ("PTlink: Random server" PTlink "irc.ptlink.net" 6667)
+  ("PTnet: Random server" PTnet "irc.ptnet.org" 6667)
+  ("QChat: Random server" QChat "irc.qchat.net" 6667)
+  ("QuakeNet: Random German server" QuakeNet "de.quakenet.org" ((6667 6669)))
+  ("QuakeNet: Random server" QuakeNet "irc.quakenet.eu.org" ((6667 6669)))
+  ("QuakeNet: Random Swedish server" QuakeNet "se.quakenet.org" ((6667 6669)))
+  ("QuakeNet: Random UK server" QuakeNet "uk.quakenet.org" ((6667 6669)))
+  ("QuakeNet: Random US server" QuakeNet "us.quakenet.org" ((6667 6669)))
+  ("Realirc: Random server" Realirc "irc.realirc.org" 6667)
+  ("RealmNET: Random server" RealmNET "irc.realmnet.com" 6667)
+  ("Rebelchat: Random server" Rebelchat "irc.rebelchat.org" 6667)
+  ("Red-Latina: Random server" Red-Latina "irc.red-latina.org" 6667)
+  ("RedLatona: Random server" RedLatona "irc.redlatona.net" (6667 6668 ))
+  ("Relicnet: Random server" Relicnet "irc.relic.net" 6667)
+  ("Rezosup: Random server" Rezosup "irc.rezosup.org" 6667)
+  ("Risanet: Random server" Risanet "irc.risanet.com" ((6667 6669)))
+  ("Rubiks: Random server" Rubiks "irc.rubiks.net" 6667)
+  ("Rusnet: EU, RU, Tomsk" Rusnet "irc.tsk.ru" ((6667 6669) (7770 7775) ))
+  ("Rusnet: EU, RU, Vladivostok" Rusnet "irc.vladivostok.ru" ((6667 6669) (7770 7775) ))
+  ("Rusnet: EU, UA, Kiev" Rusnet "irc.kar.net" ((6667 6669) (7770 7775) ))
+  ("Sandnet: Random server" Sandnet "irc.sandnet.net" ((6660 6669) 7000 ))
+  ("Scunc: Random server" Scunc "irc.scunc.net" 6667)
+  ("SerbianCafe: Random server" SerbianCafe "irc.serbiancafe.ws" ((6665 6669)))
+  ("SexNet: Random server" SexNet "irc.sexnet.org" 6667)
+  ("ShadowFire: Random server" ShadowFire "irc.shadowfire.org" 6667)
+  ("ShadowWorld: Random server" ShadowWorld "irc.shadowworld.net" 6667)
+  ("SkyNet: Random server" SkyNet "irc.bronowski.pl" ((6666 6668)))
+  ("Slashnet: Random server" Slashnet "irc.slashnet.org" 6667)
+  ("SolarStone: Random server" SolarStone "irc.solarstone.net" ((6660 6669)))
+  ("Sorcerynet: Random server" Sorcery "irc.sorcery.net" (6667 7000 9000 ))
+  ("Sorcerynet: EU, SE, Karlskrona" Sorcery "nexus.sorcery.net" (6667 7000 9000 ))
+  ("Sorcerynet: US, CA, Palo Alto" Sorcery "kechara.sorcery.net" (6667 7000 9000 ))
+  ("SourceIRC: Random server" SourceIRC "irc.sourceirc.net" ((6667 6669) 7000 ))
+  ("SpaceTronix: Random server" SpaceTronix "irc.spacetronix.net" ((6660 6669) 7000 ))
+  ("Spirit-Harmony: Random server" Spirit-Harmony "irc.spirit-harmony.com" ((6661 6669)))
+  ("StarChat: Random server" StarChat "irc.starchat.net" ((6667 6669) 7000 ))
+  ("StarEquinox: Random server" StarEquinox "irc.starequinox.net" ((6660 6669)))
+  ("StarLink: Random server" Starlink "irc.starlink.net" ((6660 6669)))
+  ("StarLink-irc: Random server" starlink-irc "irc.starlink-irc.org" 6667)
+  ("StarWars-IRC: Random server" StarWars-IRC "irc.starwars-irc.net" ((6663 6667)))
+  ("Stormdancing: Random server" Stormdancing "irc.stormdancing.net" ((6664 6669) 7000 9000 ))
+  ("Superchat: Random server" Superchat "irc.superchat.org" ((6660 6668)))
+  ("Sysopnet: Random server" Sysopnet "irc.sysopnet.org" ((6666 6668)))
+  ("Telstra: Random server" Telstra "irc.telstra.com" ((6667 6669)))
+  ("TR-net: EU, TR, Ankara" TR-net "irc.dominet.com.tr" 6667)
+  ("TR-net: EU, Tr, Istanbul" TR-net "irc.teklan.com.tr" 6667)
+  ("Tri-net: Random server" Tri-net "irc.tri-net.org" 6667)
+  ("TriLink: Random server" TriLink "irc.ft4u.net" 6667)
+  ("TurkishChat: Random server" TurkishChat "irc.turkishchat.org" ((6660 6669) 7000 ))
+  ("UberNinja: Random server" UberNinja "irc.uberninja.net" ((6667 6669)))
+  ("UICN: Random server" UICN "irc.uicn.net" 6667)
+  ("UltraIRC: Random server" UltraIRC "irc.ultrairc.net" 6667)
+  ("UnderChat: Random server" UnderChat "irc.underchat.it" ((6660 6669) 7000 ))
+  ("Undernet: CA, ON, Toronto" Undernet "toronto.on.ca.undernet.org" ((6661 6669)))
+  ("Undernet: CA, QC, Montreal" Undernet "montreal.qu.ca.undernet.org" ((6660 6669)))
+  ("Undernet: EU, AT, Graz" Undernet "graz.at.eu.undernet.org" ((6661 6669)))
+  ("Undernet: EU, BE, Antwerp" Undernet "flanders.be.eu.undernet.org" ((6660 6669)))
+  ("Undernet: EU, BE, Brussels" Undernet "brussels.be.eu.undernet.org" 6667)
+  ("Undernet: EU, CH, Geneva" Undernet "geneva.ch.eu.undernet.org" ((6660 6669) 7777 8000 ))
+  ("Undernet: EU, FR, Caen" Undernet "caen.fr.eu.undernet.org" ((6666 6669)))
+  ("Undernet: EU, NL, Diemen" Undernet "diemen.nl.eu.undernet.org" ((6660 6669)))
+  ("Undernet: EU, NL, Haarlem" Undernet "haarlem.nl.eu.undernet.org" ((6660 6669)))
+  ("Undernet: EU, NO, Oslo" Undernet "oslo.no.eu.undernet.org" ((6660 6669)))
+  ("Undernet: EU, SE, Stockholm" Undernet "stockholm.se.eu.undernet.org" ((6666 6669)))
+  ("Undernet: EU, UK, Surrey" Undernet "surrey.uk.eu.undernet.org" ((6660 6669)))
+  ("Undernet: US, AZ, Mesa" Undernet "mesa.az.us.undernet.org" ((6665 6667)))
+  ("Undernet: US, CA, San Diego" Undernet "sandiego.ca.us.undernet.org" ((6660 6670)))
+  ("Undernet: US, DC, Washington" Undernet "washington.dc.us.undernet.org" ((6660 6669)))
+  ("Undernet: US, KS, Manhattan" Undernet "manhattan.ks.us.undernet.org" ((6660 6669)))
+  ("Undernet: US, NV, Las Vegas" Undernet "lasvegas.nv.us.undernet.org" ((6660 6669)))
+  ("Undernet: US, TX, Austin" Undernet "austin.tx.us.undernet.org" ((6660 6669)))
+  ("Undernet: US, UT, Saltlake" Undernet "saltlake.ut.us.undernet.org" ((6660 6669)))
+  ("Undernet: US, VA, Arlington" Undernet "arlington.va.us.undernet.org" ((6660 6669)))
+  ("Undernet: US, VA, McLean" Undernet "mclean.va.us.undernet.org" ((6666 6669)))
+  ("Undernet: Random EU server" Undernet "eu.undernet.org" 6667)
+  ("Undernet: Random US server" Undernet "us.undernet.org" 6667)
+  ("UnderZ: Random server" UnderZ "irc.underz.org" ((6667 6668)))
+  ("UniChat: Random server" UniChat "irc.uni-chat.net" 6667)
+  ("UnionLatina: Random server" UnionLatina "irc.unionlatina.org" 6667)
+  ("Univers: Random server" Univers "irc.univers.org" ((6665 6669)))
+  ("UnixR: Random server" UnixR "irc.unixr.net" ((6667 6669)))
+  ("Vidgamechat: Random server" Vidgamechat "irc.vidgamechat.com" 6667)
+  ("VirtuaNet: Random server" VirtuaNet "irc.virtuanet.org" ((6660 6669) 7000 ))
+  ("Vitamina: Random server" Vitamina "irc.vitamina.ca" 6667)
+  ("Voila: Random server" Voila "irc.voila.fr" 6667)
+  ("Wahou: Random server" Wahou "irc.wahou.org" ((6665 6669)))
+  ("Warpednet: Random server" Warpednet "irc.warped.net" 6667)
+  ("Weaklinks: Random server" Weaklinks "irc.weaklinks.net" ((6667 6669)))
+  ("Webnet: Random server" Webnet "irc.webchat.org" ((6667 6669) 7000 ))
+  ("Webnet: US, CA, Santa Clara" Webnet "webmaster.ca.us.webchat.org" ((6661 6669)))
+  ("WinChat: Random server" WinChat "irc.winchat.net" ((6661 6669)))
+  ("WinIRC: Random server" WinIRC "irc.winirc.org" ((6667 6669) 4400 ))
+  ("WorldIRC: Random server" WorldIRC "irc.worldirc.org" ((6660 6667)))
+  ("WyldRyde: Random server" WyldRyde "irc.wyldryde.net" ((6666 6669)))
+  ("XentoniX: Random server" XentoniX "irc.xentonix.net" ((6661 6669)))
+  ("Xevion: Random server" Xevion "irc.xevion.net" (6667 7000 ))
+  ("XNet: Random server" XNet "irc.xnet.org" 6667)
+  ("XWorld: Random server" XWorld "irc.xworld.org" 6667)
+  ("ZAnet Net: Random server" ZAnetNet "irc.zanet.net" 6667)
+  ("ZAnet Org: UK, London" ZAnetOrg "mystic.zanet.org.za" 6667)
+  ("ZiRC: Random server" ZiRC "irc.zirc.org" ((6660 6669)))
+  ("ZUHnet: Random server" ZUHnet "irc.zuh.net" 6667)
+  ("Zurna: Random server" Zurna "irc.zurna.net" 6667))
+  "Alist of irc servers. (NAME NET HOST PORTS) where
+NAME is a name for that server,
+NET is a symbol indicating to which network from `erc-networks-alist' this
+  server corresponds,
+HOST is the servers hostname and
+PORTS is either a number, a list of numbers, or a list of port ranges."
+  :group 'erc-networks
+  :type 'sexp)
+
+(defcustom erc-networks-alist
+  '((4-irc "4-irc.com")
+    (A5KNet "a5knet.com")
+    (AbleNet "ablenet.org")
+    (Accessirc "accessirc.net")
+    (Acestar "acestar.org")
+    (Action-IRC "action-irc.net")
+    (AfterNET "afternet.org")
+    (Alternativenet "altnet.org")
+    (AmigaNet "amiganet.org")
+    (AngelEyez "angeleyez.net")
+    (Anothernet "another.net")
+    (ArabChat "arabchat.org")
+    (AsiaTalk "asiatalk.org")
+    (AstroLink "astrolink.org")
+    (Asylumnet "asylumnet.org")
+    (Austnet "austnet.org")
+    (AwesomeChat "awesomechat.net")
+    (Awesomechristians "awesomechristians.com")
+    (Axenet "axenet.org")
+    (Beyondirc "beyondirc.net")
+    (BGIRC "bulgaria.org")
+    (Blabbernet "blabber.net")
+    (Blitzed "blitzed.org")
+    (BrasIRC "brasirc.net")
+    (BRASnet "brasnet.org")
+    (BubbleNet "bubblenet.org")
+    (CCnet "christian-chat.net")
+    (Chat-Net "chat-net.org")
+    (Chat-Solutions "chat-solutions.org")
+    (Chatcafe "chatcafe.net")
+    (Chatchannel "chatchannel.org")
+    (ChatCircuit "chatcircuit.com")
+    (Chatlink "chatlink.org")
+    (Chatnet "chatnet.org")
+    (ChatNut "chatnut.net")
+    (Chatpinoy "chatpinoy.com")
+    (ChatPR "chatpr.org")
+    (Chatroom "chatroom.org")
+    (Chatster "chatster.org")
+    (ChatX "chatx.net")
+    (China263 "263.net")
+    (Cineplex1 "cineplex1.com")
+    (CNN "cnn.com")
+    (CobraNet "cobra.net")
+    (Coolchat "coolchat.net")
+    (Criten "criten.net")
+    (Cyberchat "cyberchat.org")
+    (CyGanet "cyga.net")
+    (DALnet "dal.net")
+    (Dark-Tou-Net "d-t-net.de")
+    (Darkfire "darkfire.net")
+    (DarkMyst "darkmyst.org")
+    (Darkserv "darkserv.net")
+    (Darksystem "darksystem.com")
+    (Darktree "darktree.net")
+    (DayNet "daynet.org")
+    (Deepspace "deepspace.org")
+    (Different "different.net")
+    (Digarix "digarix.net")
+    (Digatech "digatech.net")
+    (Digital-Base "digital-base.net")
+    (Digitalirc "digitalirc.net")
+    (Discussioni "discussioni.org")
+    (DorukNet "doruk.net.tr")
+    (DWChat "dwchat.net")
+    (Dynastynet "dynastynet.net")
+    (EFnet nil)
+    (EgyptianIRC "egyptianirc.net")
+    (Eircnet "eircnet.org")
+    (Eleethal "eleethal.com")
+    (EntertheGame "enterthegame.com")
+    (EpiKnet "epiknet.org")
+    (EsperNet "esper.net")
+    (Esprit "esprit.net")
+    (euIRC "euirc.net")
+    (Evilzinc "evilzinc.net")
+    (ExodusIRC "exodusirc.net")
+    (FDFnet "fdfnet.net")
+    (FEFnet "fef.net")
+    (Financialchat "financialchat.com")
+    (Forestnet "forestnet.org")
+    (ForeverChat "foreverchat.net")
+    (Fraggers "fraggers.co.uk")
+    (FreedomChat "freedomchat.net")
+    (FreedomIRC "freedomirc.net")
+    (freenode "freenode.net")
+    (FunNet "funnet.org")
+    (GalaxyNet "galaxynet.org")
+    (Gamesnet "gamesnet.net")
+    (GammaForce "gammaforce.org")
+    (GIKInet "giki.edu.pk")
+    (GizNet "giznet.org")
+    (Globalchat "globalchat.org")
+    (GlobIRC "globirc.net")
+    (Goldchat "goldchat.nl")
+    (Goodchatting "goodchatting.com")
+    (GravityLords "gravitylords.net")
+    (GRnet "irc.gr")
+    (GulfChat "gulfchat.net")
+    (HabberNet "habber.net")
+    (HanIRC "hanirc.org")
+    (Hellenicnet "mirc.gr")
+    (IceNet "icenet.org.za")
+    (ICQnet "icq.com")
+    (iip "anon.iip")
+    (Infatech "infatech.net")
+    (Infinity "infinity-irc.org")
+    (Infomatrix "infomatrix.net")
+    (Inside3D "inside3d.net")
+    (InterlinkChat "interlinkchat.net")
+    (IRC-Chile "irc.cl")
+    (IRC-Hispano "irc-hispano.org")
+    (IRCchat "ircchat.tk")
+    (IRCGate "ircgate.net")
+    (IRCGeeks "ircgeeks.org")
+    (IRChat "irchat.net")
+    (IrcLordz "irclordz.com")
+    (IrcMalta "ircmalta.org")
+    (IRCnet nil)
+    (IRCSoulZ "ircsoulz.net")
+    (IRCSul "wnet.com.br")
+    (IrcTalk "irctalk.net")
+    (Irctoo "irctoo.net")
+    (IRCtown "irc.irctown.net")
+    (IRCworld "ircworld.org")
+    (ircXtreme "ircXtreme.net")
+    (Israelnet "israel.net")
+    (K0wNet "k0w.net")
+    (KDFSnet "kdfs.net")
+    (Kemik "kemik.net")
+    (Kewl\.Org "kewl.org")
+    (Kickchat "kickchat.com")
+    (KidsWorld "kidsworld.org")
+    (Knightnet "knightnet.net")
+    (Konfido\.Net "konfido.net")
+    (Kreynet "krey.net")
+    (Krono "krono.net")
+    (Krushnet "krushnet.org")
+    (LagNet "lagnet.org.za")
+    (Librenet "librenet.net")
+    (LinkNet "link-net.org")
+    (Liquidized "liquidized.net")
+    (M-IRC "m-sys.org")
+    (MagicStar "magicstar.net")
+    (Mavra "mavra.net")
+    (MediaDriven "mediadriven.com")
+    (mIRC-X "mircx.com")
+    (Morat "morat.net")
+    (MusicCity "musiccity.com")
+    (Mysteria "mysteria.net")
+    (Mysterychat "mysterychat.net")
+    (Mystical "mystical.net")
+    (Narancs "narancs.com")
+    (Net-France "net-france.com")
+    (Nevernet "nevernet.net")
+    (Newnet "newnet.net")
+    (Nexusirc "nexusirc.org")
+    (NightStar "nightstar.net")
+    (NitrousNet "nitrousnet.net")
+    (Novernet "novernet.com")
+    (Nullrouted "nullrouted.org")
+    (NullusNet "nullus.net")
+    (OpChat "opchat.org")
+    (Openprojects "openprojects.net")
+    (Othernet "othernet.org")
+    (OtherSide "othersideirc.net")
+    (Outsiderz "outsiderz.com")
+    (OzOrg "oz.org")
+    (Peacefulhaven "peacefulhaven.net")
+    (PhazedIRC "phazedirc.net")
+    (Philchat "philchat.net")
+    (phrozN "phrozn.net")
+    (PiNet "praetorians.org")
+    (Pinoycentral "abs-cbn.com")
+    (Planetarion "planetarion.com")
+    (POLNet "ircnet.pl")
+    (Psionics "psionics.net")
+    (PTirc "ptirc.com.pt")
+    (PTlink "ptlink.net")
+    (PTnet "ptnet.org")
+    (QChat "qchat.net")
+    (QuakeNet "quakenet.org")
+    (Realirc "realirc.org")
+    (RealmNET "realmnet.com")
+    (Rebelchat "rebelchat.org")
+    (Red-Latina "red-latina.org")
+    (RedLatona "redlatona.net")
+    (Relicnet "relic.net")
+    (Rezosup "rezosup.org")
+    (Risanet "risanet.com")
+    (Rubiks "rubiks.net")
+    (Rusnet "nil")
+    (Sandnet "sandnet.net")
+    (Scunc "scunc.net")
+    (SerbianCafe "serbiancafe.ws")
+    (SexNet "sexnet.org")
+    (ShadowFire "shadowfire.org")
+    (ShadowWorld "shadowworld.net")
+    (SkyNet "bronowski.pl")
+    (SlashNET "slashnet.org")
+    (SolarStone "solarstone.net")
+    (Sorcery "sorcery.net")
+    (SourceIRC "sourceirc.net")
+    (SpaceTronix "spacetronix.net")
+    (Spirit-Harmony "spirit-harmony.com")
+    (StarChat "starchat.net")
+    (StarEquinox "starequinox.net")
+    (Starlink "starlink.net")
+    (starlink-irc "starlink-irc.org")
+    (StarWars-IRC "starwars-irc.net")
+    (Stormdancing "stormdancing.net")
+    (Superchat "superchat.org")
+    (Sysopnet "sysopnet.org")
+    (Telstra "telstra.com")
+    (TR-net "dominet.com.tr")
+    (Tri-net "tri-net.org")
+    (TriLink "ft4u.net")
+    (TurkishChat "turkishchat.org")
+    (UberNinja "uberninja.net")
+    (UICN "uicn.net")
+    (UltraIRC "ultrairc.net")
+    (UnderChat "underchat.it")
+    (Undernet "undernet.org")
+    (UnderZ "underz.org")
+    (UniChat "irc.uni-chat.net")
+    (UnionLatina "unionlatina.org")
+    (Univers "univers.org")
+    (UnixR "unixr.net")
+    (Vidgamechat "vidgamechat.com")
+    (VirtuaNet "virtuanet.org")
+    (Vitamina "vitamina.ca")
+    (Voila "voila.fr")
+    (Wahou "wf-net.org")
+    (Warpednet "warped.net")
+    (Weaklinks "weaklinks.net")
+    (Webnet "webchat.org")
+    (WinChat "winchat.net")
+    (WinIRC "winirc.org")
+    (WorldIRC "worldirc.org")
+    (WyldRyde "wyldryde.net")
+    (XentoniX "xentonix.net")
+    (Xevion "xevion.net")
+    (XNet "xnet.org")
+    (XWorld "xworld.org")
+    (ZAnetNet "zanet.net")
+    (ZAnetOrg "zanet.org.za")
+    (ZiRC "zirc.org")
+    (ZUHnet "zuh.net")
+    (Zurna "zurna.net"))
+  "Alist of IRC networks. (NET MATCHER) where
+NET is a symbol naming that IRC network and
+MATCHER is used to find a corresponding network to a server while connected to
+  it. If it is regexp, it's used to match against `erc-server-announced-name'.
+  It can also be a function (predicate). Then it is executed with the
+  server buffer as current-buffer."
+  :group 'erc-networks
+  :type '(repeat
+         (list :tag "Network"
+               (symbol :tag "Network name")
+               (choice :tag "Network's common server ending"
+                (regexp)
+                (const :tag "Network has no common server ending" nil)))))
+
+(defvar erc-network nil
+  "The name of the network you are connected to (a symbol).")
+(make-variable-buffer-local 'erc-network)
+
+;; Functions:
+
+;;;###autoload
+(defun erc-determine-network ()
+  "Return the name of the network or \"Unknown\" as a symbol.  Use the
+server parameter NETWORK if provided, otherwise parse the server name and
+search for a match in `erc-networks-alist'."
+  ;; The server made it easy for us and told us the name of the NETWORK
+  (if (assoc "NETWORK" erc-server-parameters)
+      (intern (cdr (assoc "NETWORK" erc-server-parameters)))
+    (or
+     ;; Loop through `erc-networks-alist' looking for a match.
+     (let ((server (or erc-server-announced-name erc-session-server)))
+       (loop for (name matcher) in erc-networks-alist
+            when (and matcher
+                      (string-match (concat matcher "\\'") server))
+            do (return name)))
+     'Unknown)))
+
+(defun erc-network ()
+  "Return the value of `erc-network' for the current server."
+  (with-current-buffer (erc-server-buffer) erc-network))
+
+(defun erc-current-network ()
+  "Deprecated.  Use `erc-network' instead.  Return the name of this server's
+network as a symbol."
+  (with-current-buffer (erc-server-buffer)
+    (intern (downcase (symbol-name erc-network)))))
+
+(erc-make-obsolete 'erc-current-network 'erc-network
+                  "Obsolete since erc-networks 1.5")
+
+(defun erc-network-name ()
+  "Returns the name of the current network as a string."
+  (with-current-buffer (erc-server-buffer) (symbol-name erc-network)))
+
+(defun erc-set-network-name (proc parsed)
+  "Set `erc-network' to the value returned by `erc-determine-network'."
+  (unless erc-server-connected
+    (setq erc-network (erc-determine-network)))
+  nil)
+
+(defun erc-unset-network-name (nick ip reason)
+  "Set `erc-network' to nil."
+  (setq erc-network nil)
+  nil)
+
+(add-hook 'erc-server-375-functions 'erc-set-network-name)
+(add-hook 'erc-server-422-functions 'erc-set-network-name)
+(add-hook 'erc-disconnected-hook 'erc-unset-network-name)
+
+(defun erc-ports-list (ports)
+  "Return a list of PORTS.
+
+PORTS should be a list of either:
+  A number, in which case it is returned a list.
+  Or a pair of the form (LOW HIGH), in which case, a list of all the
+  numbers between LOW and HIGH (inclusive) is returned.
+
+As an example:
+  (erc-ports-list '(1)) => (1)
+  (erc-ports-list '((1 5))) => (1 2 3 4 5)
+  (erc-ports-list '(1 (3 5))) => (1 3 4 5)"
+  (let (result)
+    (dolist (p ports)
+      (cond ((numberp p)
+            (push p result))
+           ((listp p)
+            (setq result (nconc (loop for i from (cadr p) downto (car p)
+                                      collect i)
+                                result)))))
+    (nreverse result)))
+
+;;;###autoload
+(defun erc-server-select ()
+  "Interactively select a server to connect to using `erc-server-alist'."
+  (interactive)
+  (let* ((completion-ignore-case t)
+        (net (intern
+              (completing-read "Network: "
+                               (erc-delete-dups
+                                (mapcar (lambda (x)
+                                          (list (symbol-name (nth 1 x))))
+                                        erc-server-alist)))))
+        (srv (assoc
+              (completing-read "Server: "
+                               (delq nil
+                                     (mapcar (lambda (x)
+                                               (when (equal (nth 1 x) net)
+                                                 x))
+                                             erc-server-alist)))
+              erc-server-alist))
+        (host (nth 2 srv))
+        (ports (if (listp (nth 3 srv))
+                   (erc-ports-list (nth 3 srv))
+                 (list (nth 3 srv))))
+        (port (nth (random (length ports)) ports)))
+    (erc host port erc-nick erc-user-full-name t)))
+
+;;; The following experimental
+;; It does not work yet, help me with it if you
+;; think it is worth the effort.
+
+(defvar erc-settings
+  '((pals freenode ("kensanata" "shapr" "anti\\(fuchs\\|gone\\)"))
+    (format-nick-function (freenode "#emacs") erc-format-@nick))
+  "Experimental: Alist of configuration options.
+The format is (VARNAME SCOPE VALUE) where
+VARNAME is a symbol identifying the configuration option,
+SCOPE is either a symbol which identifies an entry from
+  `erc-networks-alist' or a list (NET TARGET) where NET is a network symbol and
+  TARGET is a string identifying the channel/query target.
+VALUE is the options value.")
+
+(defun erc-get (var &optional net target)
+  (let ((items erc-settings)
+       elt val)
+    (while items
+      (setq elt (car items)
+           items (cdr items))
+      (when (eq (car elt) var)
+       (cond ((and net target (listp (nth 1 elt))
+                   (eq net (car (nth 1 elt)))
+                   (string-equal target (nth 1 (nth 1 elt))))
+              (setq val (nth 2 elt)
+                    items nil))
+             ((and net (eq net (nth 1 elt)))
+              (setq val (nth 2 elt)
+                    items nil))
+             ((and (not net) (not target) (not (nth 1 elt)))
+              (setq val (nth 2 elt)
+                    items nil)))))
+    val))
+
+(erc-get 'pals 'freenode)
+
+(provide 'erc-networks)
+
+;;; erc-networks.el ends here
+;;
+;; Local Variables:
+;; indent-tabs-mode: t
+;; tab-width: 8
+;; End:
+
+;; arch-tag: 68cccabd-f66b-456c-9abe-5f993a2dc91c
diff --git a/lisp/erc/erc-nickserv.el b/lisp/erc/erc-nickserv.el
deleted file mode 100644 (file)
index be5541d..0000000
+++ /dev/null
@@ -1,337 +0,0 @@
-;;; erc-nickserv.el --- Identify to NickServ
-
-;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
-
-;; This file is part of GNU Emacs.
-
-;; GNU Emacs is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; GNU Emacs is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
-
-;;; Commentary:
-
-;; There are two ways to go about identifying yourself automatically to
-;; NickServ with this module.  The more secure way is to listen for identify
-;; requests from the user NickServ.  Another way is to identify yourself to
-;; NickServ directly after a successful connection and every time you change
-;; your nickname.  This method is rather insecure, though, because no checks
-;; are made to test if NickServ is the real NickServ for a given network or
-;; server.
-
-;; As a default, ERC has the data for the official nickname services on the
-;; networks Austnet, BrasNET, Dalnet, freenode, GalaxyNet, and Slashnet.
-;; You can add more by using M-x customize-variable RET erc-nickserv-alist.
-
-;; Usage:
-;;
-;; Put into your .emacs:
-;;
-;; (require 'erc-nickserv)
-;; (erc-services-mode 1)
-;;
-;; Add your nickname and NickServ password to `erc-nickserv-passwords'.
-;; Using the freenode network as an example:
-;;
-;; (setq erc-nickserv-passwords '((freenode (("nickname" "password")))))
-;;
-;; The default automatic identification mode is autodetection of NickServ
-;; identify requests.  Set the variable `erc-nickserv-identify-mode' if
-;; you'd like to change this behavior.  You can also change the way
-;; automatic identification is handled by using:
-;;
-;; M-x erc-nickserv-identify-mode
-;;
-;; If you'd rather not identify yourself automatically but would like access
-;; to the functions contained in this file, just load this file without
-;; enabling `erc-services-mode'.
-;;
-
-;;; Code:
-
-(require 'erc)
-(require 'erc-nets)
-(eval-when-compile (require 'cl))
-
-;; Customization:
-
-(defgroup erc-services nil
-  "Configuration for IRC services.
-
-On some networks, there exists a special type of automated irc bot,
-called Services.  Those usually allow you to register your nickname,
-post/read memos to other registered users who are currently offline,
-and do various other things.
-
-This group allows you to set variables to somewhat automate
-communication with those Services."
-  :group 'erc)
-
-;;;###autoload (autoload 'erc-services-mode "erc-nickserv" nil t)
-(define-erc-module services nickserv
-  "This mode automates communication with services."
-  ((erc-nickserv-identify-mode erc-nickserv-identify-mode))
-  ((remove-hook 'erc-server-NOTICE-functions
-               'erc-nickserv-identify-autodetect)
-   (remove-hook 'erc-after-connect
-               'erc-nickserv-identify-on-connect)
-   (remove-hook 'erc-nick-changed-functions
-               'erc-nickserv-identify-on-nick-change)))
-
-;;;###autoload
-(defun erc-nickserv-identify-mode (mode)
-  "Set up hooks according to which MODE the user has chosen."
-  (interactive
-   (list (intern (completing-read
-                 "Choose Nickserv identify mode (RET to disable): "
-                 '(("autodetect") ("nick-change")) nil t))))
-  (cond ((eq mode 'autodetect)
-        (setq erc-nickserv-identify-mode 'autodetect)
-        (add-hook 'erc-server-NOTICE-functions
-                  'erc-nickserv-identify-autodetect)
-        (remove-hook 'erc-nick-changed-functions
-                     'erc-nickserv-identify-on-nick-change)
-        (remove-hook 'erc-after-connect
-                     'erc-nickserv-identify-on-connect))
-       ((eq mode 'nick-change)
-        (setq erc-nickserv-identify-mode 'nick-change)
-        (add-hook 'erc-after-connect
-                  'erc-nickserv-identify-on-connect)
-        (add-hook 'erc-nick-changed-functions
-                  'erc-nickserv-identify-on-nick-change)
-        (remove-hook 'erc-server-NOTICE-functions
-                     'erc-nickserv-identify-autodetect))
-       (t
-        (setq erc-nickserv-identify-mode nil)
-        (remove-hook 'erc-server-NOTICE-functions
-                     'erc-nickserv-identify-autodetect)
-        (remove-hook 'erc-after-connect
-                     'erc-nickserv-identify-on-connect)
-        (remove-hook 'erc-nick-changed-functions
-                     'erc-nickserv-identify-on-nick-change))))
-
-(defcustom erc-nickserv-identify-mode 'autodetect
-  "The mode which is used when identifying to Nickserv.
-
-Possible settings are:.
-
-'autodetect  - Identify when the real Nickserv sends an identify request.
-'nick-change - Identify when you change your nickname.
-nil          - Disables automatic Nickserv identification.
-
-You can also use M-x erc-nickserv-identify-mode to change modes."
-  :group 'erc-services
-  :type '(choice (const autodetect)
-                (const nick-change)
-                (const nil))
-  :set (lambda (sym val)
-        (set-default sym val)
-        (erc-nickserv-identify-mode val)))
-
-(defcustom erc-prompt-for-nickserv-password t
-  "Ask for the password when identifying to NickServ."
-  :group 'erc-services
-  :type 'boolean)
-
-(defcustom erc-nickserv-passwords nil
-  "Passwords used when identifying to NickServ automatically.
-
-Example of use:
-  (setq erc-nickserv-passwords
-        '((freenode ((\"nick-one\" . \"password\")
-                     (\"nick-two\" . \"password\")))
-          (DALnet ((\"nick\" . \"password\")))))"
-  :group 'erc-services
-  :type '(repeat
-         (list :tag "Network"
-               (choice :tag "Network name"
-                       (const freenode)
-                       (const DALnet)
-                       (const GalaxyNet)
-                       (const SlashNET)
-                       (const BRASnet)
-                       (const iip)
-                       (const Austnet)
-                       (symbol :tag "Network name"))
-               (repeat :tag "Nickname and password"
-                       (cons :tag "Identity"
-                             (string :tag "Nick")
-                             (string :tag "Password"))))))
-
-;; Variables:
-
-(defcustom erc-nickserv-alist
-  '((DALnet
-     "NickServ!service@dal.net"
-     "/msg\\s-NickServ@services.dal.net\\s-IDENTIFY\\s-<password>"
-     "NickServ@services.dal.net"
-     "IDENTIFY"
-     nil)
-    (freenode
-     "NickServ!NickServ@services."
-     "/msg\\s-NickServ\\s-\ 2IDENTIFY\ 2\\s-<password>"
-     "NickServ"
-     "IDENTIFY"
-     nil)
-    (GalaxyNet
-     "NS!nickserv@galaxynet.org"
-     "Please\\s-change\\s-nicks\\s-or\\s-authenticate."
-     "NS@services.galaxynet.org"
-     "AUTH"
-     t)
-    (SlashNET
-     "NickServ!services@services.slashnet.org"
-     "/msg\\s-NickServ\\s-IDENTIFY\\s-\1fpassword"
-     "NickServ@services.slashnet.org"
-     "IDENTIFY"
-     nil)
-    (iip
-     "Trent@anon.iip"
-     "type\\s-/squery\\s-Trent\\s-identify\\s-<password>"
-     "Trent@anon.iip"
-     "IDENTIFY"
-     nil
-     "SQUERY")
-    (BRASnet
-     "NickServ!services@brasnet.org"
-     "\ 2/NickServ\\s-IDENTIFY\\s-\1fsenha\1f\ 2"
-     "NickServ"
-     "IDENTIFY"
-     nil
-     "")
-     (Austnet
-      "NickOP!service@austnet.org"
-      "/msg\\s-NickOP@austnet.org\\s-identify\\s-<password>"
-      "nickop@austnet.org"
-      "identify"
-      nil)
-     (Azzurra
-      "NickServ!service@azzurra.org"
-      "\ 2/ns\\s-IDENTIFY\\s-password\ 2"
-      "NickServ"
-      "IDENTIFY"
-      nil)
-     (OFTC
-      "NickServ!services@services.oftc.net"
-      "/msg\\s-NickServ\\s-IDENTIFY\\s-\^_password"
-      "NickServ"
-      "IDENTIFY"
-      nil))
-   "Alist of NickServer details, sorted by network.
-Every element in the list has the form
-  \(SYMBOL NICKSERV REGEXP NICK KEYWORD USE-CURRENT ANSWER)
-
-SYMBOL is a network identifier, a symbol, as used in `erc-networks-alist'.
-NICKSERV is the description of the nickserv in the form nick!user@host.
-REGEXP is a regular expression matching the message from nickserv.
-NICK is nickserv's nickname.  Use nick@server where necessary/possible.
-KEYWORD is the keyword to use in the reply message to identify yourself.
-USE-CURRENT indicates whether the current nickname must be used when
-  identifying.
-ANSWER is the command to use for the answer.  The default is 'privmsg.
-  This last element is optional."
-   :group 'erc-services
-   :type '(repeat
-          (list :tag "Nickserv data"
-                (symbol :tag "Network name")
-                (string :tag "Nickserv's nick!user@host")
-                (regexp :tag "Identify request sent by Nickserv")
-                (string :tag "Identify to")
-                (string :tag "Identify keyword")
-                (boolean :tag "Use current nick in identify message?")
-                (choice :tag "Command to use (optional)"
-                 (string :tag "Command")
-                 (const :tag "No special command necessary" nil)))))
-
-;; Functions:
-
-(defun erc-nickserv-identify-autodetect (proc parsed)
-  "Check for a NickServ identify request everytime a notice is received.
-Make sure it is the real NickServ for this network and that it has
-specifically asked the user to IDENTIFY.
-If `erc-prompt-for-nickserv-password' is non-nil, prompt the user for the
-password for this nickname, otherwise try to send it automatically."
-  (unless (and (null erc-nickserv-passwords)
-              (null erc-prompt-for-nickserv-password))
-    (let* ((network (erc-network))
-          (nickserv (nth 1 (assoc network erc-nickserv-alist)))
-          (identify-regex (nth 2 (assoc network erc-nickserv-alist)))
-          (sspec (erc-response.sender parsed))
-          (nick (car (erc-response.command-args parsed)))
-          (msg (erc-response.contents parsed)))
-      ;; continue only if we're sure it's the real nickserv for this network
-      ;; and it's asked us to identify
-      (when (and nickserv (equal sspec nickserv)
-                (string-match identify-regex msg))
-       (erc-log "NickServ IDENTIFY request detected")
-       (erc-nickserv-call-identify-function nick)
-       nil))))
-
-(defun erc-nickserv-identify-on-connect (server nick)
-  "Identify to Nickserv after the connection to the server is established."
-  (unless (and (null erc-nickserv-passwords)
-              (null erc-prompt-for-nickserv-password))
-    (erc-nickserv-call-identify-function nick)))
-
-(defun erc-nickserv-identify-on-nick-change (nick old-nick)
-  "Identify to Nickserv whenever your nick changes."
-  (unless (and (null erc-nickserv-passwords)
-              (null erc-prompt-for-nickserv-password))
-    (erc-nickserv-call-identify-function nick)))
-
-(defun erc-nickserv-call-identify-function (nickname)
-  "Call `erc-nickserv-identify' interactively or run it with NICKNAME's
-password.
-The action is determined by the value of `erc-prompt-for-nickserv-password'."
-  (if erc-prompt-for-nickserv-password
-      (call-interactively 'erc-nickserv-identify)
-    (when erc-nickserv-passwords
-      (erc-nickserv-identify
-       (cdr (assoc nickname
-                  (nth 1 (assoc (erc-network)
-                                erc-nickserv-passwords))))))))
-
-;;;###autoload
-(defun erc-nickserv-identify (password)
-  "Send an \"identify <PASSWORD>\" message to NickServ.
-When called interactively, read the password using `read-passwd'."
-  (interactive
-   (list (read-passwd
-         (format "NickServ password for %s on %s (RET to cancel): "
-                 (erc-current-nick)
-                 (or (and (erc-network)
-                          (symbol-name (erc-network)))
-                     "Unknown network")))))
-  (when (and password (not (string= "" password)))
-    (let* ((erc-auto-discard-away nil)
-          (network (erc-network))
-          (nickserv-info (assoc network erc-nickserv-alist))
-          (nickserv (or (nth 3 nickserv-info) "NickServ"))
-          (identify-word (or (nth 4 nickserv-info) "IDENTIFY"))
-          (nick (if (nth 5 nickserv-info)
-                    (concat (erc-current-nick) " ")
-                  ""))
-          (msgtype (or (nth 6 nickserv-info) "PRIVMSG")))
-      (erc-message msgtype
-                  (concat nickserv " " identify-word " " nick password)))))
-
-(provide 'erc-nickserv)
-
-;;; erc-nickserv.el ends here
-;;
-;; Local Variables:
-;; indent-tabs-mode: t
-;; tab-width: 8
-;; End:
-
-;; arch-tag: d401c8aa-d938-4255-96a9-3efb64c47e58
index 9fc7f572977875c1dab8930bb02ab519fc388814..1d2bdbd5f45020b0e6e11cbcd7ec9aea0af6e6fe 100644 (file)
@@ -30,7 +30,7 @@
 ;;; Code:
 
 (require 'erc)
-(require 'erc-nets)
+(require 'erc-networks)
 (eval-when-compile
  (require 'cl)
  (require 'pcomplete))
diff --git a/lisp/erc/erc-services.el b/lisp/erc/erc-services.el
new file mode 100644 (file)
index 0000000..6769487
--- /dev/null
@@ -0,0 +1,337 @@
+;;; erc-services.el --- Identify to NickServ
+
+;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation; either version 2, or (at your option)
+;; any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING.  If not, write to the
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
+
+;;; Commentary:
+
+;; There are two ways to go about identifying yourself automatically to
+;; NickServ with this module.  The more secure way is to listen for identify
+;; requests from the user NickServ.  Another way is to identify yourself to
+;; NickServ directly after a successful connection and every time you change
+;; your nickname.  This method is rather insecure, though, because no checks
+;; are made to test if NickServ is the real NickServ for a given network or
+;; server.
+
+;; As a default, ERC has the data for the official nickname services on the
+;; networks Austnet, BrasNET, Dalnet, freenode, GalaxyNet, and Slashnet.
+;; You can add more by using M-x customize-variable RET erc-nickserv-alist.
+
+;; Usage:
+;;
+;; Put into your .emacs:
+;;
+;; (require 'erc-services)
+;; (erc-services-mode 1)
+;;
+;; Add your nickname and NickServ password to `erc-nickserv-passwords'.
+;; Using the freenode network as an example:
+;;
+;; (setq erc-nickserv-passwords '((freenode (("nickname" "password")))))
+;;
+;; The default automatic identification mode is autodetection of NickServ
+;; identify requests.  Set the variable `erc-nickserv-identify-mode' if
+;; you'd like to change this behavior.  You can also change the way
+;; automatic identification is handled by using:
+;;
+;; M-x erc-nickserv-identify-mode
+;;
+;; If you'd rather not identify yourself automatically but would like access
+;; to the functions contained in this file, just load this file without
+;; enabling `erc-services-mode'.
+;;
+
+;;; Code:
+
+(require 'erc)
+(require 'erc-networks)
+(eval-when-compile (require 'cl))
+
+;; Customization:
+
+(defgroup erc-services nil
+  "Configuration for IRC services.
+
+On some networks, there exists a special type of automated irc bot,
+called Services.  Those usually allow you to register your nickname,
+post/read memos to other registered users who are currently offline,
+and do various other things.
+
+This group allows you to set variables to somewhat automate
+communication with those Services."
+  :group 'erc)
+
+;;;###autoload (autoload 'erc-services-mode "erc-services" nil t)
+(define-erc-module services nickserv
+  "This mode automates communication with services."
+  ((erc-nickserv-identify-mode erc-nickserv-identify-mode))
+  ((remove-hook 'erc-server-NOTICE-functions
+               'erc-nickserv-identify-autodetect)
+   (remove-hook 'erc-after-connect
+               'erc-nickserv-identify-on-connect)
+   (remove-hook 'erc-nick-changed-functions
+               'erc-nickserv-identify-on-nick-change)))
+
+;;;###autoload
+(defun erc-nickserv-identify-mode (mode)
+  "Set up hooks according to which MODE the user has chosen."
+  (interactive
+   (list (intern (completing-read
+                 "Choose Nickserv identify mode (RET to disable): "
+                 '(("autodetect") ("nick-change")) nil t))))
+  (cond ((eq mode 'autodetect)
+        (setq erc-nickserv-identify-mode 'autodetect)
+        (add-hook 'erc-server-NOTICE-functions
+                  'erc-nickserv-identify-autodetect)
+        (remove-hook 'erc-nick-changed-functions
+                     'erc-nickserv-identify-on-nick-change)
+        (remove-hook 'erc-after-connect
+                     'erc-nickserv-identify-on-connect))
+       ((eq mode 'nick-change)
+        (setq erc-nickserv-identify-mode 'nick-change)
+        (add-hook 'erc-after-connect
+                  'erc-nickserv-identify-on-connect)
+        (add-hook 'erc-nick-changed-functions
+                  'erc-nickserv-identify-on-nick-change)
+        (remove-hook 'erc-server-NOTICE-functions
+                     'erc-nickserv-identify-autodetect))
+       (t
+        (setq erc-nickserv-identify-mode nil)
+        (remove-hook 'erc-server-NOTICE-functions
+                     'erc-nickserv-identify-autodetect)
+        (remove-hook 'erc-after-connect
+                     'erc-nickserv-identify-on-connect)
+        (remove-hook 'erc-nick-changed-functions
+                     'erc-nickserv-identify-on-nick-change))))
+
+(defcustom erc-nickserv-identify-mode 'autodetect
+  "The mode which is used when identifying to Nickserv.
+
+Possible settings are:.
+
+'autodetect  - Identify when the real Nickserv sends an identify request.
+'nick-change - Identify when you change your nickname.
+nil          - Disables automatic Nickserv identification.
+
+You can also use M-x erc-nickserv-identify-mode to change modes."
+  :group 'erc-services
+  :type '(choice (const autodetect)
+                (const nick-change)
+                (const nil))
+  :set (lambda (sym val)
+        (set-default sym val)
+        (erc-nickserv-identify-mode val)))
+
+(defcustom erc-prompt-for-nickserv-password t
+  "Ask for the password when identifying to NickServ."
+  :group 'erc-services
+  :type 'boolean)
+
+(defcustom erc-nickserv-passwords nil
+  "Passwords used when identifying to NickServ automatically.
+
+Example of use:
+  (setq erc-nickserv-passwords
+        '((freenode ((\"nick-one\" . \"password\")
+                     (\"nick-two\" . \"password\")))
+          (DALnet ((\"nick\" . \"password\")))))"
+  :group 'erc-services
+  :type '(repeat
+         (list :tag "Network"
+               (choice :tag "Network name"
+                       (const freenode)
+                       (const DALnet)
+                       (const GalaxyNet)
+                       (const SlashNET)
+                       (const BRASnet)
+                       (const iip)
+                       (const Austnet)
+                       (symbol :tag "Network name"))
+               (repeat :tag "Nickname and password"
+                       (cons :tag "Identity"
+                             (string :tag "Nick")
+                             (string :tag "Password"))))))
+
+;; Variables:
+
+(defcustom erc-nickserv-alist
+  '((DALnet
+     "NickServ!service@dal.net"
+     "/msg\\s-NickServ@services.dal.net\\s-IDENTIFY\\s-<password>"
+     "NickServ@services.dal.net"
+     "IDENTIFY"
+     nil)
+    (freenode
+     "NickServ!NickServ@services."
+     "/msg\\s-NickServ\\s-\ 2IDENTIFY\ 2\\s-<password>"
+     "NickServ"
+     "IDENTIFY"
+     nil)
+    (GalaxyNet
+     "NS!nickserv@galaxynet.org"
+     "Please\\s-change\\s-nicks\\s-or\\s-authenticate."
+     "NS@services.galaxynet.org"
+     "AUTH"
+     t)
+    (SlashNET
+     "NickServ!services@services.slashnet.org"
+     "/msg\\s-NickServ\\s-IDENTIFY\\s-\1fpassword"
+     "NickServ@services.slashnet.org"
+     "IDENTIFY"
+     nil)
+    (iip
+     "Trent@anon.iip"
+     "type\\s-/squery\\s-Trent\\s-identify\\s-<password>"
+     "Trent@anon.iip"
+     "IDENTIFY"
+     nil
+     "SQUERY")
+    (BRASnet
+     "NickServ!services@brasnet.org"
+     "\ 2/NickServ\\s-IDENTIFY\\s-\1fsenha\1f\ 2"
+     "NickServ"
+     "IDENTIFY"
+     nil
+     "")
+     (Austnet
+      "NickOP!service@austnet.org"
+      "/msg\\s-NickOP@austnet.org\\s-identify\\s-<password>"
+      "nickop@austnet.org"
+      "identify"
+      nil)
+     (Azzurra
+      "NickServ!service@azzurra.org"
+      "\ 2/ns\\s-IDENTIFY\\s-password\ 2"
+      "NickServ"
+      "IDENTIFY"
+      nil)
+     (OFTC
+      "NickServ!services@services.oftc.net"
+      "/msg\\s-NickServ\\s-IDENTIFY\\s-\^_password"
+      "NickServ"
+      "IDENTIFY"
+      nil))
+   "Alist of NickServer details, sorted by network.
+Every element in the list has the form
+  \(SYMBOL NICKSERV REGEXP NICK KEYWORD USE-CURRENT ANSWER)
+
+SYMBOL is a network identifier, a symbol, as used in `erc-networks-alist'.
+NICKSERV is the description of the nickserv in the form nick!user@host.
+REGEXP is a regular expression matching the message from nickserv.
+NICK is nickserv's nickname.  Use nick@server where necessary/possible.
+KEYWORD is the keyword to use in the reply message to identify yourself.
+USE-CURRENT indicates whether the current nickname must be used when
+  identifying.
+ANSWER is the command to use for the answer.  The default is 'privmsg.
+  This last element is optional."
+   :group 'erc-services
+   :type '(repeat
+          (list :tag "Nickserv data"
+                (symbol :tag "Network name")
+                (string :tag "Nickserv's nick!user@host")
+                (regexp :tag "Identify request sent by Nickserv")
+                (string :tag "Identify to")
+                (string :tag "Identify keyword")
+                (boolean :tag "Use current nick in identify message?")
+                (choice :tag "Command to use (optional)"
+                 (string :tag "Command")
+                 (const :tag "No special command necessary" nil)))))
+
+;; Functions:
+
+(defun erc-nickserv-identify-autodetect (proc parsed)
+  "Check for a NickServ identify request everytime a notice is received.
+Make sure it is the real NickServ for this network and that it has
+specifically asked the user to IDENTIFY.
+If `erc-prompt-for-nickserv-password' is non-nil, prompt the user for the
+password for this nickname, otherwise try to send it automatically."
+  (unless (and (null erc-nickserv-passwords)
+              (null erc-prompt-for-nickserv-password))
+    (let* ((network (erc-network))
+          (nickserv (nth 1 (assoc network erc-nickserv-alist)))
+          (identify-regex (nth 2 (assoc network erc-nickserv-alist)))
+          (sspec (erc-response.sender parsed))
+          (nick (car (erc-response.command-args parsed)))
+          (msg (erc-response.contents parsed)))
+      ;; continue only if we're sure it's the real nickserv for this network
+      ;; and it's asked us to identify
+      (when (and nickserv (equal sspec nickserv)
+                (string-match identify-regex msg))
+       (erc-log "NickServ IDENTIFY request detected")
+       (erc-nickserv-call-identify-function nick)
+       nil))))
+
+(defun erc-nickserv-identify-on-connect (server nick)
+  "Identify to Nickserv after the connection to the server is established."
+  (unless (and (null erc-nickserv-passwords)
+              (null erc-prompt-for-nickserv-password))
+    (erc-nickserv-call-identify-function nick)))
+
+(defun erc-nickserv-identify-on-nick-change (nick old-nick)
+  "Identify to Nickserv whenever your nick changes."
+  (unless (and (null erc-nickserv-passwords)
+              (null erc-prompt-for-nickserv-password))
+    (erc-nickserv-call-identify-function nick)))
+
+(defun erc-nickserv-call-identify-function (nickname)
+  "Call `erc-nickserv-identify' interactively or run it with NICKNAME's
+password.
+The action is determined by the value of `erc-prompt-for-nickserv-password'."
+  (if erc-prompt-for-nickserv-password
+      (call-interactively 'erc-nickserv-identify)
+    (when erc-nickserv-passwords
+      (erc-nickserv-identify
+       (cdr (assoc nickname
+                  (nth 1 (assoc (erc-network)
+                                erc-nickserv-passwords))))))))
+
+;;;###autoload
+(defun erc-nickserv-identify (password)
+  "Send an \"identify <PASSWORD>\" message to NickServ.
+When called interactively, read the password using `read-passwd'."
+  (interactive
+   (list (read-passwd
+         (format "NickServ password for %s on %s (RET to cancel): "
+                 (erc-current-nick)
+                 (or (and (erc-network)
+                          (symbol-name (erc-network)))
+                     "Unknown network")))))
+  (when (and password (not (string= "" password)))
+    (let* ((erc-auto-discard-away nil)
+          (network (erc-network))
+          (nickserv-info (assoc network erc-nickserv-alist))
+          (nickserv (or (nth 3 nickserv-info) "NickServ"))
+          (identify-word (or (nth 4 nickserv-info) "IDENTIFY"))
+          (nick (if (nth 5 nickserv-info)
+                    (concat (erc-current-nick) " ")
+                  ""))
+          (msgtype (or (nth 6 nickserv-info) "PRIVMSG")))
+      (erc-message msgtype
+                  (concat nickserv " " identify-word " " nick password)))))
+
+(provide 'erc-services)
+
+;;; erc-services.el ends here
+;;
+;; Local Variables:
+;; indent-tabs-mode: t
+;; tab-width: 8
+;; End:
+
+;; arch-tag: d401c8aa-d938-4255-96a9-3efb64c47e58
index 6b34a2592f44827e07171305944070007cfcb1fd..ead847ff73ff14d1d2ab969789aa1356ab995bda 100644 (file)
@@ -199,20 +199,20 @@ Window System."
     (erc-put-text-property 0 len 'field 'erc-timestamp s)
     (insert s)))
 
-(defun erc-insert-aligned (string pos &optional fallback)
+(defun erc-insert-aligned (string pos)
   "Insert STRING based on a fraction of the width of the buffer.
 Fraction is roughly (/ POS (window-width)).
 
-If `erc-timestamp-right-align-by-pixel' is nil, use
-\(- POS FALLBACK) to determine how many spaces to insert."
+If `erc-timestamp-right-align-by-pixel' is nil, insert STRING at the
+POSth column, without using pixel coordinates."
   (if (not erc-timestamp-right-align-by-pixel)
-      (insert (make-string (- pos fallback) ? ) string)
+      (indent-to pos)
     (insert " ")
     (let ((offset (floor (* (/ (1- pos) (window-width) 1.0)
                            (nth 2 (window-inside-pixel-edges))))))
       (put-text-property (1- (point)) (point) 'display
-                        `(space :align-to (,offset))))
-    (insert string)))
+                        `(space :align-to (,offset)))))
+  (insert string))
 
 (defun erc-insert-timestamp-right (string)
   "Insert timestamp on the right side of the screen.
@@ -257,14 +257,16 @@ be printed just before the window-width."
           indent)
       ;; deal with variable-width characters
       (setq pos (- pos (string-width string))
-           ;; the following is a kludge that works with most
-           ;; international input
+           ;; The following is a kludge that works with most
+           ;; international input.  It is now only used to calculate
+           ;; whether to move to the next line before inserting a
+           ;; stamp.
            col (+ col (ceiling (/ (- col (- (point) (point-at-bol))) 1.6))))
       (if (< col pos)
-         (erc-insert-aligned string pos col)
+         (erc-insert-aligned string pos)
        (newline)
-       (setq from (point))
        (indent-to pos)
+       (setq from (point))
        (insert string))
       (erc-put-text-property from (1+ (point)) 'field 'erc-timestamp)
       (erc-put-text-property from (1+ (point)) 'rear-nonsticky t)
index 8d380847f5ad592f706b977cbd3ef48cefd816f2..936fffa252fd42ad5100d6ee2f96fb001f47132e 100644 (file)
@@ -1716,6 +1716,22 @@ all channel buffers on all servers."
   "Used to keep track of how many times an attempt at changing nick is made.")
 (make-variable-buffer-local 'erc-nick-change-attempt-count)
 
+(defun erc-migrate-modules (mods)
+  "Migrate old names of ERC modules to new ones."
+  ;; modify `transforms' to specify what needs to be changed
+  ;; each item is in the format '(new .old)
+  (let ((transforms '((pcomplete . completion)))
+       (modules (copy-alist mods)))
+    (dolist (transform transforms)
+      (let ((addp nil))
+       (setq modules (erc-delete-if `(lambda (val)
+                                       (and (eq val ',(car transform))
+                                            (setq addition t)))
+                                    modules))
+       (when addp
+         (add-to-list 'modules (cdr transform)))))
+    (erc-delete-dups modules)))
+
 (defcustom erc-modules '(netsplit fill button match track pcomplete readonly
                                  ring autojoin noncommands irccontrols
                                  stamp)
@@ -1723,6 +1739,9 @@ all channel buffers on all servers."
 If you set the value of this without using `customize' remember to call
 \(erc-update-modules) after you change it.  When using `customize', modules
 removed from the list will be disabled."
+  :get (lambda (sym)
+        ;; replace outdated names with their newer equivalents
+        (erc-migrate-modules (symbol-value sym)))
   :set (lambda (sym val)
         ;; disable modules which have just been removed
         (when (and (boundp 'erc-modules) erc-modules val)
@@ -1732,7 +1751,7 @@ removed from the list will be disabled."
                 (when (and (fboundp f) (boundp f) (symbol-value f))
                   (message "Disabling `erc-%s'" module)
                   (funcall f 0))))))
-        (set-default sym val)
+        (set sym val)
         ;; this test is for the case where erc hasn't been loaded yet
         (when (fboundp 'erc-update-modules)
           (erc-update-modules)))
@@ -1753,8 +1772,8 @@ removed from the list will be disabled."
                     "Notify when the online status of certain users changes"
                     notify)
              (const :tag "Complete nicknames and commands (programmable)"
-                    pcomplete)
-             (const :tag "Complete nicknames and commands (old)" completion)
+                    completion)
+             (const :tag "Complete nicknames and commands (old)" hecomplete)
              (const :tag "Make displayed lines read-only" readonly)
              (const :tag "Replace text in messages" replace)
              (const :tag "Enable an input history" ring)
@@ -1781,10 +1800,13 @@ removed from the list will be disabled."
        ;; yuck. perhaps we should bring the filenames into sync?
        ((string= req "erc-completion")
        (setq req "erc-pcomplete")
-       (setq mod 'pcomplete))
-       ((string= req "erc-services")
-       (setq req "erc-nickserv")
-       (setq mod 'services)))
+       (setq mod 'completion))
+       ((string= req "erc-pcomplete")
+       (setq req "erc-pcomplete")
+       (setq mod 'completion))
+       ((string= req "erc-autojoin")
+       (setq req "erc-join")
+       (setq mod 'autojoin)))
       (condition-case nil
          (require (intern req))
        (error nil))
@@ -3142,12 +3164,6 @@ the message given by REASON."
                            (erc-modes)))
   t)
 
-(defun erc-cmd-SMV ()
-  "Say the current ERC module versions into channel."
-  (erc-send-message (format "I'm using the following module revisions: %s!"
-                           (erc-version-modules)))
-  t)
-
 (defun erc-cmd-DEOP (&rest people)
   "Remove the operator setting from user(s) given in PEOPLE."
   (when (> (length people) 0)