[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/gnus/nnrss.el
From: |
Miles Bader |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/gnus/nnrss.el |
Date: |
Thu, 05 May 2005 20:27:53 -0400 |
Index: emacs/lisp/gnus/nnrss.el
diff -c emacs/lisp/gnus/nnrss.el:1.5 emacs/lisp/gnus/nnrss.el:1.6
*** emacs/lisp/gnus/nnrss.el:1.5 Wed Apr 13 04:58:05 2005
--- emacs/lisp/gnus/nnrss.el Fri May 6 00:27:50 2005
***************
*** 195,200 ****
--- 195,201 ----
(delete "" (split-string (nth 6 e) "\n+"))
" ")))
(link (nth 2 e))
+ (enclosure (nth 7 e))
;; Enable encoding of Newsgroups header in XEmacs.
(default-enable-multibyte-characters t)
(rfc2047-header-encoding-alist
***************
*** 203,220 ****
rfc2047-header-encoding-alist)
rfc2047-header-encoding-alist))
rfc2047-encode-encoded-words body)
! (when (or text link)
(insert "\n")
(insert "<#multipart type=alternative>\n"
"<#part type=\"text/plain\">\n")
(setq body (point))
! (if text
! (progn
! (insert text "\n")
! (when link
! (insert "\n" link "\n")))
! (when link
! (insert link "\n")))
(setq body (buffer-substring body (point)))
(insert "<#/part>\n"
"<#part type=\"text/html\">\n"
--- 204,224 ----
rfc2047-header-encoding-alist)
rfc2047-header-encoding-alist))
rfc2047-encode-encoded-words body)
! (when (or text link enclosure)
(insert "\n")
(insert "<#multipart type=alternative>\n"
"<#part type=\"text/plain\">\n")
(setq body (point))
! (when text
! (insert text "\n")
! (when (or link enclosure)
! (insert "\n")))
! (when link
! (insert link "\n"))
! (when enclosure
! (insert (car enclosure) " "
! (nth 2 enclosure) " "
! (nth 3 enclosure) "\n"))
(setq body (buffer-substring body (point)))
(insert "<#/part>\n"
"<#part type=\"text/html\">\n"
***************
*** 223,228 ****
--- 227,236 ----
(insert text "\n"))
(when link
(insert "<p><a href=\"" link "\">link</a></p>\n"))
+ (when enclosure
+ (insert "<p><a href=\"" (car enclosure) "\">"
+ (cadr enclosure) "</a> " (nth 2 enclosure)
+ " " (nth 3 enclosure) "</p>\n"))
(insert "</body></html>\n"
"<#/part>\n"
"<#/multipart>\n"))
***************
*** 518,525 ****
;;; Snarf functions
(defun nnrss-check-group (group server)
! (let (file xml subject url extra changed author
! date rss-ns rdf-ns content-ns dc-ns)
(if (and nnrss-use-local
(file-exists-p (setq file (expand-file-name
(nnrss-translate-file-chars
--- 526,533 ----
;;; Snarf functions
(defun nnrss-check-group (group server)
! (let (file xml subject url extra changed author date
! enclosure rss-ns rdf-ns content-ns dc-ns)
(if (and nnrss-use-local
(file-exists-p (setq file (expand-file-name
(nnrss-translate-file-chars
***************
*** 567,572 ****
--- 575,601 ----
(setq date (or (nnrss-node-text dc-ns 'date item)
(nnrss-node-text rss-ns 'pubDate item)
(message-make-date)))
+ (when (setq enclosure (cadr (assq (intern (concat rss-ns "enclosure"))
item)))
+ (let ((url (cdr (assq 'url enclosure)))
+ (len (cdr (assq 'length enclosure)))
+ (type (cdr (assq 'type enclosure)))
+ (name))
+ (setq len
+ (if (and len (integerp (setq len (string-to-number len))))
+ ;; actually already in `ls-lisp-format-file-size' but
+ ;; probably not worth to require it for one function
+ (do ((size (/ len 1.0) (/ size 1024.0))
+ (post-fixes (list "" "k" "M" "G" "T" "P" "E")
+ (cdr post-fixes)))
+ ((< size 1024)
+ (format "%.1f%s" size (car post-fixes))))
+ "0"))
+ (setq url (or url ""))
+ (setq name (if (string-match "/\\([^/]*\\)$" url)
+ (match-string 1 url)
+ "file"))
+ (setq type (or type ""))
+ (setq enclosure (list url name len type))))
(push
(list
(incf nnrss-group-max)
***************
*** 575,581 ****
(and subject (nnrss-mime-encode-string subject))
(and author (nnrss-mime-encode-string author))
date
! (and extra (nnrss-decode-entities-string extra)))
nnrss-group-data)
(gnus-sethash (or url extra) t nnrss-group-hashtb)
(setq changed t))
--- 604,611 ----
(and subject (nnrss-mime-encode-string subject))
(and author (nnrss-mime-encode-string author))
date
! (and extra (nnrss-decode-entities-string extra))
! enclosure)
nnrss-group-data)
(gnus-sethash (or url extra) t nnrss-group-hashtb)
(setq changed t))
- [Emacs-diffs] Changes to emacs/lisp/gnus/nnrss.el,
Miles Bader <=