From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/38978 Path: main.gmane.org!not-for-mail From: "Georg C. F. Greve" Newsgroups: gmane.emacs.gnus.general Subject: Re: New mail appears to be old?! Date: Thu, 27 Sep 2001 13:34:17 +0200 Sender: owner-ding@hpc.uh.edu Message-ID: References: NNTP-Posting-Host: coloc-standby.netfonds.no Mime-Version: 1.0 Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha1; protocol="application/pgp-signature" X-Trace: main.gmane.org 1035174760 25448 80.91.224.250 (21 Oct 2002 04:32:40 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Mon, 21 Oct 2002 04:32:40 +0000 (UTC) Cc: Return-Path: Original-Received: (qmail 15066 invoked from network); 27 Sep 2001 11:35:41 -0000 Original-Received: from malifon.math.uh.edu (mail@129.7.128.13) by mastaler.com with SMTP; 27 Sep 2001 11:35:41 -0000 Original-Received: from sina.hpc.uh.edu ([129.7.128.10] ident=lists) by malifon.math.uh.edu with esmtp (Exim 3.20 #1) id 15mZRz-0002Vs-00; Thu, 27 Sep 2001 06:35:31 -0500 Original-Received: by sina.hpc.uh.edu (TLB v0.09a (1.20 tibbs 1996/10/09 22:03:07)); Thu, 27 Sep 2001 06:35:07 -0500 (CDT) Original-Received: from sclp3.sclp.com (qmailr@sclp3.sclp.com [209.196.61.66]) by sina.hpc.uh.edu (8.9.3/8.9.3) with SMTP id GAA02400 for ; Thu, 27 Sep 2001 06:34:43 -0500 (CDT) Original-Received: (qmail 15055 invoked by alias); 27 Sep 2001 11:35:02 -0000 Original-Received: (qmail 15049 invoked from network); 27 Sep 2001 11:35:01 -0000 Original-Received: from unknown (HELO mail.arcor-ip.de) (145.253.2.10) by gnus.org with SMTP; 27 Sep 2001 11:35:01 -0000 Original-Received: from fusebox.gnuhh-gateway (145.254.45.92) by mail.arcor-ip.de (5.5.034) id 3B94E7DC002E1F13; Thu, 27 Sep 2001 13:34:33 +0200 Original-Received: from reason.gnu-hamburg (root@reason.gnu-hamburg [10.129.4.1]) by fusebox.gnu-hamburg (8.12.0.Beta7/8.12.0.Beta7/Debian 8.12.0.Beta7-1) with ESMTP id f8RBYS6T032178; Thu, 27 Sep 2001 13:34:29 +0200 Original-Received: from reason.gnu-hamburg (greve@localhost [127.0.0.1]) by localhost (8.12.0.Beta7/8.12.0.Beta7/Debian 8.12.0.Beta7-1) with ESMTP id f8RBYNpS004371; Thu, 27 Sep 2001 13:34:23 +0200 Original-Received: (from greve@localhost) by reason.gnu-hamburg (8.12.0.Beta7/8.12.0.Beta7/Debian 8.12.0.Beta7-1) id f8RBYMZV004365; Thu, 27 Sep 2001 13:34:22 +0200 X-Authentication-Warning: reason.gnu-hamburg: greve set sender to greve@gnu.org using -f Original-To: Simon Josefsson Organisation: Free Software Foundation Europe - GNU Project X-Home-Page: http://gnuhh.org X-PGP-Affinity: will accept encrypted messages for GNU Privacy Guard X-PGP-Fingerprint: 2D68 D553 70E5 CCF9 75F4 9CC9 6EF8 AFC2 8657 4ACA In-Reply-To: (Simon Josefsson's message of "Wed, 26 Sep 2001 16:41:02 +0200 (CEST)") User-Agent: Gnus/5.090004 (Oort Gnus v0.04) Emacs/20.7 Precedence: list X-Majordomo: 1.94.jlt7 Original-Lines: 47 Xref: main.gmane.org gmane.emacs.gnus.general:38978 X-Report-Spam: http://spam.gmane.org/gmane.emacs.gnus.general:38978 --==-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Transfer-Encoding: quoted-printable || On Wed, 26 Sep 2001 16:41:02 +0200 (CEST) || Simon Josefsson wrote:=20 >> in the CVS version of GNUS I suddenly experience a rather unwanted >> and annoying phenomenon: after getting new mail, only some part of >> the new mail is marked as new/unread and makes the groups show up >> in the group buffer as groups with new mail. sj> Does the group show up as having unread articles, but when you sj> enter it, only some of those new articles are displayed?=20=20 No, sometimes groups (no recognizable pattern) do not show up having new articles, although they clearly have messages I didn't see yet. sj> Or doesn't even the group buffer reflect that you have new mail? Yes, sometimes, some groups do not reflect that they contain new mail. sj> In the first case, either you may have corrupt active or nov sj> files, or there may be a bug in the new marks stuff. I'v tried regenerating the nov databases to no avail. sj> In the latter case, I have no idea. It seems very weird. Maybe sj> mail gets corrupted somehow, and end up being concatenated to sj> each other instead of being filed as individual articles, or sj> something like that. Unlikely, I'm using nnml. sj> What is your setup, nnml, nnfolder, mail-sources etc? Here is my cleaned .gnus file (got rid of the personal stuff): --=-=-= Content-Type: application/emacs-lisp Content-Disposition: attachment; filename=gnus.el Content-Transfer-Encoding: quoted-printable ;; ;;{{{ Crypto Stuff ;; ;; ;; Mailcrypt ;; (load-library "mailcrypt") ; provides "mc-setversion" (mc-setversion "gpg");; 2.6 for PGP 2.6, 5.0 for PGP 5.0 (autoload 'mc-install-write-mode "mailcrypt" nil t) (autoload 'mc-install-read-mode "mailcrypt" nil t) (add-hook 'mail-mode-hook 'mc-install-write-mode) (add-hook 'gnus-summary-mode-hook 'mc-install-read-mode) (add-hook 'message-mode-hook 'mc-install-write-mode) (add-hook 'news-reply-mode-hook 'mc-install-write-mode) ;; fetching keys... (setq mc-gpg-always-fetch t) (setq mc-pgp-fetch-methods '(mc-pgp-fetch-from-keyrings mc-pgp-fetch-from-http) ) (setq mc-pgp-keyserver-address "blackhole.pca.dfn.de") (setq mc-pgp-keyserver-port 11371) (setq mc-pgp-keyserver-url-template "/pks/lookup?op=3Dget&search=3D%s") ;; USER SPECIFIC OPTIONS ;; this is my normal identity to use: (setq mc-pgp-user-id "greve@gnu.org") (setq mc-gpg-user-id "greve@gnu.org") ;; timeouts (setq mc-passwd-timeout 24000) ;; do we always want to sign encrypted messages? you bet! (setq mc-pgp-always-sign t) ;; pop up the GPG output window when snarfing keys. (setq mc-gpg-display-snarf-output t) ;; Assume that the message should be encoded for=20 ;; everyone listed in the To, Cc, and Bcc fields. (setq mc-use-default-recipients t) ;; Encrypt all outgoing messages with user's public key. ;; since I want to be able to read it, this seems like a ;; good idea... ,-) (setq mc-encrypt-for-me t) ;; MML: (setq mml2015-use 'mailcrypt) ;(setq mml2015-use 'gpg) (setq mm-verify-option 'known) (setq mm-decrypt-option 'always) ;; gpg-ring.el (require 'gpg-ring) ;; ;; some functions for nicer crypto usability in gnus ;; ;; Copyright (C) 2000 Georg C. F. Greve greve@gnu.org ;; license: GNU General Public License ;; (defun gnus-look-for-pgp-tag () "Checks whether this mail does have any PGP tags set.=20=20 If the first line of the mail begins with something that=20 appears to be a MIME crypto tag, it returns the position of the end of that line. nil if no tag could be found." (interactive) (message-goto-body) (setq p (point-marker)) (search-forward "=3D" nil 2) (if (or=20 (string=3D "<#part sign=3D" (buffer-substring p (point))) (string=3D "<#part encrypt=3D" (buffer-substring p (point))) (string=3D "<#multipart sign=3D" (buffer-substring p (point))) (string=3D "<#multipart encrypt=3D" (buffer-substring p (point)))) (search-forward "\n") nil)) (defun gnus-look-for-pgp-crypto-tag () "Checks whether this mail does have any PGP crypto tags=20 set. If the first line of the mail begins with something that=20 appears to be a MIME crypto tag, it returns the position of the end of that line. nil if no tag could be found." (interactive) (message-goto-body) (setq p (point-marker)) (search-forward "=3D" nil 2) (if (or=20 (string=3D "<#part encrypt=3D" (buffer-substring p (point))) (string=3D "<#multipart encrypt=3D" (buffer-substring p (point)))) (search-forward "\n")=20 nil)) (defun gnus-set-pgp-none () "Removes the tag for PGP signing or encrypting if there is one." (interactive) (message-goto-body) (setq p (point-marker)) (if (setq q (gnus-look-for-pgp-tag)) (delete-region p q)) (goto-char p)) (defun gnus-set-pgp-sign () "Inserts the tag for PGP signature after removing old tag (if necessary)." (interactive) (gnus-set-pgp-none) (if (not (bolp)) (insert ?\n)) (insert (format "<#multipart sign=3Dpgpmime>\n"))) (defun gnus-set-pgp-encrypt () "Inserts the tag for PGP encryption after removing old tag (if necessary)= ." (interactive) (gnus-set-pgp-none) (if (not (bolp)) (insert ?\n)) (insert (format "<#multipart encrypt=3Dpgpmime>\n"))) (defun gnus-set-pgp-encrypt-with-recipients (&optional default-recipients) "Removes the old tag (if necessary) and then asks for the recipients of t= he=20 encrypted mail. If those are non-empty, a new PGP encryption tag is inserte= d." (interactive) (gnus-set-pgp-none) (setq recipients=20 (read-from-minibuffer "Recipients: "=20 (if default-recipients default-recipients ;; function to get default recipients from mailcrypt 3.5.5 ;; mc-toplev.el, entry point functions for Mailcrypt ;; Copyright (C) 1995 Jin Choi ;; Patrick LoPresti ;; license: GNU General Public License (save-restriction (goto-char (point-min)) (re-search-forward (concat "^" (regexp-quote mail-header-separator) "$")) (narrow-to-region (point-min) (point)) (and (featurep 'mailalias) (not (featurep 'mail-abbrevs)) mail-aliases (expand-mail-aliases (point-min) (point-max))) (mc-strip-addresses (mapcar 'cdr (mc-get-fields "to\\|cc\\|bcc"))))))) (message-goto-body) (if (not (string=3D recipients "")) (insert (format "<#multipart encrypt=3Dpgpmime recipients=3D\"%s\">\n= " recipients)) nil )) (defun gnus-set-pgp-encrypt-if-nothing (&optional ask)=20 "Inserts the tag for encryption via PGP if nothing else is set." (interactive) (if (not (gnus-look-for-pgp-tag)) (if (if ask (y-or-n-p "Should this mail be encrypted?") t ) (gnus-set-pgp-encrypt)))) (defun gnus-set-pgp-sign-if-nothing (&optional ask)=20 "Inserts the tag for signing via PGP if nothing else is set.=20 Optionally asks whether this is desired." (interactive) (if (not (gnus-look-for-pgp-tag)) (if (if ask (y-or-n-p "Should this mail be signed?") t ) (gnus-set-pgp-sign)))) (defun gnus-set-pgp-sign-interactively () "Inserts the PGP signing tag after asking. To be used mainly for hook fun. Asks for encryption if signing is declined." (interactive) (gnus-set-pgp-sign-if-nothing t) (gnus-set-pgp-encrypt-if-nothing t)) (defun gnus-insert-kill-as-mime-public-key () "Inserts a public key from the kill buffer as MIME part in the current ma= il." (interactive) (let ((oldbuf (current-buffer))) (save-current-buffer (set-buffer=20 (setq keybuf (buffer-name (generate-new-buffer "*Public-PGP-Key-Data= *")))) =20=20=20=20=20=20 (yank) )) (if (not (bolp)) (insert ?\n)) (mml-attach-buffer keybuf "application/pgp-keys")) ;; ;; pgp-mail field support for BBDB ;; ;; from bbdb-gpg.el by Kevin Davidson ;; Copyright (C) 1997 Kevin Davidson ;; Copyright (C) 2000 Georg C. F. Greve ;; license: GNU General Public License ;; (require 'message) (require 'bbdb) (require 'mailcrypt) (defconst bbdb-pgp-version (substring "$Revision: 1.3P $" 11 -2) "$Id: bbdb-pgp.el,v 1.3 1997/11/10 15:20:29 tkld Exp $ Patched by: Georg C. F. Greve greve@gnu.org Report bugs to: Kevin Davidson tkld@quadstone.com") (defvar bbdb-pgp-field 'pgp-mail "*Field to use in BBDB to store PGP preferences. If the value is \"encrypt\" then messages are encrypted. If the value is \"sign\" then messages are signed.") (defun bbdb/pgp-get-pgp (name address) "Look up user NAME and ADDRESS in BBDB and return the PGP preference." (let* ((record (bbdb-search-simple name address)) (pgp (and record (bbdb-record-getprop record bbdb-pgp-field)))) pgp)) (defun bbdb/pgp-hook-fun () "Function to be added to message-send-hook Uses PGP to encrypt messages to users marked in the BBDB with the field bbdb-pgp-field." (save-restriction (save-excursion (message-narrow-to-headers) (let* ((to-field (mail-fetch-field "To" nil t)) (address (mail-extract-address-components (or to-field "")))) (widen) (if (not (equal address '(nil nil))) (let ((pgp-p (bbdb/pgp-get-pgp (car address) (car (cdr address))))) (cond ((string=3D "encrypt" pgp-p)=20 (gnus-set-pgp-encrypt-if-nothing)) ((string=3D "sign" pgp-p) (gnus-set-pgp-sign-if-nothing)) (t nil)))))))) ;; ;; first pay attention to the BBDB field and then ask me ;; if there is still nothing set as I probably forgot ;; (add-hook 'message-send-hook 'gnus-set-pgp-sign-interactively) (add-hook 'mail-send-hook 'gnus-set-pgp-sign-interactively) (add-hook 'message-send-hook 'bbdb/pgp-hook-fun) (add-hook 'mail-send-hook 'bbdb/pgp-hook-fun) ;;}}};; ;; ;; ;;{{{ BBDB - Setup ;; (require 'bbdb) (bbdb-initialize 'gnus 'message 'sc 'w3 'sendmail) ;; how is the BBDB file called? (setq bbdb-file "/home/Mail/Gnus/bbdb") ;; add the hooks for some things we might want: (add-hook 'mail-setup-hook 'bbdb-insinuate-sendmail) (bbdb-insinuate-message) ;; (bbdb-insinuate-reportmail) (bbdb-insinuate-w3) (add-hook 'gnus-startup-hook 'bbdb-insinuate-gnus) (setq bbdb-default-area-code 49) (setq bbdb-north-american-phone-numbers-p nil) (setq bbdb-electric-p nil) (setq bbdb-auto-revert-p nil) (setq bbdb-notice-auto-save-file nil) (setq bbdb-pop-up-target-lines 4) (setq bbdb-use-pop-up t) ;; (setq bbdb-user-mail-names "\"Georg C. F. Greve\"" ) (setq bbdb-message-caching-enabled nil) (setq bbdb-offer-save "noask") (setq bbdb-canonicalize-redundant-nets-p t) (setq bbdb-elided-display '(aka timestamp creation-date gnus-score mark-cha= r attribution)) (setq bbdb-pop-up-elided-display '(address aka phone timestamp creation-dat= e mail-alias gnus-score mark-char attribution)) ;; GNUS specific BBDB setups: ; scoring via BBDB: (setq bbdb/gnus-score-default 0) ; interwoven with scoring below - caution ! (setq gnus-score-find-score-files-function '(gnus-score-find-hierarchical bbdb/gnus-score)) ;; manipulate GNUS summary line: (setq bbdb/gnus-summary-mark-known-posters nil) (setq bbdb/gnus-summary-prefer-real-names t) (setq bbdb/gnus-summary-prefer-bbdb-data t) (setq bbdb/gnus-summary-known-poster-mark "#") (setq nnmail-extra-headers '(To Cc)) (setq gnus-extra-headers nnmail-extra-headers) (setq gnus-summary-line-format "%U%R%z%I%(%[%4L: %-25,25f%]%) [%1ub] %s\n") (setq tm-bbdb/delete-empty-window t);; I don't want to see the empty window= ! ;; and also manipulate the GNUS subject line: (autoload 'bbdb/gnus-lines-and-from "bbdb-gnus") (setq gnus-optional-headers 'bbdb/gnus-lines-and-from) (setq bbdb/gnus-mark-known-posters t) (setq bbdb/gnus-header-prefer-real-names t) (setq bbdb/gnus-header-show-bbdb-names t) (setq bbdb/gnus-lines-and-from-length 24) ;; BBDB mail alias definitions: (autoload 'bbdb-define-all-aliases "bbdb-com" "Hook mail alias feature of BBDB into message-mode." t) (add-hook 'message-setup-hook 'bbdb-define-all-aliases) (add-hook 'message-mode-hook 'ls6-message-mode-hook-mail-aliases) (defun ls6-message-mode-hook-mail-aliases () (define-key message-mode-map (kbd "C-c C-a") 'mail-interactive-insert-alias)) (setq bbdb-completion-display-record nil) ;;{{{ Own functions (defun my-gnus-yank-and-hide-bbdb () "Yank addresses out of BBDB and close the window" (interactive) (bbdb-yank-addresses) (delete-windows-on "*BBDB*") ) (defun my-gnus-only-hide-bbdb () "Hide the BBDB windows" (interactive) (delete-windows-on "*BBDB*") ) (autoload 'bbdb-create-internal "bbdb-com") (defun my-gnus-create-bbdb-record () "Get fields for a new BBDB record and create it." ( interactive )=20=20 =20=20 ( setq record-name (bbdb-read-string "Name: ") ) =20=20 ( setq record-company (bbdb-read-string "Company: ") ) ( if ( string=3D record-company "" )( setq record-company nil )) =20=20 ( setq record-net (bbdb-read-string "Net: ") ) ( if ( string=3D record-net "" )( setq record-net nil )) =20=20 ( setq record-notes (bbdb-read-string "Notes: ") ) ( if ( string=3D record-notes "" )( setq record-notes nil )) ;; ( setq record-alias (bbdb-read-string "Mail Alias: ") ) ;; ( if ( string=3D record-alias "" )( setq record-alias nil )) =20=20 ( bbdb-create-internal record-name=20 record-company record-net nil nil record-notes ) (bbdb-display-records=20 (bbdb-search (bbdb-records) record-name)) =20 ) ;;}}};; ;;}}};; ;; ;; ;;{{{ Basic GNUS setup ;; ;; where to find .newsrc and .newsrc.eld=20 ;; (gnus simply appends .eld to this one) (setq gnus-startup-file "/home/Mail/Gnus/newsrc") (setq nnmail-message-id-cache-file "/home/Mail/Gnus/nnmail-cache") (setq gnus-duplicate-file "/home/Mail/Gnus/duplicates") (setq nnkiboze-directory "/home/Mail/Gnus/Kiboze/") (setq gnus-article-save-directory "/home/Mail/Archive") ;; what to do to duplicates? (NNTP) (setq gnus-suppress-duplicates t) (setq gnus-save-duplicate-list t) (setq gnus-duplicate-list-length 5000) ;; When should gnus start asking how many articles to display? (setq gnus-large-newsgroup 5000) ;; we want nndiary to be loaded! (require 'nndiary) (setq nndiary-directory "/home/Mail/Diary/") (setq nndiary-active-file "/home/Mail/Diary/active") (setq nndiary-nov-file-name "overview") (setq nndiary-split-methods=20 '(("^To:.*@fsfeurope.org" "fsfeurope") ("^From:.*@fsfeurope.org" "fsfeurope") (".*" "misc"))) (setq nndiary-reminders=20 '((3 . day)(1 . day)(0 . day))) ;; put nndiary into autonomous mode (setq nndiary-get-new-mail t) ;; ;; Customize Group Mode ;; ;; activate level (setq gnus-activate-level 5) ;; we want the groups timestamped (add-hook 'gnus-select-group-hook 'gnus-group-set-timestamp) ;; topic mode (add-hook 'gnus-group-mode-hook 'gnus-topic-mode) (setq gnus-topic-display-empty-topics t) ;; topic line format (setq gnus-topic-line-format "%i[%5A: %(%{%n%}%) ]%v\n") ;; group buffer line format (setq gnus-group-line-format "%M%S %5y: %(%~(pad-right 35)G%)(%5t)%z [%~(cu= t-left 9)~(max-right 2)d:%~(cut-left 11)~(max-right 2)d %~(cut-left 6)~(max= -right 2)d.%~(cut-left 4)~(max-right 2)d.%~(max-right 4)d]\n") ;; all groups that are in YYYY-MM format should be permanently visible (setq gnus-permanently-visible-groups "mail.*\\\|/home/Mail/FSF-Europe") ;(setq gnus-permanently-visible-groups "\\\[:digit:\\\]{4}-\\\[:digit:= \\\]{2}") ;; customizing the summary (setq gnus-auto-center-summary t) ;; sorted by reverse arrival (setq gnus-thread-sort-functions '((lambda (t1 t2) (not (gnus-thread-sort-by-number t1 t2))))) (setq message-signature t) ; news gets a signature (setq mail-signature t) ; mail gets a signature (setq mime/tmp-dir "/tmp/") ;; mail reading (custom-set-variables '(gnus-novice-user nil)) ;; to avoid problems with stupid outlook-users: (add-to-list 'message-syntax-checks '(sender . disabled)) ;; where do drafts reside? (setq nndraft-directory "/home/Mail/Drafts") ;; the select-methods. heart of configuration (sort of) (setq gnus-secondary-select-methods=20 '((nnml "" (nnml-directory "/home/Mail/Incoming/") (nnml-get-new-mail t) (nnml-active-file "/home/Mail/Incoming/active")=20=20=20=20 (nnml-newsgroups-file "/home/Mail/Incoming/descriptions")) (nnfolder "archive+incoming" (nnfolder-get-new-mail nil) (nnfolder-inhibit-expiry t) (nnfolder-directory "/home/Mail/Archive/Incoming/") (nnfolder-active-file "/home/Mail/Archive/Incoming/active")) (nndiary "" (nndiary-week-starts-on-monday t)) )) ;; machine-dependent configuration part (cond ((or (string=3D (system-name) "brain") (string=3D (system-name) "brain.gnuhh.org") (string=3D (system-name) "brain.gnu.de")) ; Laptop ;; no nntp-server for laptop (setq gnus-select-method '(nnspool "")) ;; position of diary file (setq nndiary-mail-sources (list "/var/spool/mail/nndiary")) ;; where to get the mail (setq nnmail-spool-file (list "/var/spool/mail/greve"=20 "/var/spool/mail/services" "/var/spool/mail/greve-ml"))) (t ;; Machines @ home ;; position of diary file (setq nndiary-mail-sources (list "/fusebox/var/spool/mail/nndiary")) ;; where to get the mail (setq nnmail-spool-file (list "/fusebox/var/spool/mail/greve"=20 "/fusebox/var/spool/mail/services" "/fusebox/var/spool/mail/greve-ml")) )) ;; archiving: (setq gnus-message-archive-method '(nnfolder "archive"=20 (nnfolder-get-new-mail nil) (nnfolder-inhibit-expiry t) (nnfolder-active-file "/home/Mail/Archive/Sent/active") (nnfolder-directory "/home/Mail/Archive/Sent/"))) (setq gnus-message-archive-group '((if (message-news-p) "misc-news"=20 (concat "mail." (format-time-string=20 "%Y-%m" (current-time)))))) (setq gnus-inews-mark-gcc-as-read t) ; this does not let freshly archived s= how up as "unread" ;; Article saving (setq gnus-save-all-headers t) (setq gnus-use-long-file-name t) (setq gnus-default-article-saver 'gnus-summary-save-in-file) (setq gnus-file-save-name 'georgs-gnus-sender-save-name) ;; set message composing fields to the values I want (setq message-from-style 'angles);; "Name
" looks just TONS better (setq gnus-ignored-headers=20 "^X-ICQ-Number:\\|^X-Request-PGP:\\|^X-PGP-Affinity:") ;; when forwarding something again, try to wash the subject line (setq message-wash-forwarded-subjects t) ;; Signature detection (setq gnus-signature-separator '("^-- $" ; The standard "^-- *$" ; A common mangling "^-------*$" ; Many people just use a looong ; line of dashes. Shame! "^ *--------*$" ; Double-shame! "^________*$" ; Underscores are also popular "^=3D=3D=3D=3D=3D=3D=3D=3D*$")) ; Pervert! ;; display smileys as graphix: (add-hook 'gnus-article-display-hook 'gnus-smiley-display) ;; highlighting hooks: (add-hook 'gnus-article-display-hook 'gnus-article-highlight-citation) (add-hook 'gnus-article-display-hook 'gnus-article-highlight-signature) (add-hook 'gnus-article-display-hook 'gnus-article-highlight-some) (add-hook 'gnus-article-display-hook 'gnus-article-highlight-headers) ;; Emphasizing: (add-hook 'gnus-article-display-hook 'gnus-article-emphasize) ;; PGP-hooks: (add-hook 'gnus-article-display-hook 'gnus-article-hide-pgp) ;; Hooks before and after getting new news ;(add-hook 'gnus-get-new-news-hook 'gnus-group-expire-all-groups) ;(add-hook 'gnus-after-getting-new-news-hook ') ;; Customize my scoring :-) ;; interwoven with BBDB - caution ! (setq gnus-score-find-score-files-function=20 '(gnus-score-find-hierarchical bbdb/gnus-score)) (setq gnus-kill-files-directory "/home/Mail/Score/") ;; never split mails, other people have stupid mail readers (setq message-send-mail-partially-limit nil) ;; ;;{{{ Own functions ;; (defun georgs-gnus-sender-save-name (newsgroup headers &optional last-file) "Generate file name from sender." (let ((from (mail-header-from headers))) (expand-file-name "some subject" (concat gnus-article-save-directory "/"=20 (if (and from (string-match "\\([^ <]+\\)@" from)) (match-string 1 from) "nobody"))))) (defun my-gnus-move-to-received () "move article into an archive for read/processed articles..." (interactive) (gnus-summary-move-article nil (format-time-string "nnfolder+archive+inco= ming:mail.%Y-%m"))) ;; (gnus-summary-mark-as-expirable n)) (defun my-gnus-set-mail-properties () "Define the properties for Mail sending" (interactive) (auto-fill-mode) ) (add-hook 'message-setup-hook 'my-gnus-set-mail-properties);; set Mail ; properties at composing startup (defvar my-gnus-lockfile "/home/Mail/Gnus/lock") (defun my-gnus-check-for-lockfile () "check for lockfile that (w/s)ould prohibit startup" (interactive) (if (file-exists-p my-gnus-lockfile) print "lockfile found.")) (add-hook 'gnus-load-hook 'my-gnus-check-for-lockfile) (add-hook 'gnus-before-startup-hook 'my-gnus-check-for-lockfile) ;;}}};; ;;}}};; ;; ;; ;;{{{ Posting Styles Fun ;; ;; Random Signatures: (require 'random-sig) (setq random-signature-head (expand-file-name "/home/Mail/Signatures/random= /head")) (setq random-signature-dir (expand-file-name "/home/Mail/Signatures/random"= )) (setq gnus-posting-styles '((".*" ;; Universal Defaults (name "Georg C. F. Greve") (address "greve@gnu.org" ) (sender "\"Georg C. F. Greve\" " )) [...] ))) ;;}}};; ;; ;; ;;{{{ Splitting Mail=20 (setq nnmail-treat-duplicates 'warn) (setq nnmail-cache-accepted-message-ids t) (setq nnmail-message-id-cache-length 8000) (setq nnmail-split-methods 'nnmail-split-fancy) (setq nnmail-split-fancy=20 '( |=20 ;; suppression of duplicates (get redirected into their own group) ("gnus-warning" "duplicate of message" "duplicates");; split into ("gnus-warning" "This is a duplicate" "duplicates");; group for duplicates ;; followups come into the same group their parent is in. (: nnmail-split-fancy-with-parent) ;;{{{ gnu.ml.* [...] ;;}}} =09 ;; misc.misc "misc.misc" ) ) ;;}}} ;; ;; ;;{{{ Expiring Mail ;; (setq nnmail-expiry-wait-function (lambda (group) (cond ((string=3D group "expired") 14) ((string=3D group "duplicates") 1) ((string=3D group "misc.ml.dasn3") 'never) (t 'immediate)))) (setq nnmail-expiry-target "nnml:expired") (setq gnus-auto-expirable-newsgroups=20 "duplicates\\|misc.ml.suse-betatest\\|gnu.ml.\\|hanse.ml\\|service.lo= cal\\|service.external\\|misc.spam") (setq gnus-total-expirable-newsgroups "duplicates\\|expired") ;;}}};; ;; ;; ;;{{{ Other additional modes to be used ;; add gnus-junk-complain mode=20 (autoload 'gnus-junk-complain "gnus-junk" "(not loaded yet)" t) (add-hook 'gnus-sum-load-hook (lambda nil (define-key gnus-summary-mode-map [(?$)] 'gnus-junk-complain))) ;; WWW browsing: (setq browse-url-browser-function (function browse-url-netscape) gnus-button-url 'netscape) ;;}}};; ;; ;; ;;{{{ Supercite Setup ;; (autoload 'sc-cite-original "supercite" "Supercite 3.1" t) (autoload 'sc-submit-bug-report "supercite" "Supercite 3.1" t) (setq message-cite-function 'sc-cite-original) (setq gnus-use-sc t) (setq sc-downcase-p t) (setq sc-preferred-attribution-list ( list "x-attribution" "initials" "sc-consult" "emailname" "lastname" "firstname" "sc-lastchoice" )) (bbdb-insinuate-sc) (bbdb/sc-setup-variables) (setq sc-attrib-selection-list ' (("sc-from-address" ((".*" . (bbdb/sc-consult-attr (sc-mail-field "sc-from-address"))))))) (setq sc-citation-leader " ") (setq sc-citation-delimiter ">") (setq sc-citation-separator " ") (setq sc-nuke-mail-headers 'all) (setq sc-fixup-whitespace-p nil) (setq sc-auto-fill-region-p nil) (setq sc-confirm-always-p nil) (setq sc-rewrite-header-list '((sc-no-header) (sc-header-on-said) (sc-header-inarticle-writes) (sc-header-regarding-adds) (sc-header-attributed-writes) (sc-header-author-writes) (sc-header-verbose) (sc-no-blank-line-or-header) (sc-header-author-email-writes) (my-sc-header) (my-sc-header-with-subject) )) (setq sc-reference-tag-string " || " ) (setq sc-preferred-header-style 9 ) (setq sc-nested-citation-p nil) ;;{{{ Own functions (defun my-sc-header () "my own header setup for supercite. This rules !" (let=20 ((sc-mumble "") (whofrom (sc-whofrom))) (if whofrom =09 (insert sc-reference-tag-string (sc-hdr "On " (sc-mail-field "date") "\n") sc-reference-tag-string whofrom " wrote: \n") ) =20=20=20=20=20=20 )) (defun my-sc-header-with-subject () "my own header setup for supercite. This rules !" (let=20 ((sc-mumble "") (whofrom (sc-whofrom))) (if whofrom =09 (insert sc-reference-tag-string (sc-hdr "On " (sc-mail-field "date") ",\n") sc-reference-tag-string "regarding \""=20 (sc-mail-field "subject") "\",\n" sc-reference-tag-string whofrom " wrote: \n") ) =20=20=20=20=20=20 )) ;;}}} ;;}}};; ;; [... some private functions & keybindings ...] ;;}}};; ;; --=-=-= Content-Transfer-Encoding: quoted-printable If there is anything else I can do to help tracking down the bug, please let me know. Regards, Georg =2D-=20 Georg C. F. Greve Free Software Foundation Europe (http://fsfeurope.org) Brave GNU World (http://brave-gnu-world.org) --=-=-=-- --==-=-= Content-Type: application/pgp-signature -----BEGIN PGP MESSAGE----- Version: GnuPG v1.0.6 (GNU/Linux) Comment: Processed by Mailcrypt 3.5.6 and Gnu Privacy Guard iD8DBQE7sw69bvivwoZXSsoRAlVYAKC4Tci0nsfUgIwcC8DDhvAJogf5bwCaA4xm +Oy7n0XdYhym0OZPc0+iUkk= =0lZB -----END PGP MESSAGE----- --==-=-=--