2008-11-19  Andy Stewart  <lazycat.manatee@gmail.com>

	* erc.el (erc-header-line-uses-tabbar-p): New option that makes
	tabbar mode usable with ERC if set to non-nil.
	(erc-update-mode-line-buffer): Use it.

2008-11-19  Glenn Morris  <rgm@gnu.org>

	* erc-compat.el (help-function-arglist): Autoload it.

2008-10-03  Michael Olson  <mwolson@gnu.org>

	* erc-dcc.el (english): Increase size heading by two places.
	(erc-dcc-byte-count): Move higher.
	(erc-dcc-do-LIST-command): Use erc-dcc-byte-count to get accurate
	count.  Coerce byte total to floating point before performing
	computation, otherwise division will truncate to 0.
	(erc-dcc-append-contents): Update erc-dcc-byte-count.
	(erc-dcc-get-filter): Don't update erc-dcc-byte-count, because
	that will give incorrect size totals.  Instead, figure out how
	much we have by summing byte count and current buffer size.
	(erc-dcc-get-sentinel): Don't update erc-dcc-byte-count.

2008-10-01  Michael Olson  <mwolson@gnu.org>

	* erc-dcc.el (erc-pack-int): Make sure returned string is within 4
	bytes.  Always return a 4-byte string, so that we conform to the
	CTCP spec.
	(erc-most-positive-int-bytes): New constant representing the
	number of bytes that most-positive-fixnum can be stored in.
	(erc-most-positive-int-msb): New constant representing the
	contents of the most significant byte of most-positive-fixnum.
	(erc-unpack-int): Make sure that the integer we get back can be
	represented in Emacs.
	(erc-dcc-do-CLOSE-command): Update docstring.  Don't use the line
	variable.  Try to disambiguate between type and nick when only one
	is provided.  Validate both type and nick arguments.  Allow
	matching by just nick.
	(erc-dcc-append-contents): Set inhibit-read-only to t.  Prevent
	auto-compression from triggering when we write the contents to a
	file.
	(erc-dcc-get-file): Prevent auto-compression from triggering when
	we truncate a file.

2008-07-27  Dan Nicolaescu  <dann@ics.uci.edu>

	* erc.el: Remove code for Carbon.

2008-06-07  Glenn Morris  <rgm@gnu.org>

	* erc-autoaway.el, erc-ibuffer.el, erc-menu.el:
	* erc-stamp.el, erc.el: Remove unnecessary eval-when-compiles.

2008-05-30  Diane Murray  <disumu@x3y2z1.net>

	* erc-backend.el (328): New response handler.

	* erc.el (english): Add 328 to catalog.

2008-05-29  Diane Murray  <disumu@x3y2z1.net>

	* erc-services.el (erc-nickserv-alist): Update REGEXP and
	SUCCESS-REGEXP for freenode.

2008-05-05  Juanma Barranquero  <lekktu@gmail.com>

	* erc-goodies.el (erc-noncommands-list, noncommands)
	(erc-control-characters, erc-interpret-controls-p)
	(erc-interpret-mirc-color): Fix typos in docstrings.
	(erc-controls-highlight): Reflow docstring.

2008-04-26  Johan Bockgård  <bojohan@gnu.org>

	* erc.el (erc-put-text-properties): Don't use mapcar*.
	(erc-display-line-1): Fix argument order in call to
	erc-put-text-properties.

2008-04-14  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-remove-text-properties-region): Disable this command
	by default.  Thanks to e1f for the suggestion.

2008-02-20  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-notice-face): Fix this face for Emacs 21 users.

2008-02-05  Juanma Barranquero  <lekktu@gmail.com>

	* erc.el (erc-valid-nick-regexp):
	* erc-button.el (erc-button-syntax-table):
	* erc-match.el (erc-match-syntax-table): Replace `legal' with `valid'.

2008-02-04  Jeremy Maitin-Shepard  <jbms@cmu.edu>

	* erc.el (erc-cmd-QUERY): Bind the value of `erc-auto-query' to
	`erc-query-display' rather than `erc-join-buffer'.  This fixes a
	bug where the value of erc-auto-query was being ignored.

2008-01-31  Michael Olson  <mwolson@gnu.org>

	* erc-dcc.el (erc-dcc-do-GET-command, erc-dcc-do-SEND-command):
	Improve docstring.  If FILE argument is split into multiple
	arguments, re-join them into a single string, separated by a
	space.  This fixes an issue where the user wants to send or
	receive a file with spaces in its name.  It is assumed that no one
	will try sending or receiving a file with multiple consecutive
	spaces in its name, otherwise this fix will fail.

	* erc.el (erc-mode-map): Add binding for C-c C-x to
	erc-quit-server, since rcirc.el binds its quit command in a
	similar manner.  Thanks to Jari Aalto for the suggestion.

2008-01-28  Diane Murray  <disumu@x3y2z1.net>

	* erc-list-old.el (list-old): Define module as list-old, not list.
	This fixes a bug where an unknown module error would occur when
	starting ERC and using the list-old module.

	* erc-track.el (erc-track-find-face): If no choice was found
	return nil to use the default mode-line faces.

2008-01-26  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-version-string): Release ERC 5.3.

	* Makefile (VERSION): Update.
	(EXTRAS): Remove erc-list.el after all, because this is mainly for
	users of the version that comes with Emacs, and they will have
	erc-list.el by Emacs 23.
	(MISC): Add ChangeLog.07.
	(elpa): Fix build issue.  Add proper version to erc-pkg.el.

	* README.extras: Mention Emacs 23.

	* erc-pkg.el: Make the version string a template.

	* erc.texi (Obtaining ERC): Update extras URLs for 5.3.
	(Development): Write instructions for git, and remove those for Arch.
	(History): Mention the switch to git.

2008-01-25  Michael Olson  <mwolson@gnu.org>

	* NEWS: Update.

	* erc-goodies.el (keep-place): New module which keeps your place
	in unvisited ERC buffers when new messages arrive.  This is mostly
	taken from Johan Bockgård's init file.
	(erc-noncommands-list): Move to correct place.

	* erc-networks.el: Add a module definition.

	* erc-services.el (erc-nickserv-identify-mode): Force-enable the
	networks module, because we need it to set erc-network for us.

	* erc-track.el (erc-track-faces-normal-list): Indicate in the
	docstring that this variable can be set to nil.

	* erc.el: On second thought, don't load erc-networks.  Just enable
	the networks module by default.
	(erc-modules): Add option for keep-place and networks.  Enable
	networks by default.
	(erc-version-string): Make release candidate 1 available.

2008-01-24  Michael Olson  <mwolson@gnu.org>

	* erc.el: Load erc-networks.el so that functions get access to the
	`erc-network-name' function.

	* erc-track.el (erc-track-faces-normal-list): Add
	erc-dangerous-host-face.
	(erc-track-exclude-types): Add 333 and 353 to the default list of
	things to ignore, and explain what they are in the docstring.

2008-01-23  Michael Olson  <mwolson@gnu.org>

	* erc-track.el (erc-track-faces-priority-list): Move
	erc-nick-default-face higher, so that it can be used for the
	activity indication effect.  Add erc-current-nick-face,
	erc-pal-face, erc-dangerous-host-face, and erc-fool-face by
	themselves.
	(erc-track-faces-normal-list): New option that contains a list of
	faces to consider "normal".
	(erc-track-position-in-mode-line): Minor docfix.
	(erc-track-find-face): Use erc-track-faces-normal-list to produce
	a sort of blinking activity effect.

2008-01-22  Michael Olson  <mwolson@gnu.org>

	* erc-button.el (erc-button-add-nickname-buttons): When in a
	channel buffer, only look at nicks from the current channel.
	Thanks to e1f for the report.

2008-01-21  Michael Olson  <mwolson@gnu.org>

	* erc-compat.el (erc-const-expr-p, erc-list*, erc-assert): Remove,
	since we can use the default `assert' function without it causing
	us any problems, even in Emacs 21.  Thanks to bojohan for the
	suggestion.

	* erc-goodies.el (move-to-prompt): Use the "XEmacs" method
	instead, because the [remap ...] method interferes with
	delete-selection-mode.
	(erc-move-to-prompt): Rename from erc-move-to-prompt-xemacs.
	Deactivate mark and call push-mark before moving point.  Thanks to
	bojohan for the suggestion.
	(erc-move-to-prompt-setup): Rename from
	erc-move-to-prompt-init-xemacs.

	* erc-track.el (erc-track-faces-priority-list): Replace erc-button
	with '(erc-button erc-default-face) so that we only care about
	buttons that are part of normal text.  Adjust customization type
	to handle this case.  Make erc-nick-default-face a list.  Handle
	pals, fools, current nick, and dangerous hosts.
	(erc-track-find-face): Simplify.  Adapt for list of faces case.
	(erc-faces-in): Don't deflate lists of faces.  Add them as-is.
	(erc-track-face-priority): Use equal instead of eq.

2008-01-20  Michael Olson  <mwolson@gnu.org>

	* erc-goodies.el (erc-move-to-prompt, erc-move-to-prompt-xemacs):
	Fix off-by-one error that caused the point to move when placed at
	the beginning of some already-typed text.  Thanks to e1f for the
	report.

	* erc-dcc.el, erc-xdcc.el: Add simple module definitions.

	* erc.el (erc-modules): Add dcc and xdcc.

2008-01-19  Michael Olson  <mwolson@gnu.org>

	* erc-bbdb.el (erc-bbdb-insinuate-and-show-entry): Work around bug
	in XEmacs 21.4 that throws an error when the first argument to
	run-at-time is nil.

	* erc-button.el (button): Undo XEmacs-specific change to all ERC
	buffers when module is removed.
	(erc-button-setup): Rename from erc-button-add-keys, and move
	XEmacs-specific stuff here.

	* erc-goodies.el (erc-unmorse): Improve regexp for detecting
	morse.  Deal with the morse style that has "/ " at the end of
	every letter.
	(erc-imenu-setup): New function that sets up Imenu support.  Add
	it instead of a lambda form to erc-mode-hook.
	(scrolltobottom): Remove erc-scroll-to-bottom from all ERC buffers
	when module is removed.  Activate the functionality in all ERC
	buffers when the module is activated, rather than leaving it up to
	the user.
	(move-to-prompt): New module that moves to the ERC prompt if a
	user tries to type elsewhere in the buffer, and then inserts their
	keystrokes there.  This is mostly taken from Johan Bockgård's init
	file.
	(erc-move-to-prompt): New function that implements this.
	(erc-move-to-prompt-xemacs): New function that implements this for
	XEmacs.
	(erc-move-to-prompt-init-xemacs): New function to perform the
	extra initialization step needed for XEmacs.

	* erc-page.el, erc-replace.el: Fix header and footer.

	* erc-track.el (erc-track-minor-mode-maybe): Take an optional
	buffer arg so that we can put this in erc-connect-pre-hook.  If
	given this argument, include it in the check to determine whether
	to activate erc-track-minor-mode.
	(track): Add erc-track-minor-mode-maybe to erc-connect-pre-hook,
	so that we can use it as soon as a connection is attempted.

	* erc.el (erc-format-network, erc-format-target-and/or-network):
	Use erc-network-name function instead, and check to see whether
	that function is bound.  This fixes an error in process filter for
	people who did not have erc-services or erc-networks loaded.
	(erc-modules): Add move-to-prompt module and enable it by
	default.  Thanks to e1f for the suggestion.

2008-01-18  Michael Olson  <mwolson@gnu.org>

	* Makefile (EXTRAS): Include erc-list-old.el.

	* erc-dcc.el (erc-dcc-verbose): Rename from erc-verbose-dcc.
	(erc-pack-int): Rewrite to not depend on a count argument.
	(erc-unpack-int): Rewrite to remove 4-character limitation.
	(erc-dcc-server): Call set-process-coding-system and
	set-process-filter-multibyte so that the contents get sent out
	without modification.
	(erc-dcc-send-filter): Don't take a substring -- just pass the
	whole string to erc-unpack-int.
	(erc-dcc-receive-cache): New option that indicates the number of
	bytes to let the receive buffer grow before flushing it.
	(erc-dcc-file-name): New buffer-local variable to keep track of
	the filename of the currently-received file.
	(erc-dcc-get-file): Disable undo for a speed increase.  Set
	erc-dcc-file-name.  Truncate the file before writing to it.
	(erc-dcc-append-contents): New function to append the contents of
	a buffer to a file and then erase the contents of the buffer.
	(erc-dcc-get-filter): Flush buffer contents after exceeding
	erc-dcc-receive-cache.  This allows large files to be downloaded
	without storing the whole thing in memory.
	(erc-dcc-get-sentinel): Flush any remaining contents before
	closing.  No need to save buffer.
	(erc-dcc-listen-host): New option that determines which IP address
	to listen on.
	(erc-dcc-public-host): New option that determines which IP address
	to advertise when sending a file.  This is useful for people who
	are on a local subnet.  Together, these two options replace
	erc-dcc-host.

	* erc.el (erc-mode-line-format): Add %N and %S.  %N is the name of
	the network, and %S is much like %s but with the network name
	trumping the server name.  Default to "%S %a".  Thanks to e1f for
	the suggestion.
	(erc-format-network): New function that formats the network name.
	(erc-format-target-and/or-network): New function that formats both
	the network name and target, falling back on the server name if
	the network name is not available.
	(erc-update-mode-line-buffer): Add the new format spec items.

