From: Miles Bader Date: Tue, 11 Apr 2006 22:09:49 +0000 (+0000) Subject: Revision: emacs@sv.gnu.org/emacs--devo--0--patch-208 X-Git-Tag: emacs-pretest-22.0.90~3208 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=21bc768b9b693f97940c56b9f4e80b9a7f486e34;p=emacs.git Revision: emacs@sv.gnu.org/emacs--devo--0--patch-208 Creator: Michael Olson Sync from erc--emacs--0 --- diff --git a/lisp/erc/ChangeLog b/lisp/erc/ChangeLog index 67799d73049..49b274b5149 100644 --- a/lisp/erc/ChangeLog +++ b/lisp/erc/ChangeLog @@ -1,3 +1,23 @@ +2006-04-05 Diane Murray + + * 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 + + * 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 + + * 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-26 Michael Olson * erc.el (erc-header-line): New face that will be used to colorize diff --git a/lisp/erc/erc-backend.el b/lisp/erc/erc-backend.el index a99af9dea64..3ea0f74eed7 100644 --- a/lisp/erc/erc-backend.el +++ b/lisp/erc/erc-backend.el @@ -312,13 +312,7 @@ alist." :type '(repeat (cons (string :tag "Target") coding-system))) -(defcustom erc-server-connect-function - (if (and (fboundp 'open-network-stream-nowait) - ;; CVS Emacs claims to define open-network-stream-nowait on - ;; windows, however, it does, in fact, not work. - (not (memq system-type '(windows-nt cygwin ms-dos darwin)))) - 'open-network-stream-nowait - 'open-network-stream) +(defcustom erc-server-connect-function 'open-network-stream "Function used to initiate a connection. It should take same arguments as `open-network-stream' does." :group 'erc-server @@ -762,10 +756,10 @@ PROCs `process-buffer' is `current-buffer' when this function is called." (substring string 1 posn))) (setf (erc-response.command msg) - (let* ((bposn (string-match "[^ ]" string posn)) + (let* ((bposn (string-match "[^ \n]" string posn)) (eposn (string-match " " string bposn))) (setq posn (and eposn - (string-match "[^ ]" string eposn))) + (string-match "[^ \n]" string eposn))) (substring string bposn eposn))) (while (and posn @@ -773,7 +767,7 @@ PROCs `process-buffer' is `current-buffer' when this function is called." (push (let* ((bposn posn) (eposn (string-match " " string bposn))) (setq posn (and eposn - (string-match "[^ ]" string eposn))) + (string-match "[^ \n]" string eposn))) (substring string bposn eposn)) (erc-response.command-args msg))) (when posn diff --git a/lisp/erc/erc-ezbounce.el b/lisp/erc/erc-ezbounce.el index 48395bf1dab..d04fe782f7e 100644 --- a/lisp/erc/erc-ezbounce.el +++ b/lisp/erc/erc-ezbounce.el @@ -139,7 +139,7 @@ in the alist is `nil', prompt for the appropriate values." (defun erc-ezb-add-session (message) "Add an EZBounce session to the session list." (when (and erc-ezb-inside-session-listing - (string-match "^\\([^ ]+\\) +\\([^ ]+\\) +\\([^ ]+\\) +\\([^ ]+\\)$" message)) + (string-match "^\\([^ \n]+\\) +\\([^ \n]+\\) +\\([^ \n]+\\) +\\([^ \n]+\\)$" message)) (let ((id (match-string 1 message)) (nick (match-string 2 message)) (to (match-string 3 message))) diff --git a/lisp/erc/erc-join.el b/lisp/erc/erc-join.el index 0d2c1f98706..86b79c538f1 100644 --- a/lisp/erc/erc-join.el +++ b/lisp/erc/erc-join.el @@ -92,7 +92,7 @@ servers, presumably in the same domain." (or erc-server-announced-name erc-session-server)))) (when (erc-current-nick-p nick) (when (and erc-autojoin-domain-only - (string-match "[^.]+\\.\\([^.]+\\.[^.]+\\)$" server)) + (string-match "[^.\n]+\\.\\([^.\n]+\\.[^.\n]+\\)$" server)) (setq server (match-string 1 server))) (let ((elem (assoc server erc-autojoin-channels-alist))) (if elem @@ -115,7 +115,7 @@ servers, presumably in the same domain." (or erc-server-announced-name erc-session-server)))) (when (erc-current-nick-p nick) (when (and erc-autojoin-domain-only - (string-match "[^.]+\\.\\([^.]+\\.[^.]+\\)$" server)) + (string-match "[^.\n]+\\.\\([^.\n]+\\.[^.\n]+\\)$" server)) (setq server (match-string 1 server))) (let ((elem (assoc server erc-autojoin-channels-alist))) (when elem diff --git a/lisp/erc/erc-netsplit.el b/lisp/erc/erc-netsplit.el index a982b5e7c7e..72e7b8bbd7f 100644 --- a/lisp/erc/erc-netsplit.el +++ b/lisp/erc/erc-netsplit.el @@ -64,7 +64,8 @@ sever buffer." :group 'erc-netsplit :type 'boolean) -(defcustom erc-netsplit-regexp "^[^ @!\"]+\\.[^ @!]+ [^ @!]+\\.[^ @!\"]+$" +(defcustom erc-netsplit-regexp + "^[^ @!\"\n]+\\.[^ @!\n]+ [^ @!\n]+\\.[^ @!\"\n]+$" "This regular expression should match quit reasons produced by netsplits." :group 'erc-netsplit @@ -131,7 +132,7 @@ join from that split has been detected or not.") (defun erc-netsplit-MODE (proc parsed) "Hide mode changes from servers." ;; regexp matches things with a . in them, and no ! or @ in them. - (when (string-match "^[^@!]+\\.[^@!]+$" (erc-response.sender parsed)) + (when (string-match "^[^@!\n]+\\.[^@!\n]+$" (erc-response.sender parsed)) (and erc-netsplit-debug (erc-display-message parsed 'notice (process-buffer proc) diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el index 63aac8a625e..1baede01259 100644 --- a/lisp/erc/erc.el +++ b/lisp/erc/erc.el @@ -3132,7 +3132,7 @@ the message given by REASON." (defun erc-cmd-SV () "Say the current ERC and Emacs version into channel." - (erc-send-message (format "I'm using ERC %s with %s %s (%s%s%s)!" + (erc-send-message (format "I'm using ERC %s with %s %s (%s%s) of %s." erc-version-string (if (featurep 'xemacs) "XEmacs" "GNU Emacs") emacs-version @@ -3155,7 +3155,7 @@ the message given by REASON." x-toolkit-scroll-bars))) "") (if (featurep 'multi-tty) ", multi-tty" "")) - (concat ", built " erc-emacs-build-time))) + erc-emacs-build-time)) t) (defun erc-cmd-SM () @@ -3490,7 +3490,7 @@ If FACE is non-nil, it will be used to propertize the prompt. If it is nil, If `point' is at the beginning of a channel name, use that as default." (interactive (list - (let ((chnl (if (looking-at "\\([&#+!][^ ]+\\)") (match-string 1) "")) + (let ((chnl (if (looking-at "\\([&#+!][^ \n]+\\)") (match-string 1) "")) (table (when (erc-server-buffer-live-p) (set-buffer (process-buffer erc-server-process)) erc-channel-list))) @@ -4734,12 +4734,12 @@ EmacsSpeak support." Return a list of the three separate tokens." (cond - ((string-match "^\\([^!]*\\)!\\([^@]*\\)@\\(.*\\)$" string) + ((string-match "^\\([^!\n]*\\)!\\([^@\n]*\\)@\\(.*\\)$" string) (list (match-string 1 string) (match-string 2 string) (match-string 3 string))) ;; Some bogus bouncers send Nick!(null), try to live with that. - ((string-match "^\\([^!]*\\)!\\(.*\\)$" string) + ((string-match "^\\([^!\n]*\\)!\\(.*\\)$" string) (list (match-string 1 string) "" (match-string 2 string))) @@ -5053,7 +5053,7 @@ user matches any regexp in `erc-ignore-reply-list'." "Return the addressed target in MSG. The addressed target is the string before the first colon in MSG." - (if (string-match "^\\([^: ]*\\):" msg) + (if (string-match "^\\([^: \n]*\\):" msg) (match-string 1 msg) nil))