2001-02-01 ShengHuo ZHU <zsh@cs.rochester.edu>

* gnus-score.el (gnus-summary-score-entry): match may be an integer.

	* gnus-art.el (gnus-summary-save-in-pipe): Prompt for saving
	command if there is not last-saver.

	* rfc2047.el (rfc2047-encode): MIME charset is not coding system.
	(rfc2047-charset-encoding-alist): Add big5.

	* mm-util.el (mm-mime-mule-charset-alist): Preferred MIME names
	GB2312 and Big5.

	* gnus-score.el (gnus-score-lower-thread): Fix a doc typo.

	* gnus-sum.el (gnus-summary-print-article): Remove process mark.

	* gnus-sum.el (gnus-summary-print-article): Take one prefix
	argument. Allow to print several articles in one file.

	* webmail.el (webmail-type-definition): netaddress changes.
This commit is contained in:
ShengHuo ZHU 2001-02-02 03:15:52 +00:00
parent f8f96fe285
commit 676a7cc97d
7 changed files with 136 additions and 107 deletions

View file

@ -1,3 +1,25 @@
2001-02-01 ShengHuo ZHU <zsh@cs.rochester.edu>
* gnus-score.el (gnus-summary-score-entry): match may be an integer.
* gnus-art.el (gnus-summary-save-in-pipe): Prompt for saving
command if there is not last-saver.
* rfc2047.el (rfc2047-encode): MIME charset is not coding system.
(rfc2047-charset-encoding-alist): Add big5.
* mm-util.el (mm-mime-mule-charset-alist): Preferred MIME names
GB2312 and Big5.
* gnus-score.el (gnus-score-lower-thread): Fix a doc typo.
* gnus-sum.el (gnus-summary-print-article): Remove process mark.
* gnus-sum.el (gnus-summary-print-article): Take one prefix
argument. Allow to print several articles in one file.
* webmail.el (webmail-type-definition): netaddress changes.
2001-01-31 Dave Love <fx@gnu.org>
* mm-util.el (mm-mime-mule-charset-alist)

View file

