;;; -*- lexical-binding: t -*- ;; ;; -------------------------------------------------------------------------------- (require 'cl-lib) (cl-pushnew (file-name-concat ".") load-path :test #'string=) (cl-pushnew (file-name-concat ".." "ll") load-path :test #'string=) (require 'luki-lisp) ;; -------------------------------------------------------------------------------- (-> 'gnus) (-> 'gnus-msg) (-> 'll-close) (-> 'll-scroll) ;; ----------------------------------------------------------------------------- (setq gnus-article-address-banner-alist '(("rms@gnu\\.org\\'" . "\\[\\[\\[ .* \\]\\]\\]\n"))) (setq gnus-article-mode-line-format "%S") (setq gnus-default-article-saver #'gnus-summary-save-in-file) (setq gnus-single-article-buffer t) (setq gnus-treat-hide-signature t) ;; ----------------------------------------------------------------------------- (defun gnus-article-cat-message () (i) (gnus-summary-pipe-message "cat")) ;; ----------------------------------------------------------------------------- ;; headers (setq gnus-treat-fold-headers t) (setq gnus-visible-headers '("^Bcc:" "^Cc:" "^Date:" "^From:" "^Subject:" "^To:")) (defun gnus-article-header-value (hdr) "Get the value of HDR for the current article." (with-current-buffer gnus-original-article-buffer (gnus-fetch-field hdr))) ;; ----------------------------------------------------------------------------- ;; article (post, message) (let ((kmap gnus-article-mode-map)) (set-scroll-keys kmap) (set-close-key kmap) ;; fill (keymap-set kmap "f" #'gnus-article-fill-cited-article) ;; save (keymap-set kmap "a" #'gnus-summary-save-parts) (keymap-set kmap "p" #'gnus-article-cat-message) ;; reply, followup (keymap-set kmap "r" #'gnus-article-followup-with-original) (keymap-set kmap "R" #'gnus-article-reply-with-original) ;; respool (keymap-set kmap "Q" #'gnus-summary-respool-article) (keymap-set kmap "q" #'gnus-summary-respool-query)) ;; ----------------------------------------------------------------------------- ;; mime (let ((kmap gnus-mime-button-map)) (set-scroll-keys kmap) (set-close-key kmap) (keymap-set kmap "d" #'gnus-mime-save-part)) ;; ----------------------------------------------------------------------------- ;; wash (defun gnus-article-wash () (article-translate-strings '( ("Sendt fra min iPad" "") ("Sent using Zoho Mail" "") ("Skickades från E-post för Windows 10" "") ("Skickat från Yahoo Mail för iPhone" "") ("ï" "i") ("ʼ" "'") ("⇒" "→") ("➜" "→") ("⟦" "[") ("⟧" "]") ("> > > >" ">>>>") ("> > >" ">>>") ("> >" ">>") ("colour" "color") ("⛔" "!") (" " " ") ("・" "·") ("‘" "'") ("’" "'") ("“" "\"") ("”" "\"") )) (gnus-article-strip-multiple-blank-lines)) ;; ----------------------------------------------------------------------------- (defun gnus-article-prepare-hook-f () (gnus-with-article-buffer (gnus-article-wash))) (add-hook 'gnus-article-prepare-hook #'gnus-article-prepare-hook-f) ;; ----------------------------------------------------------------------------- (<- 'article) ;; -----------------------------------------------------------------------------