X-Git-Url: https://git.distorted.org.uk/~mdw/profile/blobdiff_plain/9906310798d936a6cacd0ec5a2d3b607e911c423..fff80d993fbf831f2cdffcbf2c0bc8f95d65b0a9:/dot/gnus.el diff --git a/dot/gnus.el b/dot/gnus.el index cf2ebbc..ebf83f2 100644 --- a/dot/gnus.el +++ b/dot/gnus.el @@ -41,13 +41,14 @@ gnus-sum-thread-tree-false-root ">" gnus-sum-thread-tree-single-indent "=" gnus-sum-thread-tree-indent " ") -(if (eq (coding-system-get (terminal-coding-system) 'mime-charset) 'utf-8) +(if (memq (coding-system-get (terminal-coding-system) 'mime-charset) + '(nil utf-8)) (setq gnus-sum-thread-tree-leaf-with-other "├─>" gnus-sum-thread-tree-vertical "│ " gnus-sum-thread-tree-single-leaf "╰─>") (setq gnus-sum-thread-tree-leaf-with-other "|->" gnus-sum-thread-tree-vertical "| " - gnus-sum-thread-tree-single-leaf "'->")) + gnus-sum-thread-tree-single-leaf "`->")) ;; Sort threads in a useful way. (setq gnus-thread-sort-functions @@ -55,6 +56,9 @@ gnus-thread-sort-by-subject gnus-thread-sort-by-total-score)) +;; Use one article buffer per group. +(setq gnus-single-article-buffer nil) + ;; Don't expand threads on initial opening. (setq gnus-thread-hide-subtree t) @@ -70,11 +74,33 @@ ;; We may have the misfortune to talk to an Exchange server. (setq imap-enable-exchange-bug-workaround t) +;; Save articles in mbox format by default, of course, and save an entire +;; batch with the same name. +(setq gnus-prompt-before-saving t + gnus-default-article-saver 'gnus-summary-save-in-mail) + +;; Clean up properly when closing the summary. +(defadvice gnus-summary-exit (before mdw-kill-debris compile activate) + (gnus-summary-expand-window)) + +;; Configure article display a bit. +(defun mdw-gnus-article-setup () + (setq truncate-lines nil + truncate-partial-width-windows nil + word-wrap t + wrap-prefix (concat (propertize "..." 'face 'mdw-ellipsis-face) + " "))) +(add-hook 'gnus-article-mode-hook #'mdw-gnus-article-setup) + ;;;-------------------------------------------------------------------------- ;;; Local configuration. ;; Fetching news from the local news server seems sensible. -(setq gnus-select-method `(nntp ,(mdw-config 'nntp-server))) +(setq gnus-select-method + (let ((server (mdw-config 'nntp-server))) + (if server + `(nntp ,server) + '(nnnil "")))) ;; Now load a local configuration file. (load "~/.gnus-local.el")