]> git.friedersdorff.com Git - max/dotfiles.git/blobdiff - emacs/.emacs
Add libreoffice mailcap entries
[max/dotfiles.git] / emacs / .emacs
index a0b34a043c470b37b3d202970f16b259a7f1c3ba..040b49d97e0e2497d5626318721274f74dc11982 100644 (file)
@@ -68,6 +68,7 @@
 (use-package org-evil
   :ensure t)
 
+
 (use-package flycheck
   :ensure t
   :init (global-flycheck-mode))
 (use-package yaml-mode
   :ensure t)
 
-(use-package mu4e
-  :config
-  (setq
-   mu4e-maildir "~/mail"
-   mu4e-get-mail-command
-   (concat "/usr/bin/mbsync -c /home/max/.mbsync/personal.mbsync -a &&"
-          "/usr/bin/mbsync -c /home/max/.mbsync/personal-gmail.mbsync -a &&"
-          "/usr/bin/mbsync -c /home/max/.mbsync/aber.mbsync -a")
-   mu4e-update-interval 60)
-  ; Force mu4e to rename file on moving
-  (setq mu4e-change-filenames-when-moving t)
-  (setq
-   message-send-mail-function 'smtpmail-send-it
-   smtpmail-default-smtp-server "mail.friedersdorff.com"
-   smtpmail-auth-credentials (expand-file-name "~/.authinfo.gpg"))
-  (setq mu4e-drafts-folder "/Drafts")
-  (setq mu4e-contexts
-       `( , (make-mu4e-context
-             :name "Personal"
-             :enter-func (lambda () (mu4e-message "Switch to Peronal context"))
-             :match-func (lambda (msg)
-                           (when msg
-                             (mu4e-message-contact-field-matches
-                              msg (list :to :cc :bcc)
-                              "max\\+?.*@frie\\(dersdorff\\)?.com")))
-             :vars '((user-mail-address . "max@friedersdorff.com")
-                     (user-full-name . "Maximilian Friedersdorff")
-                     (mu4e-sent-folder . "/personal/Sent")
-                     (mu4e-trash-folder . "/personal/Trash")
-                     (smtpmail-smtp-server . "mail.friedersdorff.com")
-                     (smtpmail-smtp-service . 587))),
-           (make-mu4e-context
-            :name "Gmail"
-            :enter-func (lambda () (mu4e-message "Switch to Gmail context"))
-            :match-func (lambda (msg)
-                          (when msg
-                            (mu4e-message-contact-field-matches
-                             msg (list :to :cc :bcc)
-                             "maxf130\\+?.*@gmail.com")))
-            :vars '((user-mail-address . "maxf130@gmail.com")
-                    (user-full-name . "Maximilian Friedersdorff")
-                    (mu4e-sent-folder . "/personal-gmail/Sent")
-                    (mu4e-sent-messages-behaviour . 'delete)
-                    (smtpmail-smtp-server . "smtp.gmail.com")
-                    (smtpmail-smtp-service . 587))),
-           (make-mu4e-context
-            :name "Aber"
-            :enter-func (lambda () (mu4e-message "Switch to Aber context"))
-            :match-func (lambda (msg)
-                          (when msg
-                            (mu4e-message-contact-field-matches
-                             msg (list :to :cc :bcc)
-                             ".*@aber.ac.uk")))
-            :vars '((user-mail-address . "maf54@aber.ac.uk")
-                    (user-full-name . "Maximilian Friedersdorff")
-                    (mu4e-sent-folder . "/aber/Sent")
-                    (mu4e-trash-folder . "/aber/Trash")
-                    (smtpmail-smtp-server . "smtp.office365.com")
-                    (smtpmail-smtp-service . 587))))
-
-       mu4e-context-policy 'pick-first)
-  (setq mu4e-html2text-command "lynx -stdin -dump -force_html")
-  (add-to-list 'mu4e-bookmarks
-              '((concatenate
-                 'string
-                 "flag:unread "
-                 "AND ( "
-                 "maildir:/personal/Inbox OR "
-                 "maildir:/personal/slackware OR "
-                 "maildir:/personal-gmail/Inbox OR "
-                 "maildir:/aber/Inbox "
-                 ")") "Unread Interesting Messages" ?i)
-              )
-  (setq mu4e-view-show-images t)
-  (setq mu4e-compose-crypto-reply-policy 'sign-and-encrypt)
-  (setq mml-secure-openpgp-sign-with-sender t)
-  (setq mml-default-encrypt-method "pgpmime")
-  (add-hook 'mu4e-compose-mode-hook 'mml-secure-message-sign)
-  )
-
-(use-package mu4e-alert
-  :ensure t
-  :config
-  (setq mu4e-alert-interesting-mail-query
-       (concatenate
-        'string
-        "flag:unread "
-        "AND ( "
-        "maildir:/personal/Inbox OR "
-        "maildir:/personal/slackware OR "
-        "maildir:/personal-gmail/Inbox OR "
-        "maildir:/aber/Inbox "
-        ")"))
-  (mu4e-alert-set-default-style 'libnotify)
-  (add-hook 'after-init-hook #'mu4e-alert-enable-notifications))
-
 (use-package jl-encrypt)
 
 (use-package smart-mode-line
   (setq fci-rule-column 80)
   (add-hook 'after-change-major-mode-hook 'fci-mode))
 
+
 ;;;(global-company-mode)
 ;;;(add-hook 'after-init-hook 'global-company-mode)
 
 
 (eval-after-load 'company
   '(add-to-list 'company-backends 'company-jedi))
+
+(eval-after-load 'autoinsert
+  '(define-auto-insert '("\\.org\\'" . "Org header")
+     '(
+       "Hides all but one star and uncollapses everything."
+       "#+STARTUP: hidestars showall\n\n"
+       _)))
+
+(add-hook 'find-file-hook 'auto-insert)
+
+; Sane C formatting
+
+(defun c-lineup-arglist-tabs-only (ignored)
+  "Line up argument lists by tabs, not spaces."
+  (let* ((anchor (c-langelem-pos c-syntactic-element))
+        (column (c-langelem-2nd-pos c-syntactic-element))
+        (offset (- (1+ column) anchor))
+        (steps (floor offset c-basic-offset)))
+    (* (max steps 1)
+       c-basic-offset)))
+
+(add-hook 'c-mode-common-hook
+         (lambda ()
+           ;; Add kernel style
+           (c-add-style
+            "linux-tabs-only"
+            '("linux" (c-offsets-alist
+                       (arglist-cont-nonempty
+                        c-lineup-gcc-asm-reg
+                        c-lineup-arglist-tabs-only))))))
+
+(add-hook 'c-mode-hook
+         (lambda ()
+           (let ((filename (buffer-file-name)))
+             ;; Enable kernel mode for the appropriate files
+             (setq indent-tabs-mode t)
+             (setq show-trailing-whitespace t)
+             (c-set-style "linux-tabs-only")))))