diff options
| -rw-r--r-- | emacs/custom.el | 2 | ||||
| -rw-r--r-- | emacs/init.org | 185 |
2 files changed, 116 insertions, 71 deletions
diff --git a/emacs/custom.el b/emacs/custom.el index 2a7d12e..be16428 100644 --- a/emacs/custom.el +++ b/emacs/custom.el @@ -7,7 +7,7 @@ ["#1c1c1c" "#d78787" "#b9dc92" "#ffffaf" "#87afd7" "#875f87" "#dfafdf" "#d0d0d0"]) '(custom-safe-themes (quote - ("da9b51d7ba5c03589a7cb74f0da136cf4c9b2fdc6c58e48d78f077c8ccca39a9" "6a068d53e7b2bf41ac4a3874ea296b78c3f90cd1fd44d1769812c4c578313539" "8ebd5ccdc11c1e53647c9efc153dbcf0b00a61a519825d2698ce065913cecd35" "7e69e41a60afea0bea1e5f7a89416466db331ec45cbafe47ebec694411c997b8" "3762f105d8ea307cec0ee7cc36dcbce1ab0009ca1ae448fd07e8e8e65647431f" "75080b8936556e23444bd76fcfc042e484a50a403ccb7f36fd190c21f7bf8941" "e2669e7d32201debd97395277167b6a1d93606b9445ebce01b9f878eb980e200" "92eb47cefb2f03abaaaa52c60a0b89845361577c2201d3399d19b944828505f4" "62c1fac02f61eaad07bf39fd461f5c78ee3424ba87a1f5fe91b1bea25475f327" "62f08bc59e1ac24e6df5b5b01fea2da24f2fec201b285ccda9991b7052a3a46a" "ce1c38b72f45eed22f3dfaf7f3f0df4b0b6ed975cc5d2012fb1aad13e8055840" "e8b0224a3bd5da096120bf19c976a29cfe67af41bfe73171348bfe99ee0da62d" "ad1c0d9498ad9344082d47e3a1bb6b75f0d004e0ae8361613b0c9963b23fbb4d" "8e6f5b61626315a98a6b38acfe966800777bf6a1841aa2b812b471772cc17114" "5869e98ef7446c9e2283e5788c0f6e2790676bdb52e9e1e112bb74e2415733c4" "5a3f33eefbcf2a3098bafd22d7ad44358e66c3e844797e7bf9ef552a08dfeb6f" default))) + ("44c996124982462f61fa04eeccb9e3661fbe995489eacd3b0f289e37aed29c98" "613d432fab88d34f9a4451bdbe714a31749de6c5a4d9d0bf0929399ad50f1ac6" "03f4de3e9d5df2d34dc4085ea2fe4906edf6377bf02eef7eb3430b97155c1398" "c2ea64b5a0d8042da7ff3979fc03e5cc13fc1e4bc839c5ab464f69c2dada0804" "1c79d160e207fcd2193beaf95bf25d55e15f3237f6943cc04f516e7ef600bdd7" "6a32c414a3d1a493d534a28e7814a4d6055bc607bbf45d57196cd6ee9215461b" "da9b51d7ba5c03589a7cb74f0da136cf4c9b2fdc6c58e48d78f077c8ccca39a9" "6a068d53e7b2bf41ac4a3874ea296b78c3f90cd1fd44d1769812c4c578313539" "8ebd5ccdc11c1e53647c9efc153dbcf0b00a61a519825d2698ce065913cecd35" "7e69e41a60afea0bea1e5f7a89416466db331ec45cbafe47ebec694411c997b8" "3762f105d8ea307cec0ee7cc36dcbce1ab0009ca1ae448fd07e8e8e65647431f" "75080b8936556e23444bd76fcfc042e484a50a403ccb7f36fd190c21f7bf8941" "e2669e7d32201debd97395277167b6a1d93606b9445ebce01b9f878eb980e200" "92eb47cefb2f03abaaaa52c60a0b89845361577c2201d3399d19b944828505f4" "62c1fac02f61eaad07bf39fd461f5c78ee3424ba87a1f5fe91b1bea25475f327" "62f08bc59e1ac24e6df5b5b01fea2da24f2fec201b285ccda9991b7052a3a46a" "ce1c38b72f45eed22f3dfaf7f3f0df4b0b6ed975cc5d2012fb1aad13e8055840" "e8b0224a3bd5da096120bf19c976a29cfe67af41bfe73171348bfe99ee0da62d" "ad1c0d9498ad9344082d47e3a1bb6b75f0d004e0ae8361613b0c9963b23fbb4d" "8e6f5b61626315a98a6b38acfe966800777bf6a1841aa2b812b471772cc17114" "5869e98ef7446c9e2283e5788c0f6e2790676bdb52e9e1e112bb74e2415733c4" "5a3f33eefbcf2a3098bafd22d7ad44358e66c3e844797e7bf9ef552a08dfeb6f" default))) '(delete-selection-mode nil) '(electric-indent-mode t) '(magit-commit-arguments (quote ("--all" "--verbose" "--signoff"))) diff --git a/emacs/init.org b/emacs/init.org index 824b3dd..a2eb899 100644 --- a/emacs/init.org +++ b/emacs/init.org @@ -1043,12 +1043,11 @@ the configuration. (require 'smtpmail) - (setq smtpmail-starttls-credentials - '((server port nil nil)) - smtpmail-auth-credentials - (expand-file-name "~/.authinfo.gpg") + (setq smtpmail-starttls-credentials '((server port nil nil)) + smtpmail-auth-credentials (expand-file-name "~/.authinfo.gpg") smtpmail-default-smtp-server server smtpmail-smtp-server server + message-send-mail-function 'smtpmail-send-it smtpmail-smtp-service port)) ; https://www.reddit.com/r/emacs/comments/47t9ec/share_your_mu4econtext_configs/d0fsih6 @@ -1065,66 +1064,116 @@ the configuration. (defun suse-refile-folder (key) "Returns the refile folder for the given SUSE account in the KEY arg" - (concat "/" key "/Archives/" + + (if (string= key "susecom") + (setq archives-dir "/Arxiu/") + (setq archives-dir "/Archives/")) + (concat "/" key archives-dir (format-time-string "%Y" (current-time)))) #+END_SRC +Depending on the context, it's better a signature or another: + +#+BEGIN_SRC elisp +(defun mssola-mu4e-signature (key) + "Returns a string containing the mail signature for the given KEY." + + (if (string= key "ajuntament") + (concat + "Miquel Sabaté Solà,\n" + "Regidor de Joventut, Participació ciutadana i Transparència\n" + "\n" + "Ajuntament de Capellades\n" + "Carrer de Ramon Godó, 9, 08786 - Capellades\n" + "Tel. 93 801 10 01 – mòbil 677 12 72 07\n" + "sabatesm@capellades.cat\n") + (concat + "Miquel Sabaté Solà,\n" + "PGP: 4096R / 1BA5 3C7A C93D CA2A CFDF DA97 96BE 8C6F D89D 6565\n"))) +#+END_SRC + Now it's time to define the different contexts that I have. Defining contexts this way is relatively new (since mu 0.9.16). #+BEGIN_SRC elisp - (setq mu4e-contexts - `( - ;; GMail - ,(make-mu4e-context - :name "gmail" - :enter-func (lambda () - (mu4e-message "Switching to gmail.com") - (mssola-smtp "smtp.gmail.com" 587)) - :match-func (lambda (msg) - (when msg - (mu4e-message-maildir-matches msg "^/gmail"))) - :vars '( - (user-mail-address . "mikisabate@gmail.com") - (mu4e-reply-to-address . "mikisabate@gmail.com") - (mu4e-drafts-folder . "/gmail/Drafts") - (mu4e-sent-folder . "/gmail/Sent") - (mu4e-refile-folder . "/gmail/All") - (mu4e-trash-folder . "/gmail/Trash"))) - - ;; suse.com - ,(make-mu4e-context - :name "comsuse" - :enter-func (lambda () - (mu4e-message "Switching to suse.com") - (mssola-smtp "smtp.novell.com" 26)) - :match-func (lambda (msg) - (when msg - (mu4e-message-maildir-matches msg "^/susecom"))) - :vars `( - (user-mail-address . "msabate@suse.com") - (mu4e-reply-to-address . "msabate@suse.com") - (mu4e-drafts-folder . "/susecom/Drafts") - (mu4e-sent-folder . "/susecom/Sent") - (mu4e-refile-folder . ,(suse-refile-folder "susecom")) - (mu4e-trash-folder . "/susecom/Trash"))) - - ;; suse.de - ,(make-mu4e-context - :name "desuse" - :enter-func (lambda () - (mu4e-message "Switching to suse.de") - (mssola-smtp "imap.suse.de" 587)) - :match-func (lambda (msg) - (when msg - (mu4e-message-maildir-matches msg "^/susede"))) - :vars `( - (user-mail-address . "msabate@suse.de") - (mu4e-reply-to-address . "msabate@suse.de") - (mu4e-drafts-folder . "/susede/Drafts") - (mu4e-sent-folder . "/susede/Sent") - (mu4e-refile-folder . ,(suse-refile-folder "susede")) - (mu4e-trash-folder . "/susede/Trash"))))) +(setq mu4e-contexts + `( + ;; GMail + ,(make-mu4e-context + :name "gmail" + :enter-func (lambda () + (mu4e-message "Switching to gmail.com") + (setq mu4e-compose-signature (mssola-mu4e-signature "gmail")) + (setq mu4e-sent-messages-behavior 'delete) + (mssola-smtp "smtp.gmail.com" 587)) + :match-func (lambda (msg) + (when msg + (mu4e-message-maildir-matches msg "^/gmail"))) + :vars '( + (user-mail-address . "mikisabate@gmail.com") + (mu4e-reply-to-address . "mikisabate@gmail.com") + (mu4e-drafts-folder . "/gmail/Drafts") + (mu4e-sent-folder . "/gmail/Sent") + (mu4e-refile-folder . "/gmail/All") + (mu4e-trash-folder . "/gmail/Trash"))) + + ;; City hall + ,(make-mu4e-context + :name "ajuntament" + :enter-func (lambda () + (mu4e-message "Switching to mail.diba.cat") + (setq mu4e-compose-signature (mssola-mu4e-signature "ajuntament")) + (setq mu4e-sent-messages-behavior 'sent) + (mssola-smtp "mail.diba.cat" 587) + (setq smtpmail-local-domain "capellades.cat")) + :match-func (lambda (msg) + (when msg + (mu4e-message-maildir-matches msg "^/ajuntament"))) + :vars '( + (user-mail-address . "sabatesm@capellades.cat") + (mu4e-reply-to-address . "sabatesm@capellades.cat") + (mu4e-drafts-folder . "/ajuntament/Esborranys") + (mu4e-sent-folder . "/ajuntament/Elements enviats") + (mu4e-refile-folder . "/ajuntament/Arxiu") + (mu4e-trash-folder . "/ajuntament/Elements suprimits"))) + + ;; suse.com + ,(make-mu4e-context + :name "comsuse" + :enter-func (lambda () + (mu4e-message "Switching to suse.com") + (setq mu4e-compose-signature (mssola-mu4e-signature "comsuse")) + (setq mu4e-sent-messages-behavior 'sent) + (mssola-smtp "smtp.office365.com" 587)) + :match-func (lambda (msg) + (when msg + (mu4e-message-maildir-matches msg "^/susecom"))) + :vars `( + (user-mail-address . "msabate@suse.com") + (mu4e-reply-to-address . "msabate@suse.com") + (mu4e-drafts-folder . "/susecom/Esborranys") + (mu4e-sent-folder . "/susecom/Elements enviats") + (mu4e-refile-folder . ,(suse-refile-folder "susecom")) + (mu4e-trash-folder . "/susecom/Elements suprimits"))) + + ;; suse.de + ,(make-mu4e-context + :name "desuse" + :enter-func (lambda () + (mu4e-message "Switching to suse.de") + (setq mu4e-compose-signature (mssola-mu4e-signature "desuse")) + (setq mu4e-sent-messages-behavior 'sent) + (mssola-smtp "imap.suse.de" 587)) + :match-func (lambda (msg) + (when msg + (mu4e-message-maildir-matches msg "^/susede"))) + :vars `( + (user-mail-address . "msabate@suse.de") + (mu4e-reply-to-address . "msabate@suse.de") + (mu4e-drafts-folder . "/susede/Drafts") + (mu4e-sent-folder . "/susede/Sent") + (mu4e-refile-folder . ,(suse-refile-folder "susede")) + (mu4e-trash-folder . "/susede/Trash"))))) #+END_SRC If mu4e cannot figure things out, ask me. @@ -1150,22 +1199,12 @@ Setting my bookmarks #+BEGIN_SRC elisp (setq mu4e-bookmarks - '(("maildir:/gmail/inbox OR maildir:/susecom/inbox OR maildir:/susede/inbox" "Inbox Folders" ?n) - ("maildir:/gmail/Sent OR maildir:/susecom/Sent OR maildir:/susede/Sent" "Sent Folders" ?s) + '(("maildir:/gmail/inbox OR maildir:/susecom/inbox OR maildir:/susede/inbox OR maildir:/ajuntament/inbox" "Inbox Folders" ?n) + ("maildir:/gmail/Sent OR maildir:/susecom/Elements enviats OR maildir:/susede/Sent OR maildir:/ajuntament/Elements enviats" "Sent Folders" ?s) ("flag:unread AND NOT flag:trashed" "Unread messages" ?u) ("date:today..now" "Today's messages" ?t))) #+END_SRC -The following signature looks alright regardless of whether the client supports -format=flowed or not. - -#+BEGIN_SRC elisp - (setq mu4e-compose-signature - (concat - "Miquel Sabaté Solà,\n" - "PGP: 4096R / 1BA5 3C7A C93D CA2A CFDF DA97 96BE 8C6F D89D 6565\n")) -#+END_SRC - Sign outgoing emails always. #+BEGIN_SRC elisp @@ -1307,7 +1346,7 @@ I want desktop notifications when receiving email. (add-hook 'after-init-hook #'mu4e-alert-enable-mode-line-display) (setq mu4e-alert-interesting-mail-query (concat - "(maildir:/gmail/inbox OR maildir:/susecom/inbox OR maildir:/susede/inbox) " + "(maildir:/gmail/inbox OR maildir:/susecom/inbox OR maildir:/susede/inbox OR maildir:/ajuntament/inbox) " "AND flag:unread AND NOT flag:trashed")) (setq mu4e-alert-email-notification-types '(count))) @@ -1437,6 +1476,12 @@ And now let's set all the related settings. org-export-htmlize-output-type 'css) #+END_SRC +Make sure to use the proper template when exporting to ODT: + +#+BEGIN_SRC elisp +(setq org-odt-styles-file "~/Documents/Templates/mssola.ott") +#+END_SRC + Sometimes it's useful to export to LaTeX. That is, when you are simply writing a quick document that will end up being converted into LaTeX and finally into PDF: |