2008-01-17  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-join-buffer): Improve documentation.
	(erc-query-display): New option indicating how to display a query
	buffer that is made by using the /QUERY command.  The default is
	to display the query in a new window.
	(erc-cmd-QUERY): Use it.  Improve docstring.
	(erc-auto-query): Default this to 'window-noselect instead,
	because I've already seen bug reports about new users thinking
	that ERC didn't display their test messages.  Improve
	customization type.
	(erc-notice-face): Make this work with XEmacs.
	(erc-join-buffer): Mention 'buffer in docstring.  Improve
	customization type.

	* erc-dcc.el (erc-dcc-send-sentinel): Better handle case where elt
	is nil, in order to avoid an error.  Thanks to Brent Goodrick for
	the initial patch.
	(erc-dcc-display-send): New function split from erc-dcc-send-hook.
	(erc-dcc-send-connect-hook): Use it -- we don't like lambda forms
	in hooks.
	(erc-dcc-send-filter): Display byte count if the client confirmed
	too much, and kill the buffer.  Otherwise a DoS might be possible
	by making Emacs run out of RAM.

	* erc-backend.el (erc-server-connect): Detect early on whether the
	connection attempt has failed in order to avoid confusing error
	messages.

	* erc-networks.el (erc-server-alist): Add Rizon network.

	* erc-services.el (erc-nickserv-passwords): Add Rizon to options.
	(erc-nickserv-alist): Add support for Rizon.

	* erc-track.el (erc-track-find-face): Don't let buttons in notices
	trump default text.  Use catch/throw.  Default to first element of
	FACES is nothing is found.

	* erc-xdcc.el: Add local variables for proper indentation setup.

2008-01-15  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (erc-server-coding-system): Docfix.
	(erc-coding-system-for-target): Pass the `target' argument along
	as the first and only argument.  It's not good to just depend on a
	dynamic binding.

2008-01-10  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (321, 322): Split message-displaying parts into
	new functions, which are added to each response's respective
	hook.  This makes them easier to disable.

	* erc-list.el: New file from Tom Tromey.  Use erc-propertize
	instead of propertize.  Require 'erc.
	(list): New module definition.  Remove message-displaying
	functions for 321 and 322 response handlers when enabling the
	module, and restore them when disabling.  As a sanity check,
	remove the erc-list-handle-322 function when disabling the module.
	(erc-list-handle-322): Handle the case where we run the LIST
	command, but do not go through the normal steps.
	(erc-cmd-LIST): Add docstring.  Strip initial space from line if
	it is non-nil.  Use make-local-variable to silence compiler
	warning.  Capture current buffer and pass it to
	erc-list-install-322-handler.
	(erc-list-install-322-handler): Take server-buffer argument, so
	that we are certain of being in the right buffer.  Use 4th
	argument to add-hook, so that erc-server-322-functions is only
	modified in one buffer.

	* erc-list-old.el: Renamed from old erc-list.el.

	* erc.el (erc-modules): Add list-old.
	(erc-set-topic): Handle case where there are no newlines in the
	existing topic, which happens when /LIST is run.
	(erc-notice-face): If we have less than 88 colors, make this
	blue.  Otherwise the text will be pink in a tty, which looks
	dreadful.  Thanks to e1f for the report.
	(erc-remove-parsed-property): New option that determines whether
	to remove the erc-parsed property after displaying a message.
	This should have the effect of making ERC take up less memory.
	(erc-display-line-1): Use it.

2008-01-04  Stefan Monnier  <monnier@iro.umontreal.ca>

	* erc-ibuffer.el (erc-channel-modes):
	Pass mode-name through format-mode-line

2007-12-16  Diane Murray  <disumu@x3y2z1.net>

	* erc-services.el (erc-nickserv-alist): Removed autodetect regexp,
	added identified regexp for OFTC.
	(erc-nickserv-identification-autodetect): Make sure success-regex
	is non-nil.
	(erc-nickserv-identify-autodetect): Make sure identify-regex is
	non-nil.  Doc fix.

2007-12-13  Diane Murray  <disumu@x3y2z1.net>

	* erc-backend.el (PRIVMSG, QUIT, TOPIC, WALLOPS, 376, 004, 221)
	(312, 315, 319, 330, 331, 333, 367, 368, 391, 405, 406, 412)
	(421, 432, 433, 437, 442, 461, 474, 477, 482, 431): Doc fix.

2007-12-09  Michael Olson  <mwolson@gnu.org>

	* erc-services.el (erc-nickserv-alist): Fix regexps for GRnet.

2007-12-09  Giorgos Keramidas  <keramida@ceid.upatras.gr>  (tiny change)

	* erc-backend.el, erc.el:
	Parse 275 (secure connection) responses.

	* erc-services.el: Add identification hooks for GRnet, the Greek
	IRC network <http://www.irc.gr>.

2007-12-08  David Kastrup  <dak@gnu.org>

	* erc-stamp.el (erc-echo-timestamp):
	* erc-lang.el (language):
	* erc-backend.el (erc-server-connect): Fix buggy call to `message'.

2007-12-07  Theresa O'Connor  <ted@oconnor.cx>

	* erc-services.el: Provide a hook that runs when nickserv confirms
	that the user has successfully identified.
	(services, erc-nickserv-identify-mode): Add and remove
	erc-nickserv-identification-autodetect from
	erc-server-NOTICE-functions.
	(erc-nickserv-alist): Add SUCCESS-REGEXP to each entry.
	(erc-nickserv-alist-identified-regexp)
	(erc-nickserv-identification-autodetect): New functions.
	(erc-nickserv-identified-hook): New hook.

2007-12-06  Deepak Goel  <deego3@gmail.com>

	* erc-match.el (erc-add-entry-to-list): Fix buggy call to `error'.

2007-12-01  Glenn Morris  <rgm@gnu.org>

	* erc-backend.el (erc-server-send-ping): Move after definition of
	erc-server-send.

2007-11-29  Giorgos Keramidas  <keramida@ceid.upatras.gr>  (tiny change)

	* erc-backend.el, erc.el:
	Parse 307 (nick has identified) responses.

2007-11-15  Juanma Barranquero  <lekktu@gmail.com>

	* erc.el (erc-open):
	* erc-backend.el (define-erc-response-handler):
	* erc-log.el (log):
	* erc-match.el (erc-log-matches): Fix typos in docstrings.

2007-11-11  Michael Olson  <mwolson@gnu.org>

	* erc-autoaway.el (erc-autoaway-possibly-set-away):
	* erc-netsplit.el (erc-netsplit-timer):
	* erc-notify.el (erc-notify-timer):
	* erc-track.el (erc-user-is-active): Only run if we have
	successfully established a connection to the server and have
	logged in.  I suspect that sending messages too soon may make some
	IRC servers not respond well, particularly when the network
	connection is iffy or subject to traffic-shaping.

2007-11-01  Michael Olson  <mwolson@gnu.org>

	* erc-compat.el (erc-set-write-file-functions): New compatibility
	function to set the write hooks appropriately.

	* erc-log.el (erc-log-setup-logging): Use
	erc-set-write-file-functions.  This fixes a byte-compiler warning.

	* erc-stamp.el: Silence byte-compiler warning about
	erc-fill-column.

	* erc.el (erc-with-all-buffers-of-server): Bind the result of
	mapcar to a variable in order to silence a byte-compiler warning.

2007-10-29  Michael Olson  <mwolson@gnu.org>

	* erc-ibuffer.el (erc-modified-channels-alist): Use
	eval-when-compile, and explain why we are doing this.

2007-10-25  Dan Nicolaescu  <dann@ics.uci.edu>

	* erc-ibuffer.el (erc-modified-channels-alist): Pacify
	byte-compiler.

2007-10-13  Glenn Morris  <rgm@gnu.org>

	* erc-track.el (erc-modified-channels-update): Use mapc rather
	than mapcar.

2007-10-12  Diane Murray  <disumu@x3y2z1.net>

	* erc.el (erc-join-channel): Prompt for channel key if C-u or
	another prefix-arg was typed.

	* NEWS: Noted this change.

2007-10-07  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-cmd-ME'S): New command that handles the case where
	someone types "/me's".  It concatenates the text " 's" to the
	beginning of the input and then sends the result like a normal
	"/me" command.
	(erc-command-regexp): Permit single-quote character.

2007-09-30  Aidan Kehoe  <kehoea@parhasard.net>  (tiny change)

	* erc-log.el (erc-save-buffer-in-logs): Prevent spurious warnings
	when looking at a log file and concurrently saving to it.

2007-09-18  Exal de Jesus Garcia Carrillo  <exal@gnu.org>  (tiny change)

	* erc.texi (Special-Features): Fix small typo.

2007-09-16  Michael Olson  <mwolson@gnu.org>

	* erc-track.el (erc-track-switch-direction): Mention
	erc-track-faces-priority-list.  Thanks to Leo for the suggestion.

2007-09-11  Exal de Jesus Garcia Carrillo  <exal@gnu.org>  (tiny change)

	* erc-sound.el: Fix typo in setting up instructions.

2007-09-10  Michael Olson  <mwolson@gnu.org>

	* Makefile (elpa): Copy dir template rather than echoing a few
	lines.  The reason for this is that the ELPA package for ERC was
	getting a corrupt dir entry.

	* dir-template: Template for the ELPA dir file.

2007-09-08  Michael Olson  <mwolson@gnu.org>

	* erc-log.el (erc-log-filter-function): New option that specifies
	the function to call for filtering text before writing it to a log
	file.  Thanks to David O'Toole for the suggestion.
	(erc-save-buffer-in-logs): Use erc-log-filter-function.  Make sure
	we carry along the value of coding-system-for-write, because this
	could potentially be shadowed by the temporary buffer.

	* erc.el (erc-version-string): Update to 5.3, development version.

2007-09-07  Glenn Morris  <rgm@gnu.org>

	* erc.el (erc-toggle-debug-irc-protocol): Fix call to
	erc-view-mode-enter.

2007-08-08  Glenn Morris  <rgm@gnu.org>

	* erc-log.el, erc.el: Replace `iff' in doc-strings and comments.

2007-09-03  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-default-port): Make this an integer value rather
	than a string.  Thanks to Luca Capello for the report.

2007-08-27  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-cmd-GQUIT): If erc-kill-queries-on-quit is non-nil,
	kill all query buffers after 4 seconds.

2007-08-16  Michael Olson  <mwolson@gnu.org>

	* NEWS: Add ERC 5.3 changes section, and mention jbms' erc-track
	compatibility note.

	* erc-track.el (erc-track-list-changed-hook): Turn this into a
	customizable option.
	(erc-track-switch-direction): Add 'importance option.
	(erc-modified-channels-display): If erc-track-switch-direction is
	'importance, call erc-track-sort-by-importance.
	(erc-track-face-priority): New function that returns a number
	indicating the position of a face in erc-track-faces-priority-list.
	(erc-track-sort-by-importance): New function that sorts
	erc-modified-channels-list according to erc-track-face-priority.
	(erc-track-get-active-buffer): Make 'oldest a rough opposite of
	'importance.

