+2002-10-04 Simon Josefsson <jas@extundo.com>
+
+ * pgg.el (pgg-encrypt-region): Support sign.
+
+ * pgg-gpg.el (pgg-gpg-encrypt-region): Ditto.
+
+ * mml2015.el (mml2015-pgg-encrypt): Ditto.
+
+ * pgg.el, pgg-def.el, pgg-parse.el, pgg-gpg.el, pgg-pgp5.el,
+ pgg-pgp6.el: Moved from ../pgg/. Modifications compared to EMIKO
+ branch where PGG was taken from in the ChangeLog entries below.
+
+2002-10-01 Simon Josefsson <jas@extundo.com>
+
+ * pgg-pgp.el: Don't require mel. Don't use luna.
+ (pgg-scheme-pgp-instance, pgg-make-scheme-pgp): Remove.
+ (pgg-pgp-process-region): Use expand-file-name instead of concat.
+ (pgg-pgp-process-region): Don't use binary-funcall.
+
+ * pgg-pgp5.el (pgg-pgp5-process-region): Don't use binary-funcall.
+
+ * pgg-gpg.el (pgg-gpg-process-region): Use expand-file-name
+ instead of concat.
+
+ * pgg-pgp5.el (pgg-pgp5-process-region): Ditto.
+
+2002-09-29 Simon Josefsson <jas@extundo.com>
+
+ * pgg-parse.el (pgg-char-int, pgg-string-as-unibyte): Prevent byte
+ compile warnings.
+
+ * pgg.el (pgg-decrypt-region): Don't parse packet.
+
+ * pgg.el, pgg-gpg.el, pgg-pgp5.el: Don't depend on luna.el.
+
+2002-09-29 Daiki Ueno <ueno@unixuser.org>
+
+ * pgg.el: Remove dependency on calist.el.
+
+2002-09-28 Simon Josefsson <jas@extundo.com>
+
+ * pgg.el (pgg-temporary-file-directory): New variable.
+ (pgg-verify-region): Don't assume set-buffer-multibyte exists.
+
+ * pgg-pgp5.el (pgg-pgp5-process-region, pgg-scheme-verify-region)
+ (pgg-scheme-snarf-keys-region): Use pgg-temporary-file-directory.
+
+ * pgg-parse.el (pgg-char-int): Defalias.
+ (pgg-format-key-identifier, pgg-byte-after, pgg-read-byte)
+ (pgg-read-bytes, pgg-read-body): Use it.
+ (pgg-decode-packets): Don't use MEL, use base64-*.
+ (pgg-parse-armor): Don't assume set-buffer-multibyte exists.
+ (pgg-string-as-unibyte): Defalias.
+ (pgg-parse-armor-region): Use it.
+
+ * pgg-gpg.el (pgg-gpg-process-region): Use
+ pgg-temporary-file-directory.
+
+ * luna.el: Don't def-edebug.
+
+ * pgg-pgp5.el (pgg-scheme-verify-region): Inline
+ binary-write-decoded-region from MEL.
+
+ * pgg-pgp5.el, pgg-gpg.el: Don't require mel.
+
+ * alist.el, calist.el: Don't require product/APEL.
+
+ * pgg-parse.el (top-level): Remove dependency on static.el,
+ pccl.el, mel.el.
+ (pgg-parse-crc24, pgg-parse-crc24-string): Only define if
+ `define-ccl-program' is boundp, instead of using broken.
+
+2002-10-01 Simon Josefsson <jas@extundo.com>
+
+ * message.el (message-required-mail-headers): Remove Lines:.
+
+2002-10-03 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
+ From Jesper Harder.
+
+ * gnus-group.el (gnus-group-fetch-charter,
+ gnus-group-fetch-control): Prompt for group if given a prefix
+ argument.
+ * gnus-sum.el (t): Add gnus-group-fetch-charter and
+ gnus-group-fetch-control to summary key map and menu.
+
+
+2002-10-03 Paul Jarc <prj@po.cwru.edu>
+
+ * nnmaildir.el (nnmaildir--group-maxnum-art): fix maximum article
+ number when there are no articles.
+
+2002-10-03 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
+
+ * gnus-agent.el (gnus-agent-summary-fetch-group): Optional prefix
+ arg ALL means to fetch all articles, not only downloadable ones.
+ (gnus-agent-fetch-selected-article): New function for
+ gnus-select-article-hook or gnus-mark-article-hook.
+
2002-10-02 Katsumi Yamaoka <yamaoka@jpl.org>
From Peter von der Ahe <nospam2159@daimi.au.dk>.
2002-09-30 Ted Zlatanov <tzz@lifelogs.com>
- * spam.el: merged changes from pinard@iro.umontreal.ca (François Pinard).
- Major revamp of the code, documentation is in comments in the file for now.
+ * spam.el: merged changes from pinard@iro.umontreal.ca (Fran\e,Ag\e(Bois
+ Pinard).
+ Major revamp of the code, documentation is in comments in the file
+ for now.
2002-09-30 Simon Josefsson <jas@extundo.com>
* gnus.el (gnus-find-subscribed-addresses): Return nil when there
are no subscribed mail groups.
- - Strip quoted names when comparing addresses
+ - Strip quoted names when comparing addresses
2002-04-28 Jesper Harder <harder@ifa.au.dk>
(pop gnus-newsgroup-undownloaded) gnus-catchup-mark)))
(gnus-summary-position-point))
-(defun gnus-agent-summary-fetch-group ()
- "Fetch the downloadable articles in the group."
- (interactive)
- (let ((articles gnus-newsgroup-downloadable)
+(defun gnus-agent-summary-fetch-group (&optional all)
+ "Fetch the downloadable articles in the group.
+Optional arg ALL, if non-nil, means to fetch all articles."
+ (interactive "P")
+ (let ((articles
+ (if all gnus-newsgroup-articles
+ gnus-newsgroup-downloadable))
(gnus-command-method (gnus-find-method-for-group gnus-newsgroup-name))
(state gnus-plugged))
(unwind-protect
gnus-plugged)
(gnus-agent-toggle-plugged nil)))))
+(defun gnus-agent-fetch-selected-article ()
+ "Fetch the current article as it is selected.
+This can be added to `gnus-select-article-hook' or
+`gnus-mark-article-hook'."
+ (let ((gnus-command-method gnus-current-select-method))
+ (gnus-agent-fetch-articles
+ gnus-newsgroup-name
+ (list gnus-current-article))))
+
;;;
;;; Internal functions
;;;
(setq found t))))))
(defun gnus-group-fetch-charter (group)
- "Fetch the charter for the current group."
+ "Fetch the charter for the current group.
+If given a prefix argument, prompt for a group."
(interactive
- (list (or (gnus-group-group-name)
- gnus-newsgroup-name)))
+ (list (or (when current-prefix-arg
+ (completing-read "Group: " gnus-active-hashtb))
+ (gnus-group-group-name)
+ gnus-newsgroup-name)))
(unless group
(error "No group name given"))
(let ((name (mm-url-form-encode-xwfu (gnus-group-real-name group)))
(gnus-group-fetch-control group)))))
(defun gnus-group-fetch-control (group)
- "Fetch the archived control messages for the current group."
+ "Fetch the archived control messages for the current group.
+If given a prefix argument, prompt for a group."
(interactive
- (list (or (gnus-group-group-name)
- gnus-newsgroup-name)))
+ (list (or (when current-prefix-arg
+ (completing-read "Group: " gnus-active-hashtb))
+ (gnus-group-group-name)
+ gnus-newsgroup-name)))
(unless group
(error "No group name given"))
(let ((name (gnus-group-real-name group))
"f" gnus-summary-fetch-faq
"d" gnus-summary-describe-group
"h" gnus-summary-describe-briefly
- "i" gnus-info-find-node)
+ "i" gnus-info-find-node
+ "c" gnus-group-fetch-charter
+ "C" gnus-group-fetch-control)
(gnus-define-keys (gnus-summary-backend-map "B" gnus-summary-mode-map)
"e" gnus-summary-expire-articles
("Help"
["Fetch group FAQ" gnus-summary-fetch-faq t]
["Describe group" gnus-summary-describe-group t]
+ ["Fetch charter" gnus-group-fetch-charter
+ ,@(if (featurep 'xemacs) nil
+ '(:help "Display the charter of the current group"))]
+ ["Fetch control message" gnus-group-fetch-control
+ ,@(if (featurep 'xemacs) nil
+ '(:help "Display the archived control message for the current group"))]
["Read manual" gnus-info-find-node t])
("Modes"
["Pick and read" gnus-pick-mode t]
:type '(repeat sexp))
(defcustom message-required-mail-headers
- '(From Subject Date (optional . In-Reply-To) Message-ID Lines
+ '(From Subject Date (optional . In-Reply-To) Message-ID
(optional . User-Agent))
"*Headers to be generated or prompted for when mailing a message.
It is recommended that From, Date, To, Subject and Message-ID be
-included. Organization, Lines and User-Agent are optional."
+included. Organization and User-Agent are optional."
:group 'message-mail
:group 'message-headers
:type '(repeat sexp))
(message-options-get 'message-recipients)
(message-options-set 'message-recipients
(read-string "Recipients: ")))
- "[ \f\t\n\r\v,]+"))
+ "[ \f\t\n\r\v,]+")
+ sign)
(pop-to-buffer mml2015-result-buffer)
(error "Encrypt error"))
(delete-region (point-min) (point-max))
(delete-directory dir))
(defun nnmaildir--group-maxnum (server group)
- (let ((x (nnmaildir--srvgrp-dir (nnmaildir--srv-dir server)
- (nnmaildir--grp-name group))))
- (setq x (nnmaildir--nndir x)
- x (nnmaildir--num-dir x)
- x (nnmaildir--num-file x)
- x (file-attributes x))
- (if x (1- (nth 1 x)) 0)))
+ (if (zerop (nnmaildir--grp-count group)) 0
+ (let ((x (nnmaildir--srvgrp-dir (nnmaildir--srv-dir server)
+ (nnmaildir--grp-name group))))
+ (setq x (nnmaildir--nndir x)
+ x (nnmaildir--num-dir x)
+ x (nnmaildir--num-file x)
+ x (file-attributes x))
+ (if x (1- (nth 1 x)) 0))))
;; Make the given server, if non-nil, be the current server. Then make the
;; given group, if non-nil, be the current group of the current server. Then
+2002-10-04 Simon Josefsson <jas@extundo.com>
+
+ * pgg.texi: Document sign parameter.
+
+ * gnus.texi: Add \gnuskey tex command.
+
+ * texi2latex.el (latexi-translate-file): Do PGG. (Poor) support
+ of @set, @deffn, @defvar, @defun, @key. Improve error.
+
+ * Makefile.in: Add PGG.
+
+ * pgg.texi: New file.
+
+2002-10-03 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
+
+ * gnus.texi (Group Information): Mention prefix argument for
+ gnus-group-fetch-charter and gnus-group-fetch-control.
+ From Jesper Harder.
+
2002-09-26 Simon Josefsson <jas@extundo.com>
* gnus.texi (Agent Variables): Add.
\newcommand{\gnussamp}[1]{``{\fontencoding{OT1}\gnusselectttfont{}#1}''}
\newcommand{\gnuslisp}[1]{\gnustt{#1}}
\newcommand{\gnuskbd}[1]{`\gnustt{#1}'}
+\newcommand{\gnuskey}[1]{`\gnustt{#1}'}
\newcommand{\gnusfile}[1]{`\gnustt{#1}'}
\newcommand{\gnusdfn}[1]{\textit{#1}}
\newcommand{\gnusi}[1]{\textit{#1}}
@vindex gnus-group-charter-alist
@cindex charter
\e$B8=:_$N%0%k!<%W$N7{>O$r\e(B web \e$B%V%i%&%6$G3+$3$&$H$7$^\e(B
-\e$B$9\e(B (@code{gnus-group-fetch-charter})\e$B!#\e(B
+\e$B$9\e(B (@code{gnus-group-fetch-charter})\e$B!#@\F,0z?t$,M?$($i$l$k$H%0%k!<%WL>$r\e(B
+\e$B?R$M$^$9!#\e(B
+
gnus \e$B$O\e(B @code{gnus-group-charter-alist} \e$B$r;H$C$F7{>O$N=j:_$rC5$7$^$9!#=j\e(B
\e$B:_$,$o$+$i$J$+$C$?$i!"\e(Bgnus \e$B$O$=$N%0%k!<%W$N%3%s%H%m!<%k%a%C%;!<%8$r<hF@\e(B
\e$B$7$^$9!#$=$l$K$O7{>O$r4^$s$G$$$k$3$H$,$"$j$^$9$+$i!#\e(B
@vindex gnus-group-fetch-control-use-browse-url
@cindex control message
\e$B$=$N%0%k!<%W$N%3%s%H%m!<%k%a%C%;!<%8$r\e(B @code{ftp.isc.org} \e$B$N5-O?8K$+$i<h\e(B
-\e$BF@$7$^$9\e(B (@code{gnus-group-fetch-control})\e$B!#\e(B
+\e$BF@$7$^$9\e(B (@code{gnus-group-fetch-control})\e$B!#@\F,0z?t$,M?$($i$l$k$H%0%k!<\e(B
+\e$B%WL>$r?R$M$^$9!#\e(B
@code{gnus-group-fetch-control-use-browse-url} \e$B$,Hs\e(B-@code{nil} \e$B$@$C$?$i!"\e(B
gnus \e$B$O\e(B @code{browse-url} \e$B$r;H$C$F%3%s%H%m!<%k%a%C%;!<%8$r3+$-$^$9!#$=$&\e(B
\newcommand{\gnussamp}[1]{``{\fontencoding{OT1}\gnusselectttfont{}#1}''}
\newcommand{\gnuslisp}[1]{\gnustt{#1}}
\newcommand{\gnuskbd}[1]{`\gnustt{#1}'}
+\newcommand{\gnuskey}[1]{`\gnustt{#1}'}
\newcommand{\gnusfile}[1]{`\gnustt{#1}'}
\newcommand{\gnusdfn}[1]{\textit{#1}}
\newcommand{\gnusi}[1]{\textit{#1}}
@vindex gnus-group-charter-alist
@cindex charter
Try to open the charter for the current group in a web browser
-(@code{gnus-group-fetch-charter}). Gnus will use
-@code{gnus-group-charter-alist} to find the location of the charter.
-If no location is known, Gnus will fetch the control messages for the
-group, which in some cases includes the charter.
+(@code{gnus-group-fetch-charter}). Query for a group if given a
+prefix argument.
+
+Gnus will use @code{gnus-group-charter-alist} to find the location of
+the charter. If no location is known, Gnus will fetch the control
+messages for the group, which in some cases includes the charter.
@item H C
@kindex H C (Group)
@vindex gnus-group-fetch-control-use-browse-url
@cindex control message
Fetch the control messages for the group from the archive at
-@code{ftp.isc.org} (@code{gnus-group-fetch-control}).
+@code{ftp.isc.org} (@code{gnus-group-fetch-control}). Query for a
+group if given a prefix argument.
If @code{gnus-group-fetch-control-use-browse-url} is non-nil, Gnus
will open the control messages in a browser using @code{browse-url}.
@include emacs-mime.texi
@chapter Sieve
@include sieve.texi
+@c @chapter PGG
+@c @include pgg.texi
@end iflatex
@end iftex
(progn (end-of-line) (point))))
(if (equal arg "@head")
(insert "\\gnusinteresting")))
- ((member command '("setfilename"
+ ((member command '("setfilename" "set"
"synindex" "setchapternewpage"
"summarycontents" "bye"
"top" "iftex" "cartouche"
(insert "\\\\"))
((equal command "sp")
(replace-match "" t t))
+ ((member command '("deffn" "defvar" "defun"))
+ (replace-match "" t t))
((equal command "node")
(latexi-strip-line)
(unless (string-match "Index" arg)
(insert (format "\\end{%s}\n" arg)))
((member arg '("iflatex" "iftex" "cartouche"))
(latexi-strip-line))
+ ((member arg '("deffn" "defvar" "defun"))
+ (latexi-strip-line))
(t
(error "Unknown end arg: %s" arg))))
((member command '("table"))
;; "\\begin{theindex}\\input{gnus.%s}\\end{theindex}\n" arg))
)
(t
- (error "Unknown command (line %d): %s"
+ (error "Unknown command (file %s line %d): %s"
+ file
(save-excursion
(widen)
(1+ (count-lines (point-min) (progn
(latexi-strip-line))
((member command '("ref" "xref" "pxref"))
(latexi-exchange-command (concat "gnus" command) arg))
- ((member command '("sc" "file" "dfn" "emph" "kbd" "uref"
+ ((member command '("sc" "file" "dfn" "emph" "kbd" "key" "uref"
"code" "samp" "var" "strong" "i"
"result"))
(goto-char (match-beginning 0))
(delete-char 2)
(insert "duppat{}"))
(t
- (error "Unknown command (line %d): %s"
+ (error "Unknown command (file %s line %d): %s"
+ file
(save-excursion
(widen)
(1+ (count-lines (point-min) (progn