*** pub/qgnus/lisp/dgnushack.el Sat Dec 6 17:45:06 1997 --- qgnus/lisp/dgnushack.el Sat Feb 14 19:27:24 1998 *************** *** 1,5 **** ;;; dgnushack.el --- a hack to set the load path for byte-compiling ! ;; Copyright (C) 1994,95,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Version: 4.19 --- 1,5 ---- ;;; dgnushack.el --- a hack to set the load path for byte-compiling ! ;; Copyright (C) 1994,95,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Version: 4.19 *** pub/qgnus/lisp/earcon.el Sat Sep 13 20:30:22 1997 --- qgnus/lisp/earcon.el Sat Feb 14 19:27:24 1998 *************** *** 2,11 **** ;; Copyright (C) 1996 Free Software Foundation ;; Author: Steven L. Baur - ;; Keywords: news fun sound - - ;; This file is part of GNU Emacs. - ;; GNU Emacs is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation; either version 2, or (at your option) --- 2,7 ---- *************** *** 39,55 **** :group 'gnus-visual) (defcustom earcon-auto-play nil ! "When True, automatically play sounds as well as buttonize them." :type 'boolean :group 'earcon) (defcustom earcon-prefix "**" ! "String denoting the start of an earcon." :type 'string :group 'earcon) (defcustom earcon-suffix "**" ! "String denoting the end of an earcon." :type 'string :group 'earcon) --- 35,51 ---- :group 'gnus-visual) (defcustom earcon-auto-play nil ! "*When True, automatically play sounds as well as buttonize them." :type 'boolean :group 'earcon) (defcustom earcon-prefix "**" ! "*String denoting the start of an earcon." :type 'string :group 'earcon) (defcustom earcon-suffix "**" ! "*String denoting the end of an earcon." :type 'string :group 'earcon) *************** *** 70,76 **** ("cackle" 1 "witch.au") ("yell\\|roar" 1 "yell2.au") ("whoop-de-doo" 1 "whistle.au")) ! "A list of regexps to map earcons to real sounds." :type '(repeat (list regexp (integer :tag "Match") (string :tag "Sound"))) --- 66,72 ---- ("cackle" 1 "witch.au") ("yell\\|roar" 1 "yell2.au") ("whoop-de-doo" 1 "whistle.au")) ! "*A list of regexps to map earcons to real sounds." :type '(repeat (list regexp (integer :tag "Match") (string :tag "Sound"))) *** pub/qgnus/lisp/gnus-agent.el Wed Feb 11 15:04:38 1998 --- qgnus/lisp/gnus-agent.el Sat Feb 14 19:27:25 1998 *************** *** 1,9 **** ;;; gnus-agent.el --- unplugged support for Gnus ! ;; Copyright (C) 1997 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen - ;; Keywords: news - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software; you can redistribute it and/or modify --- 1,7 ---- ;;; gnus-agent.el --- unplugged support for Gnus ! ;; Copyright (C) 1997,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; This file is part of GNU Emacs. ;; GNU Emacs is free software; you can redistribute it and/or modify *************** *** 32,53 **** (eval-when-compile (require 'cl)) (defcustom gnus-agent-directory (nnheader-concat gnus-directory "agent/") ! "Where the Gnus agent will store its files." :group 'gnus-agent :type 'directory) (defcustom gnus-agent-plugged-hook nil ! "Hook run when plugging into the network." :group 'gnus-agent :type 'hook) (defcustom gnus-agent-unplugged-hook nil ! "Hook run when unplugging from the network." :group 'gnus-agent :type 'hook) (defcustom gnus-agent-handle-level gnus-level-subscribed ! "Groups on levels higher than this variable will be ignored by the Agent." :group 'gnus-agent :type 'integer) --- 30,51 ---- (eval-when-compile (require 'cl)) (defcustom gnus-agent-directory (nnheader-concat gnus-directory "agent/") ! "*Where the Gnus agent will store its files." :group 'gnus-agent :type 'directory) (defcustom gnus-agent-plugged-hook nil ! "*Hook run when plugging into the network." :group 'gnus-agent :type 'hook) (defcustom gnus-agent-unplugged-hook nil ! "*Hook run when unplugging from the network." :group 'gnus-agent :type 'hook) (defcustom gnus-agent-handle-level gnus-level-subscribed ! "*Groups on levels higher than this variable will be ignored by the Agent." :group 'gnus-agent :type 'integer) *************** *** 115,121 **** (defsubst gnus-agent-directory () "Path of the Gnus agent directory." ! (nnheader-concat gnus-agent-directory (gnus-agent-method) "/")) (defun gnus-agent-lib-file (file) "The full path of the Gnus agent library FILE." --- 113,120 ---- (defsubst gnus-agent-directory () "Path of the Gnus agent directory." ! (nnheader-concat gnus-agent-directory ! (nnheader-translate-file-chars (gnus-agent-method)) "/")) (defun gnus-agent-lib-file (file) "The full path of the Gnus agent library FILE." *************** *** 177,183 **** buffer)))) minor-mode-map-alist)) (gnus-agent-toggle-plugged gnus-plugged) ! (run-hooks 'gnus-agent-mode-hook))) (defvar gnus-agent-group-mode-map (make-sparse-keymap)) (gnus-define-keys gnus-agent-group-mode-map --- 176,182 ---- buffer)))) minor-mode-map-alist)) (gnus-agent-toggle-plugged gnus-plugged) ! (gnus-run-hooks 'gnus-agent-mode-hook))) (defvar gnus-agent-group-mode-map (make-sparse-keymap)) (gnus-define-keys gnus-agent-group-mode-map *************** *** 239,248 **** (interactive (list (not gnus-plugged))) (if plugged (progn ! (run-hooks 'gnus-agent-plugged-hook) (setcar (cdr gnus-agent-mode-status) " Plugged")) (gnus-agent-close-connections) ! (run-hooks 'gnus-agent-unplugged-hook) (setcar (cdr gnus-agent-mode-status) " Unplugged")) (setq gnus-plugged plugged) (set-buffer-modified-p t)) --- 238,247 ---- (interactive (list (not gnus-plugged))) (if plugged (progn ! (gnus-run-hooks 'gnus-agent-plugged-hook) (setcar (cdr gnus-agent-mode-status) " Plugged")) (gnus-agent-close-connections) ! (gnus-run-hooks 'gnus-agent-unplugged-hook) (setcar (cdr gnus-agent-mode-status) " Unplugged")) (setq gnus-plugged plugged) (set-buffer-modified-p t)) *************** *** 926,932 **** ["Edit groups" gnus-category-edit-groups t] ["Exit" gnus-category-exit t])) ! (run-hooks 'gnus-category-menu-hook))) (defun gnus-category-mode () "Major mode for listing and editing agent categories. --- 925,931 ---- ["Edit groups" gnus-category-edit-groups t] ["Exit" gnus-category-exit t])) ! (gnus-run-hooks 'gnus-category-menu-hook))) (defun gnus-category-mode () "Major mode for listing and editing agent categories. *************** *** 952,958 **** (buffer-disable-undo (current-buffer)) (setq truncate-lines t) (setq buffer-read-only t) ! (run-hooks 'gnus-category-mode-hook)) (defalias 'gnus-category-position-point 'gnus-goto-colon) --- 951,957 ---- (buffer-disable-undo (current-buffer)) (setq truncate-lines t) (setq buffer-read-only t) ! (gnus-run-hooks 'gnus-category-mode-hook)) (defalias 'gnus-category-position-point 'gnus-goto-colon) *** pub/qgnus/lisp/gnus-art.el Fri Feb 13 22:39:01 1998 --- qgnus/lisp/gnus-art.el Sat Feb 14 19:27:27 1998 *************** *** 1,5 **** ;;; gnus-art.el --- article mode commands for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-art.el --- article mode commands for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 95,101 **** "^Date-Received:" "^References:" "^Control:" "^Xref:" "^Lines:" "^Posted:" "^Relay-Version:" "^Message-ID:" "^Nf-ID:" "^Nf-From:" "^Approved:" "^Sender:" "^Received:" "^Mail-from:") ! "All headers that start with this regexp will be hidden. This variable can also be a list of regexps of headers to be ignored. If `gnus-visible-headers' is non-nil, this variable will be ignored." :type '(choice :custom-show nil --- 95,101 ---- "^Date-Received:" "^References:" "^Control:" "^Xref:" "^Lines:" "^Posted:" "^Relay-Version:" "^Message-ID:" "^Nf-ID:" "^Nf-From:" "^Approved:" "^Sender:" "^Received:" "^Mail-from:") ! "*All headers that start with this regexp will be hidden. This variable can also be a list of regexps of headers to be ignored. If `gnus-visible-headers' is non-nil, this variable will be ignored." :type '(choice :custom-show nil *************** *** 105,111 **** (defcustom gnus-visible-headers "^From:\\|^Newsgroups:\\|^Subject:\\|^Date:\\|^Followup-To:\\|^Reply-To:\\|^Organization:\\|^Summary:\\|^Keywords:\\|^To:\\|^Cc:\\|^Posted-To:\\|^Mail-Copies-To:\\|^Apparently-To:\\|^Gnus-Warning:\\|^Resent-From:\\|X-Sent:" ! "All headers that do not match this regexp will be hidden. This variable can also be a list of regexp of headers to remain visible. If this variable is non-nil, `gnus-ignored-headers' will be ignored." :type '(repeat :value-to-internal (lambda (widget value) --- 105,111 ---- (defcustom gnus-visible-headers "^From:\\|^Newsgroups:\\|^Subject:\\|^Date:\\|^Followup-To:\\|^Reply-To:\\|^Organization:\\|^Summary:\\|^Keywords:\\|^To:\\|^Cc:\\|^Posted-To:\\|^Mail-Copies-To:\\|^Apparently-To:\\|^Gnus-Warning:\\|^Resent-From:\\|X-Sent:" ! "*All headers that do not match this regexp will be hidden. This variable can also be a list of regexp of headers to remain visible. If this variable is non-nil, `gnus-ignored-headers' will be ignored." :type '(repeat :value-to-internal (lambda (widget value) *************** *** 119,125 **** (defcustom gnus-sorted-header-list '("^From:" "^Subject:" "^Summary:" "^Keywords:" "^Newsgroups:" "^Followup-To:" "^To:" "^Cc:" "^Date:" "^Organization:") ! "This variable is a list of regular expressions. If it is non-nil, headers that match the regular expressions will be placed first in the article buffer in the sequence specified by this list." --- 119,125 ---- (defcustom gnus-sorted-header-list '("^From:" "^Subject:" "^Summary:" "^Keywords:" "^Newsgroups:" "^Followup-To:" "^To:" "^Cc:" "^Date:" "^Organization:") ! "*This variable is a list of regular expressions. If it is non-nil, headers that match the regular expressions will be placed first in the article buffer in the sequence specified by this list." *************** *** 127,133 **** :group 'gnus-article-hiding) (defcustom gnus-boring-article-headers '(empty followup-to reply-to) ! "Headers that are only to be displayed if they have interesting data. Possible values in this list are `empty', `newsgroups', `followup-to', `reply-to', `date', `long-to', and `many-to'." :type '(set (const :tag "Headers with no content." empty) --- 127,133 ---- :group 'gnus-article-hiding) (defcustom gnus-boring-article-headers '(empty followup-to reply-to) ! "*Headers that are only to be displayed if they have interesting data. Possible values in this list are `empty', `newsgroups', `followup-to', `reply-to', `date', `long-to', and `many-to'." :type '(set (const :tag "Headers with no content." empty) *************** *** 140,146 **** :group 'gnus-article-hiding) (defcustom gnus-signature-separator '("^-- $" "^-- *$") ! "Regexp matching signature separator. This can also be a list of regexps. In that case, it will be checked from head to tail looking for a separator. Searches will be done from the end of the buffer." --- 140,146 ---- :group 'gnus-article-hiding) (defcustom gnus-signature-separator '("^-- $" "^-- *$") ! "*Regexp matching signature separator. This can also be a list of regexps. In that case, it will be checked from head to tail looking for a separator. Searches will be done from the end of the buffer." *************** *** 148,154 **** :group 'gnus-article-signature) (defcustom gnus-signature-limit nil ! "Provide a limit to what is considered a signature. If it is a number, no signature may not be longer (in characters) than that number. If it is a floating point number, no signature may be longer (in lines) than that number. If it is a function, the function --- 148,154 ---- :group 'gnus-article-signature) (defcustom gnus-signature-limit nil ! "*Provide a limit to what is considered a signature. If it is a number, no signature may not be longer (in characters) than that number. If it is a floating point number, no signature may be longer (in lines) than that number. If it is a function, the function *************** *** 162,181 **** :group 'gnus-article-signature) (defcustom gnus-hidden-properties '(invisible t intangible t) ! "Property list to use for hiding text." :type 'sexp :group 'gnus-article-hiding) (defcustom gnus-article-x-face-command "{ echo '/* Width=48, Height=48 */'; uncompface; } | icontopbm | xv -quit -" ! "String or function to be executed to display an X-Face header. If it is a string, the command will be executed in a sub-shell asynchronously. The compressed face will be piped to this command." :type 'string ;Leave function case to Lisp. :group 'gnus-article-washing) (defcustom gnus-article-x-face-too-ugly nil ! "Regexp matching posters whose face shouldn't be shown automatically." :type '(choice regexp (const nil)) :group 'gnus-article-washing) --- 162,181 ---- :group 'gnus-article-signature) (defcustom gnus-hidden-properties '(invisible t intangible t) ! "*Property list to use for hiding text." :type 'sexp :group 'gnus-article-hiding) (defcustom gnus-article-x-face-command "{ echo '/* Width=48, Height=48 */'; uncompface; } | icontopbm | xv -quit -" ! "*String or function to be executed to display an X-Face header. If it is a string, the command will be executed in a sub-shell asynchronously. The compressed face will be piped to this command." :type 'string ;Leave function case to Lisp. :group 'gnus-article-washing) (defcustom gnus-article-x-face-too-ugly nil ! "*Regexp matching posters whose face shouldn't be shown automatically." :type '(choice regexp (const nil)) :group 'gnus-article-washing) *************** *** 198,204 **** (format format (car spec) (cadr spec)) 2 3 (intern (format "gnus-emphasis-%s" (caddr spec))))) types))) ! "Alist that says how to fontify certain phrases. Each item looks like this: (\"_\\\\(\\\\w+\\\\)_\" 0 1 'underline) --- 198,204 ---- (format format (car spec) (cadr spec)) 2 3 (intern (format "gnus-emphasis-%s" (caddr spec))))) types))) ! "*Alist that says how to fontify certain phrases. Each item looks like this: (\"_\\\\(\\\\w+\\\\)_\" 0 1 'underline) *************** *** 246,252 **** :group 'gnus-article-emphasis) (defcustom gnus-article-time-format "%a, %b %d %Y %T %Z" ! "Format for display of Date headers in article bodies. See `format-time-string' for the possible values. The variable can also be function, which should return a complete Date --- 246,252 ---- :group 'gnus-article-emphasis) (defcustom gnus-article-time-format "%a, %b %d %Y %T %Z" ! "*Format for display of Date headers in article bodies. See `format-time-string' for the possible values. The variable can also be function, which should return a complete Date *************** *** 280,286 **** (sexp :tag "once" :format "%t\n" :value t))) (defcustom gnus-saved-headers gnus-visible-headers ! "Headers to keep if `gnus-save-all-headers' is nil. If `gnus-save-all-headers' is non-nil, this variable will be ignored. If that variable is nil, however, all headers that match this regexp will be kept while the rest will be deleted before saving." --- 280,286 ---- (sexp :tag "once" :format "%t\n" :value t))) (defcustom gnus-saved-headers gnus-visible-headers ! "*Headers to keep if `gnus-save-all-headers' is nil. If `gnus-save-all-headers' is non-nil, this variable will be ignored. If that variable is nil, however, all headers that match this regexp will be kept while the rest will be deleted before saving." *************** *** 288,294 **** :type 'regexp) (defcustom gnus-default-article-saver 'gnus-summary-save-in-rmail ! "A function to save articles in your favourite format. The function must be interactively callable (in other words, it must be an Emacs command). --- 288,294 ---- :type 'regexp) (defcustom gnus-default-article-saver 'gnus-summary-save-in-rmail ! "*A function to save articles in your favourite format. The function must be interactively callable (in other words, it must be an Emacs command). *************** *** 309,333 **** (function-item gnus-summary-write-to-file))) (defcustom gnus-rmail-save-name 'gnus-plain-save-name ! "A function generating a file name to save articles in Rmail format. The function is called with NEWSGROUP, HEADERS, and optional LAST-FILE." :group 'gnus-article-saving :type 'function) (defcustom gnus-mail-save-name 'gnus-plain-save-name ! "A function generating a file name to save articles in Unix mail format. The function is called with NEWSGROUP, HEADERS, and optional LAST-FILE." :group 'gnus-article-saving :type 'function) (defcustom gnus-folder-save-name 'gnus-folder-save-name ! "A function generating a file name to save articles in MH folder. The function is called with NEWSGROUP, HEADERS, and optional LAST-FOLDER." :group 'gnus-article-saving :type 'function) (defcustom gnus-file-save-name 'gnus-numeric-save-name ! "A function generating a file name to save articles in article format. The function is called with NEWSGROUP, HEADERS, and optional LAST-FILE." :group 'gnus-article-saving --- 309,333 ---- (function-item gnus-summary-write-to-file))) (defcustom gnus-rmail-save-name 'gnus-plain-save-name ! "*A function generating a file name to save articles in Rmail format. The function is called with NEWSGROUP, HEADERS, and optional LAST-FILE." :group 'gnus-article-saving :type 'function) (defcustom gnus-mail-save-name 'gnus-plain-save-name ! "*A function generating a file name to save articles in Unix mail format. The function is called with NEWSGROUP, HEADERS, and optional LAST-FILE." :group 'gnus-article-saving :type 'function) (defcustom gnus-folder-save-name 'gnus-folder-save-name ! "*A function generating a file name to save articles in MH folder. The function is called with NEWSGROUP, HEADERS, and optional LAST-FOLDER." :group 'gnus-article-saving :type 'function) (defcustom gnus-file-save-name 'gnus-numeric-save-name ! "*A function generating a file name to save articles in article format. The function is called with NEWSGROUP, HEADERS, and optional LAST-FILE." :group 'gnus-article-saving *************** *** 336,342 **** (defcustom gnus-split-methods '((gnus-article-archive-name) (gnus-article-nndoc-name)) ! "Variable used to suggest where articles are to be saved. For instance, if you would like to save articles related to Gnus in the file \"gnus-stuff\", and articles related to VM in \"vm-stuff\", you could set this variable to something like: --- 336,342 ---- (defcustom gnus-split-methods '((gnus-article-archive-name) (gnus-article-nndoc-name)) ! "*Variable used to suggest where articles are to be saved. For instance, if you would like to save articles related to Gnus in the file \"gnus-stuff\", and articles related to VM in \"vm-stuff\", you could set this variable to something like: *************** *** 366,372 **** :type 'boolean) (defcustom gnus-show-mime-method 'metamail-buffer ! "Function to process a MIME message. The function is called from the article buffer." :group 'gnus-article-mime :type 'function) --- 366,372 ---- :type 'boolean) (defcustom gnus-show-mime-method 'metamail-buffer ! "*Function to process a MIME message. The function is called from the article buffer." :group 'gnus-article-mime :type 'function) *************** *** 412,418 **** :group 'gnus-article-various) (defcustom gnus-article-button-face 'bold ! "Face used for highlighting buttons in the article buffer. An article button is a piece of text that you can activate by pressing `RET' or `mouse-2' above it." --- 412,418 ---- :group 'gnus-article-various) (defcustom gnus-article-button-face 'bold ! "*Face used for highlighting buttons in the article buffer. An article button is a piece of text that you can activate by pressing `RET' or `mouse-2' above it." *************** *** 420,426 **** :group 'gnus-article-buttons) (defcustom gnus-article-mouse-face 'highlight ! "Face used for mouse highlighting in the article buffer. Article buttons will be displayed in this face when the cursor is above them." --- 420,426 ---- :group 'gnus-article-buttons) (defcustom gnus-article-mouse-face 'highlight ! "*Face used for mouse highlighting in the article buffer. Article buttons will be displayed in this face when the cursor is above them." *************** *** 428,434 **** :group 'gnus-article-buttons) (defcustom gnus-signature-face 'gnus-signature-face ! "Face used for highlighting a signature in the article buffer. Obsolete; use the face `gnus-signature-face' for customizations instead." :type 'face :group 'gnus-article-highlight --- 428,434 ---- :group 'gnus-article-buttons) (defcustom gnus-signature-face 'gnus-signature-face ! "*Face used for highlighting a signature in the article buffer. Obsolete; use the face `gnus-signature-face' for customizations instead." :type 'face :group 'gnus-article-highlight *************** *** 510,516 **** ("Subject" nil gnus-header-subject-face) ("Newsgroups:.*," nil gnus-header-newsgroups-face) ("" gnus-header-name-face gnus-header-content-face)) ! "Controls highlighting of article header. An alist of the form (HEADER NAME CONTENT). --- 510,516 ---- ("Subject" nil gnus-header-subject-face) ("Newsgroups:.*," nil gnus-header-newsgroups-face) ("" gnus-header-name-face gnus-header-content-face)) ! "*Controls highlighting of article header. An alist of the form (HEADER NAME CONTENT). *************** *** 1036,1042 **** (gnus-article-hide-text-type (match-beginning 0) (match-end 0) 'pgp)) (widen)) ! (run-hooks 'gnus-article-hide-pgp-hook)))))) (defun article-hide-pem (&optional arg) "Toggle hiding of any PEM headers and signatures in the current article. --- 1036,1042 ---- (gnus-article-hide-text-type (match-beginning 0) (match-end 0) 'pgp)) (widen)) ! (gnus-run-hooks 'gnus-article-hide-pgp-hook)))))) (defun article-hide-pem (&optional arg) "Toggle hiding of any PEM headers and signatures in the current article. *************** *** 1927,1933 **** (define-key gnus-article-mode-map [menu-bar post] (cons "Post" gnus-summary-post-menu))) ! (run-hooks 'gnus-article-menu-hook))) (defun gnus-article-mode () "Major mode for displaying an article. --- 1927,1933 ---- (define-key gnus-article-mode-map [menu-bar post] (cons "Post" gnus-summary-post-menu))) ! (gnus-run-hooks 'gnus-article-menu-hook))) (defun gnus-article-mode () "Major mode for displaying an article. *************** *** 1963,1969 **** (buffer-disable-undo (current-buffer)) (setq buffer-read-only t) (set-syntax-table gnus-article-mode-syntax-table) ! (run-hooks 'gnus-article-mode-hook)) (defun gnus-article-setup-buffer () "Initialize the article buffer." --- 1963,1969 ---- (buffer-disable-undo (current-buffer)) (setq buffer-read-only t) (set-syntax-table gnus-article-mode-syntax-table) ! (gnus-run-hooks 'gnus-article-mode-hook)) (defun gnus-article-setup-buffer () "Initialize the article buffer." *************** *** 2096,2105 **** (setq gnus-current-headers nil)) (gnus-summary-goto-subject gnus-current-article) (gnus-summary-show-thread) ! (run-hooks 'gnus-mark-article-hook) (gnus-set-mode-line 'summary) (when (gnus-visual-p 'article-highlight 'highlight) ! (run-hooks 'gnus-visual-mark-article-hook)) ;; Set the global newsgroup variables here. ;; Suggested by Jim Sisolak ;; . --- 2096,2105 ---- (setq gnus-current-headers nil)) (gnus-summary-goto-subject gnus-current-article) (gnus-summary-show-thread) ! (gnus-run-hooks 'gnus-mark-article-hook) (gnus-set-mode-line 'summary) (when (gnus-visual-p 'article-highlight 'highlight) ! (gnus-run-hooks 'gnus-visual-mark-article-hook)) ;; Set the global newsgroup variables here. ;; Suggested by Jim Sisolak ;; . *************** *** 2119,2126 **** ;; Hooks for getting information from the article. ;; This hook must be called before being narrowed. (let (buffer-read-only) ! (run-hooks 'internal-hook) ! (run-hooks 'gnus-article-prepare-hook) ;; Decode MIME message. (when gnus-show-mime (if (or (not gnus-strict-mime) --- 2119,2126 ---- ;; Hooks for getting information from the article. ;; This hook must be called before being narrowed. (let (buffer-read-only) ! (gnus-run-hooks 'internal-hook) ! (gnus-run-hooks 'gnus-article-prepare-hook) ;; Decode MIME message. (when gnus-show-mime (if (or (not gnus-strict-mime) *************** *** 2130,2136 **** (funcall gnus-show-mime-method)) (funcall gnus-decode-encoded-word-method))) ;; Perform the article display hooks. ! (run-hooks 'gnus-article-display-hook)) ;; Do page break. (goto-char (point-min)) (setq gnus-page-broken --- 2130,2136 ---- (funcall gnus-show-mime-method)) (funcall gnus-decode-encoded-word-method))) ;; Perform the article display hooks. ! (gnus-run-hooks 'gnus-article-display-hook)) ;; Do page break. (goto-char (point-min)) (setq gnus-page-broken *************** *** 2552,2558 **** ;;; (defcustom gnus-article-edit-mode-hook nil ! "Hook run in article edit mode buffers." :group 'gnus-article-various :type 'hook) --- 2552,2558 ---- ;;; (defcustom gnus-article-edit-mode-hook nil ! "*Hook run in article edit mode buffers." :group 'gnus-article-various :type 'hook) *************** *** 2586,2592 **** (setq buffer-read-only nil) (buffer-enable-undo) (widen) ! (run-hooks 'text-mode 'gnus-article-edit-mode-hook)) (defun gnus-article-edit (&optional force) "Edit the current article. --- 2586,2592 ---- (setq buffer-read-only nil) (buffer-enable-undo) (widen) ! (gnus-run-hooks 'text-mode 'gnus-article-edit-mode-hook)) (defun gnus-article-edit (&optional force) "Edit the current article. *************** *** 2702,2708 **** ;;; Internal Variables: (defcustom gnus-button-url-regexp "\\b\\(s?https?\\|ftp\\|file\\|gopher\\|news\\|telnet\\|wais\\|mailto\\):\\(//[-a-zA-Z0-9_.]+:[0-9]*\\)?\\([-a-zA-Z0-9_=!?#$@~`%&*+|\\/:;.,]\\|\\w\\)+\\([-a-zA-Z0-9_=#$@~`%&*+|\\/]\\|\\w\\)" ! "Regular expression that matches URLs." :group 'gnus-article-buttons :type 'regexp) --- 2702,2708 ---- ;;; Internal Variables: (defcustom gnus-button-url-regexp "\\b\\(s?https?\\|ftp\\|file\\|gopher\\|news\\|telnet\\|wais\\|mailto\\):\\(//[-a-zA-Z0-9_.]+:[0-9]*\\)?\\([-a-zA-Z0-9_=!?#$@~`%&*+|\\/:;.,]\\|\\w\\)+\\([-a-zA-Z0-9_=#$@~`%&*+|\\/]\\|\\w\\)" ! "*Regular expression that matches URLs." :group 'gnus-article-buttons :type 'regexp) *************** *** 2721,2727 **** ("]*\\)>" 0 t gnus-button-embedded-url 1) ;; Raw URLs. (,gnus-button-url-regexp 0 t gnus-button-url 0)) ! "Alist of regexps matching buttons in article bodies. Each entry has the form (REGEXP BUTTON FORM CALLBACK PAR...), where REGEXP: is the string matching text around the button, --- 2721,2727 ---- ("]*\\)>" 0 t gnus-button-embedded-url 1) ;; Raw URLs. (,gnus-button-url-regexp 0 t gnus-button-url 0)) ! "*Alist of regexps matching buttons in article bodies. Each entry has the form (REGEXP BUTTON FORM CALLBACK PAR...), where REGEXP: is the string matching text around the button, *************** *** 2753,2759 **** ("^[^:]+:" ,gnus-button-url-regexp 0 t gnus-button-url 0) ("^[^:]+:" "\\(<\\(url: \\)?news:\\([^>\n ]*\\)>\\)" 1 t gnus-button-message-id 3)) ! "Alist of headers and regexps to match buttons in article heads. This alist is very similar to `gnus-button-alist', except that each alist has an additional HEADER element first in each entry: --- 2753,2759 ---- ("^[^:]+:" ,gnus-button-url-regexp 0 t gnus-button-url 0) ("^[^:]+:" "\\(<\\(url: \\)?news:\\([^>\n ]*\\)>\\)" 1 t gnus-button-message-id 3)) ! "*Alist of headers and regexps to match buttons in article heads. This alist is very similar to `gnus-button-alist', except that each alist has an additional HEADER element first in each entry: *** pub/qgnus/lisp/gnus-async.el Fri Feb 13 22:39:01 1998 --- qgnus/lisp/gnus-async.el Sat Feb 14 19:27:27 1998 *************** *** 1,5 **** ;;; gnus-async.el --- asynchronous support for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-async.el --- asynchronous support for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 51,57 **** (integer :tag "some" 0))) (defcustom gnus-prefetched-article-deletion-strategy '(read exit) ! "List of symbols that say when to remove articles from the prefetch buffer. Possible values in this list are `read', which means that articles are removed as they are read, and `exit', which means that all articles belonging to a group are removed on exit --- 51,57 ---- (integer :tag "some" 0))) (defcustom gnus-prefetched-article-deletion-strategy '(read exit) ! "*List of symbols that say when to remove articles from the prefetch buffer. Possible values in this list are `read', which means that articles are removed as they are read, and `exit', which means that all articles belonging to a group are removed on exit *************** *** 65,71 **** :type 'boolean) (defcustom gnus-async-prefetch-article-p 'gnus-async-unread-p ! "Function called to say whether an article should be prefetched or not. The function is called with one parameter -- the article data. It should return non-nil if the article is to be prefetched." :group 'gnus-asynchronous --- 65,71 ---- :type 'boolean) (defcustom gnus-async-prefetch-article-p 'gnus-async-unread-p ! "*Function called to say whether an article should be prefetched or not. The function is called with one parameter -- the article data. It should return non-nil if the article is to be prefetched." :group 'gnus-asynchronous *** pub/qgnus/lisp/gnus-audio.el Tue Nov 25 19:02:10 1997 --- qgnus/lisp/gnus-audio.el Sat Feb 14 19:27:27 1998 *************** *** 2,8 **** ;; Copyright (C) 1996 Free Software Foundation ;; Author: Steven L. Baur - ;; Keywords: news ;; This file is part of GNU Emacs. --- 2,7 ---- *************** *** 71,84 **** ; "Enable Sound Effects for Gnus." ; (interactive) ; (setq gnus-audio-effects-enabled t) ! ; (run-hooks gnus-audio-enable-hooks)) ;;;###autoload ;(defun gnus-audio-disable-sound () ; "Disable Sound Effects for Gnus." ; (interactive) ; (setq gnus-audio-effects-enabled nil) ! ; (run-hooks gnus-audio-disable-hooks)) ;;;###autoload (defun gnus-audio-play (file) --- 70,83 ---- ; "Enable Sound Effects for Gnus." ; (interactive) ; (setq gnus-audio-effects-enabled t) ! ; (gnus-run-hooks gnus-audio-enable-hooks)) ;;;###autoload ;(defun gnus-audio-disable-sound () ; "Disable Sound Effects for Gnus." ; (interactive) ; (setq gnus-audio-effects-enabled nil) ! ; (gnus-run-hooks gnus-audio-disable-hooks)) ;;;###autoload (defun gnus-audio-play (file) *** pub/qgnus/lisp/gnus-bcklg.el Sun Sep 14 13:12:57 1997 --- qgnus/lisp/gnus-bcklg.el Sat Feb 14 19:27:28 1998 *************** *** 1,5 **** ;;; gnus-bcklg.el --- backlog functions for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-bcklg.el --- backlog functions for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/gnus-cache.el Sun Jan 4 11:11:48 1998 --- qgnus/lisp/gnus-cache.el Sat Feb 14 19:27:28 1998 *************** *** 1,5 **** ;;; gnus-cache.el --- cache interface for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-cache.el --- cache interface for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 51,62 **** :type 'file) (defcustom gnus-cache-enter-articles '(ticked dormant) ! "Classes of articles to enter into the cache." :group 'gnus-cache :type '(set (const ticked) (const dormant) (const unread) (const read))) (defcustom gnus-cache-remove-articles '(read) ! "Classes of articles to remove from the cache." :group 'gnus-cache :type '(set (const ticked) (const dormant) (const unread) (const read))) --- 51,62 ---- :type 'file) (defcustom gnus-cache-enter-articles '(ticked dormant) ! "*Classes of articles to enter into the cache." :group 'gnus-cache :type '(set (const ticked) (const dormant) (const unread) (const read))) (defcustom gnus-cache-remove-articles '(read) ! "*Classes of articles to remove from the cache." :group 'gnus-cache :type '(set (const ticked) (const dormant) (const unread) (const read))) *** pub/qgnus/lisp/gnus-cite.el Fri Feb 13 22:39:01 1998 --- qgnus/lisp/gnus-cite.el Sat Feb 14 19:27:28 1998 *************** *** 1,5 **** ;;; gnus-cite.el --- parse citations in articles for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Per Abrahamsen ;; Keywords: news, mail --- 1,5 ---- ;;; gnus-cite.el --- parse citations in articles for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Per Abrahamsen ;; Keywords: news, mail *************** *** 41,70 **** (defcustom gnus-cite-reply-regexp "^\\(Subject: Re\\|In-Reply-To\\|References\\):" ! "If headers match this regexp it is reasonable to believe that article has citations." :group 'gnus-cite :type 'string) (defcustom gnus-cite-always-check nil ! "Check article always for citations. Set it t to check all articles." :group 'gnus-cite :type '(choice (const :tag "no" nil) (const :tag "yes" t))) (defcustom gnus-cited-text-button-line-format "%(%{[...]%}%)\n" ! "Format of cited text buttons." :group 'gnus-cite :type 'string) (defcustom gnus-cited-lines-visible nil ! "The number of lines of hidden cited text to remain visible." :group 'gnus-cite :type '(choice (const :tag "none" nil) integer)) (defcustom gnus-cite-parse-max-size 25000 ! "Maximum article size (in bytes) where parsing citations is allowed. Set it to nil to parse all articles." :group 'gnus-cite :type '(choice (const :tag "all" nil) --- 41,70 ---- (defcustom gnus-cite-reply-regexp "^\\(Subject: Re\\|In-Reply-To\\|References\\):" ! "*If headers match this regexp it is reasonable to believe that article has citations." :group 'gnus-cite :type 'string) (defcustom gnus-cite-always-check nil ! "*Check article always for citations. Set it t to check all articles." :group 'gnus-cite :type '(choice (const :tag "no" nil) (const :tag "yes" t))) (defcustom gnus-cited-text-button-line-format "%(%{[...]%}%)\n" ! "*Format of cited text buttons." :group 'gnus-cite :type 'string) (defcustom gnus-cited-lines-visible nil ! "*The number of lines of hidden cited text to remain visible." :group 'gnus-cite :type '(choice (const :tag "none" nil) integer)) (defcustom gnus-cite-parse-max-size 25000 ! "*Maximum article size (in bytes) where parsing citations is allowed. Set it to nil to parse all articles." :group 'gnus-cite :type '(choice (const :tag "all" nil) *************** *** 72,114 **** (defcustom gnus-cite-prefix-regexp "^[]>|:}+ ]*[]>|:}+]\\(.*>\\)?\\|^.*>" ! "Regexp matching the longest possible citation prefix on a line." :group 'gnus-cite :type 'regexp) (defcustom gnus-cite-max-prefix 20 ! "Maximum possible length for a citation prefix." :group 'gnus-cite :type 'integer) (defcustom gnus-supercite-regexp (concat "^\\(" gnus-cite-prefix-regexp "\\)? *" ">>>>> +\"\\([^\"\n]+\\)\" +==") ! "Regexp matching normal Supercite attribution lines. The first grouping must match prefixes added by other packages." :group 'gnus-cite :type 'regexp) (defcustom gnus-supercite-secondary-regexp "^.*\"\\([^\"\n]+\\)\" +==" ! "Regexp matching mangled Supercite attribution lines. The first regexp group should match the Supercite attribution." :group 'gnus-cite :type 'regexp) (defcustom gnus-cite-minimum-match-count 2 ! "Minimum number of identical prefixes before we believe it's a citation." :group 'gnus-cite :type 'integer) (defcustom gnus-cite-attribution-prefix "in article\\|in <\\|On \\(Mon\\|Tue\\|Wed\\|Thu\\|Fri\\|Sat\\|Sun\\)," ! "Regexp matching the beginning of an attribution line." :group 'gnus-cite :type 'regexp) (defcustom gnus-cite-attribution-suffix "\\(\\(wrote\\|writes\\|said\\|says\\|>\\)\\(:\\|\\.\\.\\.\\)\\)[ \t]*$" ! "Regexp matching the end of an attribution line. The text matching the first grouping will be used as a button." :group 'gnus-cite :type 'regexp) --- 72,114 ---- (defcustom gnus-cite-prefix-regexp "^[]>|:}+ ]*[]>|:}+]\\(.*>\\)?\\|^.*>" ! "*Regexp matching the longest possible citation prefix on a line." :group 'gnus-cite :type 'regexp) (defcustom gnus-cite-max-prefix 20 ! "*Maximum possible length for a citation prefix." :group 'gnus-cite :type 'integer) (defcustom gnus-supercite-regexp (concat "^\\(" gnus-cite-prefix-regexp "\\)? *" ">>>>> +\"\\([^\"\n]+\\)\" +==") ! "*Regexp matching normal Supercite attribution lines. The first grouping must match prefixes added by other packages." :group 'gnus-cite :type 'regexp) (defcustom gnus-supercite-secondary-regexp "^.*\"\\([^\"\n]+\\)\" +==" ! "*Regexp matching mangled Supercite attribution lines. The first regexp group should match the Supercite attribution." :group 'gnus-cite :type 'regexp) (defcustom gnus-cite-minimum-match-count 2 ! "*Minimum number of identical prefixes before we believe it's a citation." :group 'gnus-cite :type 'integer) (defcustom gnus-cite-attribution-prefix "in article\\|in <\\|On \\(Mon\\|Tue\\|Wed\\|Thu\\|Fri\\|Sat\\|Sun\\)," ! "*Regexp matching the beginning of an attribution line." :group 'gnus-cite :type 'regexp) (defcustom gnus-cite-attribution-suffix "\\(\\(wrote\\|writes\\|said\\|says\\|>\\)\\(:\\|\\.\\.\\.\\)\\)[ \t]*$" ! "*Regexp matching the end of an attribution line. The text matching the first grouping will be used as a button." :group 'gnus-cite :type 'regexp) *************** *** 118,124 **** "Face used for attribution lines.") (defcustom gnus-cite-attribution-face 'gnus-cite-attribution-face ! "Face used for attribution lines. It is merged with the face for the cited text belonging to the attribution." :group 'gnus-cite :type 'face) --- 118,124 ---- "Face used for attribution lines.") (defcustom gnus-cite-attribution-face 'gnus-cite-attribution-face ! "*Face used for attribution lines. It is merged with the face for the cited text belonging to the attribution." :group 'gnus-cite :type 'face) *************** *** 237,243 **** '(gnus-cite-face-1 gnus-cite-face-2 gnus-cite-face-3 gnus-cite-face-4 gnus-cite-face-5 gnus-cite-face-6 gnus-cite-face-7 gnus-cite-face-8 gnus-cite-face-9 gnus-cite-face-10 gnus-cite-face-11) ! "List of faces used for highlighting citations. When there are citations from multiple articles in the same message, Gnus will try to give each citation from each article its own face. --- 237,243 ---- '(gnus-cite-face-1 gnus-cite-face-2 gnus-cite-face-3 gnus-cite-face-4 gnus-cite-face-5 gnus-cite-face-6 gnus-cite-face-7 gnus-cite-face-8 gnus-cite-face-9 gnus-cite-face-10 gnus-cite-face-11) ! "*List of faces used for highlighting citations. When there are citations from multiple articles in the same message, Gnus will try to give each citation from each article its own face. *************** *** 246,257 **** :type '(repeat face)) (defcustom gnus-cite-hide-percentage 50 ! "Only hide excess citation if above this percentage of the body." :group 'gnus-cite :type 'number) (defcustom gnus-cite-hide-absolute 10 ! "Only hide excess citation if above this number of lines in the body." :group 'gnus-cite :type 'integer) --- 246,257 ---- :type '(repeat face)) (defcustom gnus-cite-hide-percentage 50 ! "*Only hide excess citation if above this percentage of the body." :group 'gnus-cite :type 'number) (defcustom gnus-cite-hide-absolute 10 ! "*Only hide excess citation if above this number of lines in the body." :group 'gnus-cite :type 'integer) *** pub/qgnus/lisp/gnus-cus.el Fri Feb 13 22:39:02 1998 --- qgnus/lisp/gnus-cus.el Sat Feb 14 19:27:29 1998 *************** *** 51,57 **** (setq major-mode 'gnus-custom-mode mode-name "Gnus Customize") (use-local-map widget-keymap) ! (run-hooks 'gnus-custom-mode-hook)) ;;; Group Customization: --- 51,57 ---- (setq major-mode 'gnus-custom-mode mode-name "Gnus Customize") (use-local-map widget-keymap) ! (gnus-run-hooks 'gnus-custom-mode-hook)) ;;; Group Customization: *** pub/qgnus/lisp/gnus-demon.el Wed Nov 26 17:44:35 1997 --- qgnus/lisp/gnus-demon.el Sat Feb 14 19:27:29 1998 *************** *** 1,5 **** ;;; gnus-demon.el --- daemonic Gnus behaviour ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-demon.el --- daemonic Gnus behaviour ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 41,47 **** :group 'gnus) (defcustom gnus-demon-handlers nil ! "Alist of daemonic handlers to be run at intervals. Each handler is a list on the form \(FUNCTION TIME IDLE) --- 41,47 ---- :group 'gnus) (defcustom gnus-demon-handlers nil ! "*Alist of daemonic handlers to be run at intervals. Each handler is a list on the form \(FUNCTION TIME IDLE) *** pub/qgnus/lisp/gnus-draft.el Fri Feb 13 22:39:02 1998 --- qgnus/lisp/gnus-draft.el Sat Feb 14 19:27:29 1998 *************** *** 1,7 **** ;;; gnus-draft.el --- draft message support for Gnus ! ;; Copyright (C) 1997 Free Software Foundation, Inc. ! ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news ;; This file is part of GNU Emacs. --- 1,7 ---- ;;; gnus-draft.el --- draft message support for Gnus ! ;; Copyright (C) 1997,98 Free Software Foundation, Inc. ! ;; Author: Lars Magne Ingebrigtgnus-run-hooks ;; Keywords: news ;; This file is part of GNU Emacs. *************** *** 56,62 **** ["Toggle whether to send" gnus-draft-toggle-sending t] ["Edit" gnus-draft-edit-message t] ["Send selected message(s)" gnus-draft-send-message t] ! ["Send all messages" gnus-draft-send-all-messages t])))) (defun gnus-draft-mode (&optional arg) "Minor mode for providing a draft summary buffers. --- 56,63 ---- ["Toggle whether to send" gnus-draft-toggle-sending t] ["Edit" gnus-draft-edit-message t] ["Send selected message(s)" gnus-draft-send-message t] ! ["Send all messages" gnus-draft-send-all-messages t] ! ["Delete draft" gnus-summary-delete-article t])))) (defun gnus-draft-mode (&optional arg) "Minor mode for providing a draft summary buffers. *************** *** 71,77 **** (when (gnus-visual-p 'draft-menu 'menu) (gnus-draft-make-menu-bar)) (gnus-add-minor-mode 'gnus-draft-mode " Draft" gnus-draft-mode-map) ! (run-hooks 'gnus-draft-mode-hook)))) ;;; Commands --- 72,78 ---- (when (gnus-visual-p 'draft-menu 'menu) (gnus-draft-make-menu-bar)) (gnus-add-minor-mode 'gnus-draft-mode " Draft" gnus-draft-mode-map) ! (gnus-run-hooks 'gnus-draft-mode-hook)))) ;;; Commands *** pub/qgnus/lisp/gnus-dup.el Sat Sep 13 20:30:24 1997 --- qgnus/lisp/gnus-dup.el Sat Feb 14 19:27:29 1998 *************** *** 1,5 **** ;;; gnus-dup.el --- suppression of duplicate articles in Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-dup.el --- suppression of duplicate articles in Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/gnus-eform.el Sat Sep 13 20:30:24 1997 --- qgnus/lisp/gnus-eform.el Sat Feb 14 19:27:30 1998 *************** *** 1,5 **** ;;; gnus-eform.el --- a mode for editing forms for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-eform.el --- a mode for editing forms for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 37,48 **** :group 'gnus) (defcustom gnus-edit-form-mode-hook nil ! "Hook run in `gnus-edit-form-mode' buffers." :group 'gnus-edit-form :type 'hook) (defcustom gnus-edit-form-menu-hook nil ! "Hook run when creating menus in `gnus-edit-form-mode' buffers." :group 'gnus-edit-form :type 'hook) --- 37,48 ---- :group 'gnus) (defcustom gnus-edit-form-mode-hook nil ! "*Hook run in `gnus-edit-form-mode' buffers." :group 'gnus-edit-form :type 'hook) (defcustom gnus-edit-form-menu-hook nil ! "*Hook run when creating menus in `gnus-edit-form-mode' buffers." :group 'gnus-edit-form :type 'hook) *************** *** 65,71 **** '("Edit Form" ["Exit and save changes" gnus-edit-form-done t] ["Exit" gnus-edit-form-exit t])) ! (run-hooks 'gnus-edit-form-menu-hook))) (defun gnus-edit-form-mode () "Major mode for editing forms. --- 65,71 ---- '("Edit Form" ["Exit and save changes" gnus-edit-form-done t] ["Exit" gnus-edit-form-exit t])) ! (gnus-run-hooks 'gnus-edit-form-menu-hook))) (defun gnus-edit-form-mode () "Major mode for editing forms. *************** *** 81,87 **** (use-local-map gnus-edit-form-mode-map) (make-local-variable 'gnus-edit-form-done-function) (make-local-variable 'gnus-prev-winconf) ! (run-hooks 'gnus-edit-form-mode-hook)) (defun gnus-edit-form (form documentation exit-func) "Edit FORM in a new buffer. --- 81,87 ---- (use-local-map gnus-edit-form-mode-map) (make-local-variable 'gnus-edit-form-done-function) (make-local-variable 'gnus-prev-winconf) ! (gnus-run-hooks 'gnus-edit-form-mode-hook)) (defun gnus-edit-form (form documentation exit-func) "Edit FORM in a new buffer. *** pub/qgnus/lisp/gnus-ems.el Tue Jan 6 07:48:27 1998 --- qgnus/lisp/gnus-ems.el Sat Feb 14 19:27:30 1998 *************** *** 1,5 **** ;;; gnus-ems.el --- functions for making Gnus work under different Emacsen ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-ems.el --- functions for making Gnus work under different Emacsen ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/gnus-gl.el Mon Nov 24 15:08:12 1997 --- qgnus/lisp/gnus-gl.el Sat Feb 14 19:27:30 1998 *************** *** 1,5 **** ;;; gnus-gl.el --- an interface to GroupLens for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Brad Miller ;; Keywords: news, score --- 1,5 ---- ;;; gnus-gl.el --- an interface to GroupLens for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Brad Miller ;; Keywords: news, score *************** *** 852,858 **** (gnus-grouplens-make-menu-bar)) (gnus-add-minor-mode 'gnus-grouplens-mode " GroupLens" gnus-grouplens-mode-map) ! (run-hooks 'gnus-grouplens-mode-hook)))) (provide 'gnus-gl) --- 852,858 ---- (gnus-grouplens-make-menu-bar)) (gnus-add-minor-mode 'gnus-grouplens-mode " GroupLens" gnus-grouplens-mode-map) ! (gnus-run-hooks 'gnus-grouplens-mode-hook)))) (provide 'gnus-gl) *** pub/qgnus/lisp/gnus-group.el Wed Feb 11 15:04:42 1998 --- qgnus/lisp/gnus-group.el Sat Feb 14 19:27:32 1998 *************** *** 1,5 **** ;;; gnus-group.el --- group mode commands for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-group.el --- group mode commands for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 196,219 **** :type 'string) (defcustom gnus-group-mode-hook nil ! "Hook for Gnus group mode." :group 'gnus-group-various :options '(gnus-topic-mode) :type 'hook) (defcustom gnus-group-menu-hook nil ! "Hook run after the creation of the group mode menu." :group 'gnus-group-various :type 'hook) (defcustom gnus-group-catchup-group-hook nil ! "Hook run when catching up a group from the group buffer." :group 'gnus-group-various :link '(custom-manual "(gnus)Group Data") :type 'hook) (defcustom gnus-group-update-group-hook nil ! "Hook called when updating group lines." :group 'gnus-group-visual :type 'hook) --- 196,219 ---- :type 'string) (defcustom gnus-group-mode-hook nil ! "*Hook for Gnus group mode." :group 'gnus-group-various :options '(gnus-topic-mode) :type 'hook) (defcustom gnus-group-menu-hook nil ! "*Hook run after the creation of the group mode menu." :group 'gnus-group-various :type 'hook) (defcustom gnus-group-catchup-group-hook nil ! "*Hook run when catching up a group from the group buffer." :group 'gnus-group-various :link '(custom-manual "(gnus)Group Data") :type 'hook) (defcustom gnus-group-update-group-hook nil ! "*Hook called when updating group lines." :group 'gnus-group-visual :type 'hook) *************** *** 230,257 **** :type 'function) (defcustom gnus-group-prepare-hook nil ! "Hook called after the group buffer has been generated. If you want to modify the group buffer, you can use this hook." :group 'gnus-group-listing :type 'hook) (defcustom gnus-suspend-gnus-hook nil ! "Hook called when suspending (not exiting) Gnus." :group 'gnus-exit :type 'hook) (defcustom gnus-exit-gnus-hook nil ! "Hook called when exiting Gnus." :group 'gnus-exit :type 'hook) (defcustom gnus-after-exiting-gnus-hook nil ! "Hook called after exiting Gnus." :group 'gnus-exit :type 'hook) (defcustom gnus-group-update-hook '(gnus-group-highlight-line) ! "Hook called when a group line is changed. The hook will not be called if `gnus-visual' is nil. The default function `gnus-group-highlight-line' will --- 230,257 ---- :type 'function) (defcustom gnus-group-prepare-hook nil ! "*Hook called after the group buffer has been generated. If you want to modify the group buffer, you can use this hook." :group 'gnus-group-listing :type 'hook) (defcustom gnus-suspend-gnus-hook nil ! "*Hook called when suspending (not exiting) Gnus." :group 'gnus-exit :type 'hook) (defcustom gnus-exit-gnus-hook nil ! "*Hook called when exiting Gnus." :group 'gnus-exit :type 'hook) (defcustom gnus-after-exiting-gnus-hook nil ! "*Hook called after exiting Gnus." :group 'gnus-exit :type 'hook) (defcustom gnus-group-update-hook '(gnus-group-highlight-line) ! "*Hook called when a group line is changed. The hook will not be called if `gnus-visual' is nil. The default function `gnus-group-highlight-line' will *************** *** 275,281 **** (unless file (error "Couldn't find doc group")) file)))))) ! "Alist of useful group-server pairs." :group 'gnus-group-listing :type '(repeat (list (string :tag "Description") (string :tag "Name") --- 275,281 ---- (unless file (error "Couldn't find doc group")) file)))))) ! "*Alist of useful group-server pairs." :group 'gnus-group-listing :type '(repeat (list (string :tag "Description") (string :tag "Name") *************** *** 316,322 **** gnus-group-mail-low-empty-face) (t . gnus-group-mail-low-face)) ! "Controls the highlighting of group buffer lines. Below is a list of `Form'/`Face' pairs. When deciding how a a particular group line should be displayed, each form is --- 316,322 ---- gnus-group-mail-low-empty-face) (t . gnus-group-mail-low-face)) ! "*Controls the highlighting of group buffer lines. Below is a list of `Form'/`Face' pairs. When deciding how a a particular group line should be displayed, each form is *************** *** 340,346 **** :type '(repeat (cons (sexp :tag "Form") face))) (defcustom gnus-new-mail-mark ?% ! "Mark used for groups with new mail." :group 'gnus-group-visual :type 'character) --- 340,346 ---- :type '(repeat (cons (sexp :tag "Form") face))) (defcustom gnus-new-mail-mark ?% ! "*Mark used for groups with new mail." :group 'gnus-group-visual :type 'character) *************** *** 730,736 **** ["Exit from Gnus" gnus-group-exit t] ["Exit without saving" gnus-group-quit t])) ! (run-hooks 'gnus-group-menu-hook))) (defun gnus-group-mode () "Major mode for reading news. --- 730,736 ---- ["Exit from Gnus" gnus-group-exit t] ["Exit without saving" gnus-group-quit t])) ! (gnus-run-hooks 'gnus-group-menu-hook))) (defun gnus-group-mode () "Major mode for reading news. *************** *** 769,775 **** (add-hook 'post-command-hook 'gnus-clear-inboxes-moved nil t) (when gnus-use-undo (gnus-undo-mode 1)) ! (run-hooks 'gnus-group-mode-hook)) (defun gnus-update-group-mark-positions () (save-excursion --- 769,775 ---- (add-hook 'post-command-hook 'gnus-clear-inboxes-moved nil t) (when gnus-use-undo (gnus-undo-mode 1)) ! (gnus-run-hooks 'gnus-group-mode-hook)) (defun gnus-update-group-mark-positions () (save-excursion *************** *** 948,954 **** (gnus-group-set-mode-line) (setq gnus-group-list-mode (cons level all)) ! (run-hooks 'gnus-group-prepare-hook) t)) (defun gnus-group-prepare-flat-list-dead (groups level mark regexp) --- 948,954 ---- (gnus-group-set-mode-line) (setq gnus-group-list-mode (cons level all)) ! (gnus-run-hooks 'gnus-group-prepare-hook) t)) (defun gnus-group-prepare-flat-list-dead (groups level mark regexp) *************** *** 1090,1096 **** gnus-level ,gnus-tmp-level)) (when (inline (gnus-visual-p 'group-highlight 'highlight)) (forward-line -1) ! (run-hooks 'gnus-group-update-hook) (forward-line)) ;; Allow XEmacs to remove front-sticky text properties. (gnus-group-remove-excess-properties))) --- 1090,1096 ---- gnus-level ,gnus-tmp-level)) (when (inline (gnus-visual-p 'group-highlight 'highlight)) (forward-line -1) ! (gnus-run-hooks 'gnus-group-update-hook) (forward-line)) ;; Allow XEmacs to remove front-sticky text properties. (gnus-group-remove-excess-properties))) *************** *** 1163,1169 **** (gnus-group-insert-group-line-info group) (save-excursion (forward-line -1) ! (run-hooks 'gnus-group-update-group-hook))) (setq loc (1+ loc))) (unless (or found visible-only) ;; No such line in the buffer, find out where it's supposed to --- 1163,1169 ---- (gnus-group-insert-group-line-info group) (save-excursion (forward-line -1) ! (gnus-run-hooks 'gnus-group-update-group-hook))) (setq loc (1+ loc))) (unless (or found visible-only) ;; No such line in the buffer, find out where it's supposed to *************** *** 1185,1191 **** (gnus-group-insert-group-line-info group) (save-excursion (forward-line -1) ! (run-hooks 'gnus-group-update-group-hook)))) (when gnus-group-update-group-function (funcall gnus-group-update-group-function group)) (gnus-group-set-mode-line))) --- 1185,1191 ---- (gnus-group-insert-group-line-info group) (save-excursion (forward-line -1) ! (gnus-run-hooks 'gnus-group-update-group-hook)))) (when gnus-group-update-group-function (funcall gnus-group-update-group-function group)) (gnus-group-set-mode-line))) *************** *** 1898,1903 **** --- 1898,1904 ---- (gnus-set-active new-name (gnus-active group)) (gnus-message 6 "Renaming group %s to %s...done" group new-name) new-name) + (gnus-dribble-touch) (gnus-group-position-point))) (defun gnus-group-edit-group (group &optional part) *************** *** 2479,2485 **** (gnus-add-marked-articles group 'tick nil nil 'force) (gnus-add-marked-articles group 'dormant nil nil 'force)) (let ((gnus-newsgroup-name group)) ! (run-hooks 'gnus-group-catchup-group-hook)) num)))) (defun gnus-group-expire-articles (&optional n) --- 2480,2486 ---- (gnus-add-marked-articles group 'tick nil nil 'force) (gnus-add-marked-articles group 'dormant nil nil 'force)) (let ((gnus-newsgroup-name group)) ! (gnus-run-hooks 'gnus-group-catchup-group-hook)) num)))) (defun gnus-group-expire-articles (&optional n) *************** *** 2869,2875 **** \"hard\" re-reading of the active files from all servers." (interactive "P") (let ((gnus-inhibit-demon t)) ! (run-hooks 'gnus-get-new-news-hook) ;; Read any slave files. (unless gnus-slave --- 2870,2876 ---- \"hard\" re-reading of the active files from all servers." (interactive "P") (let ((gnus-inhibit-demon t)) ! (gnus-run-hooks 'gnus-get-new-news-hook) ;; Read any slave files. (unless gnus-slave *************** *** 2896,2902 **** (gnus-get-unread-articles arg)) (let ((gnus-read-active-file (if arg nil gnus-read-active-file))) (gnus-get-unread-articles arg))) ! (run-hooks 'gnus-after-getting-new-news-hook) (gnus-group-list-groups (and (numberp arg) (max (car gnus-group-list-mode) arg))))) --- 2897,2903 ---- (gnus-get-unread-articles arg)) (let ((gnus-read-active-file (if arg nil gnus-read-active-file))) (gnus-get-unread-articles arg))) ! (gnus-run-hooks 'gnus-after-getting-new-news-hook) (gnus-group-list-groups (and (numberp arg) (max (car gnus-group-list-mode) arg))))) *************** *** 3153,3159 **** In fact, cleanup buffers except for group mode buffer. The hook gnus-suspend-gnus-hook is called before actually suspending." (interactive) ! (run-hooks 'gnus-suspend-gnus-hook) ;; Kill Gnus buffers except for group mode buffer. (let* ((group-buf (get-buffer gnus-group-buffer)) ;; Do this on a separate list in case the user does a ^G before we finish --- 3154,3160 ---- In fact, cleanup buffers except for group mode buffer. The hook gnus-suspend-gnus-hook is called before actually suspending." (interactive) ! (gnus-run-hooks 'gnus-suspend-gnus-hook) ;; Kill Gnus buffers except for group mode buffer. (let* ((group-buf (get-buffer gnus-group-buffer)) ;; Do this on a separate list in case the user does a ^G before we finish *************** *** 3183,3189 **** (not gnus-interactive-exit) ;Without confirmation gnus-expert-user (gnus-y-or-n-p "Are you sure you want to quit reading news? ")) ! (run-hooks 'gnus-exit-gnus-hook) ;; Offer to save data from non-quitted summary buffers. (gnus-offer-save-summaries) ;; Save the newsrc file(s). --- 3184,3190 ---- (not gnus-interactive-exit) ;Without confirmation gnus-expert-user (gnus-y-or-n-p "Are you sure you want to quit reading news? ")) ! (gnus-run-hooks 'gnus-exit-gnus-hook) ;; Offer to save data from non-quitted summary buffers. (gnus-offer-save-summaries) ;; Save the newsrc file(s). *************** *** 3193,3199 **** ;; Reset everything. (gnus-clear-system) ;; Allow the user to do things after cleaning up. ! (run-hooks 'gnus-after-exiting-gnus-hook))) (defun gnus-group-quit () "Quit reading news without updating .newsrc.eld or .newsrc. --- 3194,3200 ---- ;; Reset everything. (gnus-clear-system) ;; Allow the user to do things after cleaning up. ! (gnus-run-hooks 'gnus-after-exiting-gnus-hook))) (defun gnus-group-quit () "Quit reading news without updating .newsrc.eld or .newsrc. *************** *** 3207,3220 **** (gnus-yes-or-no-p (format "Quit reading news without saving %s? " (file-name-nondirectory gnus-current-startup-file)))) ! (run-hooks 'gnus-exit-gnus-hook) (gnus-configure-windows 'group t) (gnus-dribble-save) (gnus-close-backends) (gnus-clear-system) (gnus-kill-buffer gnus-group-buffer) ;; Allow the user to do things after cleaning up. ! (run-hooks 'gnus-after-exiting-gnus-hook))) (defun gnus-group-describe-briefly () "Give a one line description of the group mode commands." --- 3208,3221 ---- (gnus-yes-or-no-p (format "Quit reading news without saving %s? " (file-name-nondirectory gnus-current-startup-file)))) ! (gnus-run-hooks 'gnus-exit-gnus-hook) (gnus-configure-windows 'group t) (gnus-dribble-save) (gnus-close-backends) (gnus-clear-system) (gnus-kill-buffer gnus-group-buffer) ;; Allow the user to do things after cleaning up. ! (gnus-run-hooks 'gnus-after-exiting-gnus-hook))) (defun gnus-group-describe-briefly () "Give a one line description of the group mode commands." *** pub/qgnus/lisp/gnus-int.el Sat Oct 4 00:32:48 1997 --- qgnus/lisp/gnus-int.el Sat Feb 14 19:27:33 1998 *************** *** 1,5 **** ;;; gnus-int.el --- backend interface functions for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-int.el --- backend interface functions for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 30,36 **** (require 'gnus) (defcustom gnus-open-server-hook nil ! "Hook called just before opening connection to the news server." :group 'gnus-start :type 'hook) --- 30,36 ---- (require 'gnus) (defcustom gnus-open-server-hook nil ! "*Hook called just before opening connection to the news server." :group 'gnus-start :type 'hook) *************** *** 86,92 **** (t (require 'nntp))) (setq gnus-current-select-method gnus-select-method) ! (run-hooks 'gnus-open-server-hook) (or ;; gnus-open-server-hook might have opened it (gnus-server-opened gnus-select-method) --- 86,92 ---- (t (require 'nntp))) (setq gnus-current-select-method gnus-select-method) ! (gnus-run-hooks 'gnus-open-server-hook) (or ;; gnus-open-server-hook might have opened it (gnus-server-opened gnus-select-method) *************** *** 121,127 **** (gnus-message 5 "Opening %s server%s..." (car method) (if (equal (nth 1 method) "") "" (format " on %s" (nth 1 method))))) ! (run-hooks 'gnus-open-server-hook) (prog1 (gnus-open-server method) (unless silent --- 121,127 ---- (gnus-message 5 "Opening %s server%s..." (car method) (if (equal (nth 1 method) "") "" (format " on %s" (nth 1 method))))) ! (gnus-run-hooks 'gnus-open-server-hook) (prog1 (gnus-open-server method) (unless silent *** pub/qgnus/lisp/gnus-kill.el Wed Nov 26 17:44:37 1997 --- qgnus/lisp/gnus-kill.el Sat Feb 14 19:27:33 1998 *************** *** 1,5 **** ;;; gnus-kill.el --- kill commands for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen --- 1,5 ---- ;;; gnus-kill.el --- kill commands for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen *************** *** 33,39 **** (require 'gnus-range) (defcustom gnus-kill-file-mode-hook nil ! "Hook for Gnus kill file mode." :group 'gnus-score-kill :type 'hook) --- 33,39 ---- (require 'gnus-range) (defcustom gnus-kill-file-mode-hook nil ! "*Hook for Gnus kill file mode." :group 'gnus-score-kill :type 'hook) *************** *** 49,55 **** :type 'boolean) (defcustom gnus-winconf-kill-file nil ! "What does this do, Lars?" :group 'gnus-score-kill :type 'sexp) --- 49,55 ---- :type 'boolean) (defcustom gnus-winconf-kill-file nil ! "*What does this do, Lars?" :group 'gnus-score-kill :type 'sexp) *************** *** 159,165 **** (setq major-mode 'gnus-kill-file-mode) (setq mode-name "Kill") (lisp-mode-variables nil) ! (run-hooks 'emacs-lisp-mode-hook 'gnus-kill-file-mode-hook)) (defun gnus-kill-file-edit-file (newsgroup) "Begin editing a kill file for NEWSGROUP. --- 159,165 ---- (setq major-mode 'gnus-kill-file-mode) (setq mode-name "Kill") (lisp-mode-variables nil) ! (gnus-run-hooks 'emacs-lisp-mode-hook 'gnus-kill-file-mode-hook)) (defun gnus-kill-file-edit-file (newsgroup) "Begin editing a kill file for NEWSGROUP. *** pub/qgnus/lisp/gnus-logic.el Sat Sep 13 20:30:25 1997 --- qgnus/lisp/gnus-logic.el Sat Feb 14 19:27:33 1998 *************** *** 1,5 **** ;;; gnus-logic.el --- advanced scoring code for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-logic.el --- advanced scoring code for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/gnus-mh.el Sat Dec 6 17:45:11 1997 --- qgnus/lisp/gnus-mh.el Sat Feb 14 19:27:34 1998 *************** *** 1,5 **** ;;; gnus-mh.el --- mh-e interface for Gnus ! ;; Copyright (C) 1994,95,96,97 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen --- 1,5 ---- ;;; gnus-mh.el --- mh-e interface for Gnus ! ;; Copyright (C) 1994,95,96,97,98 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen *** pub/qgnus/lisp/gnus-move.el Wed Nov 26 17:44:37 1997 --- qgnus/lisp/gnus-move.el Sat Feb 14 19:27:34 1998 *************** *** 1,5 **** ;;; gnus-move.el --- commands for moving Gnus from one server to another ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-move.el --- commands for moving Gnus from one server to another ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/gnus-msg.el Sun Feb 8 18:14:36 1998 --- qgnus/lisp/gnus-msg.el Sat Feb 14 19:27:34 1998 *************** *** 1,5 **** ;;; gnus-msg.el --- mail and post interface for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen --- 1,5 ---- ;;; gnus-msg.el --- mail and post interface for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen *************** *** 173,179 **** (set (make-local-variable 'gnus-message-group-art) (cons ,gnus-newsgroup-name ,article)) (make-local-variable 'gnus-newsgroup-name) ! (run-hooks 'gnus-message-setup-hook)) (gnus-configure-windows ,config t) (set-buffer-modified-p nil)))) --- 173,179 ---- (set (make-local-variable 'gnus-message-group-art) (cons ,gnus-newsgroup-name ,article)) (make-local-variable 'gnus-newsgroup-name) ! (gnus-run-hooks 'gnus-message-setup-hook)) (gnus-configure-windows ,config t) (set-buffer-modified-p nil)))) *** pub/qgnus/lisp/gnus-nocem.el Sat Dec 6 17:45:12 1997 --- qgnus/lisp/gnus-nocem.el Sat Feb 14 19:27:35 1998 *************** *** 1,5 **** ;;; gnus-nocem.el --- NoCeM pseudo-cancellation treatment ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-nocem.el --- NoCeM pseudo-cancellation treatment ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 40,46 **** (defcustom gnus-nocem-groups '("news.lists.filters" "news.admin.net-abuse.bulletins" "alt.nocem.misc" "news.admin.net-abuse.announce") ! "List of groups that will be searched for NoCeM messages." :group 'gnus-nocem :type '(repeat (string :tag "Group"))) --- 40,46 ---- (defcustom gnus-nocem-groups '("news.lists.filters" "news.admin.net-abuse.bulletins" "alt.nocem.misc" "news.admin.net-abuse.announce") ! "*List of groups that will be searched for NoCeM messages." :group 'gnus-nocem :type '(repeat (string :tag "Group"))) *************** *** 52,58 **** "snowhare@xmission.com" ; Benjamin "Snowhare" Franz "red@redpoll.mrfs.oh.us (Richard E. Depew)" ; ARMM! ARMM! ) ! "List of NoCeM issuers to pay attention to. This can also be a list of `(ISSUER CONDITIONS)' elements." :group 'gnus-nocem --- 52,58 ---- "snowhare@xmission.com" ; Benjamin "Snowhare" Franz "red@redpoll.mrfs.oh.us (Richard E. Depew)" ; ARMM! ARMM! ) ! "*List of NoCeM issuers to pay attention to. This can also be a list of `(ISSUER CONDITIONS)' elements." :group 'gnus-nocem *** pub/qgnus/lisp/gnus-picon.el Sat Dec 6 17:45:12 1997 --- qgnus/lisp/gnus-picon.el Sat Feb 14 19:27:35 1998 *************** *** 1,5 **** ;;; gnus-picon.el --- displaying pretty icons in Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Wes Hardaker ;; Keywords: news xpm annotation glyph faces --- 1,5 ---- ;;; gnus-picon.el --- displaying pretty icons in Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Wes Hardaker ;; Keywords: news xpm annotation glyph faces *************** *** 62,68 **** :group 'picons) (defcustom gnus-picons-news-directories '("news") ! "*Sub-directory of the faces database containing the icons for newsgroups." :type '(repeat string) :group 'picons) (define-obsolete-variable-alias 'gnus-picons-news-directory --- 62,68 ---- :group 'picons) (defcustom gnus-picons-news-directories '("news") ! "*List of directories to search for newsgroups faces." :type '(repeat string) :group 'picons) (define-obsolete-variable-alias 'gnus-picons-news-directory *** pub/qgnus/lisp/gnus-range.el Sat Sep 13 20:30:26 1997 --- qgnus/lisp/gnus-range.el Sat Feb 14 19:27:35 1998 *************** *** 1,5 **** ;;; gnus-range.el --- range and sequence functions for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-range.el --- range and sequence functions for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/gnus-salt.el Sat Sep 27 13:02:58 1997 --- qgnus/lisp/gnus-salt.el Sat Feb 14 19:27:36 1998 *************** *** 1,7 **** ;;; gnus-salt.el --- alternate summary mode interfaces for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; This file is part of GNU Emacs. --- 1,8 ---- ;;; gnus-salt.el --- alternate summary mode interfaces for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen + ;; Keywords: news ;; This file is part of GNU Emacs. *************** *** 42,48 **** :group 'gnus-summary-pick) (defcustom gnus-pick-mode-hook nil ! "Hook run in summary pick mode buffers." :type 'hook :group 'gnus-summary-pick) --- 43,49 ---- :group 'gnus-summary-pick) (defcustom gnus-pick-mode-hook nil ! "*Hook run in summary pick mode buffers." :type 'hook :group 'gnus-summary-pick) *************** *** 52,58 **** :group 'gnus-summary-pick) (defcustom gnus-pick-elegant-flow t ! "If non-nil, gnus-pick-start-reading will run gnus-summary-next-group when no articles have been picked." :type 'boolean :group 'gnus-summary-pick) --- 53,59 ---- :group 'gnus-summary-pick) (defcustom gnus-pick-elegant-flow t ! "*If non-nil, gnus-pick-start-reading will run gnus-summary-next-group when no articles have been picked." :type 'boolean :group 'gnus-summary-pick) *************** *** 132,138 **** (when (gnus-visual-p 'pick-menu 'menu) (gnus-pick-make-menu-bar)) (gnus-add-minor-mode 'gnus-pick-mode " Pick" gnus-pick-mode-map) ! (run-hooks 'gnus-pick-mode-hook)))) (defun gnus-pick-setup-message () "Make Message do the right thing on exit." --- 133,139 ---- (when (gnus-visual-p 'pick-menu 'menu) (gnus-pick-make-menu-bar)) (gnus-add-minor-mode 'gnus-pick-mode " Pick" gnus-pick-mode-map) ! (gnus-run-hooks 'gnus-pick-mode-hook)))) (defun gnus-pick-setup-message () "Make Message do the right thing on exit." *************** *** 335,341 **** (when (gnus-visual-p 'binary-menu 'menu) (gnus-binary-make-menu-bar)) (gnus-add-minor-mode 'gnus-binary-mode " Binary" gnus-binary-mode-map) ! (run-hooks 'gnus-binary-mode-hook)))) (defun gnus-binary-display-article (article &optional all-header) "Run ARTICLE through the binary decode functions." --- 336,342 ---- (when (gnus-visual-p 'binary-menu 'menu) (gnus-binary-make-menu-bar)) (gnus-add-minor-mode 'gnus-binary-mode " Binary" gnus-binary-mode-map) ! (gnus-run-hooks 'gnus-binary-mode-hook)))) (defun gnus-binary-display-article (article &optional all-header) "Run ARTICLE through the binary decode functions." *************** *** 354,365 **** ;;; (defcustom gnus-tree-line-format "%(%[%3,3n%]%)" ! "Format of tree elements." :type 'string :group 'gnus-summary-tree) (defcustom gnus-tree-minimize-window t ! "If non-nil, minimize the tree buffer window. If a number, never let the tree buffer grow taller than that number of lines." :type 'boolean --- 355,366 ---- ;;; (defcustom gnus-tree-line-format "%(%[%3,3n%]%)" ! "*Format of tree elements." :type 'string :group 'gnus-summary-tree) (defcustom gnus-tree-minimize-window t ! "*If non-nil, minimize the tree buffer window. If a number, never let the tree buffer grow taller than that number of lines." :type 'boolean *************** *** 460,466 **** (gnus-set-work-buffer) (gnus-tree-node-insert (make-mail-header "") nil) (setq gnus-tree-node-length (1- (point)))) ! (run-hooks 'gnus-tree-mode-hook)) (defun gnus-tree-read-summary-keys (&optional arg) "Read a summary buffer key sequence and execute it." --- 461,467 ---- (gnus-set-work-buffer) (gnus-tree-node-insert (make-mail-header "") nil) (setq gnus-tree-node-length (1- (point)))) ! (gnus-run-hooks 'gnus-tree-mode-hook)) (defun gnus-tree-read-summary-keys (&optional arg) "Read a summary buffer key sequence and execute it." *************** *** 955,961 **** (buffer-disable-undo (current-buffer)) (setq buffer-read-only t) (make-local-variable 'gnus-carpal-attached-buffer) ! (run-hooks 'gnus-carpal-mode-hook)) (defun gnus-carpal-setup-buffer (type) (let ((buffer (symbol-value (intern (format "gnus-carpal-%s-buffer" type))))) --- 956,962 ---- (buffer-disable-undo (current-buffer)) (setq buffer-read-only t) (make-local-variable 'gnus-carpal-attached-buffer) ! (gnus-run-hooks 'gnus-carpal-mode-hook)) (defun gnus-carpal-setup-buffer (type) (let ((buffer (symbol-value (intern (format "gnus-carpal-%s-buffer" type))))) *** pub/qgnus/lisp/gnus-score.el Wed Feb 11 15:04:44 1998 --- qgnus/lisp/gnus-score.el Sat Feb 14 19:27:37 1998 *************** *** 1,5 **** ;;; gnus-score.el --- scoring code for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Per Abrahamsen ;; Lars Magne Ingebrigtsen --- 1,5 ---- ;;; gnus-score.el --- scoring code for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Per Abrahamsen ;; Lars Magne Ingebrigtsen *************** *** 34,40 **** (require 'message) (defcustom gnus-global-score-files nil ! "List of global score files and directories. Set this variable if you want to use people's score files. One entry for each score file or each score file directory. Gnus will decide by itself what score files are applicable to which group. --- 34,40 ---- (require 'message) (defcustom gnus-global-score-files nil ! "*List of global score files and directories. Set this variable if you want to use people's score files. One entry for each score file or each score file directory. Gnus will decide by itself what score files are applicable to which group. *************** *** 50,56 **** :type '(repeat file)) (defcustom gnus-score-file-single-match-alist nil ! "Alist mapping regexps to lists of score files. Each element of this alist should be of the form (\"REGEXP\" [ \"SCORE-FILE-1\" ] [ \"SCORE-FILE-2\" ] ... ) --- 50,56 ---- :type '(repeat file)) (defcustom gnus-score-file-single-match-alist nil ! "*Alist mapping regexps to lists of score files. Each element of this alist should be of the form (\"REGEXP\" [ \"SCORE-FILE-1\" ] [ \"SCORE-FILE-2\" ] ... ) *************** *** 65,71 **** :type '(repeat (cons regexp (repeat file)))) (defcustom gnus-score-file-multiple-match-alist nil ! "Alist mapping regexps to lists of score files. Each element of this alist should be of the form (\"REGEXP\" [ \"SCORE-FILE-1\" ] [ \"SCORE-FILE-2\" ] ... ) --- 65,71 ---- :type '(repeat (cons regexp (repeat file)))) (defcustom gnus-score-file-multiple-match-alist nil ! "*Alist mapping regexps to lists of score files. Each element of this alist should be of the form (\"REGEXP\" [ \"SCORE-FILE-1\" ] [ \"SCORE-FILE-2\" ] ... ) *************** *** 81,98 **** :type '(repeat (cons regexp (repeat file)))) (defcustom gnus-score-file-suffix "SCORE" ! "Suffix of the score files." :group 'gnus-score-files :type 'string) (defcustom gnus-adaptive-file-suffix "ADAPT" ! "Suffix of the adaptive score files." :group 'gnus-score-files :group 'gnus-score-adapt :type 'string) (defcustom gnus-score-find-score-files-function 'gnus-score-find-bnews ! "Function used to find score files. The function will be called with the group name as the argument, and should return a list of score files to apply to that group. The score files do not actually have to exist. --- 81,98 ---- :type '(repeat (cons regexp (repeat file)))) (defcustom gnus-score-file-suffix "SCORE" ! "*Suffix of the score files." :group 'gnus-score-files :type 'string) (defcustom gnus-adaptive-file-suffix "ADAPT" ! "*Suffix of the adaptive score files." :group 'gnus-score-files :group 'gnus-score-adapt :type 'string) (defcustom gnus-score-find-score-files-function 'gnus-score-find-bnews ! "*Function used to find score files. The function will be called with the group name as the argument, and should return a list of score files to apply to that group. The score files do not actually have to exist. *************** *** 162,168 **** :type 'number) (defcustom gnus-home-score-file nil ! "Variable to control where interactive score entries are to go. It can be: * A string --- 162,168 ---- :type 'number) (defcustom gnus-home-score-file nil ! "*Variable to control where interactive score entries are to go. It can be: * A string *************** *** 199,205 **** (function :value fun))) (defcustom gnus-home-adapt-file nil ! "Variable to control where new adaptive score entries are to go. This variable allows the same syntax as `gnus-home-score-file'." :group 'gnus-score-adapt :group 'gnus-score-files --- 199,205 ---- (function :value fun))) (defcustom gnus-home-adapt-file nil ! "*Variable to control where new adaptive score entries are to go. This variable allows the same syntax as `gnus-home-score-file'." :group 'gnus-score-adapt :group 'gnus-score-files *************** *** 216,222 **** (gnus-catchup-mark (subject -10)) (gnus-killed-mark (from -1) (subject -20)) (gnus-del-mark (from -2) (subject -15))) ! "Alist of marks and scores." :group 'gnus-score-adapt :type '(repeat (cons (symbol :tag "Mark") (repeat (list (choice :tag "Header" --- 216,222 ---- (gnus-catchup-mark (subject -10)) (gnus-killed-mark (from -1) (subject -20)) (gnus-del-mark (from -2) (subject -15))) ! "*Alist of marks and scores." :group 'gnus-score-adapt :type '(repeat (cons (symbol :tag "Mark") (repeat (list (choice :tag "Header" *************** *** 226,232 **** (integer :tag "Score")))))) (defcustom gnus-ignored-adaptive-words nil ! "List of words to be ignored when doing adaptive word scoring." :group 'gnus-score-adapt :type '(repeat string)) --- 226,232 ---- (integer :tag "Score")))))) (defcustom gnus-ignored-adaptive-words nil ! "*List of words to be ignored when doing adaptive word scoring." :group 'gnus-score-adapt :type '(repeat string)) *************** *** 245,251 **** "being" "current" "back" "still" "go" "point" "value" "each" "did" "both" "true" "off" "say" "another" "state" "might" "under" "start" "try" "re") ! "Default list of words to be ignored when doing adaptive word scoring." :group 'gnus-score-adapt :type '(repeat string)) --- 245,251 ---- "being" "current" "back" "still" "go" "point" "value" "each" "did" "both" "true" "off" "say" "another" "state" "might" "under" "start" "try" "re") ! "*Default list of words to be ignored when doing adaptive word scoring." :group 'gnus-score-adapt :type '(repeat string)) *************** *** 254,266 **** (,gnus-catchup-mark . -10) (,gnus-killed-mark . -20) (,gnus-del-mark . -15)) ! "Alist of marks and scores." :group 'gnus-score-adapt :type '(repeat (cons (character :tag "Mark") (integer :tag "Score")))) (defcustom gnus-adaptive-word-minimum nil ! "If a number, this is the minimum score value that can be assigned to a word." :group 'gnus-score-adapt :type '(choice (const nil) integer)) --- 254,266 ---- (,gnus-catchup-mark . -10) (,gnus-killed-mark . -20) (,gnus-del-mark . -15)) ! "*Alist of marks and scores." :group 'gnus-score-adapt :type '(repeat (cons (character :tag "Mark") (integer :tag "Score")))) (defcustom gnus-adaptive-word-minimum nil ! "*If a number, this is the minimum score value that can be assigned to a word." :group 'gnus-score-adapt :type '(choice (const nil) integer)) *************** *** 281,293 **** :type '(choice (const nil) integer)) (defcustom gnus-score-uncacheable-files "ADAPT$" ! "All score files that match this regexp will not be cached." :group 'gnus-score-adapt :group 'gnus-score-files :type 'regexp) (defcustom gnus-score-default-header nil ! "Default header when entering new scores. Should be one of the following symbols. --- 281,293 ---- :type '(choice (const nil) integer)) (defcustom gnus-score-uncacheable-files "ADAPT$" ! "*All score files that match this regexp will not be cached." :group 'gnus-score-adapt :group 'gnus-score-files :type 'regexp) (defcustom gnus-score-default-header nil ! "*Default header when entering new scores. Should be one of the following symbols. *************** *** 317,323 **** (const :tag "ask" nil))) (defcustom gnus-score-default-type nil ! "Default match type when entering new scores. Should be one of the following symbols. --- 317,323 ---- (const :tag "ask" nil))) (defcustom gnus-score-default-type nil ! "*Default match type when entering new scores. Should be one of the following symbols. *************** *** 347,358 **** (const :tag "ask" nil))) (defcustom gnus-score-default-fold nil ! "Use case folding for new score file entries iff not nil." :group 'gnus-score-default :type 'boolean) (defcustom gnus-score-default-duration nil ! "Default duration of effect when entering new scores. Should be one of the following symbols. --- 347,358 ---- (const :tag "ask" nil))) (defcustom gnus-score-default-fold nil ! "*Use case folding for new score file entries iff not nil." :group 'gnus-score-default :type 'boolean) (defcustom gnus-score-default-duration nil ! "*Default duration of effect when entering new scores. Should be one of the following symbols. *************** *** 368,374 **** (const :tag "ask" nil))) (defcustom gnus-score-after-write-file-function nil ! "Function called with the name of the score file just written to disk." :group 'gnus-score-files :type 'function) --- 368,374 ---- (const :tag "ask" nil))) (defcustom gnus-score-after-write-file-function nil ! "*Function called with the name of the score file just written to disk." :group 'gnus-score-files :type 'function) *** pub/qgnus/lisp/gnus-soup.el Mon Nov 24 15:08:12 1997 --- qgnus/lisp/gnus-soup.el Sat Feb 14 19:27:38 1998 *************** *** 1,5 **** ;;; gnus-soup.el --- SOUP packet writing support for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Per Abrahamsen ;; Lars Magne Ingebrigtsen --- 1,5 ---- ;;; gnus-soup.el --- SOUP packet writing support for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Per Abrahamsen ;; Lars Magne Ingebrigtsen *** pub/qgnus/lisp/gnus-spec.el Wed Nov 26 17:44:40 1997 --- qgnus/lisp/gnus-spec.el Sat Feb 14 19:27:38 1998 *************** *** 1,5 **** ;;; gnus-spec.el --- format spec functions for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-spec.el --- format spec functions for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/gnus-srvr.el Tue Nov 25 17:05:50 1997 --- qgnus/lisp/gnus-srvr.el Sat Feb 14 19:27:38 1998 *************** *** 1,5 **** ;;; gnus-srvr.el --- virtual server support for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-srvr.el --- virtual server support for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 106,112 **** ["Close All" gnus-server-close-all-servers t] ["Reset All" gnus-server-remove-denials t])) ! (run-hooks 'gnus-server-menu-hook))) (defvar gnus-server-mode-map nil) (put 'gnus-server-mode 'mode-class 'special) --- 106,112 ---- ["Close All" gnus-server-close-all-servers t] ["Reset All" gnus-server-remove-denials t])) ! (gnus-run-hooks 'gnus-server-menu-hook))) (defvar gnus-server-mode-map nil) (put 'gnus-server-mode 'mode-class 'special) *************** *** 164,170 **** (buffer-disable-undo (current-buffer)) (setq truncate-lines t) (setq buffer-read-only t) ! (run-hooks 'gnus-server-mode-hook)) (defun gnus-server-insert-server-line (name method) (let* ((how (car method)) --- 164,170 ---- (buffer-disable-undo (current-buffer)) (setq truncate-lines t) (setq buffer-read-only t) ! (gnus-run-hooks 'gnus-server-mode-hook)) (defun gnus-server-insert-server-line (name method) (let* ((how (car method)) *************** *** 318,324 **** (defun gnus-server-exit () "Return to the group buffer." (interactive) ! (run-hooks 'gnus-server-exit-hook) (kill-buffer (current-buffer)) (gnus-configure-windows 'group t)) --- 318,324 ---- (defun gnus-server-exit () "Return to the group buffer." (interactive) ! (gnus-run-hooks 'gnus-server-exit-hook) (kill-buffer (current-buffer)) (gnus-configure-windows 'group t)) *************** *** 536,542 **** ["Next" gnus-browse-next-group t] ["Prev" gnus-browse-next-group t] ["Exit" gnus-browse-exit t])) ! (run-hooks 'gnus-browse-menu-hook))) (defvar gnus-browse-current-method nil) (defvar gnus-browse-return-buffer nil) --- 536,542 ---- ["Next" gnus-browse-next-group t] ["Prev" gnus-browse-next-group t] ["Exit" gnus-browse-exit t])) ! (gnus-run-hooks 'gnus-browse-menu-hook))) (defvar gnus-browse-current-method nil) (defvar gnus-browse-return-buffer nil) *************** *** 634,640 **** (setq truncate-lines t) (gnus-set-default-directory) (setq buffer-read-only t) ! (run-hooks 'gnus-browse-mode-hook)) (defun gnus-browse-read-group (&optional no-article) "Enter the group at the current line." --- 634,640 ---- (setq truncate-lines t) (gnus-set-default-directory) (setq buffer-read-only t) ! (gnus-run-hooks 'gnus-browse-mode-hook)) (defun gnus-browse-read-group (&optional no-article) "Enter the group at the current line." *************** *** 698,705 **** ;; If this group it killed, then we want to subscribe it. (when (= (following-char) ?K) (setq sub t)) ! (when (gnus-gethash (setq group (gnus-browse-group-name)) ! gnus-newsrc-hashtb) (error "Group already subscribed")) ;; Make sure the group has been properly removed before we ;; subscribe to it. --- 698,705 ---- ;; If this group it killed, then we want to subscribe it. (when (= (following-char) ?K) (setq sub t)) ! (when (cadr (gnus-gethash (setq group (gnus-browse-group-name)) ! gnus-newsrc-hashtb)) (error "Group already subscribed")) ;; Make sure the group has been properly removed before we ;; subscribe to it. *** pub/qgnus/lisp/gnus-start.el Wed Feb 11 15:04:46 1998 --- qgnus/lisp/gnus-start.el Sat Feb 14 19:27:40 1998 *************** *** 1,5 **** ;;; gnus-start.el --- startup functions for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-start.el --- startup functions for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 35,47 **** (eval-when-compile (require 'cl)) (defcustom gnus-startup-file (nnheader-concat gnus-home-directory ".newsrc") ! "Your `.newsrc' file. `.newsrc-SERVER' will be used instead if that exists." :group 'gnus-start :type 'file) (defcustom gnus-init-file (nnheader-concat gnus-home-directory ".gnus") ! "Your Gnus Emacs-Lisp startup file name. If a file with the `.el' or `.elc' suffixes exists, it will be read instead." :group 'gnus-start :type 'file) --- 35,47 ---- (eval-when-compile (require 'cl)) (defcustom gnus-startup-file (nnheader-concat gnus-home-directory ".newsrc") ! "*Your `.newsrc' file. `.newsrc-SERVER' will be used instead if that exists." :group 'gnus-start :type 'file) (defcustom gnus-init-file (nnheader-concat gnus-home-directory ".gnus") ! "*Your Gnus Emacs-Lisp startup file name. If a file with the `.el' or `.elc' suffixes exists, it will be read instead." :group 'gnus-start :type 'file) *************** *** 52,64 **** (directory-file-name installation-directory)) "site-lisp/gnus-init") (error nil)) ! "The site-wide Gnus Emacs-Lisp startup file name, or nil if none. If a file with the `.el' or `.elc' suffixes exists, it will be read instead." :group 'gnus-start :type '(choice file (const nil))) (defcustom gnus-default-subscribed-newsgroups nil ! "List of newsgroups to subscribe, when a user runs Gnus the first time. The value should be a list of strings. If it is t, Gnus will not do anything special the first time it is started; it'll just use the normal newsgroups subscription methods." --- 52,64 ---- (directory-file-name installation-directory)) "site-lisp/gnus-init") (error nil)) ! "*The site-wide Gnus Emacs-Lisp startup file name, or nil if none. If a file with the `.el' or `.elc' suffixes exists, it will be read instead." :group 'gnus-start :type '(choice file (const nil))) (defcustom gnus-default-subscribed-newsgroups nil ! "*List of newsgroups to subscribe, when a user runs Gnus the first time. The value should be a list of strings. If it is t, Gnus will not do anything special the first time it is started; it'll just use the normal newsgroups subscription methods." *************** *** 229,235 **** "[][\"#'()]" ; bogus characters ) "\\|")) ! "A regexp to match uninteresting newsgroups in the active file. Any lines in the active file matching this regular expression are removed from the newsgroup list before anything else is done to it, thus making them effectively non-existent." --- 229,235 ---- "[][\"#'()]" ; bogus characters ) "\\|")) ! "*A regexp to match uninteresting newsgroups in the active file. Any lines in the active file matching this regular expression are removed from the newsgroup list before anything else is done to it, thus making them effectively non-existent." *************** *** 328,384 **** :type 'boolean) (defcustom gnus-check-bogus-groups-hook nil ! "A hook run after removing bogus groups." :group 'gnus-start-server :type 'hook) (defcustom gnus-startup-hook nil ! "A hook called at startup. This hook is called after Gnus is connected to the NNTP server." :group 'gnus-start :type 'hook) (defcustom gnus-before-startup-hook nil ! "A hook called at before startup. This hook is called as the first thing when Gnus is started." :group 'gnus-start :type 'hook) (defcustom gnus-started-hook nil ! "A hook called as the last thing after startup." :group 'gnus-start :type 'hook) (defcustom gnus-setup-news-hook nil ! "A hook after reading the .newsrc file, but before generating the buffer." :group 'gnus-start :type 'hook) (defcustom gnus-get-new-news-hook nil ! "A hook run just before Gnus checks for new news." :group 'gnus-group-new :type 'hook) (defcustom gnus-after-getting-new-news-hook (when (gnus-boundp 'display-time-timer) '(display-time-event-handler)) ! "A hook run after Gnus checks for new news." :group 'gnus-group-new :type 'hook) (defcustom gnus-save-newsrc-hook nil ! "A hook called before saving any of the newsrc files." :group 'gnus-newsrc :type 'hook) (defcustom gnus-save-quick-newsrc-hook nil ! "A hook called just before saving the quick newsrc file. Can be used to turn version control on or off." :group 'gnus-newsrc :type 'hook) (defcustom gnus-save-standard-newsrc-hook nil ! "A hook called just before saving the standard newsrc file. Can be used to turn version control on or off." :group 'gnus-newsrc :type 'hook) --- 328,384 ---- :type 'boolean) (defcustom gnus-check-bogus-groups-hook nil ! "*A hook run after removing bogus groups." :group 'gnus-start-server :type 'hook) (defcustom gnus-startup-hook nil ! "*A hook called at startup. This hook is called after Gnus is connected to the NNTP server." :group 'gnus-start :type 'hook) (defcustom gnus-before-startup-hook nil ! "*A hook called at before startup. This hook is called as the first thing when Gnus is started." :group 'gnus-start :type 'hook) (defcustom gnus-started-hook nil ! "*A hook called as the last thing after startup." :group 'gnus-start :type 'hook) (defcustom gnus-setup-news-hook nil ! "*A hook after reading the .newsrc file, but before generating the buffer." :group 'gnus-start :type 'hook) (defcustom gnus-get-new-news-hook nil ! "*A hook run just before Gnus checks for new news." :group 'gnus-group-new :type 'hook) (defcustom gnus-after-getting-new-news-hook (when (gnus-boundp 'display-time-timer) '(display-time-event-handler)) ! "*A hook run after Gnus checks for new news." :group 'gnus-group-new :type 'hook) (defcustom gnus-save-newsrc-hook nil ! "*A hook called before saving any of the newsrc files." :group 'gnus-newsrc :type 'hook) (defcustom gnus-save-quick-newsrc-hook nil ! "*A hook called just before saving the quick newsrc file. Can be used to turn version control on or off." :group 'gnus-newsrc :type 'hook) (defcustom gnus-save-standard-newsrc-hook nil ! "*A hook called just before saving the standard newsrc file. Can be used to turn version control on or off." :group 'gnus-newsrc :type 'hook) *************** *** 656,662 **** (gnus-splash) (gnus-clear-system) ! (run-hooks 'gnus-before-startup-hook) (nnheader-init-server-buffer) (setq gnus-slave slave) (gnus-read-init-file) --- 656,662 ---- (gnus-splash) (gnus-clear-system) ! (gnus-run-hooks 'gnus-before-startup-hook) (nnheader-init-server-buffer) (setq gnus-slave slave) (gnus-read-init-file) *************** *** 680,686 **** (if (and (not dont-connect) (not did-connect)) (gnus-group-quit) ! (run-hooks 'gnus-startup-hook) ;; NNTP server is successfully open. ;; Find the current startup file name. --- 680,686 ---- (if (and (not dont-connect) (not did-connect)) (gnus-group-quit) ! (gnus-run-hooks 'gnus-startup-hook) ;; NNTP server is successfully open. ;; Find the current startup file name. *************** *** 698,711 **** ;; Do the actual startup. (gnus-setup-news nil level dont-connect) ! (run-hooks 'gnus-setup-news-hook) (gnus-start-draft-setup) ;; Generate the group buffer. (gnus-group-list-groups level) (gnus-group-first-unread-group) (gnus-configure-windows 'group) (gnus-group-set-mode-line) ! (run-hooks 'gnus-started-hook)))))) (defun gnus-start-draft-setup () "Make sure the draft group exists." --- 698,711 ---- ;; Do the actual startup. (gnus-setup-news nil level dont-connect) ! (gnus-run-hooks 'gnus-setup-news-hook) (gnus-start-draft-setup) ;; Generate the group buffer. (gnus-group-list-groups level) (gnus-group-first-unread-group) (gnus-configure-windows 'group) (gnus-group-set-mode-line) ! (gnus-run-hooks 'gnus-started-hook)))))) (defun gnus-start-draft-setup () "Make sure the draft group exists." *************** *** 1299,1305 **** (set (car dead-lists) (delete group (symbol-value (car dead-lists)))))) (setq dead-lists (cdr dead-lists)))) ! (run-hooks 'gnus-check-bogus-groups-hook) (gnus-message 5 "Checking bogus newsgroups...done")))) (defun gnus-check-duplicate-killed-groups () --- 1299,1305 ---- (set (car dead-lists) (delete group (symbol-value (car dead-lists)))))) (setq dead-lists (cdr dead-lists)))) ! (gnus-run-hooks 'gnus-check-bogus-groups-hook) (gnus-message 5 "Checking bogus newsgroups...done")))) (defun gnus-check-duplicate-killed-groups () *************** *** 2225,2231 **** (set-buffer gnus-dribble-buffer) (buffer-size))))) (gnus-message 4 "(No changes need to be saved)") ! (run-hooks 'gnus-save-newsrc-hook) (if gnus-slave (gnus-slave-save-newsrc) ;; Save .newsrc. --- 2225,2231 ---- (set-buffer gnus-dribble-buffer) (buffer-size))))) (gnus-message 4 "(No changes need to be saved)") ! (gnus-run-hooks 'gnus-save-newsrc-hook) (if gnus-slave (gnus-slave-save-newsrc) ;; Save .newsrc. *************** *** 2245,2251 **** (erase-buffer) (gnus-message 5 "Saving %s.eld..." gnus-current-startup-file) (gnus-gnus-to-quick-newsrc-format) ! (run-hooks 'gnus-save-quick-newsrc-hook) (save-buffer) (kill-buffer (current-buffer)) (gnus-message --- 2245,2251 ---- (erase-buffer) (gnus-message 5 "Saving %s.eld..." gnus-current-startup-file) (gnus-gnus-to-quick-newsrc-format) ! (gnus-run-hooks 'gnus-save-quick-newsrc-hook) (save-buffer) (kill-buffer (current-buffer)) (gnus-message *************** *** 2347,2353 **** (if gnus-modtime-botch (delete-file gnus-startup-file) (clear-visited-file-modtime)) ! (run-hooks 'gnus-save-standard-newsrc-hook) (save-buffer) (kill-buffer (current-buffer))))) --- 2347,2353 ---- (if gnus-modtime-botch (delete-file gnus-startup-file) (clear-visited-file-modtime)) ! (gnus-run-hooks 'gnus-save-standard-newsrc-hook) (save-buffer) (kill-buffer (current-buffer))))) *** pub/qgnus/lisp/gnus-sum.el Fri Feb 13 22:39:08 1998 --- qgnus/lisp/gnus-sum.el Sat Feb 14 19:27:44 1998 *************** *** 1,5 **** ;;; gnus-sum.el --- summary mode commands for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-sum.el --- summary mode commands for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 121,127 **** (sexp :menu-tag "on" t))) (defcustom gnus-simplify-subject-functions nil ! "List of functions taking a string argument that simplify subjects. The functions are applied recursively." :group 'gnus-thread :type '(repeat (list function))) --- 121,127 ---- (sexp :menu-tag "on" t))) (defcustom gnus-simplify-subject-functions nil ! "*List of functions taking a string argument that simplify subjects. The functions are applied recursively." :group 'gnus-thread :type '(repeat (list function))) *************** *** 145,151 **** (defcustom gnus-summary-thread-gathering-function 'gnus-gather-threads-by-subject ! "Function used for gathering loose threads. There are two pre-defined functions: `gnus-gather-threads-by-subject', which only takes Subjects into consideration; and `gnus-gather-threads-by-references', which compared the References --- 145,151 ---- (defcustom gnus-summary-thread-gathering-function 'gnus-gather-threads-by-subject ! "*Function used for gathering loose threads. There are two pre-defined functions: `gnus-gather-threads-by-subject', which only takes Subjects into consideration; and `gnus-gather-threads-by-references', which compared the References *************** *** 572,585 **** :type 'function) (defcustom gnus-summary-expunge-below nil ! "All articles that have a score less than this variable will be expunged. This variable is local to the summary buffers." :group 'gnus-score-default :type '(choice (const :tag "off" nil) integer)) (defcustom gnus-thread-expunge-below nil ! "All threads that have a total score less than this variable will be expunged. See `gnus-thread-score-function' for en explanation of what a \"thread score\" is. --- 572,585 ---- :type 'function) (defcustom gnus-summary-expunge-below nil ! "*All articles that have a score less than this variable will be expunged. This variable is local to the summary buffers." :group 'gnus-score-default :type '(choice (const :tag "off" nil) integer)) (defcustom gnus-thread-expunge-below nil ! "*All threads that have a total score less than this variable will be expunged. See `gnus-thread-score-function' for en explanation of what a \"thread score\" is. *************** *** 656,669 **** :group 'gnus-summary-visual :type 'hook) - ;; 1997/5/4 by MORIOKA Tomohiko (defcustom gnus-structured-field-decoder 'identity ! "Function to decode non-ASCII characters in structured field for summary." :group 'gnus-various :type 'function) (defcustom gnus-unstructured-field-decoder 'identity ! "Function to decode non-ASCII characters in unstructured field for summary." :group 'gnus-various :type 'function) --- 656,668 ---- :group 'gnus-summary-visual :type 'hook) (defcustom gnus-structured-field-decoder 'identity ! "*Function to decode non-ASCII characters in structured field for summary." :group 'gnus-various :type 'function) (defcustom gnus-unstructured-field-decoder 'identity ! "*Function to decode non-ASCII characters in unstructured field for summary." :group 'gnus-various :type 'function) *************** *** 707,713 **** :type 'hook) (defcustom gnus-summary-selected-face 'gnus-summary-selected-face ! "Face used for highlighting the current article in the summary buffer." :group 'gnus-summary-visual :type 'face) --- 706,712 ---- :type 'hook) (defcustom gnus-summary-selected-face 'gnus-summary-selected-face ! "*Face used for highlighting the current article in the summary buffer." :group 'gnus-summary-visual :type 'face) *************** *** 744,750 **** . gnus-summary-low-read-face) (t . gnus-summary-normal-read-face)) ! "Controls the highlighting of summary buffer lines. A list of (FORM . FACE) pairs. When deciding how a a particular summary line should be displayed, each form is evaluated. The content --- 743,749 ---- . gnus-summary-low-read-face) (t . gnus-summary-normal-read-face)) ! "*Controls the highlighting of summary buffer lines. A list of (FORM . FACE) pairs. When deciding how a a particular summary line should be displayed, each form is evaluated. The content *************** *** 762,768 **** face))) (defcustom gnus-alter-header-function nil ! "Function called to allow alteration of article header structures. The function is called with one parameter, the article header vector, which it may alter in any way.") --- 761,767 ---- face))) (defcustom gnus-alter-header-function nil ! "*Function called to allow alteration of article header structures. The function is called with one parameter, the article header vector, which it may alter in any way.") *************** *** 1212,1217 **** --- 1211,1217 ---- "\C-c\C-v\C-v" gnus-uu-decode-uu-view "\C-d" gnus-summary-enter-digest-group "\M-\C-d" gnus-summary-read-document + "\M-\C-e" gnus-summary-edit-parameters "\C-c\C-b" gnus-bug "*" gnus-cache-enter-article "\M-*" gnus-cache-remove-article *************** *** 1815,1820 **** --- 1815,1821 ---- 'request-expire-articles gnus-newsgroup-name)] ["Edit local kill file" gnus-summary-edit-local-kill t] ["Edit main kill file" gnus-summary-edit-global-kill t] + ["Edit group parameters" gnus-summary-edit-parameters t] ("Exit" ["Catchup and exit" gnus-summary-catchup-and-exit t] ["Catchup all and exit" gnus-summary-catchup-and-exit t] *************** *** 1827,1833 **** ["Rescan group" gnus-summary-rescan-group t] ["Update dribble" gnus-summary-save-newsrc t]))) ! (run-hooks 'gnus-summary-menu-hook))) (defun gnus-score-set-default (var value) "A version of set that updates the GNU Emacs menu-bar." --- 1828,1834 ---- ["Rescan group" gnus-summary-rescan-group t] ["Update dribble" gnus-summary-save-newsrc t]))) ! (gnus-run-hooks 'gnus-summary-menu-hook))) (defun gnus-score-set-default (var value) "A version of set that updates the GNU Emacs menu-bar." *************** *** 1962,1968 **** (add-hook 'post-command-hook 'gnus-clear-inboxes-moved nil t) (make-local-hook 'pre-command-hook) (add-hook 'pre-command-hook 'gnus-set-global-variables nil t) ! (run-hooks 'gnus-summary-mode-hook) (gnus-update-format-specifications nil 'summary 'summary-mode 'summary-dummy) (gnus-update-summary-mark-positions)) --- 1963,1969 ---- (add-hook 'post-command-hook 'gnus-clear-inboxes-moved nil t) (make-local-hook 'pre-command-hook) (add-hook 'pre-command-hook 'gnus-set-global-variables nil t) ! (gnus-run-hooks 'gnus-summary-mode-hook) (gnus-update-format-specifications nil 'summary 'summary-mode 'summary-dummy) (gnus-update-summary-mark-positions)) *************** *** 2509,2515 **** 'gnus-number gnus-tmp-number) (when (gnus-visual-p 'summary-highlight 'highlight) (forward-line -1) ! (run-hooks 'gnus-summary-update-hook) (forward-line 1)))) (defun gnus-summary-update-line (&optional dont-update) --- 2510,2516 ---- 'gnus-number gnus-tmp-number) (when (gnus-visual-p 'summary-highlight 'highlight) (forward-line -1) ! (gnus-run-hooks 'gnus-summary-update-hook) (forward-line 1)))) (defun gnus-summary-update-line (&optional dont-update) *************** *** 2541,2547 **** 'score)) ;; Do visual highlighting. (when (gnus-visual-p 'summary-highlight 'highlight) ! (run-hooks 'gnus-summary-update-hook))))) (defvar gnus-tmp-new-adopts nil) --- 2542,2548 ---- 'score)) ;; Do visual highlighting. (when (gnus-visual-p 'summary-highlight 'highlight) ! (gnus-run-hooks 'gnus-summary-update-hook))))) (defvar gnus-tmp-new-adopts nil) *************** *** 2672,2678 **** (gnus-copy-sequence (gnus-active gnus-newsgroup-name))) ;; You can change the summary buffer in some way with this hook. ! (run-hooks 'gnus-select-group-hook) ;; Set any local variables in the group parameters. (gnus-summary-set-local-parameters gnus-newsgroup-name) (gnus-update-format-specifications --- 2673,2679 ---- (gnus-copy-sequence (gnus-active gnus-newsgroup-name))) ;; You can change the summary buffer in some way with this hook. ! (gnus-run-hooks 'gnus-select-group-hook) ;; Set any local variables in the group parameters. (gnus-summary-set-local-parameters gnus-newsgroup-name) (gnus-update-format-specifications *************** *** 2710,2716 **** ((and gnus-newsgroup-scored show-all) (gnus-summary-limit-include-expunged t)))) ;; Function `gnus-apply-kill-file' must be called in this hook. ! (run-hooks 'gnus-apply-kill-hook) (if (and (zerop (buffer-size)) (not no-display)) (progn --- 2711,2717 ---- ((and gnus-newsgroup-scored show-all) (gnus-summary-limit-include-expunged t)))) ;; Function `gnus-apply-kill-file' must be called in this hook. ! (gnus-run-hooks 'gnus-apply-kill-hook) (if (and (zerop (buffer-size)) (not no-display)) (progn *************** *** 2754,2760 **** (select-window owin))) ;; Mark this buffer as "prepared". (setq gnus-newsgroup-prepared t) ! (run-hooks 'gnus-summary-prepared-hook) t))))) (defun gnus-summary-prepare () --- 2755,2761 ---- (select-window owin))) ;; Mark this buffer as "prepared". (setq gnus-newsgroup-prepared t) ! (gnus-run-hooks 'gnus-summary-prepared-hook) t))))) (defun gnus-summary-prepare () *************** *** 2764,2770 **** (erase-buffer) (setq gnus-newsgroup-data nil gnus-newsgroup-data-reverse nil) ! (run-hooks 'gnus-summary-generate-hook) ;; Generate the buffer, either with threads or without. (when gnus-newsgroup-headers (gnus-summary-prepare-threads --- 2765,2771 ---- (erase-buffer) (setq gnus-newsgroup-data nil gnus-newsgroup-data-reverse nil) ! (gnus-run-hooks 'gnus-summary-generate-hook) ;; Generate the buffer, either with threads or without. (when gnus-newsgroup-headers (gnus-summary-prepare-threads *************** *** 2778,2784 **** (setq gnus-newsgroup-data (nreverse gnus-newsgroup-data)) ;; Call hooks for modifying summary buffer. (goto-char (point-min)) ! (run-hooks 'gnus-summary-prepare-hook))) (defsubst gnus-general-simplify-subject (subject) "Simply subject by the same rules as gnus-gather-threads-by-subject." --- 2779,2785 ---- (setq gnus-newsgroup-data (nreverse gnus-newsgroup-data)) ;; Call hooks for modifying summary buffer. (goto-char (point-min)) ! (gnus-run-hooks 'gnus-summary-prepare-hook))) (defsubst gnus-general-simplify-subject (subject) "Simply subject by the same rules as gnus-gather-threads-by-subject." *************** *** 3704,3710 **** 'gnus-number number) (when gnus-visual-p (forward-line -1) ! (run-hooks 'gnus-summary-update-hook) (forward-line 1)) (setq gnus-tmp-prev-subject subject))) --- 3705,3711 ---- 'gnus-number number) (when gnus-visual-p (forward-line -1) ! (gnus-run-hooks 'gnus-summary-update-hook) (forward-line 1)) (setq gnus-tmp-prev-subject subject))) *************** *** 4295,4301 **** (set-buffer nntp-server-buffer) ;; Translate all TAB characters into SPACE characters. (subst-char-in-region (point-min) (point-max) ?\t ? t) ! (run-hooks 'gnus-parse-headers-hook) (let ((case-fold-search t) in-reply-to header p lines) (goto-char (point-min)) --- 4296,4302 ---- (set-buffer nntp-server-buffer) ;; Translate all TAB characters into SPACE characters. (subst-char-in-region (point-min) (point-max) ?\t ? t) ! (gnus-run-hooks 'gnus-parse-headers-hook) (let ((case-fold-search t) in-reply-to header p lines) (goto-char (point-min)) *************** *** 4326,4332 **** (progn (goto-char p) (if (search-forward "\nsubject: " nil t) - ;; 1997/5/4 by MORIOKA Tomohiko (funcall gnus-unstructured-field-decoder (nnheader-header-value)) "(none)")) --- 4327,4332 ---- *************** *** 4334,4340 **** (progn (goto-char p) (if (search-forward "\nfrom: " nil t) - ;; 1997/5/4 by MORIOKA Tomohiko (funcall gnus-structured-field-decoder (nnheader-header-value)) "(nobody)")) --- 4334,4339 ---- *************** *** 4566,4572 **** (save-excursion (set-buffer nntp-server-buffer) ;; Allow the user to mangle the headers before parsing them. ! (run-hooks 'gnus-parse-headers-hook) (goto-char (point-min)) (while (not (eobp)) (condition-case () --- 4565,4571 ---- (save-excursion (set-buffer nntp-server-buffer) ;; Allow the user to mangle the headers before parsing them. ! (gnus-run-hooks 'gnus-parse-headers-hook) (goto-char (point-min)) (while (not (eobp)) (condition-case () *************** *** 4674,4717 **** "Return a list of articles to be worked upon. The prefix argument, the list of process marked articles, and the current article will be taken into consideration." ! (cond ! (n ! ;; A numerical prefix has been given. ! (setq n (prefix-numeric-value n)) ! (let ((backward (< n 0)) ! (n (abs (prefix-numeric-value n))) ! articles article) ! (save-excursion ! (while ! (and (> n 0) ! (push (setq article (gnus-summary-article-number)) ! articles) ! (if backward ! (gnus-summary-find-prev nil article) ! (gnus-summary-find-next nil article))) ! (decf n))) ! (nreverse articles))) ! ((gnus-region-active-p) ! ;; Work on the region between point and mark. ! (let ((max (max (point) (mark))) ! articles article) ! (save-excursion ! (goto-char (min (point) (mark))) ! (while ! (and ! (push (setq article (gnus-summary-article-number)) articles) ! (gnus-summary-find-next nil article) ! (< (point) max))) ! (nreverse articles)))) ! (gnus-newsgroup-processable ! ;; There are process-marked articles present. ! ;; Save current state. ! (gnus-summary-save-process-mark) ! ;; Return the list. ! (reverse gnus-newsgroup-processable)) ! (t ! ;; Just return the current article. ! (list (gnus-summary-article-number))))) (defun gnus-summary-save-process-mark () "Push the current set of process marked articles on the stack." --- 4673,4719 ---- "Return a list of articles to be worked upon. The prefix argument, the list of process marked articles, and the current article will be taken into consideration." ! (save-excursion ! (set-buffer gnus-summary-buffer) ! (cond ! (n ! ;; A numerical prefix has been given. ! (setq n (prefix-numeric-value n)) ! (let ((backward (< n 0)) ! (n (abs (prefix-numeric-value n))) ! articles article) ! (save-excursion ! (while ! (and (> n 0) ! (push (setq article (gnus-summary-article-number)) ! articles) ! (if backward ! (gnus-summary-find-prev nil article) ! (gnus-summary-find-next nil article))) ! (decf n))) ! (nreverse articles))) ! ((and (gnus-region-active-p) (mark)) ! (message "region active") ! ;; Work on the region between point and mark. ! (let ((max (max (point) (mark))) ! articles article) ! (save-excursion ! (goto-char (min (min (point) (mark)))) ! (while ! (and ! (push (setq article (gnus-summary-article-number)) articles) ! (gnus-summary-find-next nil article) ! (< (point) max))) ! (nreverse articles)))) ! (gnus-newsgroup-processable ! ;; There are process-marked articles present. ! ;; Save current state. ! (gnus-summary-save-process-mark) ! ;; Return the list. ! (reverse gnus-newsgroup-processable)) ! (t ! ;; Just return the current article. ! (list (gnus-summary-article-number)))))) (defun gnus-summary-save-process-mark () "Push the current set of process marked articles on the stack." *************** *** 5066,5072 **** (mode major-mode) (group-point nil) (buf (current-buffer))) ! (run-hooks 'gnus-summary-prepare-exit-hook) ;; If we have several article buffers, we kill them at exit. (unless gnus-single-article-buffer (gnus-kill-buffer gnus-original-article-buffer) --- 5068,5074 ---- (mode major-mode) (group-point nil) (buf (current-buffer))) ! (gnus-run-hooks 'gnus-summary-prepare-exit-hook) ;; If we have several article buffers, we kill them at exit. (unless gnus-single-article-buffer (gnus-kill-buffer gnus-original-article-buffer) *************** *** 5083,5089 **** (nnmail-purge-split-history group) ;; Make all changes in this group permanent. (unless quit-config ! (run-hooks 'gnus-exit-group-hook) (gnus-summary-update-info) ;; Do adaptive scoring, and possibly save score files. (when gnus-newsgroup-adaptive --- 5085,5091 ---- (nnmail-purge-split-history group) ;; Make all changes in this group permanent. (unless quit-config ! (gnus-run-hooks 'gnus-exit-group-hook) (gnus-summary-update-info) ;; Do adaptive scoring, and possibly save score files. (when gnus-newsgroup-adaptive *************** *** 5095,5101 **** (set-buffer gnus-group-buffer) (unless quit-config (gnus-group-jump-to-group group)) ! (run-hooks 'gnus-summary-exit-hook) (unless (or quit-config ;; If this group has disappeared from the summary ;; buffer, don't skip forwards. --- 5097,5103 ---- (set-buffer gnus-group-buffer) (unless quit-config (gnus-group-jump-to-group group)) ! (gnus-run-hooks 'gnus-summary-exit-hook) (unless (or quit-config ;; If this group has disappeared from the summary ;; buffer, don't skip forwards. *************** *** 5355,5361 **** (when (gnus-buffer-live-p current-buffer) (set-buffer current-buffer) (gnus-summary-exit)) ! (run-hooks 'gnus-group-no-more-groups-hook)) ;; We try to enter the target group. (gnus-group-jump-to-group target-group) (let ((unreads (gnus-group-group-unread))) --- 5357,5363 ---- (when (gnus-buffer-live-p current-buffer) (set-buffer current-buffer) (gnus-summary-exit)) ! (gnus-run-hooks 'gnus-group-no-more-groups-hook)) ;; We try to enter the target group. (gnus-group-jump-to-group target-group) (let ((unreads (gnus-group-group-unread))) *************** *** 5483,5489 **** (if gnus-summary-display-article-function (funcall gnus-summary-display-article-function article all-header) (gnus-article-prepare article all-header)) ! (run-hooks 'gnus-select-article-hook) (when (and gnus-current-article (not (zerop gnus-current-article))) (gnus-summary-goto-subject gnus-current-article)) --- 5485,5491 ---- (if gnus-summary-display-article-function (funcall gnus-summary-display-article-function article all-header) (gnus-article-prepare article all-header)) ! (gnus-run-hooks 'gnus-select-article-hook) (when (and gnus-current-article (not (zerop gnus-current-article))) (gnus-summary-goto-subject gnus-current-article)) *************** *** 6436,6441 **** --- 6438,6447 ---- (gnus-summary-select-article nil nil nil number) (gnus-message 3 "Couldn't fetch article %s" message-id)))))))) + (defun gnus-summary-edit-parameters () + "Edit the group parameters of the current group." + (gnus-group-edit-group gnus-newsgroup-name 'params)) + (defun gnus-summary-enter-digest-group (&optional force) "Enter an nndoc group based on the current article. If FORCE, force a digest interpretation. If not, try *************** *** 6724,6731 **** to save in." (interactive (list (ps-print-preprint current-prefix-arg) current-prefix-arg)) ! (dolist (nbr (gnus-summary-work-articles n)) ! (gnus-summary-select-article 'all nil 'pseudo nbr) (gnus-eval-in-buffer-window gnus-article-buffer (let ((buffer (generate-new-buffer " *print*"))) (unwind-protect --- 6730,6737 ---- to save in." (interactive (list (ps-print-preprint current-prefix-arg) 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 (let ((buffer (generate-new-buffer " *print*"))) (unwind-protect *************** *** 6744,6750 **** "/pagenumberstring load" (concat "(" (mail-header-date gnus-current-headers) ")")))) ! (run-hooks 'gnus-ps-print-hook) (ps-print-buffer-with-faces filename))) (kill-buffer buffer)))))) --- 6750,6756 ---- "/pagenumberstring load" (concat "(" (mail-header-date gnus-current-headers) ")")))) ! (gnus-run-hooks 'gnus-ps-print-hook) (ps-print-buffer-with-faces filename))) (kill-buffer buffer)))))) *************** *** 6803,6809 **** (setq e (1- (or (search-forward "\n\n" nil t) (point-max))))) (insert-buffer-substring gnus-original-article-buffer 1 e) (let ((article-inhibit-hiding t)) ! (run-hooks 'gnus-article-display-hook)) (when (or (not hidden) (and (numberp arg) (< arg 0))) (gnus-article-hide-headers))))) --- 6809,6815 ---- (setq e (1- (or (search-forward "\n\n" nil t) (point-max))))) (insert-buffer-substring gnus-original-article-buffer 1 e) (let ((article-inhibit-hiding t)) ! (gnus-run-hooks 'gnus-article-display-hook)) (when (or (not hidden) (and (numberp arg) (< arg 0))) (gnus-article-hide-headers))))) *************** *** 7081,7087 **** (gnus-summary-move-article n nil nil 'crosspost)) (defcustom gnus-summary-respool-default-method nil ! "Default method for respooling an article. If nil, use to the current newsgroup method." :type `(choice (gnus-select-method :value (nnml "")) (const nil)) --- 7087,7093 ---- (gnus-summary-move-article n nil nil 'crosspost)) (defcustom gnus-summary-respool-default-method nil ! "*Default method for respooling an article. If nil, use to the current newsgroup method." :type `(choice (gnus-select-method :value (nnml "")) (const nil)) *************** *** 7191,7197 **** ;; We need to update the info for ;; this group for `gnus-list-of-read-articles' ;; to give us the right answer. ! (run-hooks 'gnus-exit-group-hook) (gnus-summary-update-info) (gnus-list-of-read-articles gnus-newsgroup-name)) (setq gnus-newsgroup-expirable --- 7197,7203 ---- ;; We need to update the info for ;; this group for `gnus-list-of-read-articles' ;; to give us the right answer. ! (gnus-run-hooks 'gnus-exit-group-hook) (gnus-summary-update-info) (gnus-list-of-read-articles gnus-newsgroup-name)) (setq gnus-newsgroup-expirable *************** *** 7347,7360 **** (unless no-highlight (save-excursion (set-buffer gnus-article-buffer) ! (run-hooks 'gnus-article-display-hook) (set-buffer gnus-original-article-buffer) (gnus-request-article (cdr gnus-article-current) (car gnus-article-current) (current-buffer)))) ;; Prettify the summary buffer line. (when (gnus-visual-p 'summary-highlight 'highlight) ! (run-hooks 'gnus-visual-mark-article-hook)))) (defun gnus-summary-edit-wash (key) "Perform editing command in the article buffer." --- 7353,7366 ---- (unless no-highlight (save-excursion (set-buffer gnus-article-buffer) ! (gnus-run-hooks 'gnus-article-display-hook) (set-buffer gnus-original-article-buffer) (gnus-request-article (cdr gnus-article-current) (car gnus-article-current) (current-buffer)))) ;; Prettify the summary buffer line. (when (gnus-visual-p 'summary-highlight 'highlight) ! (gnus-run-hooks 'gnus-visual-mark-article-hook)))) (defun gnus-summary-edit-wash (key) "Perform editing command in the article buffer." *************** *** 7634,7671 **** (defun gnus-summary-mark-article-as-unread (mark) "Mark the current article quickly as unread with MARK." ! (let ((article (gnus-summary-article-number))) ! (if (<= article 0) ! (progn ! (gnus-error 1 "Can't mark negative article numbers") ! nil) ! (setq gnus-newsgroup-marked (delq article gnus-newsgroup-marked)) ! (setq gnus-newsgroup-dormant (delq article gnus-newsgroup-dormant)) ! (setq gnus-newsgroup-expirable (delq article gnus-newsgroup-expirable)) ! (setq gnus-newsgroup-reads (delq article gnus-newsgroup-reads)) ! (cond ((= mark gnus-ticked-mark) ! (push article gnus-newsgroup-marked)) ! ((= mark gnus-dormant-mark) ! (push article gnus-newsgroup-dormant)) ! (t ! (push article gnus-newsgroup-unreads))) ! (setq gnus-newsgroup-reads ! (delq (assq article gnus-newsgroup-reads) ! gnus-newsgroup-reads)) ! ! ;; See whether the article is to be put in the cache. ! (and gnus-use-cache ! (vectorp (gnus-summary-article-header article)) ! (save-excursion ! (gnus-cache-possibly-enter-article ! gnus-newsgroup-name article ! (gnus-summary-article-header article) ! (= mark gnus-ticked-mark) ! (= mark gnus-dormant-mark) (= mark gnus-unread-mark)))) ! ;; Fix the mark. ! (gnus-summary-update-mark mark 'unread) ! t))) (defun gnus-summary-mark-article (&optional article mark no-expire) "Mark ARTICLE with MARK. MARK can be any character. --- 7640,7680 ---- (defun gnus-summary-mark-article-as-unread (mark) "Mark the current article quickly as unread with MARK." ! (let* ((article (gnus-summary-article-number)) ! (old-mark (gnus-summary-article-mark article))) ! (if (eq mark old-mark) ! t ! (if (<= article 0) ! (progn ! (gnus-error 1 "Can't mark negative article numbers") ! nil) ! (setq gnus-newsgroup-marked (delq article gnus-newsgroup-marked)) ! (setq gnus-newsgroup-dormant (delq article gnus-newsgroup-dormant)) ! (setq gnus-newsgroup-expirable (delq article gnus-newsgroup-expirable)) ! (setq gnus-newsgroup-reads (delq article gnus-newsgroup-reads)) ! (cond ((= mark gnus-ticked-mark) ! (push article gnus-newsgroup-marked)) ! ((= mark gnus-dormant-mark) ! (push article gnus-newsgroup-dormant)) ! (t ! (push article gnus-newsgroup-unreads))) ! (setq gnus-newsgroup-reads ! (delq (assq article gnus-newsgroup-reads) ! gnus-newsgroup-reads)) ! ! ;; See whether the article is to be put in the cache. ! (and gnus-use-cache ! (vectorp (gnus-summary-article-header article)) ! (save-excursion ! (gnus-cache-possibly-enter-article ! gnus-newsgroup-name article ! (gnus-summary-article-header article) ! (= mark gnus-ticked-mark) ! (= mark gnus-dormant-mark) (= mark gnus-unread-mark)))) ! ;; Fix the mark. ! (gnus-summary-update-mark mark 'unread) ! t)))) (defun gnus-summary-mark-article (&optional article mark no-expire) "Mark ARTICLE with MARK. MARK can be any character. *************** *** 7729,7735 **** (t gnus-unread-mark)) 'replied) (when (gnus-visual-p 'summary-highlight 'highlight) ! (run-hooks 'gnus-summary-update-hook)) t) (defun gnus-summary-update-mark (mark type) --- 7738,7744 ---- (t gnus-unread-mark)) 'replied) (when (gnus-visual-p 'summary-highlight 'highlight) ! (gnus-run-hooks 'gnus-summary-update-hook)) t) (defun gnus-summary-update-mark (mark type) *************** *** 8681,8687 **** (cond ((assq 'execute props) (gnus-execute-command (cdr (assq 'execute props))))) (let ((gnus-current-article (gnus-summary-article-number))) ! (run-hooks 'gnus-mark-article-hook))) (defun gnus-execute-command (command &optional automatic) (save-excursion --- 8690,8696 ---- (cond ((assq 'execute props) (gnus-execute-command (cdr (assq 'execute props))))) (let ((gnus-current-article (gnus-summary-article-number))) ! (gnus-run-hooks 'gnus-mark-article-hook))) (defun gnus-execute-command (command &optional automatic) (save-excursion *** pub/qgnus/lisp/gnus-topic.el Wed Feb 11 15:04:51 1998 --- qgnus/lisp/gnus-topic.el Sat Feb 14 19:27:45 1998 *************** *** 1,5 **** ;;; gnus-topic.el --- a folding minor mode for Gnus group buffers ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Ilja Weis ;; Lars Magne Ingebrigtsen --- 1,5 ---- ;;; gnus-topic.el --- a folding minor mode for Gnus group buffers ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Ilja Weis ;; Lars Magne Ingebrigtsen *************** *** 40,51 **** "Minor mode for Gnus group buffers.") (defcustom gnus-topic-mode-hook nil ! "Hook run in topic mode buffers." :type 'hook :group 'gnus-topic) (defcustom gnus-topic-line-format "%i[ %(%{%n%}%) -- %A ]%v\n" ! "Format of topic lines. It works along the same lines as a normal formatting string, with some simple extensions. --- 40,51 ---- "Minor mode for Gnus group buffers.") (defcustom gnus-topic-mode-hook nil ! "*Hook run in topic mode buffers." :type 'hook :group 'gnus-topic) (defcustom gnus-topic-line-format "%i[ %(%{%n%}%) -- %A ]%v\n" ! "*Format of topic lines. It works along the same lines as a normal formatting string, with some simple extensions. *************** *** 398,404 **** (gnus-group-set-mode-line) (setq gnus-group-list-mode (cons level all)) ! (run-hooks 'gnus-group-prepare-hook)))) (defun gnus-topic-prepare-topic (topicl level &optional list-level all silent lowest) --- 398,404 ---- (gnus-group-set-mode-line) (setq gnus-group-list-mode (cons level all)) ! (gnus-run-hooks 'gnus-group-prepare-hook)))) (defun gnus-topic-prepare-topic (topicl level &optional list-level all silent lowest) *************** *** 980,986 **** ;; We check the topology. (when gnus-newsrc-alist (gnus-topic-check-topology)) ! (run-hooks 'gnus-topic-mode-hook)) ;; Remove topic infestation. (unless gnus-topic-mode (remove-hook 'gnus-summary-exit-hook 'gnus-topic-update-topic) --- 980,986 ---- ;; We check the topology. (when gnus-newsrc-alist (gnus-topic-check-topology)) ! (gnus-run-hooks 'gnus-topic-mode-hook)) ;; Remove topic infestation. (unless gnus-topic-mode (remove-hook 'gnus-summary-exit-hook 'gnus-topic-update-topic) *** pub/qgnus/lisp/gnus-undo.el Sat Sep 13 20:30:28 1997 --- qgnus/lisp/gnus-undo.el Sat Feb 14 19:27:45 1998 *************** *** 1,5 **** ;;; gnus-undo.el --- minor mode for undoing in Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-undo.el --- minor mode for undoing in Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 100,106 **** (gnus-add-minor-mode 'gnus-undo-mode "" gnus-undo-mode-map) (make-local-hook 'post-command-hook) (add-hook 'post-command-hook 'gnus-undo-boundary nil t) ! (run-hooks 'gnus-undo-mode-hook))) ;;; Interface functions. --- 100,106 ---- (gnus-add-minor-mode 'gnus-undo-mode "" gnus-undo-mode-map) (make-local-hook 'post-command-hook) (add-hook 'post-command-hook 'gnus-undo-boundary nil t) ! (gnus-run-hooks 'gnus-undo-mode-hook))) ;;; Interface functions. *** pub/qgnus/lisp/gnus-util.el Sat Dec 6 17:45:19 1997 --- qgnus/lisp/gnus-util.el Sat Feb 14 19:27:45 1998 *************** *** 1,5 **** ;;; gnus-util.el --- utility functions for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-util.el --- utility functions for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 72,80 **** (set symbol nil)) symbol)) - ;; modified by MORIOKA Tomohiko - ;; function `substring' might cut on a middle of multi-octet - ;; character. (defun gnus-truncate-string (str width) (substring str 0 width)) --- 72,77 ---- *************** *** 161,167 **** (setq address (substring from (match-beginning 0) (match-end 0)))) ;; Then we check whether the "name
" format is used. (and address - ;; Fix by MORIOKA Tomohiko ;; Linear white space is not required. (string-match (concat "[ \t]*<" (regexp-quote address) ">") from) (and (setq name (substring from 0 (match-beginning 0))) --- 158,163 ---- *************** *** 175,181 **** (1- (match-end 0))))) (and (string-match "()" from) (setq name address)) - ;; Fix by MORIOKA Tomohiko . ;; XOVER might not support folded From headers. (and (string-match "(.*" from) (setq name (substring from (1+ (match-beginning 0)) --- 171,176 ---- *************** *** 837,842 **** --- 832,912 ---- (while myfuns (setq arg (funcall (pop myfuns) arg))) arg)) + + (defun gnus-run-hooks (&rest funcs) + "Does the same as `run-hooks', but saves excursion." + (save-excursion + (apply 'run-hooks funcs))) + + ;;; + ;;; .netrc and .authinforc parsing + ;;; + + (defvar gnus-netrc-syntax-table + (let ((table (copy-syntax-table text-mode-syntax-table))) + (modify-syntax-entry ?- "w" table) + (modify-syntax-entry ?_ "w" table) + (modify-syntax-entry ?! "w" table) + (modify-syntax-entry ?. "w" table) + (modify-syntax-entry ?, "w" table) + (modify-syntax-entry ?: "w" table) + (modify-syntax-entry ?\; "w" table) + (modify-syntax-entry ?% "w" table) + (modify-syntax-entry ?) "w" table) + (modify-syntax-entry ?( "w" table) + table) + "Syntax table when parsing .netrc files.") + + (defun gnus-parse-netrc (file) + "Parse FILE and return an list of all entries in the file." + (if (not (file-exists-p file)) + () + (save-excursion + (let ((tokens '("machine" "default" "login" + "password" "account" "macdef")) + alist elem result pair) + (nnheader-set-temp-buffer " *netrc*") + (set-syntax-table gnus-netrc-syntax-table) + (insert-file-contents file) + (goto-char (point-min)) + ;; Go through the file, line by line. + (while (not (eobp)) + (narrow-to-region (point) (gnus-point-at-eol)) + ;; For each line, get the tokens and values. + (while (not (eobp)) + (skip-chars-forward "\t ") + (unless (eobp) + (setq elem (buffer-substring + (point) (progn (forward-sexp 1) (point)))) + (if (member elem tokens) + (progn + ;; Tokens that don't have a following value are ignored. + (when (and pair (cdr pair)) + (push pair alist)) + (setq pair (list elem))) + ;; Values that haven't got a preceding token are ignored. + (when pair + (setcdr pair elem) + (push pair alist) + (setq pair nil))))) + (push alist result) + (setq alist nil + pair nil) + (widen) + (forward-line 1)) + result)))) + + (defun gnus-netrc-machine (list machine) + "Return the netrc values from LIST for MACHINE." + (while (and list + (not (equal (cdr (assoc "machine" (car list))) machine))) + (pop list)) + (when list + (car list))) + + (defun gnus-netrc-get (alist type) + "Return the value of token TYPE from ALIST." + (cdr (assoc type alist))) (provide 'gnus-util) *** pub/qgnus/lisp/gnus-uu.el Wed Feb 11 15:04:53 1998 --- qgnus/lisp/gnus-uu.el Sat Feb 14 19:27:47 1998 *************** *** 1,5 **** ;;; gnus-uu.el --- extract (uu)encoded files in Gnus ! ;; Copyright (C) 1985,86,87,93,94,95,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Created: 2 Oct 1993 --- 1,5 ---- ;;; gnus-uu.el --- extract (uu)encoded files in Gnus ! ;; Copyright (C) 1985,86,87,93,94,95,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Created: 2 Oct 1993 *************** *** 71,77 **** ("\\.\\(flc\\|fli\\|rle\\|iff\\|pfx\\|avi\\|sme\\|rpza\\|dl\\|qt\\|rsrc\\|mov\\)$" "xanim") ("\\.\\(tar\\|arj\\|zip\\|zoo\\|arc\\|gz\\|Z\\|lzh\\|ar\\|lha\\)$" "gnus-uu-archive")) ! "Default actions to be taken when the user asks to view a file. To change the behaviour, you can either edit this variable or set `gnus-uu-user-view-rules' to something useful. --- 71,77 ---- ("\\.\\(flc\\|fli\\|rle\\|iff\\|pfx\\|avi\\|sme\\|rpza\\|dl\\|qt\\|rsrc\\|mov\\)$" "xanim") ("\\.\\(tar\\|arj\\|zip\\|zoo\\|arc\\|gz\\|Z\\|lzh\\|ar\\|lha\\)$" "gnus-uu-archive")) ! "*Default actions to be taken when the user asks to view a file. To change the behaviour, you can either edit this variable or set `gnus-uu-user-view-rules' to something useful. *************** *** 103,109 **** :type '(repeat (group regexp (string :tag "Command")))) (defcustom gnus-uu-user-view-rules nil ! "What actions are to be taken to view a file. See the documentation on the `gnus-uu-default-view-rules' variable for details." :group 'gnus-extract-view --- 103,109 ---- :type '(repeat (group regexp (string :tag "Command")))) (defcustom gnus-uu-user-view-rules nil ! "*What actions are to be taken to view a file. See the documentation on the `gnus-uu-default-view-rules' variable for details." :group 'gnus-extract-view *************** *** 111,117 **** (defcustom gnus-uu-user-view-rules-end '(("" "file")) ! "What actions are to be taken if no rule matched the file name. See the documentation on the `gnus-uu-default-view-rules' variable for details." :group 'gnus-extract-view --- 111,117 ---- (defcustom gnus-uu-user-view-rules-end '(("" "file")) ! "*What actions are to be taken if no rule matched the file name. See the documentation on the `gnus-uu-default-view-rules' variable for details." :group 'gnus-extract-view *************** *** 129,135 **** ("\\.Z$" "uncompress") ("\\.gz$" "gunzip") ("\\.arc$" "arc -x")) ! "See `gnus-uu-user-archive-rules'." :group 'gnus-extract-archive :type '(repeat (group regexp (string :tag "Command")))) --- 129,135 ---- ("\\.Z$" "uncompress") ("\\.gz$" "gunzip") ("\\.arc$" "arc -x")) ! "*See `gnus-uu-user-archive-rules'." :group 'gnus-extract-archive :type '(repeat (group regexp (string :tag "Command")))) *************** *** 137,143 **** (list "uncompress" "gunzip")) (defcustom gnus-uu-user-archive-rules nil ! "A list that can be set to override the default archive unpacking commands. To use, for instance, 'untar' to unpack tar files and 'zip -x' to unpack zip files, say the following: (setq gnus-uu-user-archive-rules --- 137,143 ---- (list "uncompress" "gunzip")) (defcustom gnus-uu-user-archive-rules nil ! "*A list that can be set to override the default archive unpacking commands. To use, for instance, 'untar' to unpack tar files and 'zip -x' to unpack zip files, say the following: (setq gnus-uu-user-archive-rules *************** *** 234,240 **** :type 'boolean) (defcustom gnus-uu-grabbed-file-functions nil ! "Functions run on each file after successful decoding. They will be called with the name of the file as the argument. Likely functions you can use in this list are `gnus-uu-grab-view' and `gnus-uu-grab-move'." --- 234,240 ---- :type 'boolean) (defcustom gnus-uu-grabbed-file-functions nil ! "*Functions run on each file after successful decoding. They will be called with the name of the file as the argument. Likely functions you can use in this list are `gnus-uu-grab-view' and `gnus-uu-grab-move'." *************** *** 284,297 **** :type 'boolean) (defcustom gnus-uu-pre-uudecode-hook nil ! "Hook run before sending a message to uudecode." :group 'gnus-extract :type 'hook) (defcustom gnus-uu-digest-headers '("^Date:" "^From:" "^To:" "^Cc:" "^Subject:" "^Message-ID:" "^Keywords:" "^Summary:" "^References:") ! "List of regexps to match headers included in digested messages. The headers will be included in the sequence they are matched." :group 'gnus-extract :type '(repeat regexp)) --- 284,297 ---- :type 'boolean) (defcustom gnus-uu-pre-uudecode-hook nil ! "*Hook run before sending a message to uudecode." :group 'gnus-extract :type 'hook) (defcustom gnus-uu-digest-headers '("^Date:" "^From:" "^To:" "^Cc:" "^Subject:" "^Message-ID:" "^Keywords:" "^Summary:" "^References:") ! "*List of regexps to match headers included in digested messages. The headers will be included in the sequence they are matched." :group 'gnus-extract :type '(repeat regexp)) *************** *** 1440,1446 **** ;; Try to correct mishandled uucode. (when gnus-uu-correct-stripped-uucode (gnus-uu-check-correct-stripped-uucode start-char (point))) ! (run-hooks 'gnus-uu-pre-uudecode-hook) ;; Send the text to the process. (condition-case nil --- 1440,1446 ---- ;; Try to correct mishandled uucode. (when gnus-uu-correct-stripped-uucode (gnus-uu-check-correct-stripped-uucode start-char (point))) ! (gnus-run-hooks 'gnus-uu-pre-uudecode-hook) ;; Send the text to the process. (condition-case nil *************** *** 1749,1755 **** ;; and "spiral.jpg", respectively.) The function should return nil if ;; the encoding wasn't successful. (defcustom gnus-uu-post-encode-method 'gnus-uu-post-encode-uuencode ! "Function used for encoding binary files. There are three functions supplied with gnus-uu for encoding files: `gnus-uu-post-encode-uuencode', which does straight uuencoding; `gnus-uu-post-encode-mime', which encodes with base64 and adds MIME --- 1749,1755 ---- ;; and "spiral.jpg", respectively.) The function should return nil if ;; the encoding wasn't successful. (defcustom gnus-uu-post-encode-method 'gnus-uu-post-encode-uuencode ! "*Function used for encoding binary files. There are three functions supplied with gnus-uu for encoding files: `gnus-uu-post-encode-uuencode', which does straight uuencoding; `gnus-uu-post-encode-mime', which encodes with base64 and adds MIME *************** *** 1762,1782 **** (function :tag "Other"))) (defcustom gnus-uu-post-include-before-composing nil ! "Non-nil means that gnus-uu will ask for a file to encode before you compose the article. If this variable is t, you can either include an encoded file with \\[gnus-uu-post-insert-binary-in-article] or have one included for you when you post the article." :group 'gnus-extract-post :type 'boolean) (defcustom gnus-uu-post-length 990 ! "Maximum length of an article. The encoded file will be split into how many articles it takes to post the entire file." :group 'gnus-extract-post :type 'integer) (defcustom gnus-uu-post-threaded nil ! "Non-nil means that gnus-uu will post the encoded file in a thread. This may not be smart, as no other decoder I have seen are able to follow threads when collecting uuencoded articles. (Well, I have seen one package that does that - gnus-uu, but somehow, I don't think that --- 1762,1782 ---- (function :tag "Other"))) (defcustom gnus-uu-post-include-before-composing nil ! "*Non-nil means that gnus-uu will ask for a file to encode before you compose the article. If this variable is t, you can either include an encoded file with \\[gnus-uu-post-insert-binary-in-article] or have one included for you when you post the article." :group 'gnus-extract-post :type 'boolean) (defcustom gnus-uu-post-length 990 ! "*Maximum length of an article. The encoded file will be split into how many articles it takes to post the entire file." :group 'gnus-extract-post :type 'integer) (defcustom gnus-uu-post-threaded nil ! "*Non-nil means that gnus-uu will post the encoded file in a thread. This may not be smart, as no other decoder I have seen are able to follow threads when collecting uuencoded articles. (Well, I have seen one package that does that - gnus-uu, but somehow, I don't think that *************** *** 1785,1791 **** :type 'boolean) (defcustom gnus-uu-post-separate-description t ! "Non-nil means that the description will be posted in a separate article. The first article will typically be numbered (0/x). If this variable is nil, the description the user enters will be included at the beginning of the first article, which will be numbered (1/x). Default --- 1785,1791 ---- :type 'boolean) (defcustom gnus-uu-post-separate-description t ! "*Non-nil means that the description will be posted in a separate article. The first article will typically be numbered (0/x). If this variable is nil, the description the user enters will be included at the beginning of the first article, which will be numbered (1/x). Default *** pub/qgnus/lisp/gnus-vm.el Sun Sep 21 07:06:18 1997 --- qgnus/lisp/gnus-vm.el Sat Feb 14 19:27:47 1998 *************** *** 1,5 **** ;;; gnus-vm.el --- vm interface for Gnus ! ;; Copyright (C) 1994,95,96,97 Free Software Foundation, Inc. ;; Author: Per Persson ;; Keywords: news, mail --- 1,5 ---- ;;; gnus-vm.el --- vm interface for Gnus ! ;; Copyright (C) 1994,95,96,97,98 Free Software Foundation, Inc. ;; Author: Per Persson ;; Keywords: news, mail *** pub/qgnus/lisp/gnus-win.el Sun Nov 23 13:11:41 1997 --- qgnus/lisp/gnus-win.el Sat Feb 14 19:27:48 1998 *************** *** 1,5 **** ;;; gnus-win.el --- window configuration functions for Gnus ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-win.el --- window configuration functions for Gnus ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/gnus-xmas.el Sun Feb 8 18:14:43 1998 --- qgnus/lisp/gnus-xmas.el Sat Feb 14 19:27:48 1998 *************** *** 1,5 **** ;;; gnus-xmas.el --- Gnus functions for XEmacs ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; gnus-xmas.el --- Gnus functions for XEmacs ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *************** *** 57,63 **** "Color alist used for the Gnus logo.") (defcustom gnus-xmas-logo-color-style 'moss ! "Color styles used for the Gnus logo." :type '(choice (const flame) (const pine) (const moss) (const irish) (const sky) (const tin) (const velvet) (const grape) (const labia) --- 57,63 ---- "Color alist used for the Gnus logo.") (defcustom gnus-xmas-logo-color-style 'moss ! "*Color styles used for the Gnus logo." :type '(choice (const flame) (const pine) (const moss) (const irish) (const sky) (const tin) (const velvet) (const grape) (const labia) *************** *** 73,79 **** (featurep 'xpm)) 'gnus-xmas-article-display-xface "{ echo '/* Width=48, Height=48 */'; uncompface; } | icontopbm | xv -quit -") ! "String or function to be executed to display an X-Face header. If it is a string, the command will be executed in a sub-shell asynchronously. The compressed face will be piped to this command." :type '(choice string function)) --- 73,79 ---- (featurep 'xpm)) 'gnus-xmas-article-display-xface "{ echo '/* Width=48, Height=48 */'; uncompface; } | icontopbm | xv -quit -") ! "*String or function to be executed to display an X-Face header. If it is a string, the command will be executed in a sub-shell asynchronously. The compressed face will be piped to this command." :type '(choice string function)) *************** *** 153,159 **** gnus-summary-selected-face))) (defcustom gnus-xmas-force-redisplay nil ! "If non-nil, force a redisplay before recentering the summary buffer. This is ugly, but it works around a bug in `window-displayed-height'." :type 'boolean :group 'gnus-xmas) --- 153,159 ---- gnus-summary-selected-face))) (defcustom gnus-xmas-force-redisplay nil ! "*If non-nil, force a redisplay before recentering the summary buffer. This is ugly, but it works around a bug in `window-displayed-height'." :type 'boolean :group 'gnus-xmas) *** pub/qgnus/lisp/gnus.el Fri Feb 13 22:39:10 1998 --- qgnus/lisp/gnus.el Sat Feb 14 19:27:50 1998 *************** *** 1,5 **** ;;; gnus.el --- a newsreader for GNU Emacs ! ;; Copyright (C) 1987,88,89,90,93,94,95,96,97 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen --- 1,5 ---- ;;; gnus.el --- a newsreader for GNU Emacs ! ;; Copyright (C) 1987,88,89,90,93,94,95,96,97,98 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen *************** *** 246,266 **** :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) ! (defconst gnus-version-number "0.25" "Version number for this version of Gnus.") (defconst gnus-version (format "Quassia Gnus v%s" gnus-version-number) "Version string for this version of Gnus.") (defcustom gnus-inhibit-startup-message nil ! "If non-nil, the startup message will not be displayed. This variable is used before `.gnus.el' is loaded, so it should be set in `.emacs' instead." :group 'gnus-start :type 'boolean) (defcustom gnus-play-startup-jingle nil ! "If non-nil, play the Gnus jingle at startup." :group 'gnus-start :type 'boolean) --- 246,266 ---- :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) ! (defconst gnus-version-number "0.26" "Version number for this version of Gnus.") (defconst gnus-version (format "Quassia Gnus v%s" gnus-version-number) "Version string for this version of Gnus.") (defcustom gnus-inhibit-startup-message nil ! "*If non-nil, the startup message will not be displayed. This variable is used before `.gnus.el' is loaded, so it should be set in `.emacs' instead." :group 'gnus-start :type 'boolean) (defcustom gnus-play-startup-jingle nil ! "*If non-nil, play the Gnus jingle at startup." :group 'gnus-start :type 'boolean) *************** *** 695,708 **** (require 'nnheader) (defcustom gnus-home-directory "~/" ! "Directory variable that specifies the \"home\" directory. All other Gnus path variables are initialized from this variable." :group 'gnus-files :type 'directory) (defcustom gnus-directory (or (getenv "SAVEDIR") (nnheader-concat gnus-home-directory "News/")) ! "Directory variable from which all other Gnus file variables are derived." :group 'gnus-files :type 'directory) --- 695,708 ---- (require 'nnheader) (defcustom gnus-home-directory "~/" ! "*Directory variable that specifies the \"home\" directory. All other Gnus path variables are initialized from this variable." :group 'gnus-files :type 'directory) (defcustom gnus-directory (or (getenv "SAVEDIR") (nnheader-concat gnus-home-directory "News/")) ! "*Directory variable from which all other Gnus file variables are derived." :group 'gnus-files :type 'directory) *************** *** 732,738 **** (setq gnus-select-method '(nntp \"my.nntp.server\" (nntp-port-number 899)))") (defcustom gnus-nntpserver-file "/etc/nntpserver" ! "A file with only the name of the nntp server in it." :group 'gnus-files :group 'gnus-server :type 'file) --- 732,738 ---- (setq gnus-select-method '(nntp \"my.nntp.server\" (nntp-port-number 899)))") (defcustom gnus-nntpserver-file "/etc/nntpserver" ! "*A file with only the name of the nntp server in it." :group 'gnus-files :group 'gnus-server :type 'file) *************** *** 769,775 **** nil (list gnus-nntp-service))) (error nil)) ! "Default method for selecting a newsgroup. This variable should be a list, where the first element is how the news is to be fetched, the second is the address. --- 769,775 ---- nil (list gnus-nntp-service))) (error nil)) ! "*Default method for selecting a newsgroup. This variable should be a list, where the first element is how the news is to be fetched, the second is the address. *************** *** 797,803 **** ,(nnheader-concat message-directory "archive/active")) (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 --- 797,803 ---- ,(nnheader-concat message-directory "archive/active")) (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 *************** *** 832,838 **** string)) (defcustom gnus-secondary-servers nil ! "List of NNTP servers that the user can choose between interactively. To make Gnus query you for a server, you have to give `gnus' a non-numeric prefix - `C-u M-x gnus', in short." :group 'gnus-server --- 832,838 ---- string)) (defcustom gnus-secondary-servers nil ! "*List of NNTP servers that the user can choose between interactively. To make Gnus query you for a server, you have to give `gnus' a non-numeric prefix - `C-u M-x gnus', in short." :group 'gnus-server *************** *** 847,853 **** string)) (defcustom gnus-secondary-select-methods nil ! "A list of secondary methods that will be used for reading news. This is a list where each element is a complete select method (see `gnus-select-method'). --- 847,853 ---- string)) (defcustom gnus-secondary-select-methods nil ! "*A list of secondary methods that will be used for reading news. This is a list where each element is a complete select method (see `gnus-select-method'). *************** *** 864,870 **** Should be set in paths.el, and shouldn't be touched by the user.") (defcustom gnus-local-domain nil ! "Local domain name without a host name. The DOMAINNAME environment variable is used instead if it is defined. If the `system-name' function returns the full Internet name, there is no need to set this variable." --- 864,870 ---- Should be set in paths.el, and shouldn't be touched by the user.") (defcustom gnus-local-domain nil ! "*Local domain name without a host name. The DOMAINNAME environment variable is used instead if it is defined. If the `system-name' function returns the full Internet name, there is no need to set this variable." *************** *** 879,885 **** ;; Customization variables (defcustom gnus-refer-article-method nil ! "Preferred method for fetching an article by Message-ID. If you are reading news from the local spool (with nnspool), fetching articles by Message-ID is painfully slow. By setting this method to an nntp method, you might get acceptable results. --- 879,885 ---- ;; Customization variables (defcustom gnus-refer-article-method nil ! "*Preferred method for fetching an article by Message-ID. If you are reading news from the local spool (with nnspool), fetching articles by Message-ID is painfully slow. By setting this method to an nntp method, you might get acceptable results. *************** *** 902,908 **** "/ftp@nctuccca.edu.tw:/USENET/FAQ/" "/ftp@hwarang.postech.ac.kr:/pub/usenet/" "/ftp@ftp.hk.super.net:/mirror/faqs/") ! "Directory where the group FAQs are stored. This will most commonly be on a remote machine, and the file will be fetched by ange-ftp. --- 902,908 ---- "/ftp@nctuccca.edu.tw:/USENET/FAQ/" "/ftp@hwarang.postech.ac.kr:/pub/usenet/" "/ftp@ftp.hk.super.net:/mirror/faqs/") ! "*Directory where the group FAQs are stored. This will most commonly be on a remote machine, and the file will be fetched by ange-ftp. *************** *** 1044,1050 **** :type 'boolean) (defcustom gnus-use-demon nil ! "If non-nil, Gnus might use some demons." :group 'gnus-meta :type 'boolean) --- 1044,1050 ---- :type 'boolean) (defcustom gnus-use-demon nil ! "*If non-nil, Gnus might use some demons." :group 'gnus-meta :type 'boolean) *************** *** 1060,1066 **** (defcustom gnus-summary-prepare-exit-hook '(gnus-summary-expire-articles) ! "A hook called when preparing to exit from the summary buffer. It calls `gnus-summary-expire-articles' by default." :group 'gnus-summary-exit :type 'hook) --- 1060,1066 ---- (defcustom gnus-summary-prepare-exit-hook '(gnus-summary-expire-articles) ! "*A hook called when preparing to exit from the summary buffer. It calls `gnus-summary-expire-articles' by default." :group 'gnus-summary-exit :type 'hook) *************** *** 1074,1080 **** (defcustom gnus-expert-user nil "*Non-nil means that you will never be asked for confirmation about anything. ! And that means *anything*." :group 'gnus-meta :type 'boolean) --- 1074,1081 ---- (defcustom gnus-expert-user nil "*Non-nil means that you will never be asked for confirmation about anything. ! That doesn't mean *anything* anything; particularly destructive ! commands will still require prompting." :group 'gnus-meta :type 'boolean) *************** *** 1105,1111 **** :type 'boolean) (defcustom gnus-shell-command-separator ";" ! "String used to separate to shell commands." :group 'gnus-files :type 'string) --- 1106,1112 ---- :type 'boolean) (defcustom gnus-shell-command-separator ";" ! "*String used to separate to shell commands." :group 'gnus-files :type 'string) *************** *** 1127,1133 **** ("nngateway" none address prompt-address physical-address) ("nnweb" none) ("nnagent" post-mail)) ! "An alist of valid select methods. The first element of each list lists should be a string with the name of the select method. The other elements may be the category of this method (i. e., `post', `mail', `none' or whatever) or other --- 1128,1134 ---- ("nngateway" none address prompt-address physical-address) ("nnweb" none) ("nnagent" post-mail)) ! "*An alist of valid select methods. The first element of each list lists should be a string with the name of the select method. The other elements may be the category of this method (i. e., `post', `mail', `none' or whatever) or other *************** *** 1161,1167 **** (sexp :tag "Value"))))) (defcustom gnus-updated-mode-lines '(group article summary tree) ! "List of buffers that should update their mode lines. The list may contain the symbols `group', `article', `tree' and `summary'. If the corresponding symbol is present, Gnus will keep that mode line updated with information that may be pertinent. --- 1162,1168 ---- (sexp :tag "Value"))))) (defcustom gnus-updated-mode-lines '(group article summary tree) ! "*List of buffers that should update their mode lines. The list may contain the symbols `group', `article', `tree' and `summary'. If the corresponding symbol is present, Gnus will keep that mode line updated with information that may be pertinent. *************** *** 1201,1207 **** regexp)) (defcustom gnus-group-uncollapsed-levels 1 ! "Number of group name elements to leave alone when making a short group name." :group 'gnus-group-visual :type 'integer) --- 1202,1208 ---- regexp)) (defcustom gnus-group-uncollapsed-levels 1 ! "*Number of group name elements to leave alone when making a short group name." :group 'gnus-group-visual :type 'integer) *************** *** 1213,1224 **** ;; Hooks. (defcustom gnus-load-hook nil ! "A hook run while Gnus is loaded." :group 'gnus-start :type 'hook) (defcustom gnus-apply-kill-hook '(gnus-apply-kill-file) ! "A hook called to apply kill files to a group. This hook is intended to apply a kill file to the selected newsgroup. The function `gnus-apply-kill-file' is called by default. --- 1214,1225 ---- ;; Hooks. (defcustom gnus-load-hook nil ! "*A hook run while Gnus is loaded." :group 'gnus-start :type 'hook) (defcustom gnus-apply-kill-hook '(gnus-apply-kill-file) ! "*A hook called to apply kill files to a group. This hook is intended to apply a kill file to the selected newsgroup. The function `gnus-apply-kill-file' is called by default. *************** *** 1239,1245 **** :type 'hook) (defcustom gnus-group-change-level-function nil ! "Function run when a group level is changed. It is called with three parameters -- GROUP, LEVEL and OLDLEVEL." :group 'gnus-group-level :type 'function) --- 1240,1246 ---- :type 'hook) (defcustom gnus-group-change-level-function nil ! "*Function run when a group level is changed. It is called with three parameters -- GROUP, LEVEL and OLDLEVEL." :group 'gnus-group-level :type 'function) *************** *** 1254,1260 **** browse-menu server-menu page-marker tree-menu binary-menu pick-menu grouplens-menu) ! "Enable visual features. If `visual' is disabled, there will be no menus and few faces. Most of the visual customization options below will be ignored. Gnus will use less space and be faster as a result. --- 1255,1261 ---- browse-menu server-menu page-marker tree-menu binary-menu pick-menu grouplens-menu) ! "*Enable visual features. If `visual' is disabled, there will be no menus and few faces. Most of the visual customization options below will be ignored. Gnus will use less space and be faster as a result. *************** *** 1297,1303 **** 'highlight) 'default) (error 'highlight)) ! "Face used for group or summary buffer mouse highlighting. The line beneath the mouse pointer will be highlighted with this face." :group 'gnus-visual --- 1298,1304 ---- 'highlight) 'default) (error 'highlight)) ! "*Face used for group or summary buffer mouse highlighting. The line beneath the mouse pointer will be highlighted with this face." :group 'gnus-visual *************** *** 1315,1321 **** gnus-article-hide-boring-headers gnus-article-treat-overstrike gnus-article-maybe-highlight)) ! "Controls how the article buffer will look. If you leave the list empty, the article will appear exactly as it is stored on the disk. The list entries will hide or highlight various --- 1316,1322 ---- gnus-article-hide-boring-headers gnus-article-treat-overstrike gnus-article-maybe-highlight)) ! "*Controls how the article buffer will look. If you leave the list empty, the article will appear exactly as it is stored on the disk. The list entries will hide or highlight various *************** *** 2389,2395 **** (defun gnus-group-get-parameter (group &optional symbol) "Return the group parameters for GROUP. ! If SYMBOL, return the value of that symbol in the group parameters." (let ((params (gnus-info-params (gnus-get-info group)))) (if symbol (gnus-group-parameter-value params symbol) --- 2390,2398 ---- (defun gnus-group-get-parameter (group &optional symbol) "Return the group parameters for GROUP. ! If SYMBOL, return the value of that symbol in the group parameters. ! Most functions should use `gnus-group-find-parameter', which ! also examines the topic parameters." (let ((params (gnus-info-params (gnus-get-info group)))) (if symbol (gnus-group-parameter-value params symbol) *************** *** 2515,2521 **** (kill-buffer (current-buffer)))))) (defcustom gnus-kill-file-name "KILL" ! "Suffix of the kill files." :group 'gnus-score-kill :group 'gnus-score-files :type 'string) --- 2518,2524 ---- (kill-buffer (current-buffer)))))) (defcustom gnus-kill-file-name "KILL" ! "*Suffix of the kill files." :group 'gnus-score-kill :group 'gnus-score-files :type 'string) *** pub/qgnus/lisp/message.el Fri Feb 13 22:39:12 1998 --- qgnus/lisp/message.el Sat Feb 14 19:27:52 1998 *************** *** 1,5 **** ;;; message.el --- composing mail and news messages ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: mail, news --- 1,5 ---- ;;; message.el --- composing mail and news messages ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: mail, news *************** *** 109,115 **** :type 'integer) (defcustom message-send-rename-function nil ! "Function called to rename the buffer after sending it." :group 'message-buffers :type 'function) --- 109,115 ---- :type 'integer) (defcustom message-send-rename-function nil ! "*Function called to rename the buffer after sending it." :group 'message-buffers :type 'function) *************** *** 157,163 **** (defcustom message-syntax-checks nil ;; Guess this one shouldn't be easy to customize... ! "Controls what syntax checks should not be performed on outgoing posts. To disable checking of long signatures, for instance, add `(signature . disabled)' to this list. --- 157,163 ---- (defcustom message-syntax-checks nil ;; Guess this one shouldn't be easy to customize... ! "*Controls what syntax checks should not be performed on outgoing posts. To disable checking of long signatures, for instance, add `(signature . disabled)' to this list. *************** *** 173,179 **** '(From Newsgroups Subject Date Message-ID (optional . Organization) Lines (optional . X-Newsreader)) ! "Headers to be generated or prompted for when posting an article. RFC977 and RFC1036 require From, Date, Newsgroups, Subject, Message-ID. Organization, Lines, In-Reply-To, Expires, and X-Newsreader are optional. If don't you want message to insert some --- 173,179 ---- '(From Newsgroups Subject Date Message-ID (optional . Organization) Lines (optional . X-Newsreader)) ! "*Headers to be generated or prompted for when posting an article. RFC977 and RFC1036 require From, Date, Newsgroups, Subject, Message-ID. Organization, Lines, In-Reply-To, Expires, and X-Newsreader are optional. If don't you want message to insert some *************** *** 185,191 **** (defcustom message-required-mail-headers '(From Subject Date (optional . In-Reply-To) Message-ID Lines (optional . X-Mailer)) ! "Headers to be generated or prompted for when mailing a message. RFC822 required that From, Date, To, Subject and Message-ID be included. Organization, Lines and X-Mailer are optional." :group 'message-mail --- 185,191 ---- (defcustom message-required-mail-headers '(From Subject Date (optional . In-Reply-To) Message-ID Lines (optional . X-Mailer)) ! "*Headers to be generated or prompted for when mailing a message. RFC822 required that From, Date, To, Subject and Message-ID be included. Organization, Lines and X-Mailer are optional." :group 'message-mail *************** *** 193,199 **** :type '(repeat sexp)) (defcustom message-deletable-headers '(Message-ID Date Lines) ! "Headers to be deleted if they already exist and were generated by message previously." :group 'message-headers :type 'sexp) --- 193,199 ---- :type '(repeat sexp)) (defcustom message-deletable-headers '(Message-ID Date Lines) ! "*Headers to be deleted if they already exist and were generated by message previously." :group 'message-headers :type 'sexp) *************** *** 219,225 **** ;;;###autoload (defcustom message-signature-separator "^-- *$" ! "Regexp matching the signature separator." :type 'regexp :group 'message-various) --- 219,225 ---- ;;;###autoload (defcustom message-signature-separator "^-- *$" ! "*Regexp matching the signature separator." :type 'regexp :group 'message-various) *************** *** 227,233 **** "*The string which is inserted for elided text.") (defcustom message-interactive nil ! "Non-nil means when sending a message wait for and display errors. nil means let mailer mail back a message to report errors." :group 'message-sending :group 'message-mail --- 227,233 ---- "*The string which is inserted for elided text.") (defcustom message-interactive nil ! "*Non-nil means when sending a message wait for and display errors. nil means let mailer mail back a message to report errors." :group 'message-sending :group 'message-mail *************** *** 308,321 **** :type 'regexp) (defcustom message-cancel-message "I am canceling my own article." ! "Message to be inserted in the cancel message." :group 'message-interface :type 'string) ;; Useful to set in site-init.el ;;;###autoload (defcustom message-send-mail-function 'message-send-mail-with-sendmail ! "Function to call to send the current buffer as mail. The headers should be delimited by a line whose contents match the variable `mail-header-separator'. --- 308,321 ---- :type 'regexp) (defcustom message-cancel-message "I am canceling my own article." ! "*Message to be inserted in the cancel message." :group 'message-interface :type 'string) ;; Useful to set in site-init.el ;;;###autoload (defcustom message-send-mail-function 'message-send-mail-with-sendmail ! "*Function to call to send the current buffer as mail. The headers should be delimited by a line whose contents match the variable `mail-header-separator'. *************** *** 331,337 **** :group 'message-mail) (defcustom message-send-news-function 'message-send-news ! "Function to call to send the current buffer as news. The headers should be delimited by a line whose contents match the variable `mail-header-separator'." :group 'message-sending --- 331,337 ---- :group 'message-mail) (defcustom message-send-news-function 'message-send-news ! "*Function to call to send the current buffer as news. The headers should be delimited by a line whose contents match the variable `mail-header-separator'." :group 'message-sending *************** *** 339,359 **** :type 'function) (defcustom message-reply-to-function nil ! "Function that should return a list of headers. This function should pick out addresses from the To, Cc, and From headers and respond with new To and Cc headers." :group 'message-interface :type 'function) (defcustom message-wide-reply-to-function nil ! "Function that should return a list of headers. This function should pick out addresses from the To, Cc, and From headers and respond with new To and Cc headers." :group 'message-interface :type 'function) (defcustom message-followup-to-function nil ! "Function that should return a list of headers. This function should pick out addresses from the To, Cc, and From headers and respond with new To and Cc headers." :group 'message-interface --- 339,359 ---- :type 'function) (defcustom message-reply-to-function nil ! "*Function that should return a list of headers. This function should pick out addresses from the To, Cc, and From headers and respond with new To and Cc headers." :group 'message-interface :type 'function) (defcustom message-wide-reply-to-function nil ! "*Function that should return a list of headers. This function should pick out addresses from the To, Cc, and From headers and respond with new To and Cc headers." :group 'message-interface :type 'function) (defcustom message-followup-to-function nil ! "*Function that should return a list of headers. This function should pick out addresses from the To, Cc, and From headers and respond with new To and Cc headers." :group 'message-interface *************** *** 379,390 **** ;; qmail-related stuff (defcustom message-qmail-inject-program "/var/qmail/bin/qmail-inject" ! "Location of the qmail-inject program." :group 'message-sending :type 'file) (defcustom message-qmail-inject-args nil ! "Arguments passed to qmail-inject programs. This should be a list of strings, one string for each argument. For e.g., if you wish to set the envelope sender address so that bounces --- 379,390 ---- ;; qmail-related stuff (defcustom message-qmail-inject-program "/var/qmail/bin/qmail-inject" ! "*Location of the qmail-inject program." :group 'message-sending :type 'file) (defcustom message-qmail-inject-args nil ! "*Arguments passed to qmail-inject programs. This should be a list of strings, one string for each argument. For e.g., if you wish to set the envelope sender address so that bounces *************** *** 402,408 **** ((boundp 'gnus-select-method) gnus-select-method) (t '(nnspool ""))) ! "Method used to post news." :group 'message-news :group 'message-sending ;; This should be the `gnus-select-method' widget, but that might --- 402,408 ---- ((boundp 'gnus-select-method) gnus-select-method) (t '(nnspool ""))) ! "*Method used to post news." :group 'message-news :group 'message-sending ;; This should be the `gnus-select-method' widget, but that might *************** *** 415,444 **** :type 'boolean) (defcustom message-setup-hook nil ! "Normal hook, run each time a new outgoing message is initialized. The function `message-setup' runs this hook." :group 'message-various :type 'hook) (defcustom 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." :group 'message-various :type 'hook) (defcustom message-mode-hook nil ! "Hook run in message mode buffers." :group 'message-various :type 'hook) (defcustom message-header-hook nil ! "Hook run in a message mode buffer narrowed to the headers." :group 'message-various :type 'hook) (defcustom message-header-setup-hook nil ! "Hook called narrowed to the headers when setting up a message buffer." :group 'message-various :type 'hook) --- 415,444 ---- :type 'boolean) (defcustom message-setup-hook nil ! "*Normal hook, run each time a new outgoing message is initialized. The function `message-setup' runs this hook." :group 'message-various :type 'hook) (defcustom 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." :group 'message-various :type 'hook) (defcustom message-mode-hook nil ! "*Hook run in message mode buffers." :group 'message-various :type 'hook) (defcustom message-header-hook nil ! "*Hook run in a message mode buffer narrowed to the headers." :group 'message-various :type 'hook) (defcustom message-header-setup-hook nil ! "*Hook called narrowed to the headers when setting up a message buffer." :group 'message-various :type 'hook) *************** *** 510,523 **** :type 'function) (defcustom message-expires 14 ! "Number of days before your article expires." :group 'message-news :group 'message-headers :link '(custom-manual "(message)News Headers") :type 'integer) (defcustom message-user-path nil ! "If nil, use the NNTP server name in the Path header. If stringp, use this; if non-nil, use no host name (user name only)." :group 'message-news :group 'message-headers --- 510,523 ---- :type 'function) (defcustom message-expires 14 ! "*Number of days before your article expires." :group 'message-news :group 'message-headers :link '(custom-manual "(message)News Headers") :type 'integer) (defcustom message-user-path nil ! "*If nil, use the NNTP server name in the Path header. If stringp, use this; if non-nil, use no host name (user name only)." :group 'message-news :group 'message-headers *************** *** 586,592 **** ;; 33 and 126, except colon)", i. e., any chars except ctl chars, ;; space, or colon. '(looking-at "[ \t]\\|[][!\"#$%&'()*+,-./0-9;<=>?@A-Z\\\\^_`a-z{|}~]+:")) ! "Set this non-nil if the system's mailer runs the header and body together. \(This problem exists on Sunos 4 when sendmail is run in remote mode.) The value should be an expression to test whether the problem will actually occur." --- 586,592 ---- ;; 33 and 126, except colon)", i. e., any chars except ctl chars, ;; space, or colon. '(looking-at "[ \t]\\|[][!\"#$%&'()*+,-./0-9;<=>?@A-Z\\\\^_`a-z{|}~]+:")) ! "*Set this non-nil if the system's mailer runs the header and body together. \(This problem exists on Sunos 4 when sendmail is run in remote mode.) The value should be an expression to test whether the problem will actually occur." *************** *** 793,815 **** The cdr of ech entry is a function for applying the face to a region.") (defcustom message-send-hook nil ! "Hook run before sending messages." :group 'message-various :options '(ispell-message) :type 'hook) (defcustom message-send-mail-hook nil ! "Hook run before sending mail messages." :group 'message-various :type 'hook) (defcustom message-send-news-hook nil ! "Hook run before sending news messages." :group 'message-various :type 'hook) (defcustom message-sent-hook nil ! "Hook run after sending messages." :group 'message-various :type 'hook) --- 793,815 ---- The cdr of ech entry is a function for applying the face to a region.") (defcustom message-send-hook nil ! "*Hook run before sending messages." :group 'message-various :options '(ispell-message) :type 'hook) (defcustom message-send-mail-hook nil ! "*Hook run before sending mail messages." :group 'message-various :type 'hook) (defcustom message-send-news-hook nil ! "*Hook run before sending news messages." :group 'message-various :type 'hook) (defcustom message-sent-hook nil ! "*Hook run after sending messages." :group 'message-various :type 'hook) *************** *** 1316,1322 **** (mail-abbrevs-setup) (funcall (intern "mail-aliases-setup")))) (message-set-auto-save-file-name) ! (run-hooks 'text-mode-hook 'message-mode-hook) (unless (string-match "XEmacs" emacs-version) (set (make-local-variable 'font-lock-defaults) '(message-font-lock-keywords t)))) --- 1316,1322 ---- (mail-abbrevs-setup) (funcall (intern "mail-aliases-setup")))) (message-set-auto-save-file-name) ! (gnus-run-hooks 'text-mode-hook 'message-mode-hook) (unless (string-match "XEmacs" emacs-version) (set (make-local-variable 'font-lock-defaults) '(message-font-lock-keywords t)))) *************** *** 1850,1856 **** (let ((inhibit-read-only t)) (put-text-property (point-min) (point-max) 'read-only nil)) (message-fix-before-sending) ! (run-hooks 'message-send-hook) (message "Sending...") (let ((alist message-send-method-alist) (success t) --- 1850,1856 ---- (let ((inhibit-read-only t)) (put-text-property (point-min) (point-max) 'read-only nil)) (message-fix-before-sending) ! (gnus-run-hooks 'message-send-hook) (message "Sending...") (let ((alist message-send-method-alist) (success t) *************** *** 1870,1876 **** (message-do-fcc) ;;(when (fboundp 'mail-hist-put-headers-into-history) ;; (mail-hist-put-headers-into-history)) ! (run-hooks 'message-sent-hook) (message "Sending...done") ;; Mark the buffer as unmodified and delete autosave. (set-buffer-modified-p nil) --- 1870,1876 ---- (message-do-fcc) ;;(when (fboundp 'mail-hist-put-headers-into-history) ;; (mail-hist-put-headers-into-history)) ! (gnus-run-hooks 'message-sent-hook) (message "Sending...done") ;; Mark the buffer as unmodified and delete autosave. (set-buffer-modified-p nil) *************** *** 1931,1937 **** (if news nil message-deletable-headers))) (message-generate-headers message-required-mail-headers)) ;; Let the user do all of the above. ! (run-hooks 'message-header-hook)) (unwind-protect (save-excursion (set-buffer tembuf) --- 1931,1937 ---- (if news nil message-deletable-headers))) (message-generate-headers message-required-mail-headers)) ;; Let the user do all of the above. ! (gnus-run-hooks 'message-header-hook)) (unwind-protect (save-excursion (set-buffer tembuf) *************** *** 1976,1982 **** (replace-match "\n") (backward-char 1) (setq delimline (point-marker)) ! (run-hooks 'message-send-mail-hook) ;; Insert an extra newline if we need it to work around ;; Sun's bug that swallows newlines. (goto-char (1+ delimline)) --- 1976,1982 ---- (replace-match "\n") (backward-char 1) (setq delimline (point-marker)) ! (gnus-run-hooks 'message-send-mail-hook) ;; Insert an extra newline if we need it to work around ;; Sun's bug that swallows newlines. (goto-char (1+ delimline)) *************** *** 2032,2038 **** (re-search-forward (concat "^" (regexp-quote mail-header-separator) "\n")) (replace-match "\n") ! (run-hooks 'message-send-mail-hook) ;; send the message (case (let ((coding-system-for-write 'binary)) --- 2032,2038 ---- (re-search-forward (concat "^" (regexp-quote mail-header-separator) "\n")) (replace-match "\n") ! (gnus-run-hooks 'message-send-mail-hook) ;; send the message (case (let ((coding-system-for-write 'binary)) *************** *** 2079,2085 **** (concat "^" (symbol-name (car headers)) ": *") nil t) (message-delete-line)) (pop headers)))) ! (run-hooks 'message-send-mail-hook) ;; Pass it on to mh. (mh-send-letter))) --- 2079,2085 ---- (concat "^" (symbol-name (car headers)) ": *") nil t) (message-delete-line)) (pop headers)))) ! (gnus-run-hooks 'message-send-mail-hook) ;; Pass it on to mh. (mh-send-letter))) *************** *** 2101,2107 **** ;; Insert some headers. (message-generate-headers message-required-news-headers) ;; Let the user do all of the above. ! (run-hooks 'message-header-hook)) (message-cleanup-headers) (if (not (message-check-news-syntax)) (progn --- 2101,2107 ---- ;; Insert some headers. (message-generate-headers message-required-news-headers) ;; Let the user do all of the above. ! (gnus-run-hooks 'message-header-hook)) (message-cleanup-headers) (if (not (message-check-news-syntax)) (progn *************** *** 2133,2139 **** (concat "^" (regexp-quote mail-header-separator) "\n")) (replace-match "\n") (backward-char 1)) ! (run-hooks 'message-send-news-hook) ;;(require (car method)) ;;(funcall (intern (format "%s-open-server" (car method))) ;;(cadr method) (cddr method)) --- 2133,2139 ---- (concat "^" (regexp-quote mail-header-separator) "\n")) (replace-match "\n") (backward-char 1)) ! (gnus-run-hooks 'message-send-news-hook) ;;(require (car method)) ;;(funcall (intern (format "%s-open-server" (car method))) ;;(cadr method) (cddr method)) *************** *** 2265,2272 **** (let* ((case-fold-search t) (message-id (message-fetch-field "message-id" t))) (or (not message-id) (and (string-match "@" message-id) ! (string-match "@[^\\.]*\\." message-id)) (y-or-n-p (format "The Message-ID looks strange: \"%s\". Really post? " message-id))))) --- 2265,2276 ---- (let* ((case-fold-search t) (message-id (message-fetch-field "message-id" t))) (or (not message-id) + ;; Is there an @ in the ID? (and (string-match "@" message-id) ! ;; Is there a dot in the ID? ! (string-match "@[^.]*\\." message-id) ! ;; Does the ID end with a dot? ! (not (string-match "\\.>" message-id))) (y-or-n-p (format "The Message-ID looks strange: \"%s\". Really post? " message-id))))) *************** *** 3095,3108 **** (delq 'Lines (delq 'Subject (copy-sequence message-required-mail-headers)))))) ! (run-hooks 'message-signature-setup-hook) (message-insert-signature) (save-restriction (message-narrow-to-headers) ! (run-hooks 'message-header-setup-hook)) (set-buffer-modified-p nil) (setq buffer-undo-list nil) ! (run-hooks 'message-setup-hook) (message-position-point) (undo-boundary)) --- 3099,3112 ---- (delq 'Lines (delq 'Subject (copy-sequence message-required-mail-headers)))))) ! (gnus-run-hooks 'message-signature-setup-hook) (message-insert-signature) (save-restriction (message-narrow-to-headers) ! (gnus-run-hooks 'message-header-setup-hook)) (set-buffer-modified-p nil) (setq buffer-undo-list nil) ! (gnus-run-hooks 'message-setup-hook) (message-position-point) (undo-boundary)) *** pub/qgnus/lisp/messagexmas.el Wed Nov 26 17:44:52 1997 --- qgnus/lisp/messagexmas.el Sat Feb 14 19:27:52 1998 *************** *** 1,5 **** ;;; messagexmas.el --- XEmacs extensions to message ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: mail, news --- 1,5 ---- ;;; messagexmas.el --- XEmacs extensions to message ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: mail, news *** pub/qgnus/lisp/messcompat.el Sat Sep 27 12:52:18 1997 --- qgnus/lisp/messcompat.el Sat Feb 14 19:27:52 1998 *************** *** 1,5 **** ;;; messcompat.el --- making message mode compatible with mail mode ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: mail, news --- 1,5 ---- ;;; messcompat.el --- making message mode compatible with mail mode ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: mail, news *** pub/qgnus/lisp/nnagent.el Sat Sep 20 18:39:27 1997 --- qgnus/lisp/nnagent.el Sat Feb 14 19:27:53 1998 *************** *** 1,5 **** ;;; nnagent.el --- offline backend for Gnus ! ;; Copyright (C) 1997 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news, mail --- 1,5 ---- ;;; nnagent.el --- offline backend for Gnus ! ;; Copyright (C) 1997,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news, mail *************** *** 102,107 **** --- 102,110 ---- (gnus-group-real-name group) article)))) (deffoo nnagent-request-newgroups (date server) + nil) + + (deffoo nnagent-request-update-info (group info &optional server) nil) (deffoo nnagent-request-post (&optional server) *** pub/qgnus/lisp/nnbabyl.el Mon Nov 24 17:56:52 1997 --- qgnus/lisp/nnbabyl.el Sat Feb 14 19:27:53 1998 *************** *** 1,5 **** ;;; nnbabyl.el --- rmail mbox access for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA --- 1,5 ---- ;;; nnbabyl.el --- rmail mbox access for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA *************** *** 503,509 **** (nnbabyl-insert-lines) (nnmail-insert-xref group-art) (nnbabyl-insert-newsgroup-line group-art) ! (run-hooks 'nnbabyl-prepare-save-mail-hook) group-art) (defun nnbabyl-insert-newsgroup-line (group-art) --- 503,509 ---- (nnbabyl-insert-lines) (nnmail-insert-xref group-art) (nnbabyl-insert-newsgroup-line group-art) ! (gnus-run-hooks 'nnbabyl-prepare-save-mail-hook) group-art) (defun nnbabyl-insert-newsgroup-line (group-art) *** pub/qgnus/lisp/nndb.el Sat Sep 13 20:30:30 1997 --- qgnus/lisp/nndb.el Sat Feb 14 19:27:53 1998 *************** *** 1,5 **** ;;; nndb.el --- nndb access for Gnus ! ;; Copyright (C) 1997 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Kai Grossjohann --- 1,5 ---- ;;; nndb.el --- nndb access for Gnus ! ;; Copyright (C) 1997,98 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Kai Grossjohann *** pub/qgnus/lisp/nndir.el Sat Sep 13 20:30:30 1997 --- qgnus/lisp/nndir.el Sat Feb 14 19:27:53 1998 *************** *** 1,5 **** ;;; nndir.el --- single directory newsgroup access for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; nndir.el --- single directory newsgroup access for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/nndoc.el Fri Feb 13 22:39:13 1998 --- qgnus/lisp/nndoc.el Sat Feb 14 19:27:54 1998 *************** *** 1,5 **** ;;; nndoc.el --- single file access for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA --- 1,5 ---- ;;; nndoc.el --- single file access for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA *************** *** 285,291 **** (if (stringp nndoc-address) (nnheader-insert-file-contents nndoc-address) (insert-buffer-substring nndoc-address)) ! (run-hooks 'nndoc-open-document-hook)))) ;; Initialize the nndoc structures according to this new document. (when (and nndoc-current-buffer (not nndoc-dissection-alist)) --- 285,291 ---- (if (stringp nndoc-address) (nnheader-insert-file-contents nndoc-address) (insert-buffer-substring nndoc-address)) ! (gnus-run-hooks 'nndoc-open-document-hook)))) ;; Initialize the nndoc structures according to this new document. (when (and nndoc-current-buffer (not nndoc-dissection-alist)) *** pub/qgnus/lisp/nndraft.el Sun Jan 4 14:35:28 1998 --- qgnus/lisp/nndraft.el Sat Feb 14 19:27:54 1998 *************** *** 1,5 **** ;;; nndraft.el --- draft article access for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; nndraft.el --- draft article access for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/nneething.el Sun Sep 21 07:09:03 1997 --- qgnus/lisp/nneething.el Sat Feb 14 19:27:54 1998 *************** *** 1,5 **** ;;; nneething.el --- random file access for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA --- 1,5 ---- ;;; nneething.el --- random file access for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA *** pub/qgnus/lisp/nnfolder.el Fri Feb 13 22:39:13 1998 --- qgnus/lisp/nnfolder.el Sat Feb 14 19:27:54 1998 *************** *** 1,5 **** ;;; nnfolder.el --- mail folder access for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Scott Byer ;; Lars Magne Ingebrigtsen --- 1,5 ---- ;;; nnfolder.el --- mail folder access for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Scott Byer ;; Lars Magne Ingebrigtsen *************** *** 572,579 **** (setq save-list group-art-list) (nnmail-insert-lines) (nnmail-insert-xref group-art-list) ! (run-hooks 'nnmail-prepare-save-mail-hook) ! (run-hooks 'nnfolder-prepare-save-mail-hook) ;; Insert the mail into each of the destination groups. (while (setq group-art (pop group-art-list)) --- 572,579 ---- (setq save-list group-art-list) (nnmail-insert-lines) (nnmail-insert-xref group-art-list) ! (gnus-run-hooks 'nnmail-prepare-save-mail-hook) ! (gnus-run-hooks 'nnfolder-prepare-save-mail-hook) ;; Insert the mail into each of the destination groups. (while (setq group-art (pop group-art-list)) *************** *** 783,789 **** (defun nnfolder-save-buffer () "Save the buffer." (when (buffer-modified-p) ! (run-hooks 'nnfolder-save-buffer-hook) (gnus-make-directory (file-name-directory (buffer-file-name))) (save-buffer))) --- 783,789 ---- (defun nnfolder-save-buffer () "Save the buffer." (when (buffer-modified-p) ! (gnus-run-hooks 'nnfolder-save-buffer-hook) (gnus-make-directory (file-name-directory (buffer-file-name))) (save-buffer))) *** pub/qgnus/lisp/nngateway.el Sat Sep 13 20:30:31 1997 --- qgnus/lisp/nngateway.el Sat Feb 14 19:27:55 1998 *************** *** 1,5 **** ;;; nngateway.el --- posting news via mail gateways ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news, mail --- 1,5 ---- ;;; nngateway.el --- posting news via mail gateways ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news, mail *** pub/qgnus/lisp/nnheader.el Sun Feb 8 18:14:47 1998 --- qgnus/lisp/nnheader.el Sat Feb 14 19:27:55 1998 *************** *** 1,5 **** ;;; nnheader.el --- header access macros for Gnus and its backends ! ;; Copyright (C) 1987,88,89,90,93,94,95,96,97 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen --- 1,5 ---- ;;; nnheader.el --- header access macros for Gnus and its backends ! ;; Copyright (C) 1987,88,89,90,93,94,95,96,97,98 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen *************** *** 751,757 **** (when (string-match (car ange-ftp-path-format) path) (ange-ftp-re-read-dir path))))) - ;; 1997/5/4 by MORIOKA Tomohiko (defvar nnheader-file-coding-system 'raw-text "Coding system used in file backends of Gnus.") --- 751,756 ---- *************** *** 765,771 **** (auto-mode-alist (nnheader-auto-mode-alist)) (default-major-mode 'fundamental-mode) (after-insert-file-functions nil) - ;; 1997/5/4 by MORIOKA Tomohiko (coding-system-for-read nnheader-file-coding-system)) (insert-file-contents filename visit beg end replace))) --- 764,769 ---- *************** *** 775,781 **** (default-major-mode 'fundamental-mode) (enable-local-variables nil) (after-insert-file-functions nil) - ;; 1997/5/16 by MORIOKA Tomohiko (coding-system-for-read nnheader-file-coding-system)) (apply 'find-file-noselect args))) --- 773,778 ---- *** pub/qgnus/lisp/nnheaderxm.el Sat Sep 13 20:30:31 1997 --- qgnus/lisp/nnheaderxm.el Sat Feb 14 19:27:55 1998 *************** *** 1,5 **** ;;; nnheaderxm.el --- making Gnus backends work under XEmacs ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; nnheaderxm.el --- making Gnus backends work under XEmacs ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/nnkiboze.el Sat Sep 13 20:30:31 1997 --- qgnus/lisp/nnkiboze.el Sat Feb 14 19:27:55 1998 *************** *** 1,5 **** ;;; nnkiboze.el --- select virtual news access for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; nnkiboze.el --- select virtual news access for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/nnlistserv.el Thu Nov 6 00:18:03 1997 --- qgnus/lisp/nnlistserv.el Sat Feb 14 19:27:56 1998 *************** *** 1,5 **** ! ;;; nnlsitserv.el --- retrieving articles via web mailing list archives ! ;; Copyright (C) 1997 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news, mail --- 1,5 ---- ! ;;; nnlistserv.el --- retrieving articles via web mailing list archives ! ;; Copyright (C) 1997,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news, mail *** pub/qgnus/lisp/nnmail.el Fri Feb 13 22:39:15 1998 --- qgnus/lisp/nnmail.el Sat Feb 14 19:27:57 1998 *************** *** 1,5 **** ;;; nnmail.el --- mail support functions for the Gnus mail backends ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news, mail --- 1,5 ---- ;;; nnmail.el --- mail support functions for the Gnus mail backends ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news, mail *************** *** 74,80 **** (defcustom nnmail-split-methods '(("mail.misc" "")) ! "Incoming mail will be split according to this variable. If you'd like, for instance, one mail group for mail from the \"4ad-l\" mailing list, one group for junk mail and one for everything --- 74,80 ---- (defcustom nnmail-split-methods '(("mail.misc" "")) ! "*Incoming mail will be split according to this variable. If you'd like, for instance, one mail group for mail from the \"4ad-l\" mailing list, one group for junk mail and one for everything *************** *** 106,119 **** ;; Suggested by Erik Selberg . (defcustom nnmail-crosspost t ! "If non-nil, do crossposting if several split methods match the mail. If nil, the first match found will be used." :group 'nnmail-split :type 'boolean) ;; Added by gord@enci.ucalgary.ca (Gordon Matzigkeit). (defcustom nnmail-keep-last-article nil ! "If non-nil, nnmail will never delete/move a group's last article. It can be marked expirable, so it will be deleted when it is no longer last. You may need to set this variable if other programs are putting --- 106,119 ---- ;; Suggested by Erik Selberg . (defcustom nnmail-crosspost t ! "*If non-nil, do crossposting if several split methods match the mail. If nil, the first match found will be used." :group 'nnmail-split :type 'boolean) ;; Added by gord@enci.ucalgary.ca (Gordon Matzigkeit). (defcustom nnmail-keep-last-article nil ! "*If non-nil, nnmail will never delete/move a group's last article. It can be marked expirable, so it will be deleted when it is no longer last. You may need to set this variable if other programs are putting *************** *** 123,136 **** :type 'boolean) (defcustom nnmail-use-long-file-names nil ! "If non-nil the mail backends will use long file and directory names. If nil, groups like \"mail.misc\" will end up in directories like \"mail/misc/\"." :group 'nnmail-files :type 'boolean) (defcustom nnmail-default-file-modes 384 ! "Set the mode bits of all new mail files to this integer." :group 'nnmail-files :type 'integer) --- 123,136 ---- :type 'boolean) (defcustom nnmail-use-long-file-names nil ! "*If non-nil the mail backends will use long file and directory names. If nil, groups like \"mail.misc\" will end up in directories like \"mail/misc/\"." :group 'nnmail-files :type 'boolean) (defcustom nnmail-default-file-modes 384 ! "*Set the mode bits of all new mail files to this integer." :group 'nnmail-files :type 'integer) *************** *** 145,151 **** (const never))) (defcustom nnmail-expiry-wait-function nil ! "Variable that holds function to specify how old articles should be before they are expired. The function will be called with the name of the group that the expiry is to be performed in, and it should return an integer that says how many days an article can be stored before it is considered --- 145,151 ---- (const never))) (defcustom nnmail-expiry-wait-function nil ! "*Variable that holds function to specify how old articles should be before they are expired. The function will be called with the name of the group that the expiry is to be performed in, and it should return an integer that says how many days an article can be stored before it is considered *************** *** 164,177 **** (function :format "%v" nnmail-))) (defcustom nnmail-cache-accepted-message-ids nil ! "If non-nil, put Message-IDs of Gcc'd articles into the duplicate cache." :group 'nnmail :type 'boolean) (defcustom nnmail-spool-file (or (getenv "MAIL") (concat "/usr/spool/mail/" (user-login-name))) ! "Where the mail backends will look for incoming mail. This variable is \"/usr/spool/mail/$user\" by default. If this variable is nil, no mail backends will read incoming mail. If this variable is a list, all files mentioned in this list will be --- 164,177 ---- (function :format "%v" nnmail-))) (defcustom nnmail-cache-accepted-message-ids nil ! "*If non-nil, put Message-IDs of Gcc'd articles into the duplicate cache." :group 'nnmail :type 'boolean) (defcustom nnmail-spool-file (or (getenv "MAIL") (concat "/usr/spool/mail/" (user-login-name))) ! "*Where the mail backends will look for incoming mail. This variable is \"/usr/spool/mail/$user\" by default. If this variable is nil, no mail backends will read incoming mail. If this variable is a list, all files mentioned in this list will be *************** *** 182,188 **** :type 'file) (defcustom nnmail-crash-box "~/.gnus-crash-box" ! "File where Gnus will store mail while processing it." :group 'nnmail-files :type 'file) --- 182,188 ---- :type 'file) (defcustom nnmail-crash-box "~/.gnus-crash-box" ! "*File where Gnus will store mail while processing it." :group 'nnmail-files :type 'file) *************** *** 211,217 **** :type 'boolean) (defcustom nnmail-delete-file-function 'delete-file ! "Function called to delete files in some mail backends." :group 'nnmail-files :type 'function) --- 211,217 ---- :type 'boolean) (defcustom nnmail-delete-file-function 'delete-file ! "*Function called to delete files in some mail backends." :group 'nnmail-files :type 'function) *************** *** 219,225 **** (if (string-match "windows-nt\\|emx" (format "%s" system-type)) 'copy-file 'add-name-to-file) ! "Function called to create a copy of a file. This is `add-name-to-file' by default, which means that crossposts will use hard links. If your file system doesn't allow hard links, you could set this variable to `copy-file' instead." --- 219,225 ---- (if (string-match "windows-nt\\|emx" (format "%s" system-type)) 'copy-file 'add-name-to-file) ! "*Function called to create a copy of a file. This is `add-name-to-file' by default, which means that crossposts will use hard links. If your file system doesn't allow hard links, you could set this variable to `copy-file' instead." *************** *** 248,254 **** (if (eq system-type 'windows-nt) '(nnheader-ms-strip-cr) nil) ! "Hook that will be run after the incoming mail has been transferred. The incoming mail is moved from `nnmail-spool-file' (which normally is something like \"/usr/spool/mail/$user\") to the user's home directory. This hook is called after the incoming mail box has been --- 248,254 ---- (if (eq system-type 'windows-nt) '(nnheader-ms-strip-cr) nil) ! "*Hook that will be run after the incoming mail has been transferred. The incoming mail is moved from `nnmail-spool-file' (which normally is something like \"/usr/spool/mail/$user\") to the user's home directory. This hook is called after the incoming mail box has been *************** *** 278,302 **** ;; Suggested by Erik Selberg . (defcustom nnmail-prepare-incoming-hook nil ! "Hook called before treating incoming mail. The hook is run in a buffer with all the new, incoming mail." :group 'nnmail-prepare :type 'hook) (defcustom nnmail-prepare-incoming-header-hook nil ! "Hook called narrowed to the headers of each message. This can be used to remove excessive spaces (and stuff like that) from the headers before splitting and saving the messages." :group 'nnmail-prepare :type 'hook) (defcustom nnmail-prepare-incoming-message-hook nil ! "Hook called narrowed to each message." :group 'nnmail-prepare :type 'hook) (defcustom nnmail-list-identifiers nil ! "Regexp that matches list identifiers to be removed. This can also be a list of regexps." :group 'nnmail-prepare :type '(choice (const :tag "none" nil) --- 278,302 ---- ;; Suggested by Erik Selberg . (defcustom nnmail-prepare-incoming-hook nil ! "*Hook called before treating incoming mail. The hook is run in a buffer with all the new, incoming mail." :group 'nnmail-prepare :type 'hook) (defcustom nnmail-prepare-incoming-header-hook nil ! "*Hook called narrowed to the headers of each message. This can be used to remove excessive spaces (and stuff like that) from the headers before splitting and saving the messages." :group 'nnmail-prepare :type 'hook) (defcustom nnmail-prepare-incoming-message-hook nil ! "*Hook called narrowed to each message." :group 'nnmail-prepare :type 'hook) (defcustom nnmail-list-identifiers nil ! "*Regexp that matches list identifiers to be removed. This can also be a list of regexps." :group 'nnmail-prepare :type '(choice (const :tag "none" nil) *************** *** 304,320 **** (repeat :value (".*") regexp))) (defcustom nnmail-pre-get-new-mail-hook nil ! "Hook called just before starting to handle new incoming mail." :group 'nnmail-retrieve :type 'hook) (defcustom nnmail-post-get-new-mail-hook nil ! "Hook called just after finishing handling new incoming mail." :group 'nnmail-retrieve :type 'hook) (defcustom nnmail-split-hook nil ! "Hook called before deciding where to split an article. The functions in this hook are free to modify the buffer contents in any way they choose -- the buffer contents are discarded after running the split process." --- 304,320 ---- (repeat :value (".*") regexp))) (defcustom nnmail-pre-get-new-mail-hook nil ! "*Hook called just before starting to handle new incoming mail." :group 'nnmail-retrieve :type 'hook) (defcustom nnmail-post-get-new-mail-hook nil ! "*Hook called just after finishing handling new incoming mail." :group 'nnmail-retrieve :type 'hook) (defcustom nnmail-split-hook nil ! "*Hook called before deciding where to split an article. The functions in this hook are free to modify the buffer contents in any way they choose -- the buffer contents are discarded after running the split process." *************** *** 338,344 **** :type 'integer) (defcustom nnmail-split-fancy "mail.misc" ! "Incoming mail can be split according to this fancy variable. To enable this, set `nnmail-split-methods' to `nnmail-split-fancy'. The format is this variable is SPLIT, where SPLIT can be one of --- 338,344 ---- :type 'integer) (defcustom nnmail-split-fancy "mail.misc" ! "*Incoming mail can be split according to this fancy variable. To enable this, set `nnmail-split-methods' to `nnmail-split-fancy'. The format is this variable is SPLIT, where SPLIT can be one of *************** *** 401,407 **** (from . "from\\|sender\\|resent-from") (nato . "to\\|cc\\|resent-to\\|resent-cc") (naany . "from\\|to\\|cc\\|sender\\|resent-from\\|resent-to\\|resent-cc")) ! "Alist of abbreviations allowed in `nnmail-split-fancy'." :group 'nnmail-split :type '(repeat (cons :format "%v" symbol regexp))) --- 401,407 ---- (from . "from\\|sender\\|resent-from") (nato . "to\\|cc\\|resent-to\\|resent-cc") (naany . "from\\|to\\|cc\\|sender\\|resent-from\\|resent-to\\|resent-cc")) ! "*Alist of abbreviations allowed in `nnmail-split-fancy'." :group 'nnmail-split :type '(repeat (cons :format "%v" symbol regexp))) *************** *** 476,482 **** (defun nnmail-request-post (&optional server) (mail-send-and-exit nil)) - ;; 1997/5/4 by MORIOKA Tomohiko (defvar nnmail-file-coding-system 'raw-text "Coding system used in nnmail.") --- 476,481 ---- *************** *** 487,502 **** (let ((format-alist nil) (after-insert-file-functions nil)) (condition-case () - ;; 1997/5/4 by MORIOKA Tomohiko (let ((coding-system-for-read nnmail-file-coding-system) - ;; 1997/8/12 by MORIOKA Tomohiko - ;; for XEmacs/mule. (pathname-coding-system 'binary)) (insert-file-contents file) t) (file-error nil)))) - ;; 1997/8/10 by MORIOKA Tomohiko (defvar nnmail-pathname-coding-system 'iso-8859-1 "*Coding system for pathname.") --- 486,497 ---- *************** *** 693,699 **** group-assoc))) group-assoc)) - ;; 1997/8/12 by MORIOKA Tomohiko (defvar nnmail-active-file-coding-system 'iso-8859-1 "*Coding system for active file.") --- 688,693 ---- *************** *** 740,747 **** (defun nnmail-process-babyl-mail-format (func artnum-func) (let ((case-fold-search t) start message-id content-length do-search end) - (goto-char (point-min)) (while (not (eobp)) (re-search-forward " \n0, *unseen,+\n\\(\\*\\*\\* EOOH \\*\\*\\*\n\\)?" nil t) (goto-char (match-end 0)) --- 734,741 ---- (defun nnmail-process-babyl-mail-format (func artnum-func) (let ((case-fold-search t) start message-id content-length do-search end) (while (not (eobp)) + (goto-char (point-min)) (re-search-forward " \n0, *unseen,+\n\\(\\*\\*\\* EOOH \\*\\*\\*\n\\)?" nil t) (goto-char (match-end 0)) *************** *** 758,764 **** (goto-char (point-min)) (when (looking-at ">From ") (replace-match "X-From-Line: ") ) ! (run-hooks 'nnmail-prepare-incoming-header-hook) (goto-char (point-max)) ;; Find the Message-ID header. (save-excursion --- 752,758 ---- (goto-char (point-min)) (when (looking-at ">From ") (replace-match "X-From-Line: ") ) ! (gnus-run-hooks 'nnmail-prepare-incoming-header-hook) (goto-char (point-max)) ;; Find the Message-ID header. (save-excursion *************** *** 918,924 **** ;; having a (possibly) faulty header. (beginning-of-line) (insert "X-")) ! (run-hooks 'nnmail-prepare-incoming-header-hook) ;; Find the end of this article. (goto-char (point-max)) (widen) --- 912,918 ---- ;; having a (possibly) faulty header. (beginning-of-line) (insert "X-")) ! (gnus-run-hooks 'nnmail-prepare-incoming-header-hook) ;; Find the end of this article. (goto-char (point-max)) (widen) *************** *** 993,999 **** (insert "Original-"))) (forward-line 1) (insert "Message-ID: " (setq message-id (nnmail-message-id)) "\n")) ! (run-hooks 'nnmail-prepare-incoming-header-hook) ;; Find the end of this article. (goto-char (point-max)) (widen) --- 987,993 ---- (insert "Original-"))) (forward-line 1) (insert "Message-ID: " (setq message-id (nnmail-message-id)) "\n")) ! (gnus-run-hooks 'nnmail-prepare-incoming-header-hook) ;; Find the end of this article. (goto-char (point-max)) (widen) *************** *** 1030,1036 **** (nnheader-insert-file-contents incoming) (unless (zerop (buffer-size)) (goto-char (point-min)) ! (save-excursion (run-hooks 'nnmail-prepare-incoming-hook)) ;; Handle both babyl, MMDF and unix mail formats, since movemail will ;; use the former when fetching from a mailbox, the latter when ;; fetching from a file. --- 1024,1030 ---- (nnheader-insert-file-contents incoming) (unless (zerop (buffer-size)) (goto-char (point-min)) ! (save-excursion (gnus-run-hooks 'nnmail-prepare-incoming-hook)) ;; Handle both babyl, MMDF and unix mail formats, since movemail will ;; use the former when fetching from a mailbox, the latter when ;; fetching from a file. *************** *** 1052,1058 **** (obuf (current-buffer)) (beg (point-min)) end group-art method regrepp) ! (if (and (sequencep methods) (= (length methods) 1)) ;; If there is only just one group to put everything in, we ;; just return a list with just this one method in. (setq group-art --- 1046,1053 ---- (obuf (current-buffer)) (beg (point-min)) end group-art method regrepp) ! (if (and (sequencep methods) ! (= (length methods) 1)) ;; If there is only just one group to put everything in, we ;; just return a list with just this one method in. (setq group-art *************** *** 1071,1077 **** (while (re-search-forward "\\(\r?\n[ \t]+\\)+" nil t) (replace-match " " t t)) ;; Allow washing. ! (run-hooks 'nnmail-split-hook) (if (and (symbolp nnmail-split-methods) (fboundp nnmail-split-methods)) (let ((split --- 1066,1072 ---- (while (re-search-forward "\\(\r?\n[ \t]+\\)+" nil t) (replace-match " " t t)) ;; Allow washing. ! (gnus-run-hooks 'nnmail-split-hook) (if (and (symbolp nnmail-split-methods) (fboundp nnmail-split-methods)) (let ((split *************** *** 1086,1091 **** --- 1081,1087 ---- "Error in `nnmail-split-methods'; using `bogus' mail group") (sit-for 1) '("bogus"))))) + (setq split (remove-duplicates split :test 'equal)) ;; The article may be "cross-posted" to `junk'. What ;; to do? Just remove the `junk' spec. Don't really ;; see anything else to do... *************** *** 1498,1504 **** (message-fetch-field header)))) (defun nnmail-check-duplication (message-id func artnum-func) ! (run-hooks 'nnmail-prepare-incoming-message-hook) ;; If this is a duplicate message, then we do not save it. (let* ((duplication (nnmail-cache-id-exists-p message-id)) (case-fold-search t) --- 1494,1500 ---- (message-fetch-field header)))) (defun nnmail-check-duplication (message-id func artnum-func) ! (gnus-run-hooks 'nnmail-prepare-incoming-message-hook) ;; If this is a duplicate message, then we do not save it. (let* ((duplication (nnmail-cache-id-exists-p message-id)) (case-fold-search t) *************** *** 1555,1561 **** ;; We first activate all the groups. (nnmail-activate method) ;; Allow the user to hook. ! (run-hooks 'nnmail-pre-get-new-mail-hook) ;; Open the message-id cache. (nnmail-cache-open) ;; The we go through all the existing spool files and split the --- 1551,1557 ---- ;; We first activate all the groups. (nnmail-activate method) ;; Allow the user to hook. ! (gnus-run-hooks 'nnmail-pre-get-new-mail-hook) ;; Open the message-id cache. (nnmail-cache-open) ;; The we go through all the existing spool files and split the *************** *** 1600,1611 **** (nnmail-get-value "%s-active-file" method)) (when exit-func (funcall exit-func)) ! (run-hooks 'nnmail-read-incoming-hook) (nnheader-message 3 "%s: Reading incoming mail...done" method)) ;; Close the message-id cache. (nnmail-cache-close) ;; Allow the user to hook. ! (run-hooks 'nnmail-post-get-new-mail-hook) ;; Delete all the temporary files. (while incomings (setq incoming (pop incomings)) --- 1596,1607 ---- (nnmail-get-value "%s-active-file" method)) (when exit-func (funcall exit-func)) ! (gnus-run-hooks 'nnmail-read-incoming-hook) (nnheader-message 3 "%s: Reading incoming mail...done" method)) ;; Close the message-id cache. (nnmail-cache-close) ;; Allow the user to hook. ! (gnus-run-hooks 'nnmail-post-get-new-mail-hook) ;; Delete all the temporary files. (while incomings (setq incoming (pop incomings)) *************** *** 1663,1672 **** (defun nnmail-write-region (start end filename &optional append visit lockname) "Do a `write-region', and then set the file modes." - ;; 1997/5/4 by MORIOKA Tomohiko (let ((coding-system-for-write nnmail-file-coding-system) - ;; 1997/8/12 by MORIOKA Tomohiko - ;; for XEmacs/mule. (pathname-coding-system 'binary)) (write-region start end filename append visit lockname) (set-file-modes filename nnmail-default-file-modes))) --- 1659,1665 ---- *** pub/qgnus/lisp/nnmbox.el Sat Sep 13 20:30:32 1997 --- qgnus/lisp/nnmbox.el Sat Feb 14 19:27:58 1998 *************** *** 1,5 **** ;;; nnmbox.el --- mail mbox access for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA --- 1,5 ---- ;;; nnmbox.el --- mail mbox access for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA *************** *** 463,470 **** (nnmail-insert-lines) (nnmail-insert-xref group-art) (nnmbox-insert-newsgroup-line group-art) ! (run-hooks 'nnmail-prepare-save-mail-hook) ! (run-hooks 'nnmbox-prepare-save-mail-hook) group-art)) (defun nnmbox-insert-newsgroup-line (group-art) --- 463,470 ---- (nnmail-insert-lines) (nnmail-insert-xref group-art) (nnmbox-insert-newsgroup-line group-art) ! (gnus-run-hooks 'nnmail-prepare-save-mail-hook) ! (gnus-run-hooks 'nnmbox-prepare-save-mail-hook) group-art)) (defun nnmbox-insert-newsgroup-line (group-art) *** pub/qgnus/lisp/nnmh.el Fri Feb 13 22:39:15 1998 --- qgnus/lisp/nnmh.el Sat Feb 14 19:27:58 1998 *************** *** 1,5 **** ;;; nnmh.el --- mhspool access for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA --- 1,5 ---- ;;; nnmh.el --- mhspool access for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA *************** *** 250,256 **** (directory-files nnmh-current-directory nil "^[0-9]+$" t))) (is-old t) article rest mod-time) ! (nnmail-activate 'nnmh) (while (and articles is-old) (setq article (concat nnmh-current-directory --- 250,256 ---- (directory-files nnmh-current-directory nil "^[0-9]+$" t))) (is-old t) article rest mod-time) ! (nnheader-init-server-buffer) (while (and articles is-old) (setq article (concat nnmh-current-directory *************** *** 303,324 **** (nnmail-check-syntax) (when nnmail-cache-accepted-message-ids (nnmail-cache-insert (nnmail-fetch-field "message-id"))) (prog1 (if (stringp group) ! (and ! (nnmail-activate 'nnmh) ! (if noinsert ! (nnmh-active-number group) ! (car (nnmh-save-mail ! (list (cons group (nnmh-active-number group))) ! noinsert)))) ! (and ! (nnmail-activate 'nnmh) ! (let ((res (nnmail-article-group 'nnmh-active-number))) ! (if (and (null res) ! (yes-or-no-p "Moved to `junk' group; delete article? ")) ! 'junk ! (car (nnmh-save-mail res noinsert)))))) (when (and last nnmail-cache-accepted-message-ids) (nnmail-cache-close)))) --- 303,321 ---- (nnmail-check-syntax) (when nnmail-cache-accepted-message-ids (nnmail-cache-insert (nnmail-fetch-field "message-id"))) + (nnheader-init-server-buffer) (prog1 (if (stringp group) ! (if noinsert ! (nnmh-active-number group) ! (car (nnmh-save-mail ! (list (cons group (nnmh-active-number group))) ! noinsert))) ! (let ((res (nnmail-article-group 'nnmh-active-number))) ! (if (and (null res) ! (yes-or-no-p "Moved to `junk' group; delete article? ")) ! 'junk ! (car (nnmh-save-mail res noinsert))))) (when (and last nnmail-cache-accepted-message-ids) (nnmail-cache-close)))) *************** *** 335,341 **** t))) (deffoo nnmh-request-create-group (group &optional server args) ! (nnmail-activate 'nnmh) (unless (assoc group nnmh-group-alist) (let (active) (push (list group (setq active (cons 1 0))) --- 332,338 ---- t))) (deffoo nnmh-request-create-group (group &optional server args) ! (nnheader-init-server-buffer) (unless (assoc group nnmh-group-alist) (let (active) (push (list group (setq active (cons 1 0))) *************** *** 432,439 **** (unless noinsert (nnmail-insert-lines) (nnmail-insert-xref group-art)) ! (run-hooks 'nnmail-prepare-save-mail-hook) ! (run-hooks 'nnmh-prepare-save-mail-hook) (goto-char (point-min)) (while (looking-at "From ") (replace-match "X-From-Line: ") --- 429,436 ---- (unless noinsert (nnmail-insert-lines) (nnmail-insert-xref group-art)) ! (gnus-run-hooks 'nnmail-prepare-save-mail-hook) ! (gnus-run-hooks 'nnmh-prepare-save-mail-hook) (goto-char (point-min)) (while (looking-at "From ") (replace-match "X-From-Line: ") *** pub/qgnus/lisp/nnml.el Tue Jan 6 07:48:40 1998 --- qgnus/lisp/nnml.el Sat Feb 14 19:27:58 1998 *************** *** 1,5 **** ;;; nnml.el --- mail spool access for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA --- 1,5 ---- ;;; nnml.el --- mail spool access for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA *************** *** 163,170 **** (deffoo nnml-request-article (id &optional group server buffer) (nnml-possibly-change-directory group server) (let* ((nntp-server-buffer (or buffer nntp-server-buffer)) - ;; 1997/8/12 by MORIOKA Tomohiko - ;; for XEmacs/mule. (pathname-coding-system 'binary) path gpath group-num) (if (stringp id) --- 163,168 ---- *************** *** 250,257 **** (deffoo nnml-request-list (&optional server) (save-excursion - ;; 1997/8/12 by MORIOKA Tomohiko - ;; for XEmacs/mule. (let ((nnmail-file-coding-system nnmail-active-file-coding-system) (pathname-coding-system 'binary)) ; for XEmacs/mule (nnmail-find-file nnml-active-file) --- 248,253 ---- *************** *** 590,597 **** (let (chars headers) (setq chars (nnmail-insert-lines)) (nnmail-insert-xref group-art) ! (run-hooks 'nnmail-prepare-save-mail-hook) ! (run-hooks 'nnml-prepare-save-mail-hook) (goto-char (point-min)) (while (looking-at "From ") (replace-match "X-From-Line: ") --- 586,593 ---- (let (chars headers) (setq chars (nnmail-insert-lines)) (nnmail-insert-xref group-art) ! (gnus-run-hooks 'nnmail-prepare-save-mail-hook) ! (gnus-run-hooks 'nnml-prepare-save-mail-hook) (goto-char (point-min)) (while (looking-at "From ") (replace-match "X-From-Line: ") *** pub/qgnus/lisp/nnoo.el Tue Jan 6 07:48:40 1998 --- qgnus/lisp/nnoo.el Sat Feb 14 19:27:59 1998 *************** *** 1,5 **** ;;; nnoo.el --- OO Gnus Backends ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; nnoo.el --- OO Gnus Backends ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/nnsoup.el Sun Jan 4 14:35:31 1998 --- qgnus/lisp/nnsoup.el Sat Feb 14 19:27:59 1998 *************** *** 1,5 **** ;;; nnsoup.el --- SOUP access for Gnus ! ;; Copyright (C) 1995,96,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA --- 1,5 ---- ;;; nnsoup.el --- SOUP access for Gnus ! ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Masanobu UMEDA *** pub/qgnus/lisp/nnspool.el Tue Sep 23 08:09:25 1997 --- qgnus/lisp/nnspool.el Sat Feb 14 19:27:59 1998 *************** *** 1,5 **** ;;; nnspool.el --- spool access for GNU Emacs ! ;; Copyright (C) 1988,89,90,93,94,95,96,97 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen --- 1,5 ---- ;;; nnspool.el --- spool access for GNU Emacs ! ;; Copyright (C) 1988,89,90,93,94,95,96,97,98 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen *************** *** 82,88 **** (defvoo nnspool-rejected-article-hook nil "*A hook that will be run when an article has been rejected by the server.") - ;; 1997/8/14 by MORIOKA Tomohiko (defvoo nnspool-file-coding-system nnheader-file-coding-system "Coding system for nnspool.") --- 82,87 ---- *************** *** 346,352 **** (nnheader-report 'nnspool "%s" (buffer-string)) (message "nnspool: %s" nnspool-status-string) (ding) ! (run-hooks 'nnspool-rejected-article-hook)))) (defun nnspool-retrieve-headers-with-nov (articles &optional fetch-old) (if (or gnus-nov-is-evil nnspool-nov-is-evil) --- 345,351 ---- (nnheader-report 'nnspool "%s" (buffer-string)) (message "nnspool: %s" nnspool-status-string) (ding) ! (gnus-run-hooks 'nnspool-rejected-article-hook)))) (defun nnspool-retrieve-headers-with-nov (articles &optional fetch-old) (if (or gnus-nov-is-evil nnspool-nov-is-evil) *** pub/qgnus/lisp/nntp.el Fri Feb 13 22:39:15 1998 --- qgnus/lisp/nntp.el Sat Feb 14 19:28:00 1998 *************** *** 179,184 **** --- 179,185 ---- (defvar nntp-inside-change-function nil) (defvoo nntp-last-command-time nil) (defvoo nntp-last-command nil) + (defvoo nntp-authinfo-password nil) (defvar nntp-connection-list nil) *************** *** 703,708 **** --- 704,730 ---- reading." (nntp-send-command "^.*\r?\n" "MODE READER")) + (defun nntp-send-authinfo () + "Send the AUTHINFO to the nntp server. + This function is supposed to be called from `nntp-server-opened-hook'. + It will look in the \"~/.netrc\" file for matching entries. If + nothing suitable is found there, it will prompt for a user name + and a password." + (let* ((list (gnus-parse-netrc "~/.netrc")) + (alist (gnus-netrc-machine list nntp-address)) + (user (gnus-netrc-get alist "login")) + (passwd (gnus-netrc-get alist "password"))) + (nntp-send-command + "^3.*\r?\n" "AUTHINFO USER" + (or user (read-string (format "NNTP (%s) user name: " nntp-address)))) + (nntp-send-command + "^2.*\r?\n" "AUTHINFO PASS" + (or passwd + nntp-authinfo-password + (setq nntp-authinfo-password + (nnmail-read-passwd (format "NNTP (%s) password: " + nntp-address))))))) + (defun nntp-send-nosy-authinfo () "Send the AUTHINFO to the nntp server. This function is supposed to be called from `nntp-server-opened-hook'. *************** *** 714,731 **** "^2.*\r?\n" "AUTHINFO PASS" (nnmail-read-passwd "NNTP (%s) password: " nntp-address))) ! (defun nntp-send-authinfo () "Send the AUTHINFO to the nntp server. This function is supposed to be called from `nntp-server-opened-hook'. - It will prompt for a password." - (nntp-send-command "^3.*\r?\n" "AUTHINFO USER" (user-login-name)) - (nntp-send-command - "^2.*\r?\n" "AUTHINFO PASS" - (nnmail-read-passwd (format "NNTP (%s) password: " nntp-address)))) ! (defun nntp-send-authinfo-from-file () ! "Send the AUTHINFO to the nntp server. ! This function is supposed to be called from `nntp-server-opened-hook'." (when (file-exists-p "~/.nntp-authinfo") (nnheader-temp-write nil (insert-file-contents "~/.nntp-authinfo") --- 736,747 ---- "^2.*\r?\n" "AUTHINFO PASS" (nnmail-read-passwd "NNTP (%s) password: " nntp-address))) ! (defun nntp-send-authinfo-from-file () "Send the AUTHINFO to the nntp server. This function is supposed to be called from `nntp-server-opened-hook'. ! The authinfo login name is taken from the user's login name and the ! password contained in '~/.nntp-authinfo'." (when (file-exists-p "~/.nntp-authinfo") (nnheader-temp-write nil (insert-file-contents "~/.nntp-authinfo") *************** *** 767,773 **** (defun nntp-open-connection (buffer) "Open a connection to PORT on ADDRESS delivering output to BUFFER." ! (run-hooks 'nntp-prepare-server-hook) (let* ((pbuffer (nntp-make-process-buffer buffer)) (process (condition-case () --- 783,789 ---- (defun nntp-open-connection (buffer) "Open a connection to PORT on ADDRESS delivering output to BUFFER." ! (gnus-run-hooks 'nntp-prepare-server-hook) (let* ((pbuffer (nntp-make-process-buffer buffer)) (process (condition-case () *************** *** 788,794 **** (erase-buffer) (set-buffer nntp-server-buffer) (let ((nnheader-callback-function nil)) ! (run-hooks 'nntp-server-opened-hook)))) (when (buffer-name (process-buffer process)) (kill-buffer (process-buffer process))) nil)))) --- 804,810 ---- (erase-buffer) (set-buffer nntp-server-buffer) (let ((nnheader-callback-function nil)) ! (gnus-run-hooks 'nntp-server-opened-hook)))) (when (buffer-name (process-buffer process)) (kill-buffer (process-buffer process))) nil)))) *** pub/qgnus/lisp/nnvirtual.el Sun Jan 4 14:35:31 1998 --- qgnus/lisp/nnvirtual.el Sat Feb 14 19:28:00 1998 *************** *** 1,5 **** ;;; nnvirtual.el --- virtual newsgroups access for Gnus ! ;; Copyright (C) 1994,95,96,97 Free Software Foundation, Inc. ;; Author: David Moore ;; Lars Magne Ingebrigtsen --- 1,5 ---- ;;; nnvirtual.el --- virtual newsgroups access for Gnus ! ;; Copyright (C) 1994,95,96,97,98 Free Software Foundation, Inc. ;; Author: David Moore ;; Lars Magne Ingebrigtsen *** pub/qgnus/lisp/nnweb.el Sat Dec 6 17:45:26 1997 --- qgnus/lisp/nnweb.el Sat Feb 14 19:28:00 1998 *************** *** 1,5 **** ;;; nnweb.el --- retrieving articles via web search engines ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news --- 1,5 ---- ;;; nnweb.el --- retrieving articles via web search engines ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Keywords: news *** pub/qgnus/lisp/pop3.el Sun Jan 4 11:12:08 1998 --- qgnus/lisp/pop3.el Sat Feb 14 19:28:01 1998 *************** *** 1,6 **** ;;; pop3.el --- Post Office Protocol (RFC 1460) interface ! ;; Copyright (C) 1996,1997 Free Software Foundation, Inc. ;; Author: Richard L. Pieri ;; Keywords: mail, pop3 --- 1,6 ---- ;;; pop3.el --- Post Office Protocol (RFC 1460) interface ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Richard L. Pieri ;; Keywords: mail, pop3 *** pub/qgnus/lisp/score-mode.el Sat Sep 13 20:30:34 1997 --- qgnus/lisp/score-mode.el Sat Feb 14 19:28:01 1998 *************** *** 60,66 **** (setq mode-name "Score") (lisp-mode-variables nil) (make-local-variable 'gnus-score-edit-exit-function) ! (run-hooks 'emacs-lisp-mode-hook 'gnus-score-mode-hook)) (defun gnus-score-make-menu-bar () (unless (boundp 'gnus-score-menu) --- 60,66 ---- (setq mode-name "Score") (lisp-mode-variables nil) (make-local-variable 'gnus-score-edit-exit-function) ! (gnus-run-hooks 'emacs-lisp-mode-hook 'gnus-score-mode-hook)) (defun gnus-score-make-menu-bar () (unless (boundp 'gnus-score-menu) *************** *** 70,76 **** ["Exit" gnus-score-edit-exit t] ["Insert date" gnus-score-edit-insert-date t] ["Format" gnus-score-pretty-print t])) ! (run-hooks 'gnus-score-menu-hook))) (defun gnus-score-edit-insert-date () "Insert date in numerical format." --- 70,76 ---- ["Exit" gnus-score-edit-exit t] ["Insert date" gnus-score-edit-insert-date t] ["Format" gnus-score-pretty-print t])) ! (gnus-run-hooks 'gnus-score-menu-hook))) (defun gnus-score-edit-insert-date () "Insert date in numerical format." *** pub/qgnus/lisp/smiley.el Sat Dec 6 17:45:27 1997 --- qgnus/lisp/smiley.el Sat Feb 14 19:28:01 1998 *************** *** 1,5 **** ;;; smiley.el --- displaying smiley faces ! ;; Copyright (C) 1996,97 Free Software Foundation, Inc. ;; Author: Wes Hardaker ;; Keywords: fun --- 1,5 ---- ;;; smiley.el --- displaying smiley faces ! ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Wes Hardaker ;; Keywords: fun *************** *** 45,51 **** :group 'gnus-visual) (defcustom smiley-data-directory (message-xmas-find-glyph-directory "smilies") ! "Location of the smiley faces files." :type 'directory :group 'smiley) --- 45,51 ---- :group 'gnus-visual) (defcustom smiley-data-directory (message-xmas-find-glyph-directory "smilies") ! "*Location of the smiley faces files." :type 'directory :group 'smiley) *************** *** 76,82 **** ("\\(;-*[>)}»]+\\)\\W" 1 "FaceWinking.xpm") ("\\(:-*[Vvµ]\\)\\W" 1 "FaceWry.xpm") ("\\([:|]-*P\\)\\W" 1 "FaceYukky.xpm")) ! "Normal and deformed faces for smilies." :type '(repeat (list regexp (integer :tag "Match") (string :tag "Image"))) --- 76,82 ---- ("\\(;-*[>)}»]+\\)\\W" 1 "FaceWinking.xpm") ("\\(:-*[Vvµ]\\)\\W" 1 "FaceWry.xpm") ("\\([:|]-*P\\)\\W" 1 "FaceYukky.xpm")) ! "*Normal and deformed faces for smilies." :type '(repeat (list regexp (integer :tag "Match") (string :tag "Image"))) *************** *** 102,115 **** ("\\(:-+[Vvµ]\\)\\W" 1 "FaceWry.xpm") ("\\(][:8B]-[)>]\\)\\W" 1 "FaceDevilish.xpm") ("\\([:|]-+P\\)\\W" 1 "FaceYukky.xpm")) ! "Smileys with noses. These get less false matches." :type '(repeat (list regexp (integer :tag "Match") (string :tag "Image"))) :group 'smiley) (defcustom smiley-regexp-alist smiley-deformed-regexp-alist ! "A list of regexps to map smilies to real images. Defaults to the contents of `smiley-deformed-regexp-alist'. An alternative is `smiley-nosey-regexp-alist' that matches less aggressively. --- 102,115 ---- ("\\(:-+[Vvµ]\\)\\W" 1 "FaceWry.xpm") ("\\(][:8B]-[)>]\\)\\W" 1 "FaceDevilish.xpm") ("\\([:|]-+P\\)\\W" 1 "FaceYukky.xpm")) ! "*Smileys with noses. These get less false matches." :type '(repeat (list regexp (integer :tag "Match") (string :tag "Image"))) :group 'smiley) (defcustom smiley-regexp-alist smiley-deformed-regexp-alist ! "*A list of regexps to map smilies to real images. Defaults to the contents of `smiley-deformed-regexp-alist'. An alternative is `smiley-nosey-regexp-alist' that matches less aggressively. *************** *** 123,149 **** :group 'smiley) (defcustom smiley-flesh-color "yellow" ! "Flesh color." :type 'string :group 'smiley) (defcustom smiley-features-color "black" ! "Features color." :type 'string :group 'smiley) (defcustom smiley-tongue-color "red" ! "Tongue color." :type 'string :group 'smiley) (defcustom smiley-circle-color "black" ! "Circle color." :type 'string :group 'smiley) (defcustom smiley-mouse-face 'highlight ! "Face used for mouse highlighting in the smiley buffer. Smiley buttons will be displayed in this face when the cursor is above them." --- 123,149 ---- :group 'smiley) (defcustom smiley-flesh-color "yellow" ! "*Flesh color." :type 'string :group 'smiley) (defcustom smiley-features-color "black" ! "*Features color." :type 'string :group 'smiley) (defcustom smiley-tongue-color "red" ! "*Tongue color." :type 'string :group 'smiley) (defcustom smiley-circle-color "black" ! "*Circle color." :type 'string :group 'smiley) (defcustom smiley-mouse-face 'highlight ! "*Face used for mouse highlighting in the smiley buffer. Smiley buttons will be displayed in this face when the cursor is above them." *** pub/qgnus/lisp/ChangeLog Fri Feb 13 22:38:59 1998 --- qgnus/lisp/ChangeLog Sat Feb 14 19:27:24 1998 *************** *** 1,3 **** --- 1,80 ---- + Sat Feb 14 19:28:01 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.26 is released. + + Sat Feb 14 18:40:55 1998 Lars Magne Ingebrigtsen + + * gnus-agent.el (gnus-agent-directory): Translate file chars. + + * gnus-sum.el (gnus-summary-print-article): Don't display all + headers. + (gnus-summary-edit-parameters): New command and keystroke. + + * gnus-group.el (gnus-group-rename-group): Mark dribble. + + Sat Feb 14 18:39:45 1998 Fred Oberhauser + + * nnmail.el (nnmail-process-babyl-mail-format): Fix point + movement. + + Sat Feb 14 18:31:39 1998 Lars Magne Ingebrigtsen + + * gnus.el (gnus-group-get-parameter): Dix fix. + + Sat Feb 14 18:29:12 1998 Kim-Minh Kaplan + + * gnus-picon.el: Updated documentation. + + Sat Feb 14 18:26:53 1998 Joev Dubach + + * nntp.el (nntp-send-authinfo-from-file): Doc fix. + + Sun Jan 11 23:44:12 1998 Ken Raeburn + + * nnagent.el (nnagent-request-update-info): New no-op fn. + + Sat Feb 14 17:41:44 1998 Lars Magne Ingebrigtsen + + * gnus-srvr.el (gnus-browse-unsubscribe-group): Wouldn't allow + subscription of visited groups. + + * gnus-util.el (gnus-run-hooks): New function. + Use it everywhere. + + * nntp.el (nntp-authinfo-password): New variable. + (nntp-send-authinfo): Cache authinfo password. + + * gnus-sum.el (gnus-summary-mark-article-as-unread): Don't do + anything if the mark doesn't change. + + 1998-01-17 Simon Josefsson + + * gnus-sum.el (gnus-summary-work-articles): change buffer + before looking at marked articles + (gnus-summary-work-articles): better check of marked articles + + Sat Feb 14 15:10:36 1998 Lars Magne Ingebrigtsen + + * nntp.el (nntp-send-authinfo): Use new .netrc functionality. + + * gnus-util.el (gnus-netrc-syntax-table): New variable. + (gnus-parse-netrc): New function. + (gnus-netrc-machine): Ditto. + (gnus-netrc-get): Ditto. + + * gnus-draft.el (gnus-draft-make-menu-bar): Added deletion. + + * gnus.el (gnus-expert-user): Dix fox. + + * nnmail.el (nnmail-article-group): Remove duplicates from split. + + * message.el (message-check-news-header-syntax): Check more on + Message-ID. + + * nnmh.el: Don't call nnmail-activate. + + * gnus.el: User-variabelize all custom vars. + Fri Feb 13 22:40:39 1998 Lars Magne Ingebrigtsen * gnus.el: Quassia Gnus v0.25 is released. *** pub/qgnus/texi/gnus.texi Fri Feb 13 22:39:27 1998 --- qgnus/texi/gnus.texi Sat Feb 14 19:28:07 1998 *************** *** 1,7 **** \input texinfo @c -*-texinfo-*- @setfilename gnus ! @settitle Quassia Gnus 0.25 Manual @synindex fn cp @synindex vr cp @synindex pg cp --- 1,7 ---- \input texinfo @c -*-texinfo-*- @setfilename gnus ! @settitle Quassia Gnus 0.26 Manual @synindex fn cp @synindex vr cp @synindex pg cp *************** *** 313,319 **** @tex @titlepage ! @title Quassia Gnus 0.25 Manual @author by Lars Magne Ingebrigtsen @page --- 313,319 ---- @tex @titlepage ! @title Quassia Gnus 0.26 Manual @author by Lars Magne Ingebrigtsen @page *************** *** 349,355 **** spool or your mbox file. All at the same time, if you want to push your luck. ! This manual corresponds to Quassia Gnus 0.25. @end ifinfo --- 349,355 ---- spool or your mbox file. All at the same time, if you want to push your luck. ! This manual corresponds to Quassia Gnus 0.26. @end ifinfo *************** *** 7370,7375 **** --- 7370,7381 ---- Expand the summary buffer window (@code{gnus-summary-expand-window}). If given a prefix, force an @code{article} window configuration. + @item M-C-e + @kindex M-C-e (Summary) + @findex gnus-summary-edit-parameters + Edit the group parameters (@pxref{Group Parameters}) of the current + group (@code{gnus-summary-edit-parameters}). + @end table *************** *** 8850,8873 **** @item nntp-authinfo-function @vindex nntp-authinfo-function This function will be used to send @samp{AUTHINFO} to the @sc{nntp} ! server. Available functions include: ! @table @code ! @item nntp-send-authinfo ! @findex nntp-send-authinfo ! This function will use your current login name as the user name and will ! prompt you for the password. This is the default. ! @item nntp-send-nosy-authinfo ! @findex nntp-send-nosy-authinfo ! This function will prompt you for both user name and password. ! ! @item nntp-send-authinfo-from-file ! @findex nntp-send-authinfo-from-file ! This function will use your current login name as the user name and will ! read the @sc{nntp} password from @file{~/.nntp-authinfo}. ! @end table @item nntp-server-action-alist @vindex nntp-server-action-alist --- 8856,8894 ---- @item nntp-authinfo-function @vindex nntp-authinfo-function + @findex nntp-send-authinfo This function will be used to send @samp{AUTHINFO} to the @sc{nntp} ! server. The default function is @code{nntp-send-authinfo}, which looks ! through your @file{~/.netrc} for applicable entries. If none are found, ! it will prompt you for a login name and a password. The format of the ! @file{~/.netrc} file is defined in the @code{ftp} manual page, but here ! are the salient facts: ! @enumerate ! @item ! The file contains one or more line, each of which define one server. ! @item ! Each line may contain an arbitrary number of token/value pairs. The ! valid tokens include @samp{machine}, @samp{login}, and @samp{password}. ! ! @end enumerate ! ! Here's an example file: ! ! @example ! machine news.uio.no login larsi password geheimnis ! machine nntp.ifi.uio.no login larsi ! @end example ! ! The token/value pairs may appear in any order; @samp{machine} doesn't ! have to be first, for instance. ! ! In this example, both login name and password have been supplied for the ! former server, while the latter has only the login name listed, and the ! user will be prompted for the password. ! ! Remember to not leave the @file{~/.netrc} world-readable. @item nntp-server-action-alist @vindex nntp-server-action-alist *************** *** 10983,10991 **** and a server in Norway, you could use the following as the group regexp: @example ! "^nntp+some.server.jp:soc.motss$\\|^nntp+some.server.no:soc.motss$" @end example This should work kinda smoothly---all articles from both groups should end up in this one, and there should be no duplicates. Threading (and the rest) will still work as usual, but there might be problems with the --- 11004,11016 ---- and a server in Norway, you could use the following as the group regexp: @example ! "^nntp\\+some\\.server\\.jp:soc\\.motss$\\|^nntp\\+some\\.server\\.no:soc\\.motss$" @end example + (Remember, though, that if you're creating the group with @kbd{G m}, you + shouldn't double the backslashes, and you should leave off the quote + characters at the beginning and the end of the string.) + This should work kinda smoothly---all articles from both groups should end up in this one, and there should be no duplicates. Threading (and the rest) will still work as usual, but there might be problems with the *************** *** 13416,13422 **** @item gnus-expert-user @vindex gnus-expert-user ! If this variable is non-@code{nil}, you will never ever be asked any questions by Gnus. It will simply assume you know what you're doing, no matter how strange. --- 13441,13447 ---- @item gnus-expert-user @vindex gnus-expert-user ! If this variable is non-@code{nil}, you will seldom be asked any questions by Gnus. It will simply assume you know what you're doing, no matter how strange. *************** *** 14455,14461 **** * Picon Requirements:: Don't go further if you aren't using XEmacs. * Easy Picons:: Displaying Picons---the easy way. * Hard Picons:: The way you should do it. You'll learn something. ! * Picon Configuration:: Other variables you can trash/tweak/munge/play with. @end menu --- 14480,14486 ---- * Picon Requirements:: Don't go further if you aren't using XEmacs. * Easy Picons:: Displaying Picons---the easy way. * Hard Picons:: The way you should do it. You'll learn something. ! * Picon Useless Configuration:: Other variables you can trash/tweak/munge/play with. @end menu *************** *** 14480,14491 **** @code{GIF} formats. @end quotation ! For instructions on obtaining and installing the picons databases, point ! your Web browser at ! @file{http://www.cs.indiana.edu/picons/ftp/index.html}. @vindex gnus-picons-database ! Gnus expects picons to be installed into a location pointed to by @code{gnus-picons-database}. --- 14505,14521 ---- @code{GIF} formats. @end quotation ! @vindex gnus-picons-piconsearch-url ! If you have a permanent connection to the Internet you can use Steve ! Kinzler's Picons Search engine by setting ! @code{gnus-picons-piconsearch-url} to the string ! @file{http://www.cs.indiana.edu/picons/search.html}. @vindex gnus-picons-database ! Otherwise you need a local copy of his database. For instructions on ! obtaining and installing the picons databases, point your Web browser at ! @file{http://www.cs.indiana.edu/picons/ftp/index.html}. Gnus expects ! picons to be installed into a location pointed to by @code{gnus-picons-database}. *************** *** 14496,14505 **** 19.13 or greater since all other versions of Emacs aren't yet able to display images. ! Additionally, you must have @code{xpm} support compiled into XEmacs. @vindex gnus-picons-convert-x-face ! If you want to display faces from @code{X-Face} headers, you must have the @code{netpbm} utilities installed, or munge the @code{gnus-picons-convert-x-face} variable to use something else. --- 14526,14538 ---- 19.13 or greater since all other versions of Emacs aren't yet able to display images. ! Additionally, you must have @code{x} support compiled into XEmacs. To ! display color picons which are much nicer than the black & white one, ! you also need one of @code{xpm} or @code{gif} compiled into XEmacs. @vindex gnus-picons-convert-x-face ! If you want to display faces from @code{X-Face} headers, you should have ! the @code{xface} support compiled into XEmacs. Otherwise you must have the @code{netpbm} utilities installed, or munge the @code{gnus-picons-convert-x-face} variable to use something else. *************** *** 14517,14522 **** --- 14550,14564 ---- (add-hook 'gnus-article-display-hook 'gnus-picons-article-display-x-face) @end lisp + and make sure @code{gnus-picons-database} points to the directory + containing the Picons databases. + + Alternatively if you want to use the web piconsearch engine add this: + + @lisp + (setq gnus-picons-piconsearch-url "http://www.cs.indiana.edu:800/piconsearch") + @end lisp + @node Hard Picons @subsubsection Hard Picons *************** *** 14531,14540 **** articles. It knows how to interact with three sections of the picons database. Namely, it can display the picons newsgroup pictures, author's face picture(s), and the authors domain. To enable this ! feature, you need to first decide where to display them. @table @code @item gnus-picons-display-where @vindex gnus-picons-display-where Where the picon images should be displayed. It is @code{picons} by --- 14573,14599 ---- articles. It knows how to interact with three sections of the picons database. Namely, it can display the picons newsgroup pictures, author's face picture(s), and the authors domain. To enable this ! feature, you need to select where to get the picons from, and where to ! display them. @table @code + @item gnus-picons-database + @vindex gnus-picons-database + The location of the picons database. Should point to a directory + containing the @file{news}, @file{domains}, @file{users} (and so on) + subdirectories. This is only useful if + @code{gnus-picons-piconsearch-url} is @code{nil}. Defaults to + @file{/usr/local/faces/}. + + @item gnus-picons-piconsearch-url + @vindex gnus-picons-piconsearch-url + The URL for the web picons search engine. The only currently known + engine is @file{http://www.cs.indiana.edu:800/piconsearch}. To + workaround network delays, icons will be fetched in the background. If + this is @code{nil} 'the default), then picons are fetched from local + database indicated by @code{gnus-picons-database}. + @item gnus-picons-display-where @vindex gnus-picons-display-where Where the picon images should be displayed. It is @code{picons} by *************** *** 14554,14562 **** Note: If you set @code{gnus-use-picons} to @code{t}, it will set up your window configuration for you to include the @code{picons} buffer. ! Now that you've made that decision, you need to add the following ! functions to the appropriate hooks so these pictures will get ! displayed at the right time. @vindex gnus-article-display-hook @vindex gnus-picons-display-where --- 14613,14621 ---- Note: If you set @code{gnus-use-picons} to @code{t}, it will set up your window configuration for you to include the @code{picons} buffer. ! Now that you've made those decision, you need to add the following ! functions to the appropriate hooks so these pictures will get displayed ! at the right time. @vindex gnus-article-display-hook @vindex gnus-picons-display-where *************** *** 14589,14596 **** @end lisp ! @node Picon Configuration ! @subsubsection Picon Configuration @iftex @iflatex --- 14648,14655 ---- @end lisp ! @node Picon Useless Configuration ! @subsubsection Picon Useless Configuration @iftex @iflatex *************** *** 14603,14618 **** don't need to worry about. @table @code - @item gnus-picons-database - @vindex gnus-picons-database - The location of the picons database. Should point to a directory - containing the @file{news}, @file{domains}, @file{users} (and so on) - subdirectories. Defaults to @file{/usr/local/faces/}. ! @item gnus-picons-news-directory ! @vindex gnus-picons-news-directory ! Sub-directory of the faces database containing the icons for ! newsgroups. @item gnus-picons-user-directories @vindex gnus-picons-user-directories --- 14662,14672 ---- don't need to worry about. @table @code ! @item gnus-picons-news-directories ! @vindex gnus-picons-news-directories ! List of subdirectories to search in @code{gnus-picons-database} for ! newsgroups faces. @code{("news")} is the default. @item gnus-picons-user-directories @vindex gnus-picons-user-directories *************** *** 14623,14633 **** @vindex gnus-picons-domain-directories List of subdirectories to search in @code{gnus-picons-database} for domain name faces. Defaults to @code{("domains")}. Some people may ! want to add @samp{unknown} to this list. @item gnus-picons-convert-x-face @vindex gnus-picons-convert-x-face ! The command to use to convert the @code{X-Face} header to an X bitmap (@code{xbm}). Defaults to @code{(format "@{ echo '/* Width=48, Height=48 */'; uncompface; @} | icontopbm | pbmtoxbm > %s" gnus-picons-x-face-file-name)} --- 14677,14688 ---- @vindex gnus-picons-domain-directories List of subdirectories to search in @code{gnus-picons-database} for domain name faces. Defaults to @code{("domains")}. Some people may ! want to add @samp{"unknown"} to this list. @item gnus-picons-convert-x-face @vindex gnus-picons-convert-x-face ! If you don't have @code{xface} support builtin XEmacs, this is the ! command to use to convert the @code{X-Face} header to an X bitmap (@code{xbm}). Defaults to @code{(format "@{ echo '/* Width=48, Height=48 */'; uncompface; @} | icontopbm | pbmtoxbm > %s" gnus-picons-x-face-file-name)} *************** *** 14637,14653 **** Names a temporary file to store the @code{X-Face} bitmap in. Defaults to @code{(format "/tmp/picon-xface.%s.xbm" (user-login-name))}. @iftex @iflatex \margindex{} @end iflatex @end iftex - @item gnus-picons-buffer - @vindex gnus-picons-buffer - The name of the buffer that @code{picons} points to. Defaults to - @samp{*Icon Buffer*}. - @end table @node Smileys --- 14692,14740 ---- Names a temporary file to store the @code{X-Face} bitmap in. Defaults to @code{(format "/tmp/picon-xface.%s.xbm" (user-login-name))}. + @item gnus-picons-has-modeline-p + @vindex gnus-picons-has-modeline-p + If you have set @code{gnus-picons-display-where} to @code{picons}, your + XEmacs frame will become really cluttered. To alleviate this a bit you + can set @code{gnus-picons-has-modeline-p} to @code{nil}; this will + remove the mode line from the Picons buffer. This is only useful if + @code{gnus-picons-display-where} is @code{picons}. + + @item gnus-picons-refresh-before-display + @vindex gnus-picons-refresh-before-display + If non-nil, display the article buffer before computing the picons. + Defaults to @code{nil}. + + @item gnus-picons-display-as-address + @vindex gnus-picons-display-as-address + If @code{t} display textual email addresses along with pictures. + Defaults to @code{t}. + + @item gnus-picons-file-suffixes + @vindex gnus-picons-file-suffixes + Ordered list of suffixes on picon file names to try. Defaults to + @code{("xpm" "gif" "xbm")} minus those not builtin your XEmacs. + + @item gnus-picons-display-article-move-p + @vindex gnus-picons-display-article-move-p + Whether to move point to first empty line when displaying picons. This + has only an effect if `gnus-picons-display-where' has value `article'. + + @item gnus-picons-clear-cache-on-shutdown + @vindex gnus-picons-clear-cache-on-shutdown + Whether to clear the picons cache when exiting gnus. Gnus caches every + picons it finds while it is running. This saves some time in the search + process but eats some memory. If this variable is set to @code{nil}, + Gnus will never clear the cache itself; you will have to manually call + @code{gnus-picons-clear-cache} to clear it. Otherwise the cache will be + cleared every time you exit Gnus. Defaults to @code{t}. + @iftex @iflatex \margindex{} @end iflatex @end iftex @end table @node Smileys *************** *** 17151,17159 **** Move all prompting to the new `M-n' default style. @item - have nntp cache the authinfo passwords. - - @item command to display all dormant articles. @item --- 17238,17243 ---- *************** *** 17183,17188 **** --- 17267,17276 ---- possible to make various constraints on when an article can be expired, e.g. (read), (age > 14 days), or the more interesting (read & age > 14 days)? + + @item + New limit command---limit to articles that have a certain string + in the head or body. @item Solve the halting problem. *** pub/qgnus/texi/message.texi Fri Feb 13 22:39:27 1998 --- qgnus/texi/message.texi Sat Feb 14 19:28:08 1998 *************** *** 1,7 **** \input texinfo @c -*-texinfo-*- @setfilename message ! @settitle Message 0.25 Manual @synindex fn cp @synindex vr cp @synindex pg cp --- 1,7 ---- \input texinfo @c -*-texinfo-*- @setfilename message ! @settitle Message 0.26 Manual @synindex fn cp @synindex vr cp @synindex pg cp *************** *** 39,45 **** @tex @titlepage ! @title Message 0.25 Manual @author by Lars Magne Ingebrigtsen @page --- 39,45 ---- @tex @titlepage ! @title Message 0.26 Manual @author by Lars Magne Ingebrigtsen @page *************** *** 80,86 **** * Key Index:: List of Message mode keys. @end menu ! This manual corresponds to Message 0.25. Message is distributed with the Gnus distribution bearing the same version number as this manual has. --- 80,86 ---- * Key Index:: List of Message mode keys. @end menu ! This manual corresponds to Message 0.26. Message is distributed with the Gnus distribution bearing the same version number as this manual has. *** pub/qgnus/texi/ChangeLog Fri Feb 13 22:39:27 1998 --- qgnus/texi/ChangeLog Sat Feb 14 19:28:08 1998 *************** *** 1,3 **** --- 1,9 ---- + Sat Feb 14 17:46:33 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Virtual Groups): Fix. + (NNTP): Addition. + (Really Various Summary Commands): Addition. + Fri Feb 13 18:23:19 1998 Lars Magne Ingebrigtsen * gnus.texi (Mail Group Commands): Typo. *** pub/qgnus/texi/dir Wed Jun 18 00:54:19 1997 --- qgnus/texi/dir Tue Nov 25 06:16:59 1997 *************** *** 0 **** --- 1,9 ---- + -*- Text -*- + The Gnus-related top node. +  + File: dir Node: Top This is the Gnus Info tree + + * Menu: + + * Gnus: (gnus). The news reader Gnus. + * Message: (message). The Message sending thingamabob.