2007-08-14  Jeremy Maitin-Shepard  <jbms@cmu.edu>

	* erc-track.el (erc-track-remove-disconnected-buffers): New
	variable which controls whether buffers associated with a server
	that is disconnected should be removed from
	`erc-modified-channels-alist'.  Existing behavior is to
	unconditionally remove such buffers, which is achieved by setting
	`erc-track-removed-disconnected-buffers' to t.  When set to t,
	which is the new default value, such buffers remain in the list,
	which I think is often the desired behavior, since the user may
	likely wish to find out about activity that occurred in a channel
	prior to it being disconnected.
	(erc-track-list-changed-hook): New hook that is run whenever the
	contents of `erc-modified-channels-alist' changes; it is useful
	for users such as myself that don't use the default mode-line
	notification but instead use a separate mechanism (which is tied
	to my window manager) to provide notification of channel activity.
	(erc-track-get-buffer-window): New function that acts as a wrapper
	around `get-buffer-window' that handles the `selected-visible'
	option of `erc-track-visibility'; previously, the value of
	`erc-track-visibility' was passed directly to `get-buffer-window',
	which does not support `selected-visible'; consequently,
	`selected-visible' was not properly supported.
	(erc-track-modified-channels): Fix a bug in the logic for removing
	buffers from the list in certain cases.
	(erc-track-position-in-mode-line): Add a supported value that
	specifies that the tracking information should not be added to the
	mode line at all.  The value of nil is used to indicate that the
	information should not be added at all to the mode line.
	(erc-track-add-to-mode-line): Check for position eq to t, rather
	than non-nil.
	(erc-buffer-visible): Use erc-track-get-buffer-window.
	(erc-modified-channels-update): Take
	erc-track-remove-disconnected-buffers into account.
	(erc-modified-channels-display): Run `erc-track-list-changed-hook'.

	* erc.el (erc-reuse-frames): New option that determines whether
	new frames are always created.  Defaults to t.  This only has an
	effect when erc-join-buffer is set to 'frame.
	(erc-setup-buffer): Use it.

2007-08-14  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (erc-server-reconnect): If the server buffer has
	been killed, use the current buffer instead.  If the current
	buffer is not an ERC buffer, give an error.  This fixes a bug when
	/reconnect is run from a channel buffer whose server buffer has
	been deleted.  Thanks to jbms for the report.
	(erc-process-sentinel-1): Take server buffer as an argument, so
	that we can make sure that it is current.
	(erc-process-sentinel): Pass buffer to erc-process-sentinel-1.
	(erc-process-sentinel-2): New function split from
	erc-process-sentinel-1.  If server buffer is deleted during a
	reconnect attempt, stop trying to reconnect.  Fix bug where
	reconnect was not happening when erc-server-reconnect-attempts was
	t.  Call erc-server-reconnect-p only once each time.  If we are
	instructed to try connecting indefinitely, tell the user that they
	can stop this by killing the server buffer.  Call the process
	sentinel by means of run-at-time, so that there is time to kill
	the buffer if need be; this also removes the need for a while
	loop.  Refuse to reconnect again if erc-server-reconnect-timeout
	is not an number.

	* erc.el (erc-command-no-process-p): Fix bug: the return value of
	erc-extract-command-from-line is a list rather than a single
	symbol.  Thanks to jbms for the report.
	(erc-cmd-RECONNECT): Use simpler logic, and use buffer-live-p
	rather than bufferp.
	(erc-send-current-line, erc-display-command, erc-display-msg):
	Handle case where erc-server-process is nil, so that /reconnect
	works.

2007-08-12  Michael Olson  <mwolson@gnu.org>

	* erc-identd.el (erc-identd-filter): Instead of sending an EOF
	character, which now confuses freenode, stop the server process,
	so that no new connections are accepted, and kill the current
	client process.

2007-07-29  Michael Olson  <mwolson@gnu.org>

	* erc-list.el: Relicense to GPLv3.  Since the file was already
	licensed under version 2 or later, it turns out that we do not
	need the permission of all of the authors in order to proceed.

2007-07-13  Michael Olson  <mwolson@gnu.org>

	* erc-goodies.el (erc-get-bg-color-face, erc-get-fg-color-face):
	Use erc-error rather than message and beep.

	* erc-sound.el: Indentation fix.

	* erc.el (erc-command-no-process-p): New function that determines
	if its argument is an ERC command that can be run when the server
	process is not alive.
	(erc-cmd-SET, erc-cmd-CLEAR, erc-cmd-COUNTRY, erc-cmd-HELP)
	(erc-cmd-LASTLOG, erc-cmd-QUIT, erc-cmd-GQUIT)
	(erc-cmd-RECONNECT, erc-cmd-SERVER): Denote that these commands
	can be run even when the server process is not alive.
	(erc-send-current-line): Call erc-command-no-process-p if the
	server process is not alive, to determine if we have a command
	that can be run anyway.  Thanks to Tom Tromey for the bug report.
	(erc-error): New function that either displays a message or throws
	an error, depending on whether debug-on-error is non-nil.
	(erc-cmd-SERVER, erc-send-current-line): Use it.

2007-07-10  Michael Olson  <mwolson@gnu.org>

	* Relicense all FSF-assigned code to GPLv3.

2007-06-25  Michael Olson  <mwolson@gnu.org>

	* erc.texi (Options): Fix typo.
	(Getting Help and Reporting Bugs): Update webpage URL.  Make Gmane
	part more readable.

2007-06-20  Michael Olson  <mwolson@gnu.org>

	* erc-stamp.el (erc-timestamp-format-left): New option that
	specifies the left timestamp to use for
	erc-insert-timestamp-left-and-right.
	(erc-timestamp-format-right): New option that specifies the right
	timestamp to use for erc-insert-timestamp-left-and-right.
	(erc-insert-timestamp-function): Change default to
	erc-insert-timestamp-left-and-right.
	(erc-insert-away-timestamp-function): Ditto.
	(erc-timestamp-last-inserted-left)
	(erc-timestamp-last-inserted-right): New variables to keep track
	of data for erc-insert-timestamp-left-and-right.
	(erc-insert-timestamp-left-and-right): New function that places
	timestamps on both the left and right sides of the screen, but
	only if each timestamp has changed since it was last computed.
	Thanks to offby1 for urging me to merge this.

	* erc.el (erc-open-ssl-stream): Display informative error when
	ssl.el not found.
	(erc-tls): New function to connect using tls.el.
	(erc-open-tls-stream): New function to initiate tls connection.
	Display informative error when tls.el not found.

2007-06-19  Michael Olson  <mwolson@gnu.org>

	* erc-log.el: Update header with accurate instructions.

2007-06-17  Michael Olson  <mwolson@gnu.org>

	* erc-pkg.el: Update description to match what is currently in ELPA.

2007-06-14  Juanma Barranquero  <lekktu@gmail.com>

	* erc-goodies.el (erc-scroll-to-bottom): Remove redundant check.

2007-06-13  Michael Olson  <mwolson@gnu.org>

	* erc-compat.el (erc-with-selected-window): New compatibility
	macro that implements `with-selected-window'.

	* erc-goodies.el (erc-scroll-to-bottom): Use it.  This fixes a bug
	with buffer ordering where ERC buffers would move to the top.
	Thanks to Ivan Kanis for the patch.

2007-06-10  Michael Olson  <mwolson@gnu.org>

	* erc-log.el (erc-logging-enabled): Fix a bug that occurred when
	`erc-log-channels-directory' had the name of a function.

2007-06-06  Juanma Barranquero  <lekktu@gmail.com>

	* erc.el (erc-show-channel-key-p, erc-startup-file-list):
	Fix typo in docstring.

2007-06-03  Michael Olson  <mwolson@gnu.org>

	* erc-compat.el (erc-view-mode-enter): Make this its own function,
	in order to document what we do, and provide sane fallback
	behavior.

	* erc.el (erc-toggle-debug-irc-protocol): Don't pass any arguments
	to erc-view-mode-enter, since we don't do anything special with
	the exit function.  This fixes a bug with Emacs 21 and Emacs 22.
	Thanks to Leo for noticing.

2007-05-30  Michael Olson  <mwolson@gnu.org>

	* erc-compat.el (erc-user-emacs-directory): New variable that
	determines where to find user-specific Emacs settings.  For Emacs,
	this is usually ~/.emacs.d, and for XEmacs this is usually
	~/.xemacs.

	* erc.el (erc-startup-file-list): Use erc-user-emacs-directory.

2007-05-28  Michael Olson  <mwolson@gnu.org>

	* erc-button.el (erc-button-url-regexp): Recognize parentheses as
	part of URLs.  Thanks to Lawrence Mitchell for the fix.

2007-05-26  Michael Olson  <mwolson@gnu.org>

	* erc.texi (Modules): Fix references to completion modules.

2007-05-21  Michael Olson  <mwolson@gnu.org>

	* Makefile (SOURCE): Remove erc-pkg.el.
	(debclean): New rule to clean old Debian packages of ERC.
	(debprepare): Don't modify the released tarball, but copy it as
	the .orig.tar.gz file.
	(debrelease, debrevision): Remove.
	(debinstall): New target that copies the generated Debian file to
	a distro-specific location.
	(deb): New rule that chains together the stages in building a
	Debian package.
	(EXTRAS): Add erc-nicklist.el, since it is not release-quality.
	(extras): Copy images directory.

	* erc-nicklist.el (erc-nicklist-icons-directory): Use
	locate-library to find the "images" directory.  This should be
	more failsafe.  Thanks to Tom Tromey for the idea.

2007-05-19  Michael Olson  <mwolson@gnu.org>

	* Makefile (ELPA): New variable that contains the location of my
	local ELPA repository.
	(elpa): New rule that makes an ELPA package for ERC.

2007-04-19  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-parse-prefix): New function that retrieves the
	PREFIX server parameter from the current server and returns an
	alist of prefix type to prefix character.
	(erc-channel-receive-names): Use `erc-parse-prefix' to determine
	whether the first character of a nick is a prefix character or
	not.  This should fix a bug reported by bromine about needing to
	type "%" first to complete nicks of people who are "hops" on
	Slashnet.  This should also support for very exotic IRC server
	setups, if any exist.
	(erc-update-current-channel-member): Indentation.

2007-04-15  Michael Olson  <mwolson@gnu.org>

	* erc-log.el (erc-generate-log-file-name-function): Docfix.
	Mention how to deal with the case for putting log files in
	different directories.  Change a customization type from `symbol'
	to `function'.
	(erc-log-channels-directory): Allow this to contain a function
	name, which is called with the same args as in
	`erc-generate-log-file-name-function'.  Thanks to andrewy for the
	report and use case.
	(erc-current-logfile): Detect if `erc-log-channels-directory' is a
	function and call it with arguments if so.

2007-04-12  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (define-erc-response-handler): Mention that hook
	processing stops when the function returns non-nil.  This should
	help avoid a nasty "gotcha" when making custom functions.  Thanks
	to John Sullivan for the report.

2007-04-08  Diane Murray  <disumu@x3y2z1.net>

	* erc-nicklist.el (erc-nicklist-voiced-position): Fixed
	customization mismatch.

2007-04-01  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-version-string): Release ERC 5.2.

	* erc-auto.in, erc-chess.el, erc-list.el, erc-speak.el:
	* erc-viper.el: Update copyright notices.

	* erc.texi: Make Emacs Lisp source code in this document
	essentially public domain.  Update version to 5.2.
	(Obtaining ERC): Mention extras tarball.
	(Releases): Mention local GNU mirror.
	(Sample Configuration): Remove notice.

	* FOR-RELEASE (5.3): Add item for erc-nicklist.
	Mark NEWS as done.  Mark extras tarball as done.

	* Makefile (VERSION): Increment to 5.2.
	(TESTING): Remove.
	(EXTRAS): New variable containing the contents of our "Emacs 22
	extras" tarball.
	(SOURCE): Remove $(TESTING).
	(MISC): Add COPYING and ChangeLog.06.  Fix ChangeLog.NNNN ->
	ChangeLog.NN.
	(release): Use $(SNAPDIR) instead of erc-$(VERSION).
	(extras): New rule which implements the building of the extras
	tarball.
	(upload-extras): New rule to upload the extras tarball.  It's
	yucky to replicate upload, but oh well.
	(DISTRIBUTOR): New variable used to differentiate between building
	packages for Ubuntu and Debian.
	(debrelease, debrevision): Use it.
	(debbuild): Run linda in addition to lintian.

	* NEWS: Mention extras tarball.  Note which files have been
	renamed.  Note that erc-list is enabled by default, except in
	Emacs 22.

	* README.extras: New file which serves as a README for the extras
	tarball.

2007-03-31  Michael Olson  <mwolson@gnu.org>

	* NEWS: Update for the 5.2 release.

	* FOR-RELEASE: Finish up 5.2 manual item.  Add documentation item
	for 5.3.

	* erc.texi (Sample Session): Flesh out.  Mention #erc.
	(Modules): Defer to 5.3 release.
	(Advanced Usage): Move Sample Configuration chapter ahead of
	unfinished chapters.
	(Sample Configuration): Write.
	(Options): Mention how to see available ERC options.  Defer to 5.3
	release.
	(Tips and Tricks): Remove, since it seems better to just include
	tips and tricks in the sample configuration, commented out.

	* erc-bbdb.el (erc-bbdb-search-name-and-create): Make prompt more
	informative about how to skip merging.
	(erc-bbdb-insinuate-and-show-entry-1): Move contents of
	erc-bbdb-insinuate-and-show-entry here.
	(erc-bbdb-insinuate-and-show-entry): Run
	erc-bbdb-insinuate-and-show-entry-1 "outside" of the calling
	function, so that we can avoid triggering a process-filter error
	if the user hits C-g.

2007-03-30  Michael Olson  <mwolson@gnu.org>

	* FOR-RELEASE: Solve C-c C-SPC keybinding dilemma.

	* erc-autoaway.el (erc-autoaway-idle-method): Use `if' rather than
	`cond' and `set' rather than `set-default'.

	* erc-log.el: Avoid compiler warning by requiring erc-network
	during compilation.
	(erc-generate-log-file-name-function): Add tag to each option.
	Add erc-generate-log-file-name-network.
	(erc-generate-log-file-name-network): New function which generates
	a log file name that uses network name rather than server name,
	when possible.

	* erc-track.el (track): Assimilate track-when-inactive module,
	since there's no need to have two modules in one file -- an option
	will do.  Remove track-modified-channels alias.  Call
	erc-track-minor-mode-maybe, and tear down the minor mode when
	disabling.
	(erc-track-when-inactive): New option which determines whether to
	track visible buffers when inactive.  The default is not to do so.
	(erc-track-visibility): Mention erc-track-when-inactive.
	(erc-buffer-visible): Use erc-track-when-inactive.
	(erc-track-enable-keybindings): New option which determines
	whether to enable the global-level tracking keybindings.  The
	default is to do so, unless they would override another binding,
	in which case we prompt the user about it.
	(erc-track-minor-mode-map): Move global keybindings here.
	(erc-track-minor-mode): New minor mode which only enables the
	keybindings and does nothing else.
	(erc-track-minor-mode-maybe): New function which starts
	erc-track-minor-mode, but only if it hasn't already been started,
	an ERC buffer exists, and the user OK's it, depending on the value
	of `erc-track-enable-keybindings'.
	(erc-track-switch-buffer): Display a message if someone calls this
	without first enabling erc-track-mode.

2007-03-17  Michael Olson  <mwolson@gnu.org>

	* erc.texi (Development): Mention ErcDevelopment page on
	emacswiki.
	(Getting Started): Mention ~/.emacs.d/.ercrc.el and the Customize
	interface.
	(Sample Session): New section that has a very rough draft for a
	sample ERC session.
	(Special Features): New section that explains some of the special
	features of ERC.  Taken from ErcFeatures on emacswiki, with
	enhancements.

2007-03-12  Diane Murray  <disumu@x3y2z1.net>

	* erc-autoaway.el (erc-autoaway-idle-method): When setting the new
	value, disable and re-enable `erc-autoaway-mode' only if it was
	already enabled.  This fixes a bug where autoaway was enabled just
	by loading the file.

2007-03-10  Diane Murray  <disumu@x3y2z1.net>

	* erc-capab.el: Added more information to the Usage section.
	(erc-capab-identify-prefix): Doc fix.
	(erc-capab-identify-unidentified): New face.
	(290): Removed.  Definition moved to erc-backend.el.
	(erc-capab-identify-send-messages): Renamed from
	`erc-capab-send-identify-messages'.
	(erc-capab-identify-setup): Use it.
	(erc-capab-identify-get-unidentified-nickname): Renamed from
	`erc-capab-get-unidentified-nickname'.
	(erc-capab-identify-add-prefix): Use it.  Use
	`erc-capab-identify-unidentified' as the face.

	* erc-backend.el (290): Moved here from erc-capab.el.

	* erc.el (erc-select): Added an autoload cookie.
	(erc-message-type-member, erc-restore-text-properties): Use
	`erc-get-parsed-vector'.
	(erc-auto-query): Set the default to 'bury since many new users
	expect private messages from others to be in dedicated query
	buffers, not the server buffer.
	(erc-common-server-suffixes): Use "freenode" for freenode.net, not
	"OPN".  Added oftc.net.

	* NEWS: Added note about erc-auto-query's new default setting.

2007-03-03  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-open, erc): Docfixes.

2007-03-02  Michael Olson  <mwolson@gnu.org>

	* FOR-RELEASE: Make section for 5.3 release and move erc-backend
	cleanup there.  Awaiting discussion before doing other things.
	Add tasks for merging filename changes from the 5.2 release
	branch, and for making a tarball of modules not in Emacs 22.  Add
	item to remind me to update NEWS.  Mark backtab entry as done.

	* erc-button.el (button): Add call to `erc-button-add-keys'.
	(erc-button-keys-added): New variable tracking whether we've added
	the keys yet.
	(erc-button-add-keys): New function that adds the <backtab> key to
	erc-mode-map.

	* erc.texi: Change version to 5.2 (pre-release).

