X-Git-Url: https://git.shemshak.org/gitweb.cgi/~bandali/configs/blobdiff_plain/5df344632add107633464336c536331eaec68953..535c73d96e2cf9adbd2dfa31d87f4b7960359926:/.emacs.d/lisp/bandali-message.el?ds=sidebyside diff --git a/.emacs.d/lisp/bandali-message.el b/.emacs.d/lisp/bandali-message.el index 49b8a98..3ea8643 100644 --- a/.emacs.d/lisp/bandali-message.el +++ b/.emacs.d/lisp/bandali-message.el @@ -1,6 +1,6 @@ ;;; bandali-message.el --- bandali's message.el setup -*- lexical-binding: t; -*- -;; Copyright (C) 2018-2020 Amin Bandali +;; Copyright (C) 2018-2022 Amin Bandali ;; Author: Amin Bandali ;; Keywords: mail, news @@ -44,24 +44,31 @@ (message-yank-prefix "> ") (message-yank-cited-prefix ">") (message-yank-empty-prefix ">") - (message-citation-line-format - (if b/message-cite-say-hi - (concat "Hi %F,\n\n" b/message-cite-style-format) - b/message-cite-style-format))) - "Citation style based on Mozilla Thunderbird's. Use with message-cite-style.") - (csetq + (message-citation-line-format b/message-cite-style-format)) + "Citation style based on Mozilla Thunderbird's. Use with message-cite-style.") + (setq message-elide-ellipsis "[...]\n" ;; message-cite-style 'message-cite-style-bandali message-citation-line-format "%N writes:\n" message-citation-line-function 'message-insert-formatted-citation-line + message-confirm-send t + message-fill-column 70 + message-forward-as-mime t message-kill-buffer-on-exit t - message-send-mail-function 'message-send-mail-with-sendmail - message-sendmail-envelope-from 'header + message-send-mail-function #'smtpmail-send-it message-subscribed-address-functions '(gnus-find-subscribed-addresses) message-dont-reply-to-names - "\\(\\(amin@shemshak\\.org\\)\\|\\(.*@aminb\\.org\\)\\|\\(\\(bandali\\|mab\\|aminb?\\)@gnu\\.org\\)\\|bandali@fsf\\.org\\|\\(a?bandali@\\(csclub\\.\\)?uwaterloo\\.ca\\)\\|amin\\.bandali@savoirfairelinux\\.com\\)") - ;; (require 'company-ebdb) + (mapconcat + #'identity + '("\\(bandali\\|mab\\|aminb?\\)@gnu\\.org" + "bandali@kelar\\.org" + "amin@shemshak\\.org" + "a?bandali@\\(csclub\\.\\)?uwaterloo\\.ca" + "amin\\.bandali@savoirfairelinux\\.com" + "\\(amin\\.\\)?bandali@canonical\\.com" + "bandali@ubuntu\\.com") + "\\|")) ;; (custom-set-faces ;; '(message-header-subject ;; ((t (:foreground "#111" :weight semi-bold)))) @@ -70,72 +77,33 @@ ;; '(message-header-cc ;; ((t (:foreground "#333" :weight normal)))) - ;; footnote - (with-eval-after-load 'footnote - ;; (csetq footnote-start-tag "" - ;; footnote-end-tag "" - ;; footnote-style 'unicode) - (when (featurep 'which-key) - (which-key-add-major-mode-key-based-replacements 'message-mode - "C-c f n" "footnote"))) - - ;; orgalist - (add-hook 'message-mode-hook - (lambda () - ;; work around incompatibility between - ;; orgalist and yasnippet - (yas-minor-mode -1) - (orgalist-mode 1) - (yas-minor-mode 1))) + ;; custom newline & reformat function + (defun b/message-newline-or-asterism (arg) + "Create newlines per my liking or insert asterism if ARG is +non-nil." + (interactive "P") + (if arg + (b/insert-asterism) + (progn + (beginning-of-line) + (delete-region (point) (line-end-position)) + (newline) + (open-line 1)))) + (define-key message-mode-map + (kbd "M-RET") #'b/message-newline-or-asterism) ;; local key bindings - (defvar b/footnote-prefix-map) - (define-prefix-command 'b/footnote-prefix-map) - (define-key message-mode-map (kbd "C-c f n") - 'b/footnote-prefix-map) - (define-key b/footnote-prefix-map (kbd "a") - #'footnote-add-footnote) - (define-key b/footnote-prefix-map (kbd "b") - #'footnote-back-to-message) - (define-key b/footnote-prefix-map (kbd "c") - #'footnote-cycle-style) - (define-key b/footnote-prefix-map (kbd "d") - #'footnote-delete-footnote) - (define-key b/footnote-prefix-map (kbd "g") - #'footnote-goto-footnote) - (define-key b/footnote-prefix-map (kbd "r") - #'footnote-renumber-footnotes) - (define-key b/footnote-prefix-map (kbd "s") - #'footnote-set-style)) + ;; (define-key message-mode-map + ;; [remap next-line] #'mail-abbrev-next-line) + ;; (define-key message-mode-map + ;; [remap end-of-buffer] #'mail-abbrev-end-of-buffer) + ) ;; hooks ;; (add-hook 'message-setup-hook #'mml-secure-message-sign-pgpmime) (add-hook 'message-mode-hook #'flyspell-mode) -(add-hook 'message-mode-hook - (lambda () - ;; (setq-local fill-column b/fill-column - ;; message-fill-column b/fill-column) - (eval-when-compile (defvar company-idle-delay)) - (make-local-variable 'company-idle-delay) - (setq company-idle-delay 0.2))) (add-hook 'message-mode-hook (lambda () (local-unset-key (kbd "C-c C-s")))) -;; (with-eval-after-load 'message-x -;; (csetq -;; message-x-completion-alist -;; '(("\\([rR]esent-\\|[rR]eply-\\)?[tT]o:\\|[bB]?[cC][cC]:" -;; . gnus-harvest-find-address) -;; ((if -;; (boundp -;; (quote message-newgroups-header-regexp)) -;; message-newgroups-header-regexp message-newsgroups-header-regexp) -;; . message-expand-group)))) - -;; (require 'gnus-harvest) -;; (if (featurep 'message-x) -;; (gnus-harvest-install 'message-x) -;; (gnus-harvest-install)) - (provide 'bandali-message) ;;; bandali-message.el ends here