From: yamaoka Date: Tue, 18 May 2004 22:14:13 +0000 (+0000) Subject: Synch to No Gnus 200405181923. X-Git-Tag: t-gnus-6_17_4-quimby-~922 X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=6250e0fee04211ed52d1fc5d8fb8d37d88446d92;p=elisp%2Fgnus.git- Synch to No Gnus 200405181923. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 575403e..d7acbd8 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,12 +1,49 @@ 2004-05-18 Reiner Steib + * gnus-group.el (gnus-group-jump-to-group-prompt): Allow an alist. + (gnus-group-jump-to-group): Added prefix argument using + `gnus-group-jump-to-group-prompt'. Query before jumping to + non-active group. + + * compface.el (uncompface): Be verbose when changing + `uncompface-use-external'. + + * gnus-art.el (gnus-button-handle-man, gnus-button-alist): Try to + handle manual section. + +2004-05-18 Lars Magne Ingebrigtsen + + * gnus-art.el (gnus-button-alist): Revert previous change. + +2004-05-18 Reiner Steib + + * message.el (message-idna-to-ascii-rhs-1): Fix typo. + +2004-05-18 Lars Magne Ingebrigtsen + + * gnus-msg.el (gnus-inews-do-gcc): Don't use read-only-p to see + whether backend can accept message. + + * message.el (message-idna-to-ascii-rhs-1): Don't use equalp. + +2004-05-18 Kai Grossjohann + + * nntp.el (nntp-request-set-mark, nntp-request-update-info): + Avoid creating directory when nntp-marks-is-evil is true. + Reported by Reiner Steib. + +2004-05-18 Reiner Steib + * gnus-picon.el (gnus-picon-style): New variable. (gnus-picon-insert-glyph): Added optional `nostring' argument. (gnus-picon-transform-address): Support `gnus-picon-style'. From - Jesper Harder . + Jesper Harder . 2004-05-18 Lars Magne Ingebrigtsen + * message.el (message-fill-field): Return point. + (message-generate-headers): Go to end of field. + * gnus-start.el (gnus-get-unread-articles-in-group): Don't do stuff for non-living groups. diff --git a/lisp/compface.el b/lisp/compface.el index 3a6f101..45a5709 100644 --- a/lisp/compface.el +++ b/lisp/compface.el @@ -110,7 +110,9 @@ or `libgr-progs', for instance." uncompface-use-external-threshold) (executable-find "uncompface") (executable-find "icontopbm") - t))))))) + t)) + (message "Setting `uncompface-use-external' to `%s'" + uncompface-use-external)))))) ;; The following section is a bug-for-bug compatible version of ;; `uncompface' program entirely implemented in Emacs-Lisp. diff --git a/lisp/gnus-art.el b/lisp/gnus-art.el index e698658..a3ca2d0 100644 --- a/lisp/gnus-art.el +++ b/lisp/gnus-art.el @@ -6635,16 +6635,16 @@ positives are possible." (gnus-button-url-regexp 0 (>= gnus-button-browse-level 0) browse-url 0) ;; man pages - ("\\b\\([a-z][a-z]+\\)([1-9])\\W" + ("\\b\\([a-z][a-z]+([1-9])\\)\\W" 0 (and (>= gnus-button-man-level 1) (< gnus-button-man-level 3)) gnus-button-handle-man 1) ;; more man pages: resolv.conf(5), iso_8859-1(7), xterm(1x) - ("\\b\\([a-z][-_.a-z0-9]+\\)([1-9])\\W" + ("\\b\\([a-z][-_.a-z0-9]+([1-9])\\)\\W" 0 (and (>= gnus-button-man-level 3) (< gnus-button-man-level 5)) gnus-button-handle-man 1) ;; even more: Apache::PerlRun(3pm), PDL::IO::FastRaw(3pm), ;; SoWWWAnchor(3iv), XSelectInput(3X11), X(1), X(7) - ("\\b\\([a-z][-+_.:a-z0-9]+\\)([1-9][X1a-z]*)\\W\\|\\b\\(X\\)([1-9])\\W" + ("\\b\\(\\(?:[a-z][-+_.:a-z0-9]+([1-9][X1a-z]*)\\)\\W\\|\\b\\(?:X([1-9])\\)\\)\\W" 0 (>= gnus-button-man-level 5) gnus-button-handle-man 1) ;; MID or mail: To avoid too many false positives we don't try to catch ;; all kind of allowed MIDs or mail addresses. Domain part must contain @@ -7049,6 +7049,10 @@ specified by `gnus-button-alist'." (defun gnus-button-handle-man (url) "Fetch a man page." + (gnus-message 9 "`%s' `%s'" gnus-button-man-handler url) + (when (eq gnus-button-man-handler 'woman) + (setq url (gnus-replace-in-string url "([1-9][X1a-z]*).*\\'" ""))) + (gnus-message 9 "`%s' `%s'" gnus-button-man-handler url) (funcall gnus-button-man-handler url)) (defun gnus-button-handle-info-url (url) diff --git a/lisp/gnus-group.el b/lisp/gnus-group.el index 0f832ae..d89e51b 100644 --- a/lisp/gnus-group.el +++ b/lisp/gnus-group.el @@ -440,12 +440,19 @@ For example: (defcustom gnus-group-jump-to-group-prompt nil "Default prompt for `gnus-group-jump-to-group'. -If non-nil, the value should be a string, e.g. \"nnml:\", -in which case `gnus-group-jump-to-group' offers \"Group: nnml:\" -in the minibuffer prompt." + +If non-nil, the value should be a string or an alist. If it is a string, +e.g. \"nnml:\", in which case `gnus-group-jump-to-group' offers \"Group: +nnml:\" in the minibuffer prompt. + +If it is an alist, it must consist of \(NUMBER . PROMPT\) pairs, for example: +\((1 . \"\") (2 . \"nnfolder+archive:\")). The element with number 0 is +used when no prefix argument is given to `gnus-group-jump-to-group'." :group 'gnus-group-various :type '(choice (string :tag "Prompt string") - (const :tag "Empty" nil))) + (const :tag "Empty" nil) + (repeat (cons (integer :tag "Argument") + (string :tag "Prompt string"))))) (defvar gnus-group-listing-limit 1000 "*A limit of the number of groups when listing. @@ -2094,14 +2101,23 @@ Return the name of the group if selection was successful." (message "Quit reading the ephemeral group") nil))))) -(defun gnus-group-jump-to-group (group) - "Jump to newsgroup GROUP." +(defun gnus-group-jump-to-group (group &optional prompt) + "Jump to newsgroup GROUP. + +If PROMPT (the prefix) is a number, use the prompt specified in +`gnus-group-jump-to-group-prompt'." (interactive - (list (gnus-group-completing-read-group-name - "Group: " gnus-active-hashtb nil - (gnus-read-active-file-p) - gnus-group-jump-to-group-prompt - 'gnus-group-history))) + (list (mm-string-make-unibyte + (completing-read + "Group: " gnus-active-hashtb nil + (gnus-read-active-file-p) + (if current-prefix-arg + (cdr (assq current-prefix-arg gnus-group-jump-to-group-prompt)) + (or (and (stringp gnus-group-jump-to-group-prompt) + gnus-group-jump-to-group-prompt) + (let ((p (cdr (assq 0 gnus-group-jump-to-group-prompt)))) + (and (stringp p) p)))) + 'gnus-group-history)))) (when (equal group "") (error "Empty group name")) @@ -2110,7 +2126,11 @@ Return the name of the group if selection was successful." ;; Either go to the line in the group buffer... (unless (gnus-group-goto-group group) ;; ... or insert the line. - (gnus-group-update-group group) + (if (or (gnus-active group) + (gnus-y-or-n-p + (format "Group %s is not active. Continue? " group))) + (gnus-group-update-group group) + (error "No such group: %s." group)) (gnus-group-goto-group group))) ;; Adjust cursor point. (gnus-group-position-point)) diff --git a/lisp/gnus-msg.el b/lisp/gnus-msg.el index ff1e444..ada3fe6 100644 --- a/lisp/gnus-msg.el +++ b/lisp/gnus-msg.el @@ -1861,7 +1861,8 @@ this is a reply." (concat "^" (regexp-quote mail-header-separator) "$") nil t) (replace-match "" t t )) - (when (or (gnus-group-read-only-p group) + (when (or (not (gnus-check-backend-function + 'request-accept-article group)) (not (setq group-art (gnus-request-accept-article group method t t)))) diff --git a/lisp/gnus-picon.el b/lisp/gnus-picon.el index a155e84..710b7aa 100644 --- a/lisp/gnus-picon.el +++ b/lisp/gnus-picon.el @@ -1,6 +1,6 @@ ;;; gnus-picon.el --- displaying pretty icons in Gnus -;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 +;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 ;; Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen diff --git a/lisp/message.el b/lisp/message.el index 2ee96bd..60aeda9 100644 --- a/lisp/message.el +++ b/lisp/message.el @@ -5494,9 +5494,9 @@ subscribed address (and not the additional To and Cc header contents)." (when field (dolist (address (mail-header-parse-addresses field)) (setq address (car address) - rhs (cadr (split-string address "@")) - ace (idna-to-ascii rhs)) - (when (and (not (equalp rhs ace)) + rhs (downcase (cadr (split-string address "@"))) + ace (downcase (idna-to-ascii rhs))) + (when (and (not (equal rhs ace)) (or (not (eq message-use-idna 'ask)) (y-or-n-p (format "Replace %s with %s? " rhs ace)))) (goto-char (point-min)) @@ -5626,9 +5626,9 @@ Headers already prepared in the buffer are not modified." (if formatter (funcall formatter header value) (insert header-string ": " value)) - (message-fill-field) + (goto-char (message-fill-field)) ;; We check whether the value was ended by a - ;; newline. If now, we insert one. + ;; newline. If not, we insert one. (unless (bolp) (insert "\n")) (forward-line -1))) @@ -5753,7 +5753,8 @@ If the current line has `message-yank-prefix', insert it on the new line." (message-narrow-to-field) (let ((field-name (message-field-name))) (funcall (or (cadr (assq field-name message-field-fillers)) - 'message-fill-field-general)))))) + 'message-fill-field-general))) + (point-max)))) (defun message-fill-field-address () (while (not (eobp)) diff --git a/lisp/nntp.el b/lisp/nntp.el index 4e3dcb7..53ce24c 100644 --- a/lisp/nntp.el +++ b/lisp/nntp.el @@ -1091,8 +1091,8 @@ newsgroups that match the regexp." t) (deffoo nntp-request-set-mark (group actions &optional server) - (nntp-possibly-create-directory group server) (unless nntp-marks-is-evil + (nntp-possibly-create-directory group server) (nntp-open-marks group server) (dolist (action actions) (let ((range (nth 0 action)) @@ -1111,7 +1111,8 @@ newsgroups that match the regexp." nil) (deffoo nntp-request-update-info (group info &optional server) - (nntp-possibly-create-directory group server) + (unless nntp-marks-is-evil + (nntp-possibly-create-directory group server)) (when (and (not nntp-marks-is-evil) (nntp-marks-changed-p group server)) (nnheader-message 8 "Updating marks for %s..." group) (nntp-open-marks group server)