2007-02-15  Michael Olson  <mwolson@gnu.org>

	* CREDITS: Update.

	* erc-backend.el (erc-server-send-ping-interval): Change to use a
	default of 30 seconds.  Improve customize interface.
	(erc-server-send-ping-timeout): New option that determines when to
	consider a connection stalled and restart it.  The default is
	after 120 seconds.
	(erc-server-send-ping): Use erc-server-send-ping-timeout instead
	of erc-server-send-ping-interval.  If
	erc-server-send-ping-timeout is nil, do not ever kill and restart
	a hung IRC process.

	* erc.el (erc-modules): Include the name of the module in its
	description.  This should make it easier for people to find and
	enable a particular module.

2007-02-15  Vivek Dasmohapatra  <vivek@etla.org>

	* erc.el (erc-cmd-RECONNECT): Kill old process if it is still
	alive.
	(erc-message-english-PART): Properly escape "%" characters in
	reason.

	* erc-backend.el (erc-server-reconnecting): New variable that is
	set when the user requests a reconnect, but the old process is
	still alive.  This forces the reconnect to work even though the
	process is killed manually during reconnect.
	(erc-server-connect): Initialize it.
	(erc-server-reconnect-p): Use it.
	(erc-process-sentinel-1): Set it to nil after the first reconnect
	attempt.

2007-02-07  Diane Murray  <disumu@x3y2z1.net>

	* erc-menu.el (erc-menu-definition): Fixed so that the separator
	is between "Current channel" and "Pals, fools and other keywords",
	not at the bottom of the "Current channel" submenu.

2007-01-25  Diane Murray  <disumu@x3y2z1.net>

	* erc-networks.el (erc-server-alist): Removed SSL server for now
	since `erc-server-select' doesn't know to use `erc-ssl'.

	* erc-networks.el (erc-server-alist, erc-networks-alist): Added
	definitions for oftc.net.

	* erc-services.el (erc-nickserv-alist): Fixed OFTC message regexp.

2007-01-22  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (erc-server-error-occurred): New variable that
	indicates when an error has been signaled by the server.  This
	should fix an infinite reconnect bug when giving some servers a
	bogus :full-name.  Thanks to Angelina Carlton for the report.
	(erc-server-connect): Initialize erc-server-error-occurred.
	(erc-server-reconnect-p): Use it.
	(ERROR): Set it.

	* erc-services.el (erc-nickserv-alist): Alphabetize and add Ars
	and QuakeNet.  Standardize look of entries.  Fix type mismatch
	error in customize interface.
	(erc-nickserv-passwords): Alphabetize and add missing entries from
	erc-nickserv-alist.

2007-01-21  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-header-line-format): Document how to disable the
	header line, and add a customization type for it.  Also, make the
	changes take effect immediately.

2007-01-19  Michael Olson  <mwolson@gnu.org>

	* erc.texi (Modules): Document new menu module.  Thanks to Leo
	for noticing.

2007-01-16  Diane Murray  <disumu@x3y2z1.net>

	* erc-stamp.el (erc-insert-timestamp-left): Fixed so that the
	whitespace string filler is hidden correctly when timestamps are
	hidden.
	(erc-toggle-timestamps): New function to use instead of
	`erc-show-timestamps' and `erc-hide-timestamps'.

	* erc.el (erc-restore-text-properties): Moved here from
	erc-fill.el since it could be useful in general.

	* erc-fill.el (erc-restore-text-properties): Removed.

2007-01-13  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-command-regexp): New variable that is used to match
	a command.
	(erc-send-input): Use it.  This fixes a bug where paths --
	"/usr/bin/foo", for example -- were being displayed as commands,
	but still sent correctly.
	(erc-extract-command-from-line): Use it.

	* erc.texi (Modules): Document erc-capab-identify.

2007-01-11  Diane Murray  <disumu@x3y2z1.net>

	* erc.el (erc-find-parsed-property): Moved here from erc-track.el
	since it can be useful in general.

	* erc-track.el (erc-find-parsed-property): Removed.

	* erc-capab.el (erc-capab-find-parsed): Removed.
	(erc-capab-identify-add-prefix): Use `erc-find-parsed-property'.

	* erc.el (erc-open): Run `erc-before-connect' hook here.  This
	makes sure the hook always gets called before a connection is
	made, as some functions, like `erc-handle-irc-url', use `erc-open'
	instead of `erc'.
	(erc): Removed `erc-before-connect' hook.

	* erc-menu.el (erc-menu-definition): Put items specific to
	channels in a "Current channel" submenu.

	* erc-backend.el (321, 323): Display channel list in server buffer
	when not using the channel list module.

	* erc.el: Updated copyright years.
	(erc-version-string): Set to 5.2 (devel).
	(erc-format-lag-time): Fixed to work when `erc-server-lag' is nil.
	(erc-update-mode-line-buffer): Set the header face.

2007-01-11  Michael Olson  <mwolson@gnu.org>

	* erc-bbdb.el (erc-bbdb-popup-type): Fix customization type and
	documentation.

	* erc-services.el (erc-nickserv-identify-mode): Improve
	documentation for nick-change option and move higher to fix
	compiler warning.  Avoid a recursive load error.
	(erc-nickserv-alist): Add simple entry for BitlBee, to avoid
	"NickServ is AWAY: User is offline" error.  Oddly enough, bitlbee
	was smart enough to recognize that as an authentication request
	and log in regardless, which is why I didn't notice this earlier.
	(erc-nickserv-alist-sender, erc-nickserv-alist-regexp)
	(erc-nickserv-alist-nickserv, erc-nickserv-alist-ident-keyword)
	(erc-nickserv-alist-use-nick-p)
	(erc-nickserv-alist-ident-command): New accessors for
	erc-nickserv-alist.  Using nth is unwieldy.
	(erc-nickserv-identify-autodetect)
	(erc-nickserv-identify-on-connect)
	(erc-nickserv-identify-on-nick-change, erc-nickserv-identify): Use
	the new accessors.

2007-01-11  Diane Murray  <disumu@x3y2z1.net>

	* NEWS: Added note for `erc-my-nick-face'.  Fixed capab-identify
	wording.

2007-01-10  Diane Murray  <disumu@x3y2z1.net>

	* erc.el (erc-mode-line-format): Added %l to documentation.
	(erc-header-line-format): Removed "[IRC]".  Use the new %l
	replacement character.  Doc fix.
	(erc-format-channel-modes): Removed lag code.  Removed parentheses
	from mode string.
	(erc-format-lag-time): New function.
	(erc-update-mode-line-buffer): Use it.

2007-01-10  Michael Olson  <mwolson@gnu.org>

	* erc.el: Fix typo in url-irc-function instructions.

2007-01-09  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-system-name): New option that determines the system
	name to use when logging in.  The default is to figure this out by
	calling `system-name'.
	(erc-login): Use it.

2007-01-07  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-modules): Add the menu module.  This should fix a
	bug with incorrect ERC submenus being displayed.

	* erc-menu.el: Turn this into a module.
	(erc-menu-add, erc-menu-remove): New functions that add and remove
	the ERC menu.

2006-12-28  Michael Olson  <mwolson@gnu.org>

	* erc-list.el: Change header to mention that this is part of ERC,
	rather than GNU Emacs.

	* erc-networks.el (erc-server-alist): Add Ars OpenIRC and
	LinuxChix networks.  Thanks to Angelina Carlton for mentioning
	them.  Properly escape periods in Konfido.Net and Kewl.Org.
	(erc-networks-alist): Add entries for Ars and LinuxChix, though
	the latter does not actually provide an announced network name.

	* erc-services.el (erc-nickserv-identify-mode): Add 'both method,
	which waits for a NickServ message if the network supports it,
	otherwise sends the password after connecting.
	(erc-nickserv-identify-mode): Default to 'both.
	(erc-nickserv-passwords): Add OFTC and Azzurra to custom options.
	(erc-nickserv-alist): Indentation fix.
	(erc-nickserv-identify-on-connect)
	(erc-nickserv-identify-on-nick-change): Handle 'both method.

2006-12-28  Leo Liu  <sdl.web@gmail.com>  (tiny change)

	* erc.el (erc-iswitchb): Wrap body in unwind-protect so that
	hitting C-g does not leave iswitchb-mode on.

2006-12-27  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-cmd-RECONNECT): New command that calls
	erc-server-reconnect.

	* erc-backend.el (erc-server-reconnect-count): New server variable
	that keeps track of reconnection attempts.
	(erc-server-reconnect-attempts): New option that determines the
	number of reconnection attempts that ERC will make per server.
	(erc-server-reconnect-timeout): New option that determines the
	amount of time, in seconds, that ERC will wait between successive
	reconnect attempts.
	(erc-server-reconnect): New function that reestablishes the
	current IRC connection.  Move some commands from
	erc-process-sentinel-1 here.
	(erc-process-sentinel-1): If we have been disconnected, loop until
	we either reconnect or run out of attempts.
	(erc-server-reconnect-p): Move higher and make this a defsubst,
	since I'm worried about the current buffer changing from
	underneath us.  Implement limit of number of reconnect attempts..

	* erc.texi (Getting Started): Update for /RECONNECT command.

2006-12-26  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-open): Restore old point correctly, or at least get
	closer to doing so than before.

2006-12-13  Leo Liu  <sdl.web@gmail.com>  (tiny change)

	* erc.el (erc-iswitchb): Temporarily enable iswitchb mode if it
	isn't active already, instead of leaving it on.

2006-12-10  Juanma Barranquero  <lekktu@gmail.com>

	* erc-ezbounce.el (erc-ezb-init-session-list): Doc fix.

2006-12-08  Michael Olson  <mwolson@gnu.org>

	* erc.el: Re-evaluate contributions from a contributor, and found
	them under 15 lines of non-obvious code, so it is safe to remove
	the copyright notice.
	(erc-modules): Remove list module.

	* erc-list.el: Remove, since a contributor who has not completed
	their assignment has contributed significantly more than 15 lines
	of code to this file.

2006-11-28  Juanma Barranquero  <lekktu@gmail.com>

	* erc.el (erc-cmd-BANLIST, erc-cmd-MASSUNBAN): Simplify.
	(erc-prompt-for-channel-key, erc-ignore-reply-list, erc-send-post-hook)
	(erc-active-buffer, erc-join-buffer, erc-frame-alist, erc-with-buffer)
	(erc-modules, erc-display-message-highlight, erc-process-input-line)
	(erc-cmd-HELP, erc-server-hooks, erc-echo-notice-in-user-buffers)
	(erc-format-my-nick, erc-echo-notice-in-user-and-target-buffers)
	(erc-echo-notice-in-first-user-buffer, erc-connection-established)
	(erc-update-user-nick, erc-update-channel-member, erc-highlight-notice)
	(erc-command-symbol, erc-add-query, erc-process-script-line)
	(erc-determine-parameters, erc-client-info, erc-popup-input-buffer):
	(erc-script-echo): Fix typos in docstrings.
	(erc-channel-user-op-p, erc-channel-user-voice-p, erc-startup-file-list)
	(define-erc-module, erc-once-with-server-event)
	(erc-once-with-server-event-global, erc-debug-irc-protocol)
	(erc-log-irc-protocol, erc-cmd-LOAD, erc-update-user)
	(erc-update-current-channel-member, erc-load-script):
	(erc-mode-line-away-status-format): Doc fixes.

2006-11-20  Andrea Russo  <rastandy@inventati.org>  (tiny change)

	* erc-dcc.el (erc-dcc-chat-setup): Initialize `erc-input-marker'
	before calling `erc-display-prompt'.

2006-11-24  Juanma Barranquero  <lekktu@gmail.com>

	* erc.el (erc-after-connect, erc-open-ssl-stream)
	(erc-display-line-1, erc-display-line):
	* erc-backend.el (005): Fix space/tab mixup in docstrings.

2006-11-20  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-version-string): Call this Version 5.2 stable
	pre-release, since it diverges slightly from our 5.2 branch, in
	that unstable features are not included.
	(erc-update-modules): Display better error message when module not
	found.

2006-11-12  Michael Olson  <mwolson@gnu.org>

	* erc-log.el: Save all log buffers when Emacs exits, in case
	someone ignores the warning about open processes.  Remove the
	advice code in the commentary.
	(erc-save-query-buffers): Docfix.
	(erc-log-save-all-buffers): New function that saves all ERC
	buffers to logs.
	(erc-current-logfile): Fix bug in filename selection, where the
	current buffer was erroneously being preferred over the given
	buffer.

2006-11-08  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-string-to-port): Avoid error when a numerical port
	is passed.  Thanks to Zekeriya KOÇ for the report.

2006-11-08  Łukasz Demianiuk  <ldemianiuk@gmail.com>  (tiny change)

	* erc.el (erc-header-line): Fix typo.

2006-11-06  Juanma Barranquero  <lekktu@gmail.com>

	* erc-dcc.el (erc-dcc-send-file): Fix typo in error message.

	* erc.el (read-passwd):
	* erc-autoaway.el (erc-autoaway-reestablish-idletimer):
	* erc-truncate.el (truncate): Fix typo in docstring.

2006-10-21  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-iswitchb): Fix bug when hitting C-c C-b without
	first loading iswitchb.  Thanks to Leo for the report.

2006-10-10  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-default-port): Make the default be 6667 instead of
	ircd. since Mac OS X apparently has problems with looking up that
	port name.

	* erc-backend.el (353): Receive names after displaying the initial
	message, instead of before.

2006-10-05  Diane Murray  <disumu@x3y2z1.net>

	* erc.el (erc-my-nick-face): New face.
	(erc): Use FULL-NAME argument, not `erc-user-full-name'.  This
	fixes a bug where the :full-name argument passed to the function
	was not respected.
	(erc-format-my-nick): Use `erc-my-nick-face'.  This should help
	make it easier to find messages you sent in conversations when
	`erc-show-my-nick' is non-nil.
	(erc-compute-server): Doc fix.

