*** pub/sgnus/lisp/gnus-cite.el Sat Jun 8 00:15:06 1996 --- sgnus/lisp/gnus-cite.el Mon Jun 10 02:46:08 1996 *************** *** 300,306 **** See the documentation for `gnus-article-highlight-citation'. If given a negative prefix, always show; if given a positive prefix, always hide." ! (interactive (list current-prefix-arg 'force)) (setq gnus-cited-text-button-line-format-spec (gnus-parse-format gnus-cited-text-button-line-format gnus-cited-text-button-line-format-alist t)) --- 300,306 ---- See the documentation for `gnus-article-highlight-citation'. If given a negative prefix, always show; if given a positive prefix, always hide." ! (interactive (append (gnus-hidden-arg) 'force)) (setq gnus-cited-text-button-line-format-spec (gnus-parse-format gnus-cited-text-button-line-format gnus-cited-text-button-line-format-alist t)) *************** *** 361,367 **** cited text with attributions. When called interactively, these two variables are ignored. See also the documentation for `gnus-article-highlight-citation'." ! (interactive (list current-prefix-arg 'force)) (unless (gnus-article-check-hidden-text 'cite arg) (save-excursion (set-buffer gnus-article-buffer) --- 361,367 ---- cited text with attributions. When called interactively, these two variables are ignored. See also the documentation for `gnus-article-highlight-citation'." ! (interactive (append (gnus-hidden-arg) 'force)) (unless (gnus-article-check-hidden-text 'cite arg) (save-excursion (set-buffer gnus-article-buffer) *** pub/sgnus/lisp/gnus-cus.el Sat Jun 8 00:15:06 1996 --- sgnus/lisp/gnus-cus.el Mon Jun 10 03:25:58 1996 *************** *** 597,609 **** ((= unread 0) . italic))) ((eq gnus-background-mode 'dark) `(((and (not mailp) (eq level 1)) . ! ,(custom-face-lookup "LemonChiffon1" nil nil t)) ((and (not mailp) (eq level 2)) . ! ,(custom-face-lookup "LemonChiffon2" nil nil t)) ((and (not mailp) (eq level 3)) . ! ,(custom-face-lookup "LemonChiffon3" nil nil t)) ((and (not mailp) (>= level 4)) . ! ,(custom-face-lookup "LemonChiffon4" nil nil t)) ((and mailp (eq level 1)) . ,(custom-face-lookup "aquamarine1" nil nil t)) ((and mailp (eq level 2)) . --- 597,609 ---- ((= unread 0) . italic))) ((eq gnus-background-mode 'dark) `(((and (not mailp) (eq level 1)) . ! ,(custom-face-lookup "PaleTurquoise" nil nil t)) ((and (not mailp) (eq level 2)) . ! ,(custom-face-lookup "turquoise" nil nil t)) ((and (not mailp) (eq level 3)) . ! ,(custom-face-lookup "MediumTurquoise" nil nil t)) ((and (not mailp) (>= level 4)) . ! ,(custom-face-lookup "DarkTurquoise" nil nil t)) ((and mailp (eq level 1)) . ,(custom-face-lookup "aquamarine1" nil nil t)) ((and mailp (eq level 2)) . *** pub/sgnus/lisp/gnus-picon.el Sat Jun 8 00:15:07 1996 --- sgnus/lisp/gnus-picon.el Sun Jun 9 23:52:55 1996 *************** *** 212,218 **** (replace-in-string from ".*@\\([_a-zA-Z0-9-.]+\\).*" "\\1") "\\." "/")) "/"))) ! (switch-to-buffer (gnus-get-buffer-name gnus-picons-display-where)) (gnus-add-current-to-buffer-list) (beginning-of-buffer) (setq iconpoint (point)) --- 212,218 ---- (replace-in-string from ".*@\\([_a-zA-Z0-9-.]+\\).*" "\\1") "\\." "/")) "/"))) ! (set-to-buffer (gnus-get-buffer-name gnus-picons-display-where)) (gnus-add-current-to-buffer-list) (beginning-of-buffer) (setq iconpoint (point)) *************** *** 264,270 **** (save-excursion (let ((iconpoint (point))) ! (switch-to-buffer (gnus-get-buffer-name gnus-picons-display-where)) (gnus-add-current-to-buffer-list) (beginning-of-buffer) (cond --- 264,270 ---- (save-excursion (let ((iconpoint (point))) ! (set-to-buffer (gnus-get-buffer-name gnus-picons-display-where)) (gnus-add-current-to-buffer-list) (beginning-of-buffer) (cond *** pub/sgnus/lisp/gnus-score.el Sat Jun 8 00:15:08 1996 --- sgnus/lisp/gnus-score.el Mon Jun 10 02:29:24 1996 *************** *** 865,871 **** (adapt (gnus-score-get 'adapt alist)) (thread-mark-and-expunge (car (gnus-score-get 'thread-mark-and-expunge alist))) ! (adapt-file (car (gnus-score-get 'adapt-file))) (local (gnus-score-get 'local alist)) (eval (car (gnus-score-get 'eval alist)))) ;; We do not respect eval and files atoms from global score --- 865,871 ---- (adapt (gnus-score-get 'adapt alist)) (thread-mark-and-expunge (car (gnus-score-get 'thread-mark-and-expunge alist))) ! (adapt-file (car (gnus-score-get 'adapt-file alist))) (local (gnus-score-get 'local alist)) (eval (car (gnus-score-get 'eval alist)))) ;; We do not respect eval and files atoms from global score *************** *** 1057,1063 **** (setq score (setcdr entry (delq (assq 'touched score) score))) (erase-buffer) (let (emacs-lisp-mode-hook) ! (if (string-match (concat gnus-adaptive-file-suffix "$") file) ;; This is an adaptive score file, so we do not run ;; it through `pp'. These files can get huge, and ;; are not meant to be edited by human hands. --- 1057,1065 ---- (setq score (setcdr entry (delq (assq 'touched score) score))) (erase-buffer) (let (emacs-lisp-mode-hook) ! (if (string-match ! (concat (regexp-quote gnus-adaptive-file-suffix) ! "$") file) ;; This is an adaptive score file, so we do not run ;; it through `pp'. These files can get huge, and ;; are not meant to be edited by human hands. *************** *** 1859,1875 **** trace) (setq gnus-score-trace nil) (gnus-possibly-score-headers 'trace) ! (or (setq trace gnus-score-trace) ! (error "No score rules apply to the current article.")) ! (pop-to-buffer "*Gnus Scores*") ! (gnus-add-current-to-buffer-list) ! (erase-buffer) ! (while trace ! (insert (format "%S -> %s\n" (cdar trace) ! (file-name-nondirectory (caar trace)))) ! (setq trace (cdr trace))) ! (goto-char (point-min)) ! (pop-to-buffer buf))) (defun gnus-summary-rescore () "Redo the entire scoring process in the current summary." --- 1861,1877 ---- trace) (setq gnus-score-trace nil) (gnus-possibly-score-headers 'trace) ! (if (not (setq trace gnus-score-trace)) ! (gnus-error 1 "No score rules apply to the current article.") ! (pop-to-buffer "*Gnus Scores*") ! (gnus-add-current-to-buffer-list) ! (erase-buffer) ! (while trace ! (insert (format "%S -> %s\n" (cdar trace) ! (file-name-nondirectory (caar trace)))) ! (setq trace (cdr trace))) ! (goto-char (point-min)) ! (pop-to-buffer buf)))) (defun gnus-summary-rescore () "Redo the entire scoring process in the current summary." *************** *** 2005,2011 **** (while (setq file (pop files)) (cond ;; Ignore "." and "..". ! ((string-match "/\\.\\.?\\'" file) nil) ;; Recurse down directories. ((file-directory-p file) --- 2007,2013 ---- (while (setq file (pop files)) (cond ;; Ignore "." and "..". ! ((member (file-name-nondirectory file) '("." "..")) nil) ;; Recurse down directories. ((file-directory-p file) *************** *** 2019,2026 **** (defun gnus-score-file-regexp () "Return a regexp that match all score files." ! (concat "\\(" gnus-score-file-suffix ! "\\|" gnus-adaptive-file-suffix "\\)\\'")) (defun gnus-score-find-bnews (group) "Return a list of score files for GROUP. --- 2021,2028 ---- (defun gnus-score-file-regexp () "Return a regexp that match all score files." ! (concat "\\(" (regexp-quote gnus-score-file-suffix ) ! "\\|" (regexp-quote gnus-adaptive-file-suffix) "\\)\\'")) (defun gnus-score-find-bnews (group) "Return a list of score files for GROUP. *************** *** 2067,2073 **** --- 2069,2080 ---- (search-forward "+") (forward-char -1) (insert "\\"))) + ;; Kludge to deal with "++". + (goto-char (point-min)) + (while (search-forward "++" nil t) + (replace-match "\\+\\+" t t)) ;; Translate "all" to ".*". + (goto-char (point-min)) (while (search-forward "all" nil t) (replace-match ".*" t t)) (goto-char (point-min)) *** pub/sgnus/lisp/gnus-uu.el Sat Jun 8 00:15:10 1996 --- sgnus/lisp/gnus-uu.el Sun Jun 9 23:52:57 1996 *************** *** 679,685 **** (let ((files (directory-files dir t)) out file) (while (setq file (pop files)) ! (unless (string-match "/\\.\\.?$" file) (push (list (cons 'name file) (cons 'article gnus-current-article)) out) --- 679,685 ---- (let ((files (directory-files dir t)) out file) (while (setq file (pop files)) ! (unless (member (file-name-nondirectory file) '("." "..")) (push (list (cons 'name file) (cons 'article gnus-current-article)) out) *************** *** 1520,1526 **** (while files (setq file (car files)) (setq files (cdr files)) ! (or (string-match "/\\.\\.?$" file) (setq out (cons file out)))) (setq out (nreverse out)) out)) --- 1520,1526 ---- (while files (setq file (car files)) (setq files (cdr files)) ! (or (member (file-name-nondirectory file) '("." "..")) (setq out (cons file out)))) (setq out (nreverse out)) out)) *************** *** 1622,1628 **** (let ((files (directory-files dir t nil t)) file) (while (setq file (pop files)) ! (unless (string-match "/\\.\\.?$" file) (if (file-directory-p file) (gnus-uu-delete-work-dir file) (gnus-message 9 "Deleting file %s..." file) --- 1622,1628 ---- (let ((files (directory-files dir t nil t)) file) (while (setq file (pop files)) ! (unless (member (file-name-nondirectory file) '("." "..")) (if (file-directory-p file) (gnus-uu-delete-work-dir file) (gnus-message 9 "Deleting file %s..." file) *** pub/sgnus/lisp/gnus-xmas.el Sat Jun 8 00:15:11 1996 --- sgnus/lisp/gnus-xmas.el Mon Jun 10 03:14:31 1996 *************** *** 36,60 **** automatically.") (defvar gnus-xmas-logo-color-alist ! '((flame "##cc3300" "##ff2200") ! (pine "##c0cc93" "##f8ffb8") ! (moss "##a1cc93" "##d2ffb8") ! (irish "##04cc90" "##05ff97") ! (sky "##049acc" "##05deff") ! (tin "##6886cc" "##82b6ff") ! (velvet "##7c68cc" "##8c82ff") ! (grape "##b264cc" "##cf7df") ! (labia "##cc64c2" "##fd7dff") ! (berry "##cc6485" "##ff7db5") ! (neutral "##b4b4b4" "##878787") (september "#bf9900" "#ffcc00")) "Color alist used for the Gnus logo.") (defvar gnus-xmas-logo-color-style 'september "Color styles used for the Gnus logo.") ! (defvar gnus-xmas-logo-colors (cdr (assq gnus-xmas-logo-color-style ! gnus-xmas-logo-color-alist)) "Colors used for the Gnus logo.") ;;; Internal variables. --- 36,60 ---- automatically.") (defvar gnus-xmas-logo-color-alist ! '((flame "#cc3300" "#ff2200") ! (pine "#c0cc93" "#f8ffb8") ! (moss "#a1cc93" "#d2ffb8") ! (irish "#04cc90" "#05ff97") ! (sky "#049acc" "#05deff") ! (tin "#6886cc" "#82b6ff") ! (velvet "#7c68cc" "#8c82ff") ! (grape "#b264cc" "#cf7df") ! (labia "#cc64c2" "#fd7dff") ! (berry "#cc6485" "#ff7db5") ! (neutral "#b4b4b4" "#878787") (september "#bf9900" "#ffcc00")) "Color alist used for the Gnus logo.") (defvar gnus-xmas-logo-color-style 'september "Color styles used for the Gnus logo.") ! (defvar gnus-xmas-logo-colors ! (cdr (assq gnus-xmas-logo-color-style gnus-xmas-logo-color-alist)) "Colors used for the Gnus logo.") ;;; Internal variables. *************** *** 137,142 **** --- 137,143 ---- ;; Suggested by earle@mahendo.JPL.NASA.GOV (Greg Earle). ;; Recenter only when requested. Suggested by popovich@park.cs.columbia.edu. (when gnus-auto-center-summary + (sit-for 0) (let* ((height (if (fboundp 'window-displayed-height) (window-displayed-height) (- (window-height) 2))) *** pub/sgnus/lisp/gnus.el Sat Jun 8 00:15:13 1996 --- sgnus/lisp/gnus.el Mon Jun 10 02:47:44 1996 *************** *** 144,150 **** (nnfolder-get-new-mail nil) (nnfolder-inhibit-expiry t)) "*Method used for archiving messages you've sent. ! This should be a mail method.") (defvar gnus-refer-article-method nil "*Preferred method for fetching an article by Message-ID. --- 144,154 ---- (nnfolder-get-new-mail nil) (nnfolder-inhibit-expiry t)) "*Method used for archiving messages you've sent. ! This should be a mail method. ! ! It's probably not a very effective to change this variable once you've ! run Gnus once. After doing that, you must edit this server from the ! server buffer.") (defvar gnus-refer-article-method nil "*Preferred method for fetching an article by Message-ID. *************** *** 1728,1734 **** "gnus-bug@ifi.uio.no (The Gnus Bugfixing Girls + Boys)" "The mail address of the Gnus maintainers.") ! (defconst gnus-version-number "5.2.12" "Version number for this version of Gnus.") (defconst gnus-version (format "Gnus v%s" gnus-version-number) --- 1732,1738 ---- "gnus-bug@ifi.uio.no (The Gnus Bugfixing Girls + Boys)" "The mail address of the Gnus maintainers.") ! (defconst gnus-version-number "5.2.13" "Version number for this version of Gnus.") (defconst gnus-version (format "Gnus v%s" gnus-version-number) *************** *** 2127,2132 **** --- 2131,2140 ---- ,@forms) (select-window ,tempvar))))) + (put 'gnus-eval-in-buffer-window 'lisp-indent-function 1) + (put 'gnus-eval-in-buffer-window 'lisp-indent-hook 1) + (put 'gnus-eval-in-buffer-window 'edebug-form-spec '(form body)) + (defmacro gnus-gethash (string hashtable) "Get hash value of STRING in HASHTABLE." `(symbol-value (intern-soft ,string ,hashtable))) *************** *** 6513,6519 **** (cond (current-prefix-arg (completing-read "Faq dir: " (and (listp gnus-group-faq-directory) ! gnus-group-faq-directory)))))) (or faq-dir (setq faq-dir (if (listp gnus-group-faq-directory) (car gnus-group-faq-directory) --- 6521,6528 ---- (cond (current-prefix-arg (completing-read "Faq dir: " (and (listp gnus-group-faq-directory) ! (mapcar (lambda (file) (list file)) ! gnus-group-faq-directory))))))) (or faq-dir (setq faq-dir (if (listp gnus-group-faq-directory) (car gnus-group-faq-directory) *************** *** 10500,10508 **** (not (equal (car gnus-article-current) gnus-newsgroup-name))) ;; Selected subject is different from current article's. (gnus-summary-display-article article) ! (gnus-eval-in-buffer-window ! gnus-article-buffer ! (setq endp (gnus-article-next-page lines))) (if endp (cond (circular (gnus-summary-beginning-of-article)) --- 10509,10516 ---- (not (equal (car gnus-article-current) gnus-newsgroup-name))) ;; Selected subject is different from current article's. (gnus-summary-display-article article) ! (gnus-eval-in-buffer-window gnus-article-buffer ! (setq endp (gnus-article-next-page lines))) (if endp (cond (circular (gnus-summary-beginning-of-article)) *************** *** 10531,10537 **** (gnus-summary-display-article article) (gnus-summary-recenter) (gnus-eval-in-buffer-window gnus-article-buffer ! (gnus-article-prev-page lines)))) (gnus-summary-position-point)) (defun gnus-summary-scroll-up (lines) --- 10539,10545 ---- (gnus-summary-display-article article) (gnus-summary-recenter) (gnus-eval-in-buffer-window gnus-article-buffer ! (gnus-article-prev-page lines)))) (gnus-summary-position-point)) (defun gnus-summary-scroll-up (lines) *************** *** 10542,10554 **** (gnus-configure-windows 'article) (gnus-summary-show-thread) (when (eq (gnus-summary-select-article nil nil 'pseudo) 'old) ! (gnus-eval-in-buffer-window ! gnus-article-buffer ! (cond ((> lines 0) ! (if (gnus-article-next-page lines) ! (gnus-message 3 "End of message"))) ! ((< lines 0) ! (gnus-article-prev-page (- lines)))))) (gnus-summary-recenter) (gnus-summary-position-point)) --- 10550,10561 ---- (gnus-configure-windows 'article) (gnus-summary-show-thread) (when (eq (gnus-summary-select-article nil nil 'pseudo) 'old) ! (gnus-eval-in-buffer-window gnus-article-buffer ! (cond ((> lines 0) ! (if (gnus-article-next-page lines) ! (gnus-message 3 "End of message"))) ! ((< lines 0) ! (gnus-article-prev-page (- lines)))))) (gnus-summary-recenter) (gnus-summary-position-point)) *************** *** 11152,11161 **** (gnus-set-global-variables) (gnus-summary-select-article) (gnus-configure-windows 'article) ! (gnus-eval-in-buffer-window ! gnus-article-buffer ! (goto-char (point-min)) ! (isearch-forward regexp-p))) (defun gnus-summary-search-article-forward (regexp &optional backward) "Search for an article containing REGEXP forward. --- 11159,11167 ---- (gnus-set-global-variables) (gnus-summary-select-article) (gnus-configure-windows 'article) ! (gnus-eval-in-buffer-window gnus-article-buffer ! (goto-char (point-min)) ! (isearch-forward regexp-p))) (defun gnus-summary-search-article-forward (regexp &optional backward) "Search for an article containing REGEXP forward. *************** *** 11295,11305 **** (gnus-set-global-variables) (gnus-summary-select-article) (gnus-configure-windows 'article) ! (gnus-eval-in-buffer-window ! gnus-article-buffer ! (widen) ! (goto-char (point-min)) ! (and gnus-break-pages (gnus-narrow-to-page)))) (defun gnus-summary-end-of-article () "Scroll to the end of the article." --- 11301,11310 ---- (gnus-set-global-variables) (gnus-summary-select-article) (gnus-configure-windows 'article) ! (gnus-eval-in-buffer-window gnus-article-buffer ! (widen) ! (goto-char (point-min)) ! (and gnus-break-pages (gnus-narrow-to-page)))) (defun gnus-summary-end-of-article () "Scroll to the end of the article." *************** *** 11307,11318 **** (gnus-set-global-variables) (gnus-summary-select-article) (gnus-configure-windows 'article) ! (gnus-eval-in-buffer-window ! gnus-article-buffer ! (widen) ! (goto-char (point-max)) ! (recenter -3) ! (and gnus-break-pages (gnus-narrow-to-page)))) (defun gnus-summary-show-article (&optional arg) "Force re-fetching of the current article. --- 11312,11322 ---- (gnus-set-global-variables) (gnus-summary-select-article) (gnus-configure-windows 'article) ! (gnus-eval-in-buffer-window gnus-article-buffer ! (widen) ! (goto-char (point-max)) ! (recenter -3) ! (and gnus-break-pages (gnus-narrow-to-page)))) (defun gnus-summary-show-article (&optional arg) "Force re-fetching of the current article. *************** *** 11400,11420 **** (gnus-set-global-variables) (gnus-summary-select-article) (let ((mail-header-separator "")) ! (gnus-eval-in-buffer-window ! gnus-article-buffer ! (save-restriction ! (widen) ! (let ((start (window-start)) ! buffer-read-only) ! (message-caesar-buffer-body arg) ! (set-window-start (get-buffer-window (current-buffer)) start)))))) (defun gnus-summary-stop-page-breaking () "Stop page breaking in the current article." (interactive) (gnus-set-global-variables) (gnus-summary-select-article) ! (gnus-eval-in-buffer-window gnus-article-buffer (widen))) (defun gnus-summary-move-article (&optional n to-newsgroup select-method action) "Move the current article to a different newsgroup. --- 11404,11424 ---- (gnus-set-global-variables) (gnus-summary-select-article) (let ((mail-header-separator "")) ! (gnus-eval-in-buffer-window gnus-article-buffer ! (save-restriction ! (widen) ! (let ((start (window-start)) ! buffer-read-only) ! (message-caesar-buffer-body arg) ! (set-window-start (get-buffer-window (current-buffer)) start)))))) (defun gnus-summary-stop-page-breaking () "Stop page breaking in the current article." (interactive) (gnus-set-global-variables) (gnus-summary-select-article) ! (gnus-eval-in-buffer-window gnus-article-buffer ! (widen))) (defun gnus-summary-move-article (&optional n to-newsgroup select-method action) "Move the current article to a different newsgroup. *************** *** 13178,13189 **** (t (gnus-read-save-file-name "Save in rmail file:" default-name)))) (gnus-make-directory (file-name-directory filename)) ! (gnus-eval-in-buffer-window ! gnus-original-article-buffer ! (save-excursion ! (save-restriction ! (widen) ! (gnus-output-to-rmail filename)))) ;; Remember the directory name to save articles (setq gnus-newsgroup-last-rmail filename))) --- 13182,13192 ---- (t (gnus-read-save-file-name "Save in rmail file:" default-name)))) (gnus-make-directory (file-name-directory filename)) ! (gnus-eval-in-buffer-window gnus-original-article-buffer ! (save-excursion ! (save-restriction ! (widen) ! (gnus-output-to-rmail filename)))) ;; Remember the directory name to save articles (setq gnus-newsgroup-last-rmail filename))) *************** *** 13207,13221 **** (and default-name (file-name-directory default-name)))) (gnus-make-directory (file-name-directory filename)) ! (gnus-eval-in-buffer-window ! gnus-original-article-buffer ! (save-excursion ! (save-restriction ! (widen) ! (if (and (file-readable-p filename) (mail-file-babyl-p filename)) ! (gnus-output-to-rmail filename) ! (let ((mail-use-rfc822 t)) ! (rmail-output filename 1 t t)))))) ;; Remember the directory name to save articles. (setq gnus-newsgroup-last-mail filename))) --- 13210,13223 ---- (and default-name (file-name-directory default-name)))) (gnus-make-directory (file-name-directory filename)) ! (gnus-eval-in-buffer-window gnus-original-article-buffer ! (save-excursion ! (save-restriction ! (widen) ! (if (and (file-readable-p filename) (mail-file-babyl-p filename)) ! (gnus-output-to-rmail filename) ! (let ((mail-use-rfc822 t)) ! (rmail-output filename 1 t t)))))) ;; Remember the directory name to save articles. (setq gnus-newsgroup-last-mail filename))) *************** *** 13235,13246 **** (t (gnus-read-save-file-name "Save in file:" default-name)))) (gnus-make-directory (file-name-directory filename)) ! (gnus-eval-in-buffer-window ! gnus-original-article-buffer ! (save-excursion ! (save-restriction ! (widen) ! (gnus-output-to-file filename)))) ;; Remember the directory name to save articles. (setq gnus-newsgroup-last-file filename))) --- 13237,13247 ---- (t (gnus-read-save-file-name "Save in file:" default-name)))) (gnus-make-directory (file-name-directory filename)) ! (gnus-eval-in-buffer-window gnus-original-article-buffer ! (save-excursion ! (save-restriction ! (widen) ! (gnus-output-to-file filename)))) ;; Remember the directory name to save articles. (setq gnus-newsgroup-last-file filename))) *************** *** 13260,13274 **** (t (gnus-read-save-file-name "Save body in file:" default-name)))) (gnus-make-directory (file-name-directory filename)) ! (gnus-eval-in-buffer-window ! gnus-article-buffer ! (save-excursion ! (save-restriction ! (widen) ! (goto-char (point-min)) ! (and (search-forward "\n\n" nil t) ! (narrow-to-region (point) (point-max))) ! (gnus-output-to-file filename)))) ;; Remember the directory name to save articles. (setq gnus-newsgroup-last-file filename))) --- 13261,13274 ---- (t (gnus-read-save-file-name "Save body in file:" default-name)))) (gnus-make-directory (file-name-directory filename)) ! (gnus-eval-in-buffer-window gnus-article-buffer ! (save-excursion ! (save-restriction ! (widen) ! (goto-char (point-min)) ! (and (search-forward "\n\n" nil t) ! (narrow-to-region (point) (point-max))) ! (gnus-output-to-file filename)))) ;; Remember the directory name to save articles. (setq gnus-newsgroup-last-file filename))) *************** *** 13284,13294 **** gnus-last-shell-command)))) (if (string-equal command "") (setq command gnus-last-shell-command)) ! (gnus-eval-in-buffer-window ! gnus-article-buffer ! (save-restriction ! (widen) ! (shell-command-on-region (point-min) (point-max) command nil))) (setq gnus-last-shell-command command)) ;; Summary extract commands --- 13284,13293 ---- gnus-last-shell-command)))) (if (string-equal command "") (setq command gnus-last-shell-command)) ! (gnus-eval-in-buffer-window gnus-article-buffer ! (save-restriction ! (widen) ! (shell-command-on-region (point-min) (point-max) command nil))) (setq gnus-last-shell-command command)) ;; Summary extract commands *************** *** 13894,13900 **** "Toggle whether to hide unwanted headers and possibly sort them as well. If given a negative prefix, always show; if given a positive prefix, always hide." ! (interactive "P") (if (gnus-article-check-hidden-text 'headers arg) ;; Show boring headers as well. (gnus-article-show-hidden-text 'boring-headers) --- 13893,13899 ---- "Toggle whether to hide unwanted headers and possibly sort them as well. If given a negative prefix, always show; if given a positive prefix, always hide." ! (interactive (gnus-hidden-arg)) (if (gnus-article-check-hidden-text 'headers arg) ;; Show boring headers as well. (gnus-article-show-hidden-text 'boring-headers) *************** *** 13966,13972 **** "Toggle hiding of headers that aren't very interesting. If given a negative prefix, always show; if given a positive prefix, always hide." ! (interactive "P") (unless (gnus-article-check-hidden-text 'boring-headers arg) (save-excursion (set-buffer gnus-article-buffer) --- 13965,13971 ---- "Toggle hiding of headers that aren't very interesting. If given a negative prefix, always show; if given a positive prefix, always hide." ! (interactive (gnus-hidden-arg)) (unless (gnus-article-check-hidden-text 'boring-headers arg) (save-excursion (set-buffer gnus-article-buffer) *************** *** 14205,14211 **** "Toggle hiding of any PGP headers and signatures in the current article. If given a negative prefix, always show; if given a positive prefix, always hide." ! (interactive "P") (unless (gnus-article-check-hidden-text 'pgp arg) (save-excursion (set-buffer gnus-article-buffer) --- 14204,14210 ---- "Toggle hiding of any PGP headers and signatures in the current article. If given a negative prefix, always show; if given a positive prefix, always hide." ! (interactive (gnus-hidden-arg)) (unless (gnus-article-check-hidden-text 'pgp arg) (save-excursion (set-buffer gnus-article-buffer) *************** *** 14240,14246 **** "Hide the signature in the current article. If given a negative prefix, always show; if given a positive prefix, always hide." ! (interactive "P") (unless (gnus-article-check-hidden-text 'signature arg) (save-excursion (set-buffer gnus-article-buffer) --- 14239,14245 ---- "Hide the signature in the current article. If given a negative prefix, always show; if given a positive prefix, always hide." ! (interactive (gnus-hidden-arg)) (unless (gnus-article-check-hidden-text 'signature arg) (save-excursion (set-buffer gnus-article-buffer) *************** *** 14285,14303 **** (narrow-to-region (point) (point-max)) t))) (defun gnus-article-check-hidden-text (type arg) ! "Return nil if hiding is necessary." (save-excursion (set-buffer gnus-article-buffer) (let ((hide (gnus-article-hidden-text-p type))) ! (cond ((or (and (null arg) (eq hide 'hidden)) ! (and arg (< (prefix-numeric-value arg) 1))) ! (gnus-article-show-hidden-text type)) ! ((and (numberp arg) (> (prefix-numeric-value arg) 0)) ! nil) ! ((eq hide 'shown) ! (gnus-article-show-hidden-text type t)) ! (t nil))))) (defun gnus-article-hidden-text-p (type) "Say whether the current buffer contains hidden text of type TYPE." --- 14284,14312 ---- (narrow-to-region (point) (point-max)) t))) + (defun gnus-hidden-arg () + "Return the current prefix arg as a number, or 0 if no prefix." + (list (if current-prefix-arg + (prefix-numeric-value current-prefix-arg) + 0))) + (defun gnus-article-check-hidden-text (type arg) ! "Return nil if hiding is necessary. ! Arg can be nil or a number. Nil and positive means hide, negative ! means show, 0 means toggle." (save-excursion (set-buffer gnus-article-buffer) (let ((hide (gnus-article-hidden-text-p type))) ! (cond ! ((or (null arg) ! (> arg 0)) ! nil) ! ((< arg 0) ! (gnus-article-show-hidden-text type)) ! (t ! (if (eq hide 'hidden) ! (gnus-article-show-hidden-text type) ! nil)))))) (defun gnus-article-hidden-text-p (type) "Say whether the current buffer contains hidden text of type TYPE." *************** *** 14711,14717 **** (let ((nosaves '("q" "Q" "c" "r" "R" "\C-c\C-f" "m" "a" "f" "F" "Zc" "ZC" "ZE" "ZQ" "ZZ" "Zn" "ZR" "ZG" "ZN" "ZP" ! "=" "^" "\M-^")) keys) (save-excursion (set-buffer gnus-summary-buffer) --- 14720,14726 ---- (let ((nosaves '("q" "Q" "c" "r" "R" "\C-c\C-f" "m" "a" "f" "F" "Zc" "ZC" "ZE" "ZQ" "ZZ" "Zn" "ZR" "ZG" "ZN" "ZP" ! "=" "^" "\M-^" "|")) keys) (save-excursion (set-buffer gnus-summary-buffer) *** pub/sgnus/lisp/message.el Sat Jun 8 00:15:14 1996 --- sgnus/lisp/message.el Mon Jun 10 03:22:28 1996 *************** *** 123,130 **** "*Regexp of headers to be removed unconditionally before mailing.") ;;;###autoload ! (defvar message-ignored-supersedes-headers ! "^Path:\\|^Date\\|^NNTP-Posting-Host:\\|^Xref:\\|^Lines:\\|^Received:\\|^X-From-Line:\\|Return-Path:" "*Header lines matching this regexp will be deleted before posting. It's best to delete old Path and Date headers before posting to avoid any confusion.") --- 123,129 ---- "*Regexp of headers to be removed unconditionally before mailing.") ;;;###autoload ! (defvar message-ignored-supersedes-headers "^Path:\\|^Date\\|^NNTP-Posting-Host:\\|^Xref:\\|^Lines:\\|^Received:\\|^X-From-Line:\\|Return-Path:\\|^Supersedes:" "*Header lines matching this regexp will be deleted before posting. It's best to delete old Path and Date headers before posting to avoid any confusion.") *************** *** 253,258 **** --- 252,262 ---- "Normal hook, run each time a new outgoing message is initialized. The function `message-setup' runs this hook.") + (defvar message-signature-setup-hook nil + "Normal hook, run each time a new outgoing message is initialized. + It is run after the headers have been inserted and before + the signature is inserted.") + (defvar message-mode-hook nil "Hook run in message mode buffers.") *************** *** 1561,1569 **** (while (and headers (not error)) (when (setq header (mail-fetch-field (car headers))) (if (or ! (not (string-match ! "\\`\\([-.a-zA-Z0-9]+\\)?\\(,[-.a-zA-Z0-9]+\\)*\\'" ! header)) (memq nil (mapcar (lambda (g) --- 1565,1574 ---- (while (and headers (not error)) (when (setq header (mail-fetch-field (car headers))) (if (or ! (not ! (string-match ! "\\`\\([-+_&.a-zA-Z0-9]+\\)?\\(,[-.a-zA-Z0-9]+\\)*\\'" ! header)) (memq nil (mapcar (lambda (g) *************** *** 2294,2299 **** --- 2299,2305 ---- (delq 'Lines (delq 'Subject (copy-sequence message-required-mail-headers)))))) + (run-hooks 'message-signature-setup-hook) (message-insert-signature) (message-set-auto-save-file-name) (save-restriction *** pub/sgnus/lisp/messagexmas.el Sat Jun 8 00:15:14 1996 --- sgnus/lisp/messagexmas.el Mon Jun 10 02:31:12 1996 *************** *** 66,71 **** --- 66,72 ---- (defun message-xmas-setup-toolbar (bar &optional force package) (let ((dir (message-xmas-find-glyph-directory package)) + (xpm (if (featurep 'xpm) "xpm" "xbm")) icon up down disabled name) (unless package (setq message-xmas-glyph-directory dir)) *************** *** 77,85 **** (setq icon (aref (car bar) 0) name (symbol-name icon) bar (cdr bar)) ! (setq up (concat dir name "-up.xpm")) ! (setq down (concat dir name "-down.xpm")) ! (setq disabled (concat dir name "-disabled.xpm")) (if (not (file-exists-p up)) (set icon nil) (set icon (toolbar-make-button-list --- 78,86 ---- (setq icon (aref (car bar) 0) name (symbol-name icon) bar (cdr bar)) ! (setq up (concat dir name "-up." xpm)) ! (setq down (concat dir name "-down." xpm)) ! (setq disabled (concat dir name "-disabled." xpm)) (if (not (file-exists-p up)) (set icon nil) (set icon (toolbar-make-button-list *** pub/sgnus/lisp/nnheader.el Sat Jun 8 00:15:15 1996 --- sgnus/lisp/nnheader.el Sun Jun 9 23:53:04 1996 *************** *** 389,395 **** (put 'nnheader-temp-write 'lisp-indent-function 1) (put 'nnheader-temp-write 'lisp-indent-hook 1) ! (put 'nnheader-temp-write 'edebug-form-spec '(file &rest form)) (defvar jka-compr-compression-info-list) (defvar nnheader-numerical-files --- 389,395 ---- (put 'nnheader-temp-write 'lisp-indent-function 1) (put 'nnheader-temp-write 'lisp-indent-hook 1) ! (put 'nnheader-temp-write 'edebug-form-spec '(form body)) (defvar jka-compr-compression-info-list) (defvar nnheader-numerical-files *** pub/sgnus/lisp/nnheaderems.el Sat Jun 8 00:15:15 1996 --- sgnus/lisp/nnheaderems.el Sun Jun 9 23:53:04 1996 *************** *** 193,199 **** (fset 'nnheader-insert-file-contents-literally 'insert-file-contents-literally) )) ! (when (memq system-type '()) (add-hook 'nnmail-prepare-incoming-hook 'nnheader-ms-strip-cr))) (provide 'nnheaderems) --- 193,199 ---- (fset 'nnheader-insert-file-contents-literally 'insert-file-contents-literally) )) ! (when (memq system-type '(windows-nt)) (add-hook 'nnmail-prepare-incoming-hook 'nnheader-ms-strip-cr))) (provide 'nnheaderems) *** pub/sgnus/lisp/nnmail.el Sat Jun 8 00:15:15 1996 --- sgnus/lisp/nnmail.el Sun Jun 9 23:53:05 1996 *************** *** 236,242 **** (mail . "mailer-daemon\\|postmaster")) "*Alist of abbreviations allowed in `nnmail-split-fancy'.") ! (defvar nnmail-delete-incoming nil "*If non-nil, the mail backends will delete incoming files after splitting.") (defvar nnmail-message-id-cache-length 1000 --- 236,242 ---- (mail . "mailer-daemon\\|postmaster")) "*Alist of abbreviations allowed in `nnmail-split-fancy'.") ! (defvar nnmail-delete-incoming t "*If non-nil, the mail backends will delete incoming files after splitting.") (defvar nnmail-message-id-cache-length 1000 *** pub/sgnus/lisp/nnmh.el Sat Jun 8 00:15:15 1996 --- sgnus/lisp/nnmh.el Sun Jun 9 23:53:05 1996 *************** *** 195,201 **** dir) ;; Recurse down directories. (while (setq dir (pop dirs)) ! (when (and (not (string-match "/\\.\\.?$" dir)) (file-directory-p dir) (file-readable-p dir)) (nnmh-request-list-1 dir)))) --- 195,201 ---- dir) ;; Recurse down directories. (while (setq dir (pop dirs)) ! (when (and (not (member (file-name-nondirectory file) '("." ".."))) (file-directory-p dir) (file-readable-p dir)) (nnmh-request-list-1 dir)))) *** pub/sgnus/lisp/nnml.el Sat Jun 8 00:15:15 1996 --- sgnus/lisp/nnml.el Sun Jun 9 23:53:06 1996 *************** *** 681,687 **** dir) (while dirs (setq dir (pop dirs)) ! (when (and (not (string-match "/\\.\\.?$" dir)) (file-directory-p dir)) (nnml-generate-nov-databases-1 dir)))) ;; Do this directory. --- 681,687 ---- dir) (while dirs (setq dir (pop dirs)) ! (when (and (not (member (file-name-nondirectory file) '("." ".."))) (file-directory-p dir)) (nnml-generate-nov-databases-1 dir)))) ;; Do this directory. *** pub/sgnus/lisp/ChangeLog Sat Jun 8 00:15:23 1996 --- sgnus/lisp/ChangeLog Mon Jun 10 03:26:17 1996 *************** *** 1,4 **** --- 1,79 ---- + Mon Jun 10 03:08:10 1996 Lars Magne Ingebrigtsen + + * gnus-cus.el (()): Changed LemonChiffon to Turquoise. + + * message.el (message-signature-setup-hook): New hook. + + * gnus-xmas.el (gnus-xmas-summary-recenter): `sit-for' for right + height. + + Mon Jun 10 00:02:15 1996 Lars Magne Ingebrigtsen + + * gnus.el (gnus-article-check-hidden-text): New definition. + (gnus-hidden-arg): New function. + (gnus-article-hide-headers): Don't toggle when called + non-interactively. + + * messagexmas.el (message-xmas-setup-toolbar): Use xbms. + + * gnus-score.el (gnus-score-file-regexp): Regexp-quote suffixes. + (gnus-score-load-file): Wouldn't set `adapt-file' right. + + * gnus-xmas.el (gnus-xmas-logo-color-alist): Removed double "##". + + * gnus-score.el (gnus-score-find-bnews): Deal with "++". + + Sun Jun 9 22:18:05 1996 Lars Magne Ingebrigtsen + + * gnus-score.el (gnus-score-find-trace): Don't error, just beep. + + * gnus-cite.el (gnus-cite-minimum-match-count): Changed default to + 2. + + Sun Jun 9 05:48:18 1996 Lars Magne Ingebrigtsen + + * gnus.el (gnus-message-archive-method): Dox fix. + + * message.el (message-check-news-syntax): Allow + and _ in group + names. + + * gnus.el (gnus-group-fetch-faq): Didn't allow completion. + + Sun Jun 9 05:36:16 1996 Hrvoje Niksic + + * message.el (message-ignored-supersedes-headers): New default. + + Sun Jun 9 05:17:34 1996 Lars Magne Ingebrigtsen + + * gnus-score.el (gnus-score-score-files-1): Don't match on "/" in + file names. + * nnml.el (nnml-generate-nov-databases-1): Ditto. + * nnmh.el (nnmh-request-list-1): Ditto. + * gnus-uu.el (gnus-uu-scan-directory): Ditto. + + * nnheaderems.el: Strip CR on windows-nt. + + Sun Jun 9 05:15:13 1996 Dave Disser + + * gnus-picon.el (gnus-group-display-picons): Set instead of + switching buffer. + + Sun Jun 9 05:08:51 1996 Lars Magne Ingebrigtsen + + * gnus.el (gnus-article-read-summary-keys): Don't save winconf on + "|". + + * nnmail.el (nnmail-delete-incoming): Changed default. + + * gnus.el (gnus-eval-in-buffer-window): Indent correctly. + + Sat Jun 8 19:24:24 1996 Lars Magne Ingebrigtsen + + * gnus-cite.el (gnus-cite-minimum-match-count): Changed default. + Fri Jun 7 22:08:53 1996 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.2.12 is released. * gnus.el (gnus-summary-refer-article): Would bug out when referring non-sparse articles. *** pub/sgnus/texi/Makefile Sat Jun 8 00:15:27 1996 --- sgnus/texi/Makefile Sun Jun 9 23:53:06 1996 *************** *** 6,12 **** DVIPS=dvips PERL=perl ! all: gnus.info message.info refcard.dvi most: texi2latexi.elc latex latexps --- 6,12 ---- DVIPS=dvips PERL=perl ! all: gnus.info message.info most: texi2latexi.elc latex latexps *** pub/sgnus/texi/gnus.texi Sat Jun 8 00:15:27 1996 --- sgnus/texi/gnus.texi Mon Jun 10 02:08:31 1996 *************** *** 3155,3167 **** where you can edit the article all you want before sending it off the usual way. - @vindex gnus-delete-supersedes-headers - You probably want to delete some of the old headers before sending the - superseding article---@code{Path} and @code{Date} are probably - incorrect. Set @code{gnus-delete-supersedes-headers} to a regexp to - match the lines you want removed. The default is - @samp{^Path:\\|^Date}. - The same goes for superseding as for canceling, only more so: Some sites do not honor superseding. On those sites, it will appear that you have posted almost the same article twice. --- 3155,3160 ---- *************** *** 6380,6388 **** @kindex C-c C-c (Post) All commands for posting and mailing will put you in a message buffer where you can edit the article all you like, before you send the article ! by pressing @kbd{C-c C-c}. If you are in a foreign news group, and you ! wish to post the article using the foreign server, you can give a prefix ! to @kbd{C-c C-c} to make Gnus try to post using the foreign server. @menu * Mail:: Mailing and replying. --- 6373,6382 ---- @kindex C-c C-c (Post) All commands for posting and mailing will put you in a message buffer where you can edit the article all you like, before you send the article ! by pressing @kbd{C-c C-c}. (@pxref{(message)Top}). If you are in a ! foreign news group, and you wish to post the article using the foreign ! server, you can give a prefix to @kbd{C-c C-c} to make Gnus try to post ! using the foreign server. @menu * Mail:: Mailing and replying. *** pub/sgnus/texi/message.texi Sat Jun 8 00:15:27 1996 --- sgnus/texi/message.texi Mon Jun 10 03:22:23 1996 *************** *** 251,258 **** signature will be inserted before the forwarded message. If not, the forwarded message will be inserted first in the new mail. ! @item message-forward-included-headers ! @vindex message-forward-included-headers Regexp matching header lines to be included in forwarded messages. @end table --- 251,258 ---- signature will be inserted before the forwarded message. If not, the forwarded message will be inserted first in the new mail. ! @item message-included-forward-headers ! @vindex message-included-forward-headers Regexp matching header lines to be included in forwarded messages. @end table *************** *** 862,870 **** @vindex message-autosave-directory Directory where message buffers will be autosaved to. @item message-setup-hook @vindex message-setup-hook ! Hook run when the message buffer has been initialized. @item message-header-setup-hook @vindex message-header-setup-hook --- 862,875 ---- @vindex message-autosave-directory Directory where message buffers will be autosaved to. + @item message-signature-setup-hook + @vindex message-signature-setup-hook + Hook run when initializing the message buffer. It is run after the + headers have been inserted but before the signature has been inserted. + @item message-setup-hook @vindex message-setup-hook ! Hook run as the last thing when the message buffer has been initialized. @item message-header-setup-hook @vindex message-header-setup-hook *** pub/sgnus/texi/ChangeLog Sat Jun 8 00:15:24 1996 --- sgnus/texi/ChangeLog Mon Jun 10 03:22:24 1996 *************** *** 1,3 **** --- 1,17 ---- + Mon Jun 10 03:21:04 1996 Lars Magne Ingebrigtsen + + * message.texi (Various Message Variables): Addition. + + Sun Jun 9 23:36:12 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Composing Messages): Reference Message. + + Sun Jun 9 05:43:26 1996 Lars Magne Ingebrigtsen + + * Makefile (all): Don't make refcard by default. + + * gnus.texi (Canceling and Superseding): Delatia. + Wed Jun 5 20:25:17 1996 Lars Magne Ingebrigtsen * message.texi (Message Buffers): Add menu entry.