;; -*-Emacs-Lisp-*-
;; Config pour Gnus 5.6.45
(autoload 'message-mark-inserted-region "message-utils" nil t)
(autoload 'message-mark-insert-file "message-utils" nil t)
(autoload 'message-strip-subject-was "message-utils" nil t)
(autoload 'message-change-subject "message-utils" nil t)
(autoload 'message-xpost-fup2 "message-utils" nil t)
(autoload 'message-add-archieve-header "message-utils" nil t)
;;;; Key bindings :
;; (define-key message-mode-map '[(control c) m] 'message-mark-inserted-region)
;; (define-key message-mode-map '[(control c) f] 'message-mark-insert-file)
;; (define-key message-mode-map '[(control c) x] 'message-xpost-fup2)
;; (define-key message-mode-map '[(control c) s] 'message-change-subject)
;; (define-key message-mode-map '[(control c) a] 'message-archieve-header)
;; (add-hook 'message-header-setup-hook 'message-strip-subject-was)
(defun message-utils-setup ()
"Add menu-entries for message-utils."
(easy-menu-add-item nil '("Message")
["Insert Region Marked"
message-mark-inserted-region t] "Spellcheck")
(easy-menu-add-item nil '("Message")
["Insert File Marked"
message-mark-insert-file t] "Spellcheck")
(easy-menu-add-item nil '("Field")
["Crosspost / Followup"
message-xpost-fup2 t] "----")
(easy-menu-add-item nil '("Field")
["New Subject" message-mark-inserted-region t] "----")
(easy-menu-add-item nil '("Field")
[ "X-No-Archieve:"
message-mark-inserted-region t ]))
(add-hook 'message-mode-hook 'message-utils-setup)
;; Pour avoir les heures qui défilent dans les dates de messages
(gnus-start-date-timer)
;; moi aussi j'aime savoir ce qu'on me répond
(add-hook 'message-sent-hook 'gnus-score-followup-article)
(add-hook 'message-sent-hook 'gnus-score-followup-thread)
;; hortografe
(add-hook 'message-send-hook 'ispell-message)
; c'est marrant ça
(autoload 'sm-add-random-header "silly-mail" nil t)
(add-hook 'message-setup-hook 'sm-add-random-header)
(setq
;; Mais euhh je suis plus débutant
gnus-novice-user nil
;; Me demande pas pour sortir
gnus-interactive-exit nil
;; don't confirm catchup
gnus-interactive-catchup nil
;; Insert a courtesy message in mail copies of combined messages
message-insert-courtesy-copy t
;; inserted at the start of a mailed copy of a posted message
message-courtesy-message "[Mailed and posted to %s]\n"
gnus-large-newsgroup 500
gnus-article-display-hook
'(
gnus-article-de-quoted-unreadable
gnus-article-hide-pgp
gnus-article-highlight
gnus-smiley-display
gnus-article-hide-headers-if-wanted
gnus-article-hide-boring-headers
gnus-article-treat-overstrike
gnus-article-highlight
;; emphasize text according to `gnus-emphasis-alist'
gnus-article-emphasize
gnus-article-display-x-face
gnus-article-date-lapsed
)
gnus-group-line-format
"%M%S%p%5y: %(%~(pad-right 40)g Last read on %6,6~(cut 2)d%)\n"
;; gnus-summary-mode-line-format "%V %p [%A] %Z"
;; gnus-summary-line-format "%U%R%z%6N%I%(%[%-14,14n%]%) %e%s\n"
gnus-topic-line-format "%i[%{ %n %}(%A / %g )%{]%} %v\n"
gnus-suppress-duplicates t
)
;;
;; J'aime bien conserver des archives de mes envois.
;;
(setq gnus-message-archive-method
'(nnfolder "archive"
(nnfolder-inhibit-expiry t)))
(setq gnus-message-archive-group
'((if (message-news-p)
"sent-news"
"sent-mail")))
(custom-set-variables
'(message-default-headers my-message-default-headers)
)
;; MIME
(setq gnus-use-tm t)
(require 'gnus-mime)
(setq gnus-show-mime t)
(add-hook 'mime/editor-mode-hook 'mime-editor/set-transfer-level-8bit)
(call-after-loaded
'tm-view
(function
(lambda ()
(require 'tm-pgp)
)))
;;*=======================
;;* load mailcrypt (XEmacs tool for pgp)
(autoload 'mc-install-write-mode "mailcrypt" nil t)
(autoload 'mc-install-read-mode "mailcrypt" nil t)
(add-hook 'message-mode-hook 'mc-install-write-mode)
(setq mc-encrypt-for-me t
mc-passwd-timeout 6000)
;;*=======================
;;* mailcrypt-support for gnus
(add-hook 'gnus-summary-mode-hook 'mc-install-read-mode)
;;*=======================
;;* offer to pgp sign/encrypt outgoing mail/news
;; Modifié pour ne *pas* signer par défaut.
(defun krid-message-send-hook ()
"Stuff to be done before sending"
(when (not (y-or-n-p "NOT PGP-sign this message? "))
(save-excursion
(let (start end)
(goto-char (point-min))
(setq start (1+ (re-search-forward mail-header-separator)))
(goto-char (point-max))
(setq end (or (re-search-backward message-signature-separator nil t)
(point-max)))
(when (< start end)
(mc-pgp-sign-region start end))))))
;(add-hook 'message-send-hook 'krid-message-send-hook)
;; On garde les threads en un seul morceau meme si le sujet change
(setq gnus-gather-loose-threads t)
(setq gnus-thread-ignore-subject t)
(add-hook 'gnus-group-mode-hook 'gnus-topic-mode)
(add-hook 'gnus-select-group-hook 'gnus-group-set-timestamp)
(setq gnus-visible-headers
"^From:\\|^Newsgroups:\\|^Subject:\\|^Date:\\|^Followup-To:\\|^Reply-To:\\|^Organization:\\|^Summary:\\|^Keywords:\\|^To:\\|^Cc:\\|^X-Newsreader:\\|^X-Mailer:\\|^Posted-To:\\|^Mail-Copies-To:\\|^Apparently-To:\\|^Gnus-Warning:\\|^Resent-From:\\|^Approved:\\|^User-Agent:")
;; tout ça pour une signature...
(setq seb-sig-dir-base (expand-file-name "~/.sigs-"))
(setq message-signature t)
(setq gnus-posting-styles
'((".*"
(signature-file (je-signe "en")))
("^nn.+:lug"
(signature-file (je-signe "lug"))
; (signature-file (je-signe "fr"))
)
("^fr.*"
(signature-file (je-signe "fr")))
("^fr.misc.bavardages.*"
("Approved" "eloignez les drosophiles !"))
("^alt.sysadmin.recovery"
("Approved" "probably"))
))
;; scoring on
(setq gnus-use-scoring t)
;; On vire les articles qui sont vraiment trop mauvais
(setq gnus-summary-expunge-below -500)
;; On garde les scores tant qu'ils servent a quelque chose
(setq gnus-update-score-entry-dates t)
;; Le scoring adaptif
(setq gnus-summary-mark-below -300)
(setq gnus-use-adaptive-scoring t)
(defvar gnus-default-adaptive-score-alist
'((gnus-unread-mark)
(gnus-ticked-mark (from 4))
(gnus-dormant-mark (from 5))
(gnus-del-mark (from -5) (subject -2))
(gnus-read-mark (from 1) (subject 1))
(gnus-expirable-mark)
(gnus-killed-mark (from -1) (subject -3))
(gnus-kill-file-mark)
(gnus-ancient-mark (subject -1))
(gnus-low-score-mark (subject -3) (from -2))
(gnus-catchup-mark (from -1) (subject -1))))
;; On zappe les scores trop faibles dans le summary buffer
(setq gnus-summary-zcore-fuzz 100)
;; traitement du courrier
;; Les mailbox de gnus
(setq nnfolder-directory "~/.gnus.mail/")
(setq nnfolder-active-file "~/News/nnfolder.active")
(setq nnfolder-newsgroups-file "~/News/nnfolder.newsgroups")
(setq nnfolder-get-new-mail t)
;; nnfolder
(setq gnus-secondary-select-methods
'((nnfolder "")))
(setq gnus-permanently-visible-groups "^nnfolder")
;; On ne recupere pas le courrier, on laisse faire fetchmail
(setq nnmail-spool-file 'procmail)
;; Procmail met le courrier dans ~/mail/
(setq nnmail-procmail-directory "~/.gnus.in/")
;; Les mailbox ont le meme nom dans les deux repertoires
(setq nnmail-procmail-suffix "")
;; Gnus demande automatiquement si je veux m'inscrire a tout nouveau groupe
;(setq gnus-subscribe-newsgroup-method `gnus-subscribe-interactively)
;; Tant qu'on y est, on vire automatiquement les vieux groupes disparus
;(setq gnus-check-bogus-newsgroups t)