2006-10-01  John J Foerch  <jjfoerch@earthlink.net>  (tiny change)

	* erc-stamp.el (erc-insert-timestamp-right): Exclude the newline
	from the erc-timestamp field.

2006-09-11  Michael Olson  <mwolson@gnu.org>

	* erc-nicklist.el (erc-nicklist-insert-contents): Add missing
	parenthesis.  Thanks to Stephan Stahl for the report.

2006-09-10  Eric Hanchrow  <offby1@blarg.net>

	* erc.el (erc-cmd-IGNORE): Prompt user if this might be a regexp
	instead of a single user.

2006-09-10  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-generate-new-buffer-name): If this is a server
	buffer and a process exists already, create a new buffer.
	(erc-open): If the IRC session was continued, restore the old
	point.  Thanks to Stephan Stahl for the report.
	(erc-member-ignore-case): Coding style tweak.
	(erc-cmd-UNIGNORE): Quote the user before comparison.  If we don't
	find the user listed verbatim, try to match them against the list
	using string-match.  In this case, prompt as to whether the regexp
	should be removed.
	(erc-ignored-user-p): Remove CL-ism.

	* erc-autoaway.el (erc-autoaway-possibly-set-away): Check to see
	whether we are already away.

	* erc-menu.el: Fix potential compiler warning.

2006-09-07  Diane Murray  <disumu@x3y2z1.net>

	* erc.el: Updated Commentary and URL.
	(erc-iswitchb, erc-display-line, erc-set-modes, erc-update-modes)
	(erc-arrange-session-in-multiple-windows): No need to check if
	`erc-server-process' is bound.
	(erc-server-buffer-live-p): Doc fix.
	(erc-part-from-channel): Don't use any initial contents at prompt.
	(erc-format-nick, erc-format-@nick): Doc fix.  Use `when'.
	(s367): Fixed to support only banmask and channel which is the
	standard.  Also, there's no reason to add a message to each banned
	user entry trying to persuade the user to use /banlist instead of
	/mode #channel +b.  That part of the message was a little
	confusing, anyways.
	(s367-set-by): New catalog entry.  The user who set the ban and
	the time of ban seem to be specific to only certain servers such
	as freenode.

	* erc-autoaway.el (erc-autoaway-idletimer): Doc fix.

	* erc-backend.el (erc-server-process-alive): No need to check if
	`erc-server-process' is bound.
	(367): Use s367 or s367-set-by where appropriate.

	* erc-compat.el: Fixed URL.

	* erc-dcc.el: Updated copyright years.  Added Usage section.
	Changed supported Emacs version number from 21.3.50 to 22 in
	Commentary.

	* erc-ibuffer.el (erc-server-name, erc-target, erc-away): No need
	to check if `erc-server-process' is bound.

	* erc-nicklist.el: Added to the Commentary section an explanation
	that `erc-nicklist-quit' should be called from within the nicklist
	buffer.  Set file coding to utf-8 so a contributor's name is
	displayed correctly.
	(erc-nicklist-icons-directory): Use customize type directory
	instead of string.
	(erc-nicklist-insert-contents): Set bbdb-nick to an empty string
	if it wasn't found.  This fixes a bug where an error would occur
	when using `string=' on bbdb-nick if it was nil.

	* erc-replace.el: Removed URL from file information since it
	doesn't exist.

	* erc-sound.el: Updated copyright years.  Fixed Commentary and
	added Usage section.
	(define-erc-module): Add and remove `erc-ctcp-query-SOUND' to
	`erc-ctcp-query-SOUND-hook' here.  Removed the keybinding
	definitions.
	(erc-play-sound, erc-default-sound, erc-cmd-SOUND)
	(erc-ctcp-query-SOUND): Doc fix.
	(erc-play-command): Removed, not necessary anymore.
	(erc-ctcp-query-SOUND-hook): Set to nil as default.  Moved up
	higher in code, added docstring.
	(erc-play-sound): Use `play-sound-file'.  It exists in GNU Emacs
	as well since version 21 or earlier.  Removed commented-out older
	version of function.

	* NEWS: Fixed formatting, added channel tracking change.

2006-09-03  Diane Murray  <disumu@x3y2z1.net>

	* erc.el: M-x erc RET can now be used to start ERC.
	(erc-open): Renamed from `erc'.
	(erc-before-connect): Change erc-select to erc.
	(erc): Renamed from `erc-select'.  Use `erc-open'.
	(erc-select): Defined as alias of `erc'.
	(erc-ssl): Renamed from `erc-select-ssl'.  Use `erc'.
	(erc-select-ssl): Defined as alias of `erc-ssl'.
	(erc-cmd-SERVER): Use `erc'.
	(erc-query, erc-handle-irc-url): Use `erc-open'.

	* erc-backend.el (erc-process-sentinel-1, JOIN): Use `erc-open'.

	* erc-menu.el (erc-menu-definition): Use `erc'.

	* erc-networks.el: Updated copyright years.
	(erc-server-select): Use keyword arguments when calling `erc'.

	* erc.texi (Getting Started, Connecting): Changed erc-select to
	erc.

	* README: Changed erc-select to erc.

	* NEWS: Added note about these changes.

	* FOR-RELEASE: Marked this item as done.

2006-08-21  Diane Murray  <disumu@x3y2z1.net>

	* erc-track.el (erc-track-mode-line-mouse-face): New variable.
	(erc-make-mode-line-buffer-name): Add help-echo and mouse-face
	properties to channel name.

2006-08-20  Michael Olson  <mwolson@gnu.org>

	* erc-identd.el (erc-identd): New customization group.
	(erc-identd-port): New option that specifies the port to use if
	none is given as an argument to erc-identd-start.
	(identd): Place erc-identd-quickstart in erc-connect-pre-hook
	instead of erc-identd-start so that we deal with the different
	meaning of the first argument.
	(erc-identd-start): Use erc-identd-port.
	(erc-identd-quickstart): New function that ignores any arguments
	and calls erc-identd-start.

	* erc.el (erc-with-server-buffer): New macro that switches to the
	current ERC server buffer and runs some code.  If no server buffer
	is available, return nil.  This is a useful way to access
	variables in the server buffer.
	(erc-get-server-user, erc-add-server-user)
	(erc-remove-server-user, erc-change-user-nickname)
	(erc-get-server-nickname-list, erc-get-server-nickname-alist)
	(erc-ison-p, erc-active-buffer, erc-cmd-IGNORE)
	(erc-cmd-UNIGNORE, erc-cmd-IDLE, erc-cmd-NICK, erc-cmd-BANLIST)
	(erc-cmd-MASSUNBAN, erc-nickname-in-use, erc-ignored-user-p)
	(erc-format-channel-modes): Use it.
	(erc-once-with-server-event, erc-once-with-server-event-global)
	(erc-with-buffer, erc-with-all-buffers-of-server): Use make-symbol
	instead of gensym.
	(erc-open-server-buffer-p): New function that returns non-nil if
	the given buffer is an ERC server buffer that has an open IRC
	process.
	(erc-with-buffer): Use buffer-live-p here to set a good example,
	though it isn't really needed here.
	(erc-away): Mention erc-away-time.
	(erc): Don't propagate the erc-away setting, since it makes more
	sense to access it from the server buffer.  Set up the prompt
	before connecting rather than after.  Run erc-connect-pre-hook
	with the buffer as an argument, instead of no arguments.
	(erc-cmd-GAWAY): Use erc-open-server-buffer-p instead of
	erc-server-buffer-p so that only open connections are set away.
	(erc-cmd-GQUIT): Use erc-open-server-buffer-p.
	(erc-process-away): Docfix.  Don't set erc-away in channel
	buffers.
	(erc-set-current-nick): Make this uniform with the style used in
	erc-current-nick.
	(erc-away-time): Rename from erc-away-p, since this is no longer a
	boolean-style predicate.
	(erc-format-away-status): Use it.
	(erc-initialize-log-marker): Accept a `buffer' argument.
	(erc-connect-pre-hook): Docfix.
	(erc-connection-established): Make sure this runs in the correct
	buffer.
	(erc-set-initial-user-mode): Accept a `buffer' argument.

	* erc-stamp.el (erc-add-timestamp): Use erc-away-time.

	* erc-spelling.el (erc-spelling-init): Use
	erc-with-server-buffer.  Accept `buffer' argument.
	(spelling): Call erc-spelling-init with the `buffer' argument.

	* erc-speedbar.el (erc-speedbar-buttons): Use erc-server-buffer-p.

	* erc-pcomplete.el (pcomplete/erc-mode/UNIGNORE)
	(pcomplete-erc-all-nicks): Use erc-with-server-buffer.

	* erc-notify.el (erc-notify-timer, erc-cmd-NOTIFY): Use
	erc-with-server-buffer.

	* erc-networks.el (erc-network, erc-current-network)
	(erc-network-name): Use erc-with-server-buffer.

	* erc-netsplit.el (erc-cmd-WHOLEFT): Use erc-with-server-buffer.

	* erc-match.el (erc-log-matches, erc-log-matches-come-back): Use
	erc-away-time.

	* erc-log.el (log): Use erc-away-time.  Remove unnecessary check.
	Pass `buffer' argument to erc-log-setup-logging instead of setting
	the current buffer.  Ditto for erc-log-disable-logging.
	(erc-log-setup-logging, erc-log-disable-logging): Accept a `buffer'
	argument.

	* erc-list.el (erc-chanlist): Use erc-with-server-buffer.

	* erc-ibuffer.el (erc-away): Use erc-away-time.

	* erc-dcc.el (erc-dcc-get-filter): Temporarily make the buffer
	read only instead of permanently doing so.

	* erc-compat.el (erc-gensym, *erc-sym-counter*): Remove, since
	Emacs Lisp has make-symbol, which is better.

	* erc-chess.el (erc-chess-handler, erc-cmd-CHESS): Use
	erc-with-server-buffer.

	* erc-capab.el (capab-identify): Only deal with server buffers
	that have an open IRC process.
	(erc-capab-identify-add-prefix): Use erc-with-server-buffer.

	* erc-backend.el (erc-server-connected): Docfix.  Recommend the
	`erc-server-process-alive' function.
	(erc-coding-system-for-target): Supply a default target if one is
	not given.
	(erc-server-send): Simplify slightly.
	(erc-call-hooks): Use erc-with-server-buffer.
	(erc-server-connect, erc-server-setup-periodical-ping): Accept
	`buffer' argument.

	* erc-autoaway.el (erc-autoaway-reestablish-idletimer): Move
	higher to avoid an automatic load snafu.
	(erc-autoaway-some-server-buffer): New function that returns an
	ERC server buffer with a live connection, or nil otherwise.
	(erc-autoaway-insinuate-maybe): New function that adds the
	autoaway reset function to post-command-hook if at least one ERC
	process is alive.
	(erc-autoaway-remove-maybe): New function that removes the
	autoaway reset function from post-command-hook if no ERC process
	is alive.
	(autoaway): Don't touch post-command-hook unless an IRC process is
	already open.  Remove our addition to post-command-hook as soon as
	there are no more IRC processes open.  Reset the indicators before
	connecting to an IRC server, which fixes a bug when re-connecting.
	(erc-autoaway-reset-idle-user): Call erc-autoaway-remove-maybe if
	there are no more IRC processes open.
	(erc-autoaway-set-back): Pick an open IRC process.  Accept an
	argument which is a function call if we can't find one.
	(erc-autoaway-some-open-server-buffer): New function which returns
	an ERC server buffer with an open connection and a user that is
	not away.
	(erc-autoaway-possibly-set-away, erc-autoaway-set-away): Use it.
	(erc-autoaway-set-away): Accept a `notest' argument which is used
	to avoid testing the same thing twice.
	(erc-autoaway-last-sent-time, erc-autoaway-caused-away): Move
	higher in file to fix byte-compile warning.

2006-08-20  Diane Murray  <disumu@x3y2z1.net>

	* erc-backend.el (erc-process-sentinel-1): Doc fix.  Let
	`erc-server-reconnect-p' check all condition cases.
	(erc-server-reconnect-p): Moved rest of checks from
	`erc-process-sentinel-1' to here.  Now takes an argument, EVENT.

2006-08-14  Diane Murray  <disumu@x3y2z1.net>

	* erc-menu.el: Updated copyright years.  Removed EmacsWiki URL.
	(erc-menu-definition): Name the menu "ERC" instead of "IRC" to
	avoid confusion with rcirc and other clients.

	* erc-backend.el (erc-server-banned): New variable.
	(erc-server-connect): Set `erc-server-banned' to nil.
	(erc-process-sentinel-1): Use `erc-server-reconnect-p'.
	(erc-server-reconnect-p): New function.  Return non-nil if the
	user wants automatic reconnects and if the user has not been
	banned from the server.  This should fix a bug where ERC gets into
	a loop trying to reconnect with no way to stop it when the user is
	denied access to the server due to a server ban.  It might also
	help when Tor users are blocked from freenode if freenode servers
	send the 465 message before disconnecting.
	(465): Handle "banned from server" error notices.

2006-08-13  Romain Francoise  <romain@orebokech.com>

	* erc-match.el (erc-log-matches-make-buffer): End `y-or-n-p'
	prompt with a space.

