+2008-02-20 Michael Olson <mwolson@gnu.org>
+
+ * erc.el (erc-notice-face): Fix this face for Emacs 21 users.
+
+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.
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.
?n (erc-extract-nick (plist-get ret :nick))))))
t))
-(defun erc-dcc-do-GET-command (proc nick &optional file)
+(defun erc-dcc-do-GET-command (proc nick &rest file)
+ "Do a DCC GET command. NICK is the person who is sending the file.
+FILE is the filename. If FILE is split into multiple arguments,
+re-join the arguments, separated by a space.
+PROC is the server process."
+ (setq file (and file (mapconcat #'identity file " ")))
(let* ((elt (erc-dcc-member :nick nick :type 'GET))
(filename (or file (plist-get elt :file) "unknown")))
(if elt
'dcc-list-end)
t))
-(defun erc-dcc-do-SEND-command (proc nick file)
- "Offer FILE to NICK by sending a ctcp dcc send message."
+(defun erc-dcc-do-SEND-command (proc nick &rest file)
+ "Offer FILE to NICK by sending a ctcp dcc send message.
+If FILE is split into multiple arguments, re-join the arguments,
+separated by a space."
+ (setq file (and file (mapconcat #'identity file " ")))
(if (file-exists-p file)
(progn
(erc-display-message
(when (featurep 'xemacs)
(erc-modified-channels-object nil))
(setq erc-modified-channels-object
- (erc-modified-channels-object strings))))))
+ (erc-modified-channels-object strings))))))
(defun erc-modified-channels-remove-buffer (buffer)
"Remove BUFFER from `erc-modified-channels-alist'."
(defun erc-track-find-face (faces)
"Return the face to use in the modeline from the faces in FACES.
-If `erc-track-faces-priority-list' is set, the one from FACES who is
-first in that list will be used.
+If `erc-track-faces-priority-list' is set, the one from FACES who
+is first in that list will be used. If nothing matches or if
+`erc-track-faces-priority-list' is not set, the default mode-line
+faces will be used.
If `erc-track-faces-normal-list' is non-nil, use it to produce a
blinking effect that indicates channel activity when the first
element in FACES and the highest-ranking face among the rest of
FACES are both members of `erc-track-faces-normal-list'.
-If `erc-track-faces-priority-list' is not set, the first element
-in FACES will be used.
-
If one of the faces is a list, then it will be ranked according
to its highest-tanking face member. A list of faces including
that member will take priority over just the single member
(when (member candidate (cdr faces))
(throw 'face candidate)))))))
(cond ((null choice)
- (car faces))
+ nil)
((and (member choice erc-track-faces-normal-list)
(member no-first erc-track-faces-normal-list))
no-first)
(define-key map "\C-c\C-r" 'erc-remove-text-properties-region)
(define-key map "\C-c\C-t" 'erc-set-topic)
(define-key map "\C-c\C-u" 'erc-kill-input)
+ (define-key map "\C-c\C-x" 'erc-quit-server)
(define-key map "\M-\t" 'ispell-complete-word)
(define-key map "\t" 'erc-complete-word)
:group 'erc-faces)
(defface erc-notice-face
- (if (featurep 'xemacs)
+ (if (or (featurep 'xemacs)
+ (< emacs-major-version 22))
'((t (:bold t :foreground "blue")))
'((((class color) (min-colors 88))
(:bold t :foreground "SlateBlue"))
(string= target (erc-current-nick)))
(not (erc-get-buffer query proc))
(not (erc-is-message-ctcp-and-not-action-p msg))
- (let ((erc-join-buffer erc-auto-query))
+ (let ((erc-query-display erc-auto-query))
(erc-cmd-QUERY query))
nil))))