@ -2493,7 +2493,8 @@ The directory to save in defaults to `gnus-article-save-directory'."
(cond ((and (eq command 'default)
gnus-last-shell-command)
gnus-last-shell-command)
(command command)
((stringp command)
command)
(t (read-string
(format
"Shell command on %s: "
@ -2504,7 +2505,9 @@ The directory to save in defaults to `gnus-article-save-directory'."
"this article"))
gnus-last-shell-command))))
(when (string-equal command "")
(setq command gnus-last-shell-command))
(if gnus-last-shell-command
(setq command gnus-last-shell-command)
(error "A command is required.")))
(gnus-eval-in-buffer-window gnus-article-buffer
(save-restriction
(widen)

View file

@ -1,5 +1,5 @@
;;; gnus-score.el --- scoring code for Gnus
;; Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000
;; Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001
;; Free Software Foundation, Inc.
;; Author: Per Abrahamsen <amanda@iesd.auc.dk>
@ -808,11 +808,11 @@ If optional argument `EXTRA' is non-nil, it's a non-standard overview header."
(int-to-string match)
match))))
(set-text-properties 0 (length match) nil match)
;; If this is an integer comparison, we transform from string to int.
(when (eq (nth 2 (assoc header gnus-header-index)) 'gnus-score-integer)
(setq match (string-to-int match)))
(if (eq (nth 2 (assoc header gnus-header-index)) 'gnus-score-integer)
(if (stringp match)
(setq match (string-to-int match)))
(set-text-properties 0 (length match) nil match))
(unless (eq date 'now)
;; Add the score entry to the score file.
@ -1492,7 +1492,7 @@ EXTRA is the possible non-standard header."
(gnus-message 5 "Scoring...done"))))))
(defun gnus-score-lower-thread (thread score-adjust)
"Lower the socre on THREAD with SCORE-ADJUST.
"Lower the score on THREAD with SCORE-ADJUST.
THREAD is expected to contain a list of the form `(PARENT [CHILD1
CHILD2 ...])' where PARENT is a header array and each CHILD is a list
of the same form as THREAD. The empty list `nil' is valid. For each
@ -1750,7 +1750,7 @@ score in GNUS-NEWSGROUP-SCORED by SCORE."
;; gnus-score-index is used as a free variable.
alike last this art entries alist articles
new news)
;; Change score file to the adaptive score file. All entries that
;; this function makes will be put into this file.
(save-excursion
@ -1760,7 +1760,7 @@ score in GNUS-NEWSGROUP-SCORED by SCORE."
(gnus-score-file-name
gnus-newsgroup-name gnus-adaptive-file-suffix))))
(setq gnus-scores-articles (sort gnus-scores-articles
(setq gnus-scores-articles (sort gnus-scores-articles
'gnus-score-string<)
articles gnus-scores-articles)
@ -1829,7 +1829,7 @@ score in GNUS-NEWSGROUP-SCORED by SCORE."
(push new news)))))
;; Update expire date
(cond ((null date)) ;Permanent entry.
((and found gnus-update-score-entry-dates)
((and found gnus-update-score-entry-dates)
;Match, update date.
(gnus-score-set 'touched '(t) alist)
(setcar (nthcdr 2 kill) now))

View file

@ -1,5 +1,5 @@
;;; gnus-sum.el --- summary mode commands for Gnus
;; Copyright (C) 1996, 1997, 1998, 1999, 2000
;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
;; Free Software Foundation, Inc.
;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org>
@ -7301,8 +7301,7 @@ If the optional first argument FILENAME is nil, send the image to the
printer. If FILENAME is a string, save the PostScript image in a file with
that name. If FILENAME is a number, prompt the user for the name of the file
to save in."
(interactive (list (ps-print-preprint current-prefix-arg)
current-prefix-arg))
(interactive (list (ps-print-preprint current-prefix-arg)))
(dolist (article (gnus-summary-work-articles n))
(gnus-summary-select-article nil nil 'pseudo article)
(gnus-eval-in-buffer-window gnus-article-buffer
@ -7325,8 +7324,10 @@ to save in."
(mail-header-date gnus-current-headers) ")"))))
(gnus-run-hooks 'gnus-ps-print-hook)
(save-excursion
(ps-print-buffer-with-faces filename))))
(kill-buffer buffer))))))
(ps-spool-buffer-with-faces))))
(kill-buffer buffer))))
(gnus-summary-remove-process-mark article))
(ps-despool filename))
(defun gnus-summary-show-article (&optional arg)
"Force re-fetching of the current article.

View file

@ -47,8 +47,8 @@
(viscii vietnamese-viscii-lower)
(iso-2022-jp latin-jisx0201 japanese-jisx0208 japanese-jisx0208-1978)
(euc-kr korean-ksc5601)
(cn-gb-2312 chinese-gb2312)
(cn-big5 chinese-big5-1 chinese-big5-2)
(gb2312 chinese-gb2312)
(big5 chinese-big5-1 chinese-big5-2)
(tibetan tibetan)
(thai-tis620 thai-tis620)
(iso-2022-7bit ethiopic arabic-1-column arabic-2-column)

View file

@ -70,6 +70,8 @@ The values can be:
(iso-2022-jp . B)
(iso-2022-kr . B)
(gb2312 . B)
(big5 . B)
(cn-big5 . B)
(cn-gb . B)
(cn-gb-2312 . B)
(euc-kr . B)
@ -258,6 +260,7 @@ The buffer may be narrowed."
(defun rfc2047-encode (b e charset)
"Encode the word in the region B to E with CHARSET."
(let* ((mime-charset (mm-mime-charset charset))
(cs (mm-charset-to-coding-system mime-charset))
(encoding (or (cdr (assq mime-charset
rfc2047-charset-encoding-alist))
'B))
@ -275,8 +278,8 @@ The buffer may be narrowed."
(unless (eobp)
(insert "\n"))))
(if (and (mm-multibyte-p)
(mm-coding-system-p mime-charset))
(mm-encode-coding-region (point-min) (point-max) mime-charset))
(mm-coding-system-p cs))
(mm-encode-coding-region (point-min) (point-max) cs))
(funcall (cdr (assq encoding rfc2047-encoding-function-alist))
(point-min) (point-max))
(goto-char (point-min))

View file

@ -1,5 +1,5 @@
;;; webmail.el --- interfacing with web mail
;; Copyright (C) 1999, 2000 Free Software Foundation, Inc.
;;; webmail.el --- interface of web mail
;; Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
;; Author: Shenghuo Zhu <zsh@cs.rochester.edu>
;; Keywords: hotmail netaddress my-deja netscape
@ -32,7 +32,7 @@
;; Todo: To support more web mail servers.
;; Known bugs:
;; Known bugs:
;; 1. Net@ddress may corrupt `X-Face'.
;; Warning:
@ -81,8 +81,8 @@
;;(list-url "%s" webmail-aux)
(list-snarf . webmail-hotmail-list)
(article-snarf . webmail-hotmail-article)
(trash-url
"%s&login=%s&f=33792&curmbox=ACTIVE&_lang=&foo=inbox&js=&page=&%s=on&_HMaction=MoveTo&tobox=trAsH&nullbox="
(trash-url
"%s&login=%s&f=33792&curmbox=ACTIVE&_lang=&foo=inbox&js=&page=&%s=on&_HMaction=MoveTo&tobox=trAsH&nullbox="
webmail-aux user id))
(yahoo
(paranoid agent cookie post)
@ -90,7 +90,7 @@
(open-url "http://mail.yahoo.com/")
(open-snarf . webmail-yahoo-open)
(login-url;; yahoo will not accept GET
content
content
("%s" webmail-aux)
".tries=&.src=ym&.last=&promo=&.intl=&.bypass=&.partner=&.chkP=Y&.done=&login=%s&passwd=%s"
user password)
@ -98,7 +98,7 @@
(list-url "%s&rb=Inbox&YN=1" webmail-aux)
(list-snarf . webmail-yahoo-list)
(article-snarf . webmail-yahoo-article)
(trash-url
(trash-url
"%s/ym/ShowFolder?YY=52107&inc=50&order=down&sort=date&pos=0&box=Inbox&DEL=Delete&destBox=&Mid=%s&destBox2="
webmail-aux id))
(netaddress
@ -107,18 +107,18 @@
(open-url "http://www.netaddress.com/")
(open-snarf . webmail-netaddress-open)
(login-url
content
content
("%s" webmail-aux)
"LoginState=2&SuccessfulLogin=%%2Ftpl&NewServerName=www.netaddress.com&JavaScript=JavaScript1.2&DomainID=4&NA31site=classic.netaddress.com&NA31port=80&UserID=%s&passwd=%s"
"LoginState=2&SuccessfulLogin=%%2Ftpl&NewServerName=www.netaddress.com&JavaScript=JavaScript1.2&DomainID=4&Domain=usa.net&NA31site=classic.netaddress.com&NA31port=80&UserID=%s&passwd=%s"
user password)
(login-snarf . webmail-netaddress-login)
(list-url
(list-url
"http://www.netaddress.com/tpl/Mail/%s/List?FolderID=-4&SortUseCase=True"
webmail-session)
(list-snarf . webmail-netaddress-list)
(article-url "http://www.netaddress.com/")
(article-snarf . webmail-netaddress-article)
(trash-url
(trash-url
"http://www.netaddress.com/tpl/Message/%s/Move?FolderID=-4&Q=%s&N=&Sort=Date&F=-1"
webmail-session id))
(netscape
@ -127,18 +127,18 @@
(open-url "http://ureg.netscape.com/iiop/UReg2/login/login?U2_LA=en&U2_BACK_FROM_CJ=true&U2_CS=iso-8859-1&U2_ENDURL=http://webmail.netscape.com/tpl/Subscribe/Step1&U2_NEW_ENDURL=http://webmail.netscape.com/tpl/Subscribe/Step1&U2_EXITURL=http://home.netscape.com/&U2_SOURCE=Webmail")
(open-snarf . webmail-netscape-open)
(login-url
content
content
("http://ureg.netscape.com/iiop/UReg2/login/loginform")
"U2_USERNAME=%s&U2_PASSWORD=%s%s"
user password webmail-aux)
(login-snarf . webmail-netaddress-login)
(list-url
(list-url
"http://webmail.netscape.com/tpl/Mail/%s/List?FolderID=-4&SortUseCase=True"
webmail-session)
(list-snarf . webmail-netaddress-list)
(article-url "http://webmail.netscape.com/")
(article-snarf . webmail-netscape-article)
(trash-url
(trash-url
"http://webmail.netscape.com/tpl/Message/%s/Move?FolderID=-4&Q=%s&N=&Sort=Date&F=-1"
webmail-session id))
(my-deja
@ -147,7 +147,7 @@
(open-url "http://www.deja.com/my/pr.xp")
(open-snarf . webmail-my-deja-open)
(login-url
content
content
("%s" webmail-aux)
"member_name=%s&pw=%s&go=&priv_opt_MyDeja99="
user password)
@ -157,7 +157,7 @@
(trash-url webmail-aux id))))
(defvar webmail-variables
'(address article-snarf article-url list-snarf list-url
'(address article-snarf article-url list-snarf list-url
login-url login-snarf open-url open-snarf site articles
post-process paranoid trash-url))
@ -201,7 +201,7 @@
(defun webmail-debug (str)
(with-temp-buffer
(insert "\n---------------- A bug at " str " ------------------\n")
(mapcar #'(lambda (sym)
(mapcar #'(lambda (sym)
(if (boundp sym)
(pp `(setq ,sym ',(eval sym)) (current-buffer))))
'(webmail-type user))
@ -264,7 +264,7 @@
(defun webmail-url (xurl)
(mm-with-unibyte-current-buffer
(cond
(cond
((eq (car xurl) 'content)
(pop xurl)
(webmail-fetch-simple (if (stringp (car xurl))
@ -300,7 +300,7 @@
;; instead of 303, though they mean 303.
(defun webmail-url-confirmation-func (prompt)
(cond
(cond
((equal prompt (concat "Honor redirection with non-GET method "
"(possible security risks)? "))
nil)
@ -311,7 +311,7 @@
(defun webmail-refresh-redirect ()
"Redirect refresh url in META."
(goto-char (point-min))
(while (re-search-forward
(while (re-search-forward
"<meta[ \t\r\n]*http-equiv=\"Refresh\"[^>]*URL=\\([^\"]+\\)\""
nil t)
(let ((url (match-string 1)))
@ -341,19 +341,19 @@
item id (n 0))
(webmail-init)
(setq webmail-articles nil)
(when webmail-open-url
(when webmail-open-url
(erase-buffer)
(webmail-url webmail-open-url))
(if webmail-open-snarf (funcall webmail-open-snarf))
(when webmail-login-url
(when webmail-login-url
(erase-buffer)
(webmail-url webmail-login-url))
(if webmail-login-snarf
(if webmail-login-snarf
(funcall webmail-login-snarf))
(when webmail-list-url
(when webmail-list-url
(erase-buffer)
(webmail-url webmail-list-url))
(if webmail-list-snarf
(if webmail-list-snarf
(funcall webmail-list-snarf))
(while (setq item (pop webmail-articles))
(message "Fetching mail #%d..." (setq n (1+ n)))
@ -361,7 +361,7 @@
(mm-with-unibyte-current-buffer
(nnweb-insert (cdr item)))
(setq id (car item))
(if webmail-article-snarf
(if webmail-article-snarf
(funcall webmail-article-snarf file id))
(when (and webmail-trash-url webmail-move-to-trash-can)
(message "Move mail #%d to trash can..." n)
@ -371,7 +371,7 @@
(let (buf)
(while (setq buf (pop webmail-buffer-list))
(kill-buffer buf))))
(error
(error
(let (buf)
(while (setq buf (pop webmail-buffer-list))
(kill-buffer buf)))
@ -391,7 +391,7 @@
(defun webmail-hotmail-open ()
(goto-char (point-min))
(if (re-search-forward
(if (re-search-forward
"action=\"https?://\\([^/]+\\)/cgi-bin/dologin" nil t)
(setq webmail-aux (match-string 1))
(webmail-error "open@1")))
@ -399,12 +399,12 @@
(defun webmail-hotmail-login ()
(let (site)
(goto-char (point-min))
(if (re-search-forward
(if (re-search-forward
"https?://\\([^/]+hotmail\\.msn\\.com\\)/cgi-bin/" nil t)
(setq site (match-string 1))
(webmail-error "login@1"))
(goto-char (point-min))
(if (re-search-forward
(if (re-search-forward
"\\(/cgi-bin/HoTMaiL\\?[^\"]*a=b[^\"]*\\)" nil t)
(setq webmail-aux (concat "http://" site (match-string 1)))
(webmail-error "login@2"))))
@ -415,27 +415,27 @@
(let (site url newp (total "0"))
(if (eobp)
(setq total "0")
(if (re-search-forward "\\([0-9]+\\) *<b>(\\([0-9]+\\) new)" nil t)
(message "Found %s (%s new)" (setq total (match-string 1))
(if (re-search-forward "\\([0-9]+\\) *<b>(\\([0-9]+\\) new)" nil t)
(message "Found %s (%s new)" (setq total (match-string 1))
(match-string 2))
(if (re-search-forward "\\([0-9]+\\) new" nil t)
(if (re-search-forward "\\([0-9]+\\) new" nil t)
(message "Found %s new" (setq total (match-string 1)))
(webmail-error "list@0"))))
(unless (equal total "0")
(goto-char (point-min))
(if (re-search-forward
(if (re-search-forward
"https?://\\([^/]+hotmail\\.msn\\.com\\)/cgi-bin/" nil t)
(setq site (match-string 1))
(webmail-error "list@1"))
(goto-char (point-min))
(if (re-search-forward "disk=\\([^&]*\\)&" nil t)
(setq webmail-aux
(concat "http://" site "/cgi-bin/HoTMaiL?disk="
(setq webmail-aux
(concat "http://" site "/cgi-bin/HoTMaiL?disk="
(match-string 1)))
(webmail-error "list@2"))
(goto-char (point-max))
(while (re-search-backward
"newmail\\.gif\\|href=\"\\(/cgi-bin/getmsg\\?[^\"]+\\)\""
(while (re-search-backward
"newmail\\.gif\\|href=\"\\(/cgi-bin/getmsg\\?[^\"]+\\)\""
nil t)
(if (setq url (match-string 1))
(progn
@ -443,7 +443,7 @@
(let (id)
(if (string-match "msg=\\([^&]+\\)" url)
(setq id (match-string 1 url)))
(push (cons id (concat "http://" site url "&raw=0"))
(push (cons id (concat "http://" site url "&raw=0"))
webmail-articles)))
(setq newp nil))
(setq newp t))))))
@ -453,7 +453,7 @@
(defun webmail-hotmail-article (file id)
(goto-char (point-min))
(skip-chars-forward " \t\n\r")
(unless (eobp)
(unless (eobp)
(if (not (search-forward "<pre>" nil t))
(webmail-error "article@3"))
(skip-chars-forward "\n\r\t ")
@ -489,7 +489,7 @@
(narrow-to-region (point-min) (point))
(if (not (search-backward "<table" nil t 2))
(webmail-error "article@1.1"))
(delete-region (point-min) (match-beginning 0))
(delete-region (point-min) (match-beginning 0))
(while (search-forward "<a href=" nil t)
(setq p (match-beginning 0))
(search-forward "</a>" nil t)
@ -507,8 +507,8 @@
(widen)
(insert "\n")
(setq p (point))
(while (re-search-forward
"<tt>\\|<div>\\|\\(http://[^/]+/cgi-bin/getmsg/\\([^\?]+\\)\?[^\"]*\\)\""
(while (re-search-forward
"<tt>\\|<div>\\|\\(http://[^/]+/cgi-bin/getmsg/\\([^\?]+\\)\?[^\"]*\\)\""
nil t)
(if (setq attachment (match-string 1))
(let ((filename (match-string 2))
@ -520,7 +520,7 @@
(push (current-buffer) webmail-buffer-list)
(setq bufname (buffer-name)))
(setq mime t)
(insert "<#part type="
(insert "<#part type="
(or (and filename
(string-match "\\.[^\\.]+$" filename)
(mailcap-extension-to-mime
@ -537,7 +537,7 @@
(webmail-error "article@1.2")
(delete-region (match-beginning 0) (match-end 0)))
(setq count 1)
(while (and (> count 0)
(while (and (> count 0)
(re-search-forward "</div>\\|\\(<div>\\)" nil t))
(if (match-string 1)
(setq count (1+ count))
@ -546,7 +546,7 @@
(match-end 0))))))
(narrow-to-region p (point))
(goto-char (point-min))
(cond
(cond
((looking-at "<pre>")
(goto-char (match-end 0))
(if (looking-at "$") (forward-char))
@ -571,7 +571,7 @@
"@" (symbol-name webmail-type) "\n")
(if id
(insert (format "X-Message-ID: <%s@hotmail.com>\n" id)))
(unless (looking-at "$")
(unless (looking-at "$")
(if (search-forward "\n\n" nil t)
(forward-line -1)
(webmail-error "article@2")))
@ -610,21 +610,21 @@
(defun webmail-yahoo-list ()
(let (url (newp t) (tofetch 0))
(goto-char (point-min))
(when (re-search-forward
"showing [0-9]+-\\([0-9]+\\) of \\([0-9]+\\)" nil t)
(when (re-search-forward
"showing [0-9]+-\\([0-9]+\\) of \\([0-9]+\\)" nil t)
;;(setq listed (match-string 1))
(message "Found %s mail(s)" (match-string 2)))
(if (string-match "http://[^/]+" webmail-aux)
(setq webmail-aux (match-string 0 webmail-aux))
(webmail-error "list@1"))
(goto-char (point-min))
(while (re-search-forward
(while (re-search-forward
"bgcolor=\"#eeeeee\"\\|href=\"\\(/ym/ShowLetter\\?MsgId=\\([^&]+\\)&[^\"]*\\)\""
nil t)
(if (setq url (match-string 1))
(progn
(when (or newp (not webmail-newmail-only))
(push (cons (match-string 2) (concat webmail-aux url "&toc=1"))
(push (cons (match-string 2) (concat webmail-aux url "&toc=1"))
webmail-articles)
(setq tofetch (1+ tofetch)))
(setq newp t))
@ -640,7 +640,7 @@
(webmail-error "article@1"))
(if (not (search-forward "<table" nil t))
(webmail-error "article@2"))
(delete-region (point-min) (match-beginning 0))
(delete-region (point-min) (match-beginning 0))
(if (not (search-forward "</table>" nil t))
(webmail-error "article@3"))
(narrow-to-region (point-min) (match-end 0))
@ -702,7 +702,7 @@
"@" (symbol-name webmail-type) "\n")
(if id
(insert (format "X-Message-ID: <%s@yahoo.com>\n" id)))
(unless (looking-at "$")
(unless (looking-at "$")
(if (search-forward "\n\n" nil t)
(forward-line -1)
(webmail-error "article@2")))
@ -724,8 +724,8 @@
(defun webmail-netscape-open ()
(goto-char (point-min))
(setq webmail-aux "")
(while (re-search-forward
"TYPE=hidden *NAME=\\([^ ]+\\) *VALUE=\"\\([^\"]+\\)"
(while (re-search-forward
"TYPE=hidden *NAME=\\([^ ]+\\) *VALUE=\"\\([^\"]+\\)"
nil t)
(setq webmail-aux (concat webmail-aux "&" (match-string 1) "="
(match-string 2)))))
@ -747,16 +747,16 @@
(webmail-refresh-redirect)
(let (item id)
(goto-char (point-min))
(when (re-search-forward
"(\\([0-9]+\\) unread, \\([0-9]+\\) total)" nil t)
(message "Found %s mail(s), %s unread"
(when (re-search-forward
"(\\([0-9]+\\) unread, \\([0-9]+\\) total)" nil t)
(message "Found %s mail(s), %s unread"
(match-string 2) (match-string 1)))
(goto-char (point-min))
(while (re-search-forward
(while (re-search-forward
"MR\\[i\\]\\.R='\\([^']*\\)'\\|MR\\[i\\]\\.Q='\\([^']+\\)'" nil t)
(if (setq id (match-string 2))
(setq item
(cons id
(setq item
(cons id
(format "%s/tpl/Message/%s/Read?Q=%s&FolderID=-4&SortUseCase=True&Sort=Date&Headers=True"
(car webmail-article-url)
webmail-session id)))
@ -767,7 +767,7 @@
(defun webmail-netaddress-single-part ()
(goto-char (point-min))
(cond
(cond
((looking-at "[\t\040\r\n]*<font face=[^>]+>[\t\040\r\n]*")
;; text/plain
(replace-match "")
@ -796,7 +796,7 @@
(webmail-error "article@1"))
(if (not (search-forward "<form>" nil t))
(webmail-error "article@2"))
(delete-region (point-min) (match-beginning 0))
(delete-region (point-min) (match-beginning 0))
(if (not (search-forward "</form>" nil t))
(webmail-error "article@3"))
(narrow-to-region (point-min) (match-end 0))
@ -826,7 +826,7 @@
(forward-line 14)
(delete-region p (point))
(goto-char (point-max))
(unless (re-search-backward
(unless (re-search-backward
"[\040\t]*<br>[\040\t\r\n]*<br>[\040\t\r\n]*<form" p t)
(webmail-error "article@5"))
(delete-region (point) (point-max))
@ -859,9 +859,9 @@
(insert "><#/part>\n")
(setq p (point))))
(delete-region p p1)
(narrow-to-region
(narrow-to-region
p
(if (search-forward
(if (search-forward
"<TABLE border=\"0\" WIDTH=\"98%\" cellpadding=0 cellspacing=0>"
nil t)
(match-beginning 0)
@ -881,7 +881,7 @@
"@" (symbol-name webmail-type) "\n")
(if id
(insert (format "X-Message-ID: <%s@%s>\n" id webmail-address)))
(unless (looking-at "$")
(unless (looking-at "$")
(if (search-forward "\n\n" nil t)
(forward-line -1)
(webmail-error "article@2")))
@ -890,7 +890,7 @@
(goto-char (point-min))
(while (not (eobp))
(if (looking-at "MIME-Version\\|Content-Type")
(delete-region (point)
(delete-region (point)
(progn
(forward-line 1)
(if (re-search-forward "^[^ \t]" nil t)
@ -921,7 +921,7 @@
(webmail-error "article@1"))
(if (not (search-forward "<form>" nil t))
(webmail-error "article@2"))
(delete-region (point-min) (match-beginning 0))
(delete-region (point-min) (match-beginning 0))
(if (not (search-forward "</form>" nil t))
(webmail-error "article@3"))
(narrow-to-region (point-min) (match-end 0))
@ -954,7 +954,7 @@
(forward-line 14)
(delete-region p (point))
(goto-char (point-max))
(unless (re-search-backward
(unless (re-search-backward
"<form name=\"Transfer2\"" p t)
(webmail-error "article@5"))
(delete-region (point) (point-max))
@ -987,9 +987,9 @@
(insert "><#/part>\n")
(setq p (point))))
(delete-region p p1)
(narrow-to-region
(narrow-to-region
p
(if (search-forward
(if (search-forward
"<TABLE border=\"0\" WIDTH=\"98%\" cellpadding=0 cellspacing=0>"
nil t)
(match-beginning 0)
@ -1009,7 +1009,7 @@
"@" (symbol-name webmail-type) "\n")
(if id
(insert (format "X-Message-ID: <%s@%s>\n" id webmail-address)))
(unless (looking-at "$")
(unless (looking-at "$")
(if (search-forward "\n\n" nil t)
(forward-line -1)
(webmail-error "article@2")))
@ -1018,7 +1018,7 @@
(goto-char (point-min))
(while (not (eobp))
(if (looking-at "MIME-Version\\|Content-Type")
(delete-region (point)
(delete-region (point)
(progn
(forward-line 1)
(if (re-search-forward "^[^ \t]" nil t)
@ -1045,7 +1045,7 @@
(defun webmail-my-deja-open ()
(webmail-refresh-redirect)
(goto-char (point-min))
(if (re-search-forward "action=\"\\([^\"]+login_confirm\\.xp[^\"]*\\)\""
(if (re-search-forward "action=\"\\([^\"]+login_confirm\\.xp[^\"]*\\)\""
nil t)
(setq webmail-aux (match-string 1))
(webmail-error "open@1")))
@ -1053,26 +1053,26 @@
(defun webmail-my-deja-list ()
(let (item id newp base)
(goto-char (point-min))
(when (re-search-forward "href=\"\\(\\([^\"]*\\)/mailnf\\.[^\"]*\\)\""
(when (re-search-forward "href=\"\\(\\([^\"]*\\)/mailnf\\.[^\"]*\\)\""
nil t)
(let ((url (match-string 1)))
(setq base (match-string 2))
(erase-buffer)
(nnweb-insert url)))
(goto-char (point-min))
(when (re-search-forward
(when (re-search-forward
"(\\([0-9]+\\) Message.?-[^>]*\\([0-9]+\\) New"
nil t)
(message "Found %s mail(s), %s unread"
nil t)
(message "Found %s mail(s), %s unread"
(match-string 1) (match-string 2)))
(goto-char (point-min))
(while (re-search-forward
(while (re-search-forward
"newmail\\.gif\\|href=\"[^\"]*\\(mailnf\\.[^\"]+act=view[^\"]+mid=\\([^\"&]+\\)[^\"]+\\)\""
nil t)
(if (setq id (match-string 2))
(when (and (or newp (not webmail-newmail-only))
(not (assoc id webmail-articles)))
(push (cons id (setq webmail-aux
(push (cons id (setq webmail-aux
(concat base "/" (match-string 1))))
webmail-articles)
(setq newp nil))
@ -1081,7 +1081,7 @@
(defun webmail-my-deja-article-part (base)
(let (p)
(cond
(cond
((looking-at "[\t\040\r\n]*<!--[^>]*>")
(replace-match ""))
((looking-at "[\t\040\r\n]*</PRE>")
@ -1113,13 +1113,13 @@
(if (and (search-forward "File Type:" nil t)
(re-search-forward "<FONT[^>]+>\\([^<]+\\)" nil t))
(setq type (match-string 1)))
(unless (re-search-forward "action=\"getattach\\.cgi/\\([^\"]+\\)"
(unless (re-search-forward "action=\"getattach\\.cgi/\\([^\"]+\\)"
nil t)
(webmail-error "article@5"))
(setq url (concat base "/getattach.cgi/" (match-string 1)
"?sm=Download"))
(while (re-search-forward
"type=hidden name=\"\\([^\"]+\\)\" value=\"\\([^\"]+\\)"
(while (re-search-forward
"type=hidden name=\"\\([^\"]+\\)\" value=\"\\([^\"]+\\)"
nil t)
(setq url (concat url "&" (match-string 1) "="
(match-string 2))))
@ -1144,7 +1144,7 @@
(unless (string-match "\\([^\"]+\\)/mail" webmail-aux)
(webmail-error "article@0"))
(setq base (match-string 1 webmail-aux))
(when (re-search-forward
(when (re-search-forward
"href=\"[^\"]*\\(mailnf\\.[^\"]+act=move[^\"]+mid=\\([^\"&]+\\)[^\"]+\\)\""
nil t)
(setq webmail-aux (concat base "/" (match-string 1)))
@ -1175,7 +1175,7 @@
(webmail-error "article@4"))
(delete-region (point) (point-max))
(goto-char (point-min))
(while (not (eobp))
(while (not (eobp))
(webmail-my-deja-article-part base))
(insert "MIME-Version: 1.0\n"
(prog1