2006-08-13  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (erc-server-timed-out): New variable that
	indicates whether the current connection has timed out due to
	failure to respond to a ping.
	(erc-server-send-ping): Set erc-server-timed-out to t.
	(erc-server-connect): Initialize erc-server-timed-out to nil.
	(erc-process-sentinel-1): Consult erc-server-timed-out.

2006-08-11  Michael Olson  <mwolson@gnu.org>

	* erc-fill.el (erc-fill): Skip any initial empty lines so that we
	avoid errors when inserting disconnect messages and other messages
	that begin with newlines.

2006-08-07  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (erc-process-sentinel-1): Use erc-display-message
	in several places instead of inserting text.
	(erc-process-sentinel): Move to the input-marker before removing
	the prompt.

	* erc.el (erc-port): Fix customization options.
	(erc-display-message): Handle null type explicitly.  Previously,
	this was relying on a chance side-effect.  Cosmetic indentation
	tweak.
	(english): Add 'finished and 'terminated entries to the catalog.
	Add initial and terminal newlines to 'disconnected and
	'disconnected-noreconnect entries.  Avoid long lines.
	(erc-cmd-QUIT): Bind the current erc-server-process to
	server-proc.  If the IRC server responds quickly, it is possible
	for the connection to close, and hence server buffer to be killed,
	if erc-kill-server-buffer-on-quit is non-nil.  This avoids that
	problem.

2006-08-06  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (erc-server-send-queue): Update from Circe
	version of this function.
	(erc-server-ping-timer-alist): New variable that keeps track of
	ping timers according to their associated server.
	(erc-server-last-received-time): New variable that specifies the
	time of the last message we received from the server.  This is
	used to detect hung processes.
	(erc-server-send-ping): New function that sends a ping to the IRC
	process corresponding with the given buffer.  Split from
	erc-server-setup-periodical-ping.  If the server buffer no longer
	exists, cancel the timer.  If the server process has not given us
	a message, including PING responses, since the last PING, kill it.
	This is necessary to deal with some aberrant freenode behavior.
	Idea taken from rcirc.
	(erc-server-setup-periodical-ping): Rename from
	erc-server-setup-periodical-server-ping.
	(erc-server-filter-function): Use erc-current-time instead of
	current-time.

	* erc.el (erc-arrange-session-in-multiple-windows): Fix bug with
	multi-tty Emacs.
	(erc-select-startup-file): Fix bug introduced by recent change.
	(erc-cmd-QUIT): If the IRC process has not terminated itself
	within 4 seconds of completing our quit-hook, kill it manually.
	Freenode in particular needs this.
	(erc-connection-established): Use erc-server-setup-periodical-ping
	instead of erc-server-setup-periodical-server-ping.

2006-08-05  Michael Olson  <mwolson@gnu.org>

	* erc-log.el (erc-log-standardize-name): New function that returns
	a filename that is safe for use for a log file.
	(erc-current-logfile): Use it.

	* erc.el (erc-startup-file-list): Search in ~/.emacs.d first,
	since that is a fairly standard directory.
	(erc-select-startup-file): Re-write to use
	convert-standard-filename, which will ensure that MS-DOS systems
	look for the _ercrc.el file.

2006-08-02  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-version-string): Release ERC 5.1.4.

	* Makefile, NEWS, erc.texi: Update for the 5.1.4 release.

	* erc.el (erc-active-buffer): Fix bug that caused messages to go
	to the wrong buffer.  Thanks to offby1 for the report.

	* erc-backend.el (erc-coding-system-for-target): Handle case where
	target is nil.  Thanks to Kai Fan for the patch.

2006-07-29  Michael Olson  <mwolson@gnu.org>

	* erc-log.el (erc-log-setup-logging): Don't offer to save the
	buffer.  It will be saved automatically killed.  Thanks to Johan
	Bockgård and Tassilo Horn for pointing this out.

2006-07-27  Johan Bockgård  <bojohan@users.sourceforge.net>

	* erc.el (define-erc-module): Make find-function and find-variable
	find the names constructed by `define-erc-module' in Emacs 22.

2006-07-14  Michael Olson  <mwolson@gnu.org>

	* erc-log.el (log): Make sure that we enable logging on
	already-opened buffers as well, in case the user toggles this
	module after loading ERC.  Also be sure to remove logging ability
	from all ERC buffers when the module is disabled.
	(erc-log-setup-logging): Set buffer-file-name to nil rather than
	the empty string.  This should fix some errors that occur when
	quitting Emacs without first killing all ERC buffers.
	(erc-log-disable-logging): New function that removes the logging
	ability from the current buffer.

	* erc-spelling.el (spelling): Use dolist and buffer-live-p.

2006-07-12  Michael Olson  <mwolson@gnu.org>

	* erc-match.el (erc-log-matches): Bind inhibit-read-only rather
	than call toggle-read-only.

	* erc.el (erc-handle-irc-url): Move here from erc-goodies.el and
	add autoload cookie.

2006-07-09  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-version-string): Release ERC 5.1.3.

	* erc.texi: Update for the 5.1.3 release.

	* erc-autoaway.el (erc-autoaway-set-back): Fix bug after returning
	from being set automatically away and current buffer is not an ERC
	buffer.

	* erc-identd.el: Fix compiler error.

	* erc.texi (Development): Use @subheading instead of @subsection.
	(Advanced Usage): Add menu.
	(Connecting): Fully document how to connect to an IRC server.
	(Options, Tips and Tricks, Sample Configuration): New unwritten
	sections.

	* erc.el (erc-server, erc-port, erc-nick, erc-nick-uniquifier)
	(erc-user-full-name, erc-password): Docfixes and customization
	interface tweaks.
	(erc-try-new-nick-p): Rename from
	`erc-manual-set-nick-on-bad-nick-p' and invert meaning.
	(erc-nickname-in-use): Use `erc-try-new-nick-p'.  Check the length
	of `erc-nick-uniquifier', in case someone wants multiple
	characters.
	(erc-compute-server, erc-compute-nick, erc-compute-full-name)
	(erc-compute-port): Docfixes.

	* erc-log.el (log): Move all add-hook calls here, rather than
	executing them immediately, and also cause them to be un-hooked
	when the module is removed.
	(erc-save-buffer-on-part): Move next to
	`erc-save-queries-on-quit'.
	(erc-save-buffer-on-quit, erc-save-queries-on-quit): Default to t.
	(erc-log-write-after-send, erc-log-write-after-insert): Default to
	nil.  This makes things fast, but reasonably failsafe, by default.

2006-07-08  Michael Olson  <mwolson@gnu.org>

	* erc-log.el (erc-log-insert-log-on-open): Make this nil by
	default, since most IRC clients don't do this.
	(erc-log-write-after-send): New option that determines whether the
	log file will be written to after every sent message.
	(erc-log-write-after-insert): New option that determines whether
	the log file will be written to when new text is added to a logged
	ERC buffer.
	(log): Use the aforementioned options.

	* erc.texi (Modules): Document the "completion" module.

	* erc-pcomplete.el (pcomplete-erc-nicks): Make sure that we don't
	have a nil element in the list when ignore-self is non-nil.

2006-07-05  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-modules): Use `set' instead of `set-default', since
	this setting should never be buffer-local.  Add the `page' module
	to the list.

	* erc.texi (Modules): Add entries for `list' and `page' modules.
	Change "spell" to "spelling".
	(History): Use past tense throughout.

2006-07-02  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (erc-call-hooks): Fix (stringp nil) error that
	can happen when doing /PART.

	* erc.el (erc-quit-reason-various-alist)
	(erc-part-reason-various-alist): In the example, use "^$" as an
	example, since "" matches anything.
	(erc-quit-reason-various, erc-part-reason-various): If no argument
	is given, and no matches are found, use our default reason instead
	of "nil".

2006-06-30  Michael Olson  <mwolson@gnu.org>

	* erc.texi (Modules): Mention identd.
	(Releases): Update mailing list address and download location.
	(Development): Refactor.  Provide updated directions for Arch.
	Make URLs clickable.
	(Keystroke Summary): Typo fix.  Use more Texinfo syntax.
	(Getting Started): Give simpler example.  We do not need to
	explicitly load every module.
	(History): Update.

	* erc-autoaway.el, erc-join.el, erc-backend.el, erc-bbdb.el:
	erc-button.el, erc-chess.el, erc-compat.el, erc-hecomplete.el:
	erc-dcc.el, erc-ezbounce.el, erc-fill.el, erc-ibuffer.el:
	erc-imenu.el, erc-list.el, erc-log.el, erc-match.el, erc-menu.el:
	erc-networks.el, erc-netsplit.el, erc-nicklist.el:
	erc-services.el, erc-pcomplete.el, erc-replace.el, erc-ring.el:
	erc-speedbar.el, erc-spelling.el, erc-stamp.el, erc-track.el:
	erc.el: Remove version strings.

	* erc.el (erc-cmd-SMV): Remove, since we do not have meaningful
	module versions anymore.
	(erc-version-modules): Remove, since we do not use this function
	anymore.
	(erc-latest-version, erc-ediff-latest-version): Remove, since this
	was only useful back when ERC consisted of one file.
	(erc-modules): Add line for identd.
	(erc-get-channel-mode-from-keypress): Typo fix.

	* erc-imenu.el: Remove unnecessary lines in header.

	* erc-goodies.el (erc-handle-irc-url): Docfix.

	* erc-identd.el: Define an ERC module for this.
	(erc-identd-start): Don't create a process buffer if possible.
	Otherwise, use conventional hidden names for process buffers.

2006-06-29  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (erc-coding-system-for-target): Match
	case-insensitively.  Use a pattern match instead of `assoc', as
	per the documentation for `erc-encoding-coding-alist'.

	* erc-track.el (erc-track-shorten-aggressively): Fix typo.

2006-06-27  Michael Olson  <mwolson@gnu.org>

	* erc.el: Update maintainer information and URLs.

2006-06-14  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-active-buffer): If the active buffer has been
	deleted, default to the server buffer.
	(erc-toggle-flood-control): When the user hits C-c C-f, make flood
	control really toggle, not unconditionally turn off.

2006-06-12  Michael Olson  <mwolson@gnu.org>

	* NEWS: Add items since the 5.1.2 release.

	* erc-autoaway.el (erc-autoaway-caused-away): New variable that
	indicates whether the current away status was caused by this
	module.
	(erc-autoaway-set-back): Only set back if this module set the user
	away.
	(erc-autoaway-set-away): Update `erc-autoaway-caused-away'.
	(erc-autoaway-reset-indicators): New function that resets some
	indicators when the user is no longer away.
	(autoaway): Add the above function to the 305 hook.

2006-06-05  Romain Francoise  <romain@orebokech.com>

	* erc.texi (History): Fix various typos.

2006-06-04  Michael Olson  <mwolson@gnu.org>

	* erc-autoaway.el (erc-autoaway-idle-method): Move after the
	definition of the autoaway module.
	(autoaway): Don't do anything if erc-autoaway-idle-method is
	unbound.  This prevents an error on startup.

2006-06-03  Michael Olson  <mwolson@gnu.org>

	* erc-autoaway.el: Thanks to Mark Plaksin for the ideas and patch.
	(erc-autoaway-idle-method): Renamed from
	`erc-autoaway-use-emacs-idle'.  We have more than two choices for
	how to do this, so it's best to make this take symbol values.
	Improve documentation.  Remove warning against Emacs idle-time;
	the point is moot now that we get user idle time via a different
	method.  Make sure we disable and re-enable the module when
	changing this value.
	(autoaway): Conditionalize on the above option.  If using the idle
	timer or user idle methods, don't add anything to the
	send-completed or server-001 hooks, since it is unnecessary.
	(erc-autoaway-reestablish-idletimer, erc-autoaway-message):
	Docfix.
	(erc-autoaway-idle-seconds): Use erc-autoaway-idle-method.
	(erc-autoaway-reset-idle-irc): Renamed from
	`erc-autoaway-reset-idle'.  Don't pass line to
	`erc-autoaway-set-away', since it is not used.
	(erc-autoaway-reset-idle-user): New function that resets the idle
	state for user idle time.
	(erc-autoaway-set-back): Remove line argument, since it is not
	used.

2006-06-01  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-buffer-filter): Make sure all buffers returned from
	this are live.

2006-05-01  Theresa O'Connor  <ted@oconnor.cx>

	* erc-goodies.el (erc-handle-irc-url): New function, suitable as
	a value for `url-irc-function'.

2006-04-18  Diane Murray  <disumu@x3y2z1.net>

	* erc-pcomplete.el (pcomplete-erc-nicks): Added new optional
	argument IGNORE-SELF.  If this is non-nil, don't return the user's
	current nickname.  Doc fix.
	(pcomplete/erc-mode/complete-command): Don't complete the current
	nickname.

2006-04-05  Diane Murray  <disumu@x3y2z1.net>

	* erc.el (erc-cmd-SV): Removed the exclamation point.  Show the
	build date as it's shown in `emacs-version'.

	* erc-capab.el (erc-capab-identify-add-prefix): Insert the prefix
	with the same face property as the previous character.

2006-04-02  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el, erc-ezbounce.el, erc-join.el, erc-netsplit.el,
	erc.el: Make sure to include a newline inside of negated classes,
	so that a newline is not matched.

