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 <dsm@muenster.de>

	* 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. Revision 1.707 had broken /me.
	Shouting is bad! :)

2004-12-14  Diane Murray <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* erc-backend.el: (def-edebug-spec): Only run this if 'edebug is
	available.

2004-12-14  Diane Murray <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* erc-nets.el: Added local variables for this file.
	(erc-networks-alist): Fixed `:type' to work better in
	customization.

2004-04-28  Diane Murray <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* erc-autoaway.el (erc-autoaway-reset-idletime): Make sure `line'
	is a string to avoid errors upon startup.

2004-04-06  Diane Murray <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* erc-autoaway.el (erc-autoaway-reset-idletime): Forgot /gaway in
	regexp.

2004-04-06  Diane Murray <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

 	* 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 <dsm@muenster.de>

	* erc-track.el: (erc-modified-channels-display): Added a space
	before opening bracket.

2004-03-21  Diane Murray <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* erc-list.el, erc-notify.el: (require 'erc-nets): added

2004-03-08  Diane Murray <dsm@muenster.de>

	* erc.el (erc-network-name): Function definition moved to
	erc-nets.el.  The functions `erc-determine-network' and
	`èrc-network' in erc-nets.el do what this did before.  Deprecated.
	Use (erc-network) instead.

2004-03-08  Diane Murray <dsm@muenster.de>

	* 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 `èrc-network' in
	erc-nets.el do what this did before.  Deprecated.  Use
	(erc-network) instead.

2004-03-08  Diane Murray <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* 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 <dsm@muenster.de>

	* erc.el, erc-ibuffer.el, erc-menu.el:
	erc-track-modified-channels-mode is now erc-track-mode

2004-02-29  Diane Murray <dsm@muenster.de>

	* 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 revision 1.601.

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.
