emacs: add po-mode, with a hack to exit view-mode
[~bandali/configs] / .emacs.d / init.el
index e029be7..920b018 100644 (file)
@@ -295,7 +295,19 @@ For disabling the behaviour for certain buffers and/or modes."
   :config (pixel-scroll-mode 1))
 
 ;; ask for GPG passphrase in minibuffer
   :config (pixel-scroll-mode 1))
 
 ;; ask for GPG passphrase in minibuffer
-(setq epg-pinentry-mode 'loopback)
+(use-feature epg-config
+  :defer 0.4
+  :custom
+  ((epg-gpg-program (executable-find "gpg"))
+   (epg-pinentry-mode 'loopback)))
+(use-feature epg
+  :after epg-config)
+(use-package pinentry
+  :demand
+  :after (epg server)
+  :config
+  (setq pinentry--socket-dir server-socket-dir)
+  (pinentry-start))
 
 ;; useful libraries
 (require 'cl-lib)
 
 ;; useful libraries
 (require 'cl-lib)
@@ -1213,6 +1225,10 @@ For disabling the behaviour for certain buffers and/or modes."
 
 (use-package go-mode)
 
 
 (use-package go-mode)
 
+(use-package po-mode
+  :hook
+  (po-mode . (lambda () (run-with-timer 0.1 nil 'View-exit))))
+
 \f
 ;;; Theme
 
 \f
 ;;; Theme
 
@@ -1631,6 +1647,11 @@ For disabling the behaviour for certain buffers and/or modes."
    ("s-K" . windmove-swap-states-up)
    ("s-L" . windmove-swap-states-right)))
 
    ("s-K" . windmove-swap-states-up)
    ("s-L" . windmove-swap-states-right)))
 
+(use-package pass
+  :commands pass
+  :bind ("C-c a p" . pass)
+  :hook (pass-mode . View-exit))
+
 \f
 ;;; Email (with Gnus)
 
 \f
 ;;; Email (with Gnus)
 
@@ -1858,6 +1879,7 @@ For disabling the behaviour for certain buffers and/or modes."
 (use-feature gnus-art
   :config
   (setq
 (use-feature gnus-art
   :config
   (setq
+   gnus-buttonized-mime-types '("multipart/\\(signed\\|encrypted\\)")
    gnus-visible-headers
    (concat gnus-visible-headers "\\|^List-Id:\\|^X-RT-Originator:\\|^User-Agent:")
    gnus-sorted-header-list
    gnus-visible-headers
    (concat gnus-visible-headers "\\|^List-Id:\\|^X-RT-Originator:\\|^User-Agent:")
    gnus-sorted-header-list
@@ -1897,19 +1919,24 @@ For disabling the behaviour for certain buffers and/or modes."
 
 (use-feature gnus-msg
   :config
 
 (use-feature gnus-msg
   :config
+  (defvar mab/signature "Amin Bandali
+Free Software Activist | GNU Webmaster & Volunteer
+GPG: BE62 7373 8E61 6D6D 1B3A  08E8 A21A 0202 4881 6103
+https://shemshak.org/~amin/")
   (defvar mab/uw-signature "Amin Bandali, MMath Student
 Cheriton School of Computer Science
 University of Waterloo
   (defvar mab/uw-signature "Amin Bandali, MMath Student
 Cheriton School of Computer Science
 University of Waterloo
-https://shemshak.org/~amin")
+https://shemshak.org/~amin/")
   (defvar mab/csc-signature "Amin Bandali
 Termcom, Computer Science Club
 University of Waterloo
   (defvar mab/csc-signature "Amin Bandali
 Termcom, Computer Science Club
 University of Waterloo
-https://shemshak.org/~amin")
+https://shemshak.org/~amin/")
   (setq gnus-posting-styles
         '((".*"
            (address "amin@shemshak.org")
            (body "\nBest,\n")
   (setq gnus-posting-styles
         '((".*"
            (address "amin@shemshak.org")
            (body "\nBest,\n")
-           (eval (setq a/message-cite-say-hi t)))
+           (signature mab/signature)
+           (eval (setq mab/message-cite-say-hi t)))
           ("nnimap\\+gnu:.*"
            (address "mab@gnu.org")
            (organization "GNU Project")
           ("nnimap\\+gnu:.*"
            (address "mab@gnu.org")
            (organization "GNU Project")
@@ -1956,7 +1983,9 @@ https://shemshak.org/~amin")
 
 (use-feature mm-decode
   :config
 
 (use-feature mm-decode
   :config
-  (setq mm-discouraged-alternatives '("text/html" "text/richtext")))
+  (setq mm-discouraged-alternatives '("text/html" "text/richtext")
+        mm-decrypt-option 'known
+        mm-verify-option 'known))
 
 (use-feature sendmail
   :config
 
 (use-feature sendmail
   :config