2006-04-01  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (erc-server-connect-function): Don't try to
	detect the existence of the `open-network-stream-nowait' function,
	since I can't find it in Emacs21, XEmacs21, or Emacs22.

2006-03-27  Michael Olson  <mwolson@gnu.org>

	* erc.texi: Update direntry.  Remove unneeded local variables.

2006-03-26  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-header-line): New face that will be used to colorize
	the text of the header-line, provided that
	`erc-header-line-face-method' is non-nil.
	(erc-prompt-face): Fix formatting.
	(erc-header-line-face-method): New option that determines the
	method used for colorizing header-line text.  This may be a
	function, nil, or non-nil.
	(erc-update-mode-line-buffer): Use the aforementioned option and
	face to colorize the header-line text, if that is what the user
	wants.
	(erc-send-input): If flood control is not activated, don't split
	the input line.

2006-03-25  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-cmd-QUOTE): Install patch from Aravind Gottipati
	that fixes the case where there is no leading whitespace.  Only
	remove the first space character, though.

	* erc-identd.el (erc-identd-start): Fix a bug by making sure that
	erc-identd-process is set properly.
	(erc-identd-start, erc-identd-stop): Add autoload cookies.
	(erc-identd-start): Pass :host parameter so this works with Emacs
	22.

2006-03-09  Diane Murray  <disumu@x3y2z1.net>

	* erc-button.el (erc-button-keymap): Use <backtab> rather than
	<C-tab> for `erc-button-previous' as it is a more standard key
	binding for this type of function.

2006-02-28  Diane Murray  <disumu@x3y2z1.net>

	* erc-capab.el: Removed things that were accidentally committed on
	2006-02-20.  Removed Todo section.
	(erc-capab-unidentified): Removed.

2006-02-26  Michael Olson  <mwolson@gnu.org>

	* erc-capab.el: Use (eval-when-compile (require 'cl)).
	(erc-capab-unidentified): Fix compiler warning by specifying
	group.

2006-02-20  Diane Murray  <disumu@x3y2z1.net>

	* erc-capab.el (erc-capab-send-identify-messages): Fixed comment
	to explain thoughts better.  `erc-server-parameters' is an
	associated list when it's set, not a string.

2006-02-19  Michael Olson  <mwolson@gnu.org>

	* erc-capab.el (erc-capab-send-identify-messages): Make sure some
	parameters are strings before using them.  Thanks to Alejandro
	Benitez for the report.

	* erc.el (erc-version-string): Release ERC 5.1.2.

2006-02-19  Diane Murray  <disumu@x3y2z1.net>

	* erc-button.el (erc-button-keymap): Bind `erc-button-previous' to
	<C-tab>.
	(erc-button-previous): New function.

2006-02-15  Michael Olson  <mwolson@gnu.org>

	* NEWS: Add category for ERC 5.2.

	* erc.el (erc): Move to the end of the buffer when a continued
	session is detected.  Thanks to e1f and indio for the report and
	testing a potential fix.

2006-02-14  Michael Olson  <mwolson@gnu.org>

	* debian/changelog: Prepare a new Debian package.

	* Makefile (debprepare): New rule that creates an ERC snapshot
	directory for use in both new Debian releases and revisions for
	Debian packages.
	(debrelease, debrevision-mwolson): Use debprepare.

	* NEWS: Bring up-to-date.

	* erc-stamp.el (erc-insert-timestamp-right): For now, put
	timestamps before rather than after erc-fill-column when
	erc-timestamp-right-column is nil.  This way we won't surprise
	anyone unpleasantly, or so it is hoped.

2006-02-13  Michael Olson  <mwolson@gnu.org>

	* erc-dcc.el: Use (eval-when-compile (require 'cl)).

2006-02-12  Michael Olson  <mwolson@gnu.org>

	* erc-autoaway.el, erc-dcc.el, erc-ezbounce.el, erc-fill.el
	* erc-goodies.el, erc-hecomplete.el, erc-ibuffer.el, erc-identd.el
	* erc-imenu.el, erc-join.el, erc-lang.el, erc-list.el, erc-log.el
	* erc-match.el, erc-menu.el, erc-netsplit.el, erc-networks.el
	* erc-notify.el, erc-page.el, erc-pcomplete.el, erc-replace.el
	* erc-ring.el, erc-services.el, erc-sound.el, erc-speedbar.el
	* erc-spelling.el, erc-track.el, erc-truncate.el, erc-xdcc.el:
	Add 2006 to copyright years, to comply with the changed guidelines.

2006-02-11  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-update-modules): Handle erc-capab-identify
	correctly.  Make some requirements shorter, so that it's easier to
	see why they are needed.

	* erc-capab.el: Add autoload cookie for capab-identify.
	(erc-capab-send-identify-messages, erc-capab-identify-activate):
	Minor whitespace fix in code.

	* erc-stamp.el (erc-timestamp-use-align-to): Renamed from
	`erc-timestamp-right-align-by-pixel'.  Set the default based on
	whether we are in Emacs 22, and using X.  Improve documentation.
	(erc-insert-aligned): Remove calculation of offset, since
	:align-to pos works after all.  Unlike the previous solution, this
	one works when erc-stamp.el is compiled.
	(erc-insert-timestamp-right): Don't add length of string, and then
	later remove its displayed width.  This puts timestamps after
	erc-fill-column when erc-timestamp-right-column is nil, rather
	than before it.  It also fixes a subtle bug.  Remove use of
	`current-window', since there is no variable by that name in
	Emacs21, Emacs22, or XEmacs21 beta.  Check to see whether
	`erc-fill-column' is non-nil before using it.

2006-02-11  Diane Murray  <disumu@x3y2z1.net>

	* erc-list.el: Define `list' module which sets the alias
	`erc-cmd-LIST' to `erc-list-channels' when enabled and
	`erc-list-channels-simple' when disabled.
	(erc-list-channels): Was `erc-cmd-LIST', renamed.
	(erc-list-channels-simple): New function.

	* erc.el (erc-modules): Added `list' to enabled modules.  Changed
	`capab-identify' description.  Moved customization options left in
	source code.

	* erc-menu.el (erc-menu-definition): Use `erc-list-channels'.

	* erc-capab.el: Put a little more detail into Usage section.
	(define-erc-module): Run `erc-capab-identify-setup' in all open
	server buffers when enabling.
	(erc-capab-identify-setup): Make PROC and PARSED optional
	arguments.
	(erc-capab-identify-add-prefix): Simplified nickname regexp.  This
	should now also match nicknames that are formatted differently
	than the default.

	* erc-spelling.el (define-erc-module): Make sure there's a buffer
	before calling `with-current-buffer'.

2006-02-10  Michael Olson  <mwolson@gnu.org>

	* Makefile (debbuild): Split from debrelease.
	(debrevision-mwolson): New rule that causes a Debian revision to
	be built.

	* erc.el (erc-migrate-modules): Use a better algorithm.  Thanks to
	Johan Bockgård.
	(erc-modules): Change use of 'pcomplete to 'completion.

2006-02-09  Diane Murray  <disumu@x3y2z1.net>

	* erc.el (erc-get-parsed-vector, erc-get-parsed-vector-nick)
	* erc-capab.el: Require erc.
	(erc-capab-send-identify-messages): Use `erc-server-send'.
	(erc-capab-identify-remove/set-identified-flag): Use 1 and 0 as
	the flags so we can also check whether the `erc-identified' text
	property is there at all.
	(erc-capab-identify-add-prefix): Use `erc-capab-find-parsed'.
	This fixes a bug where the prefix wasn't inserted when timestamps
	are inserted on the right.  Tweaked nickname regexp.
	(erc-capab-find-parsed): New function.
	(erc-capab-get-unidentified-nickname): Updated to check for 0
	flag.  Only get nickname if there's a nickuserhost associated with
	this message.

	* erc-capab.el: New file.  Adds the new module
	`erc-capab-identify', which allows flagging of unidentified users
	on servers running an ircd based on dancer - irc.freenode.net, for
	example.

	* erc.el (erc-modules): Added `capab-identify' to options.
	(erc-get-parsed-vector, erc-get-parsed-vector-nick)
	(erc-get-parsed-vector-type): Moved here from erc-match.el.

	* erc-match.el (erc-get-parsed-vector, erc-get-parsed-vector-nick)
	(erc-get-parsed-vector-type): Moved these functions to erc.el
	since they can be useful outside of the text matching module.

	* NEWS: Added erc-capab.el.

	* erc-dcc.el, erc-stamp.el, erc-xdcc.el: Changed "Emacs IRC Client"
	to "ERC".

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
	`erc-spelling-dictionaries' is nil, do not set
	ispell-local-dictionary.  Before, it was being set to nil, which
	was causing a long delay while the ispell process restarted.
	(erc-spelling-unhighlight-word): New function that removes
	flyspell properties from a spell-checked word.
	(erc-spelling-flyspell-verify): Don't spell-check nicks or words
	that have '/' before them.

2006-02-04  Michael Olson  <mwolson@gnu.org>

	* erc-autojoin.el: Use (eval-when-compile (require 'cl)).

	* erc-complete.el (erc-nick-completion-exclude-myself)
	(erc-try-complete-nick): Use better function for getting list of
	channel users.

	* erc-goodies.el: Docfix.

	* erc-stamp.el: Use new arch tagline, since the other one wasn't
	being treated properly.

	* erc.el (erc-version-string): Release ERC 5.1.1.

2006-02-03  Zhang Wei  <id.brep@gmail.com>

	* erc.el (erc-version-string): Don't hard-code Emacs version.
	(erc-version): Use emacs-version.

2006-01-31  Michael Olson  <mwolson@gnu.org>

	* erc-stamp.el: Update copyright years.

2006-01-30  Simon Josefsson  <jas@extundo.com>

	* erc.el (erc-open-ssl-stream): Use tls.el.

2006-01-30  Michael Olson  <mwolson@gnu.org>

	* erc-stamp.el (erc-timestamp-right-align-by-pixel): New option
	that determines whether to use pixel values to align right
	timestamps.  The default is not to do so, since it only works with
	Emacs22 on X, and even then some people have trouble.
	(erc-insert-aligned): Use `erc-timestamp-right-align-by-pixel'.

2006-01-29  Michael Olson  <mwolson@gnu.org>

	* ChangeLog, ChangeLog.2005, ChangeLog.2004, ChangeLog.2003,
	ChangeLog.2002, ChangeLog.2001: Add "See ChangeLog.NNNN" line for
	earlier changes.  Use utf-8 encoding.  Fix some accent typos.

	* erc-speedbar.el (erc-speedbar-buttons): Fix reference to free
	variable.
	(erc-speedbar-goto-buffer): Fix compiler warning.

	* erc-ibuffer.el: Use `define-ibuffer-filter' instead of
	`ibuffer-define-limiter'.  Use `define-ibuffer-column' instead of
	`ibuffer-define-column'.  Require 'ibuf-ext so that the macros
	work without compiler warnings.

	* erc.texi (Obtaining ERC, Installation): Note that these
	sections may be skipped if using the version of ERC that comes
	with Emacs.

2006-01-29  Theresa O'Connor  <ted@oconnor.cx>

	* erc-viper.el: Remove.  Now that ERC is included in Emacs, these
	work-arounds live in Viper itself.

2006-01-28  Michael Olson  <mwolson@gnu.org>

	* erc-*.el, erc.texi, NEWS: Add Arch taglines as per Emacs
	guidelines.

	* erc-*.el: Space out copyright years like the rest of Emacs.  Use
	the Emacs copyright statement.  Refer to ourselves as ERC rather
	than "Emacs IRC Client", since there are now several IRC clients
	for Emacs.

	* erc-compat.el (erc-emacs-build-time): Define as a variable.

	* erc-log.el (erc-log-setup-logging): Use write-file-functions.

	* erc-ibuffer.el: Require 'erc.

	* erc-stamp.el (erc-insert-aligned): Only use the special text
	property when window-system is X.

	* erc.texi: Adapt for inclusion in Emacs.

2006-01-28  Johan Bockgård  <bojohan@users.sourceforge.net>

	* erc.el (erc-format-message): More `cl' breakage; don't use
	`oddp'.

2006-01-27  Michael Olson  <mwolson@gnu.org>

	* debian/changelog: Update for new release.

	* debian/control (Description): Update.

	* debian/rules: Concatenate ChangeLog for 2005.

	* Makefile (MISC): Include ChangeLog.2005 and erc.texi.
	(debrelease, release): Copy images directory.

	* NEWS: Spelling fixes.  Add items for recent changes.

	* erc.el (erc): Move call to erc-update-modules before the call to
	erc-mode.  This should fix a timestamp display issue.
	(erc-version-string): Release ERC 5.1.

2006-01-26  Michael Olson  <mwolson@gnu.org>

	* erc-stamp.el (erc-insert-aligned): New function that inserts
	text in an perfectly-aligned way relative to the right margin.  It
	only works well with Emacs22.  A sane fallback is provided for
	other versions of Emacs.
	(erc-insert-timestamp-right): Use the new function.

2006-01-25  Theresa O'Connor  <ted@oconnor.cx>

	* erc.el (erc-modules): Ensure that `erc-button-mode' gets enabled
	before `erc-match-mode'.

	* erc-match.el (match): Append `erc-match-message' to
	`erc-insert-modify-hook'.

2006-01-25  Michael Olson  <mwolson@gnu.org>

	* FOR-RELEASE: Mark last release requirement as done.

	* Makefile (realclean, distclean): Remove docs.

	* erc.texi: Take care of all pre-5.1 items.

	* erc-backend.el (erc-server-send, erc-server-send-queue): Wrap
	`process-send-string' in `condition-case' to avoid an error when
	quitting ERC.

	* erc-stamp.el (erc-insert-timestamp-right): Try to deal with
	variable-width characters in the timestamp and on the same line.
	The latter is a kludge, but it seems to work with most of the
	input I've thrown at it so far.  It's certainly better than going
	past the end of line consistently when we have variable-width
	characters on the same line.  When `erc-timestamp-intangible' is
	non-nil, add intangible properties to the whitespace as well, so
	that hitting <end> does what you'd expect.

	* erc.el (erc-flood-protect, erc-toggle-flood-control): Update
	this to only use boolean values for `erc-flood-protect'.  Update
	documentation.
	(erc-cmd-QUIT): Set the active buffer to be the server buffer, so
	that any QUIT-related messages go there.
	(erc): Try to be more clever about re-using channel buffers when
	automatically re-connecting.  Thanks to e1f for noticing.

