]> git.friedersdorff.com Git - max/dotfiles.git/blobdiff - emacs/.emacs
Add libreoffice mailcap entries
[max/dotfiles.git] / emacs / .emacs
index f0348c8bace0ab80ebb6e96df9a793b64ec5593f..040b49d97e0e2497d5626318721274f74dc11982 100644 (file)
  '(custom-enabled-themes (quote (molokai)))
  '(custom-safe-themes
    (quote
-    ("4e753673a37c71b07e3026be75dc6af3efbac5ce335f3707b7d6a110ecb636a3" "b571f92c9bfaf4a28cb64ae4b4cdbda95241cd62cf07d942be44dc8f46c491f4" default)))
+    ("3c83b3676d796422704082049fc38b6966bcad960f896669dfc21a7a37a748fa" "4e753673a37c71b07e3026be75dc6af3efbac5ce335f3707b7d6a110ecb636a3" "b571f92c9bfaf4a28cb64ae4b4cdbda95241cd62cf07d942be44dc8f46c491f4" default)))
  '(fci-rule-color "#383838")
  '(nrepl-message-colors
    (quote
     ("#CC9393" "#DFAF8F" "#F0DFAF" "#7F9F7F" "#BFEBBF" "#93E0E3" "#94BFF3" "#DC8CC3")))
  '(package-selected-packages
    (quote
-    (yaml-mode minimap js2-mode editorconfig wanderlust evil-magit evil-leader evil-org molokai-theme org-evil flycheck-mypy jinja2 jinja2-mode highlight-indent-guides projectile helm-projectile zenburn-theme helm helm-config use-package flycheck company-jedi company org evil)))
+    (fill-column-indicator column-marker smart-tabs-mode smart-mode-line sml mu4e-alert yaml-mode minimap js2-mode editorconfig wanderlust evil-magit evil-leader evil-org molokai-theme org-evil flycheck-mypy jinja2 jinja2-mode highlight-indent-guides projectile helm-projectile zenburn-theme helm helm-config use-package flycheck company-jedi company org evil)))
  '(pdf-view-midnight-colors (quote ("#DCDCCC" . "#383838")))
  '(vc-annotate-background "#2B2B2B")
  '(vc-annotate-color-map
@@ -68,6 +68,7 @@
 (use-package org-evil
   :ensure t)
 
+
 (use-package flycheck
   :ensure t
   :init (global-flycheck-mode))
   (setq projectile-completion-system 'helm)
   (helm-projectile-on))
 
-(use-package highlight-indent-guides
-  :ensure t
-  :config
-  (add-hook 'prog-mode-hook 'highlight-indent-guides-mode)
-  (setq highlight-indent-guides-method 'character)
-  (setq highlight-indent-guides-character ?\|)
-  (set-face-foreground 'highlight-indent-guides-character-face "darkgray"))
+;(use-package highlight-indent-guides
+;  :ensure t
+;  :config
+;  (add-hook 'prog-mode-hook 'highlight-indent-guides-mode)
+;  (setq highlight-indent-guides-method 'character)
+;  (setq highlight-indent-guides-character ?\|)
+;  (set-face-foreground 'highlight-indent-guides-character-face "darkgray"))
 
 (use-package jinja2-mode
   :ensure t)
 
 (use-package whitespace
   :config
-  (setq whitespace-style '(face lines))
+  (setq whitespace-style '(face tabs tab-mark))
   (setq whitespace-line-column 80)
   (global-whitespace-mode +1))
 
 (use-package yaml-mode
   :ensure t)
 
-(use-package mu4e
+(use-package jl-encrypt)
+
+(use-package smart-mode-line
+  :ensure t
+  :config
+  (sml/setup))
+
+(use-package smart-tabs-mode
+  :ensure t
+  :config
+  (smart-tabs-insinuate 'c))
+
+(use-package fill-column-indicator
+  :ensure t
   :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)
-  (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-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-drafts-folder . "/personal/Drafts")
-                     (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)
-                    (mu4e-drafts-folder . "/personal-gmail/Drafts")
-                    (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)
-                             "maf54\\+?.*@aber.ac.uk")))
-            :vars '((user-mail-address . "maf54@aber.ac.uk")
-                    (user-full-name . "Maximilian Friedersdorff")
-                    (mu4e-sent-folder . "/aber/Sent")
-                    (mu4e-drafts-folder . "/aber/Drafts")
-                    (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"))
+  (setq fci-rule-column 80)
+  (add-hook 'after-change-major-mode-hook 'fci-mode))
 
 
 ;;;(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")))))