2006-01-23  Michael Olson  <mwolson@gnu.org>

	* ChangeLog.2005: Remove erroneous line.

	* FOR-RELEASE: Make that the Makefile tweaking is complete.
	(NEWS): Mark as done.

	* Makefile (MANUAL): New option indicating the name of the manual.
	(PREFIX, ELISPDIR, INFODIR): New options that specify the
	directories to install lisp code and info manuals to.  PREFIX is
	used only by ELISPDIR and INFODIR.
	(all): Call `lisp' and create the manual.
	(lisp): Compile lisp code.
	(%.info, %.html): New rules that make Info files and HTML files,
	respectively, from a TexInfo source.
	(doc): Create both the Info and HTML versions of the manual.  This
	is for the user -- we never call it automatically.
	(install-info): Install Info files.
	(install-bin): Install compiled and source Lisp files.
	(todo): Remove, since it seems pointless.

	* NEWS: Update.

	* README: Add Installation instructions.  Tweak layout.

	* erc.texi: Work on some pre-5.1 items.

	* erc-stamp.el, erc-track.el: Move some functions and options in
	order to get rid of a few compiler warnings.

	* erc.el (erc-modules): Enable readonly by default.  This will
	prevent new users from accidentally removing old messages, which
	could be disconcerting.  Also enable stamp by default, since
	timestamps are a fairly standard feature among IRC clients.

	* erc-button.el: Munge whitespace.

	* erc-identd.el (erc-identd-start): Instead of throwing an error,
	just try to use the obsolete function.

2006-01-22  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (erc-decode-string-from-target): Make sure that
	we have a string as an argument.  If not, coerce it to the empty
	string.  Hopefully, this will work painlessly around an edge case
	related to quitting ERC around the same time a message comes in.

2006-01-22  Johan Bockgård  <bojohan@users.sourceforge.net>

	* erc-track.el: Use `(eval-when-compile (require 'cl))' (for
	`case').  Doc fixes.
	(erc-find-parsed-property): Simplify.
	(erc-track-get-active-buffer): Fix logic.  Simplify.
	(erc-track-switch-buffer): Remove unused variable `dir'.  Simplify.

	* erc-speak.el: Doc fixes.
	(erc-speak-region): `propertize' --> `erc-propertize'.

	* erc-dcc.el (erc-dcc-chat-parse-output): `propertize' -->
	`erc-propertize'.

	* erc-button.el (erc-button-add-button): Take erc-fill-prefix into
	account when wrapping URLs.

	* erc-bbdb.el (erc-bbdb-elide-display): Doc fix.

	* erc-backend.el (define-erc-response-handler): Doc fix.

2006-01-22  Michael Olson  <mwolson@gnu.org>

	* erc.el (erc-update-modules): Use `require' instead of `load',
	but prevent it from causing errors, in order to preserve the
	previous behavior.

2006-01-21  Michael Olson  <mwolson@gnu.org>

	* FOR-RELEASE (Source): Mark cl task as done.

	* Makefile (erc-auto.el): Call erc-generate-autoloads rather than
	generate-autoloads.
	(erc-auto.el, %.elc): Don't show command, just its output.

	* NEWS: Add items from 2005-01-01 to 2005-08-13.

	* debian/copyright (Copyright): Update.

	* erc-auto.in (erc-generate-autoloads): Rename from
	generate-autoloads.

	* erc.el, erc-autoaway.el, erc-backend.el: Use
	erc-server-process-alive instead of erc-process-alive.

	* erc.el, erc-backend.el, erc-ezbounce.el, erc-list.el,
	erc-log.el, erc-match.el, erc-nets.el, erc-netsplit.el,
	erc-nicklist.el, erc-nickserv.el, erc-notify.el, erc-pcomplete.el:
	Use (eval-when-compile (require 'cl)), so that compilation doesn't
	fail.

	* erc-fill.el, erc-truncate.el: Whitespace munging.

	* erc.el: Update copyright notice.  Remove eval-after-load code.
	(erc-with-buffer): Docfix.
	(erc-once-with-server-event, erc-once-with-server-event-global)
	(erc-with-buffer, erc-with-all-buffers-of-server): Use erc-gensym
	instead of gensym.
	(erc-banlist-update): Use erc-delete-if instead of delete-if.
	(erc): Call `erc-update-modules' here.

	* erc-backend.el: Require 'erc-compat to minimize compiler
	warnings.
	(erc-decode-parsed-server-response): Docfix.
	(erc-server-process-alive): Move here from erc.el and rename from
	`erc-process-alive'.
	(erc-server-send, erc-remove-channel-users): Make sure process is
	alive before sending data to it.

	* erc-bbdb.el: Update copyright years.
	(erc-bbdb-whois): Remove overexuberant comment.

	* erc-button.el: Require erc-fill, since we make liberal use of
	`erc-fill-column'.

	* erc-compat.el (erc-const-expr-p, erc-list*, erc-assert): New
	functions, the latter of which provides an `assert' equivalent.
	(erc-remove-if-not): New function that provides a simple
	implementation of `remove-if-not'.
	(erc-gensym): New function that provides a simple implementation
	of `gensym'.
	(erc-delete-if): New function that provides a simple
	implementation of `delete-if'.
	(erc-member-if): New function that provides a simple
	implementation of `member-if'.
	(field-end): Remove this, since it is unused, and later versions
	of XEmacs have this function already.
	(erc-function-arglist): Moved here from erc.el.
	(erc-delete-dups): New compatibility function for dealing with
	XEmacs.
	(erc-subseq): New function copied from cl-extra.el.

	* erc-dcc.el: Require pcomplete during compilation to avoid
	compiler warnings.
	(erc-unpack-int, erc-dcc-send-filter)
	(erc-dcc-get-filter): Use erc-assert instead of assert.
	(pcomplete/erc-mode/DCC): Use erc-remove-if-not instead of
	remove-if-not.

	* erc-match.el (erc-log-matches): Fix compiler warning.

	* erc-nicklist.el: Update copyright notice.
	(erc-nicklist-menu): Change use of caadr to (car (cadr ...)).
	(erc-nicklist-bitlbee-connected-p): Remove.
	(erc-nicklist-insert-medium-name-or-icon): Accept channel
	argument.  Use it to determine whether we are on bitlbee.  Now
	that bitlbee names its channel "&bitlbee", this is trivial.
	(erc-nicklist-insert-contents): Pass channel as specified above.
	Don't try to determine whether we are on bitlbee here.
	(erc-nicklist-channel-users-info): Use erc-remove-if-not instead
	of remove-if-not.
	(erc-nicklist-search-for-nick): Use erc-member-if instead of
	member-if.

	* erc-notify.el (erc-notify-QUIT): Use erc-delete-if with a
	partially-evaluated lambda expression instead of `delete' and
	`find'.

	* erc-track.el: Use erc-assert.
	(erc-track-modified-channels): Remove use of `return'.
	(erc-track-modified-channels): Use `cadr' instead of `second',
	since otherwise we would need yet another eval-when-compile line.

2006-01-19  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (erc-process-sentinel-1): Remove attempt to
	detect SIGPIPE, since it doesn't work.

2006-01-10  Diane Murray  <disumu@x3y2z1.net>

	* erc-spelling.el: Updated copyright years.
	(define-erc-module): Enable/disable `flyspell-mode' for all open
	ERC buffers as well.
	(erc-spelling-dictionaries): Reworded customize description.

	* erc.el (erc-command-symbol): New function.
	(erc-extract-command-from-line): Use `erc-command-symbol'.  This
	fixes a bug where "Symbol's function definition is void:
	erc-cmd-LIST" would be shown after typing /list at the prompt (the
	command was interned because erc-menu.el uses it and is enabled by
	default whereas erc-list.el is not).

	* NEWS: Started a list of renamed variables.

	* erc.el: Reworded the message sent when defining variable
	aliases.
	(erc-command-indicator-face): Doc fix.
	(erc-modules): Enable the match module by default which makes
	current nickname highlighting on as the default.

	* erc-button.el: Updated copyright years.
	(erc-button): New face.
	(erc-button-face): Use `erc-button'.
	(erc-button-nickname-face): New customizable variable.
	(erc-button-add-nickname-buttons, erc-button-add-buttons-1): Send
	new argument to `erc-button-add-button'.
	(erc-button-add-button): Doc fix.  Added new argument to function
	definition, NICK-P.  If it's a nickname, use
	`erc-button-nickname-face', otherwise use `erc-button-face'.  This
	makes channel tracking and buttons work better together when
	`erc-button-buttonize-nicks' is enabled, since there is a nickname
	on just about every line.

	* erc-track.el (erc-track-use-faces): Doc fix.
	(erc-track-faces-priority-list): Added `erc-button' to list.
	(erc-track-priority-faces-only): Doc fix.

2006-01-09  Diane Murray  <disumu@x3y2z1.net>

	* erc-button.el (erc-button-url-regexp): Use `concat' so the
	regexp is not one long line.
	(erc-button-alist): Fixed so that customizing works correctly.
	Reorganized.  Removed lambda functions with more than two lines.
	Doc fix.
	(erc-button-describe-symbol, erc-button-beats-to-time): New
	functions.  Moved from `erc-button-alist'.

2006-01-07  Michael Olson  <mwolson@gnu.org>

	* erc-backend.el (erc-process-sentinel-1): Don't try to re-open a
	process if a SIGPIPE occurs.  This happens when a new message
	comes in at the same time a /quit is requested.
	(erc-process-sentinel): Use string-match rather than string= to do
	these comparisons.  Matching literal newlines makes me nervous.

	* erc-track.el (erc-track-remove-from-mode-line): Handle case
	where global-mode-string is not a list.  Emacs22 permits this.

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  Theresa 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  Theresa 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  Theresa 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.el (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  Theresa 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  Theresa 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
	compatibility 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  Theresa 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  Theresa 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
	https://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).

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  Theresa 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  Theresa 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  Theresa 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 Bockgård  <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-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, 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 Bockgård  <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 Bockgård  <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 Bockgård  <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 Bockgård  <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 response handler for 367 and 368 responses 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: Don't 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 responses 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 Bockgård  <bojohan@users.sourceforge.net>

	* erc-track.el (erc-track-modified-channels): Fix indentation.

2004-04-24  Johan Bockgård  <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 the 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 Bockgård  <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  Theresa 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 Bockgård  <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 Bockgård  <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 Bockgård  <bojohan@users.sourceforge.net>

	* erc.el: From jbms: Adds xemacs compatibility to hash table
	channel-members patch.

2004-01-29  Johan Bockgård  <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 Bockgård  <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 Bockgård  <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 superfluous 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 English phrase.

2004-01-02  Francis Litterio  <franl@users.sourceforge.net>

	* erc-list.el: Added variable erc-chanlist-mode-hook.

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->truncate

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 always 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): 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): Don't 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  Marcelo Toledo  <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 buttonizing 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 arbitrary 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, don't.

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 whether erc-save-buffer-in-logs is bound, too

	* erc.el(erc):
	Check whether 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-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 controlling the modules which erc has loaded/will
	    load. when customizing, 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 writable
	(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 asynchronous 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 sensible 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 beginning 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 whether 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, let's 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 excessive 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):
	suppress "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 doesn't 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 canonicalization. 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 color is negotiable ;-)
	(erc-cmd-QUERY): fixed, new doco, suppress (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 determining 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): canonicalize 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 basically 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 accommodate the change above.
	* (erc-send-distinguish-noncommands): Ditto.
	* (erc-cmd-NAMES): Ditto.
	* (erc-cmd-ME): Put 'do-not-parse-args property.

	* 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 too 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 subtracts (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 whether 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-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-connected, 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 receive 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 doesn't 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):
	Temporarily 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, don't 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.

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 superfluous (+ 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 whether 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 whether 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 behavior 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-enabled.

	(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
	https://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 whether 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: initialize 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: * Don't 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-module): 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 whether 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 https://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 customizable 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 functionality.
	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 statements, 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 autoload 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.  (I'm
	going to quit this job if I find more of those damn differences.)

	* 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-stamp.el

	* 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 (inactive 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 support 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 bound 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 statements 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 documentation 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 channel 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 behavior

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 doesn't 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 behavior 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 improvements 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 require 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 activity...)

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: don't 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: New variable: 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 behavior 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 don't 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 too 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 happened 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 isn't good in a 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-track.el
	   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 doesn't 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-invocation

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 behavior 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

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, that's 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.
	  Don't 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 that's 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 annotation 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. Thanks 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 facilities 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
	Basically, 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 a lot 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, that's 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 defun

	* erc.el: * Rewrote erc-load-irc-script (simplified)
	* Removed deprecated 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 remember, that you don't need it if you don't 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: Initial 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 the like

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 mailing list:

		* 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 identify 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: superseded by conffiles.in

	* debian/scripts/startup: superseded 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, superseded by its .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 simultaneously.

	* 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 don't get cut anymore. Be sure to use auditory icons,
	  it's really 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 usable.

	* 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 occurrences 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 for non-existing line-beginning|end-position functions in XEmacs.

2001-10-03  Mario Lang  <mlang@delysid.org>

	* erc.el:
	* Removed a lot 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-multiple-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 doesn't 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, hopefully it was the right fix and doesn't 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 doesn't 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 occurrence of a setq with only one argument (XEmacs didn't like that)

	* erc.el:
	Added erc-next-line-add-newlines customization 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: omit

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-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 annoying, 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-2023 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 3 of the License, 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.  If not, see <https://www.gnu.org/licenses/>.

;; Local Variables:
;; coding: utf-8
;; add-log-time-zone-rule: t
;; End:
