+(use-package projectile
+ :ensure t)
+
+(use-package helm-projectile
+ :ensure t
+ :config
+ (projectile-global-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 jinja2-mode
+ :ensure t)
+
+(use-package whitespace
+ :config
+ (setq whitespace-style '(face tabs tab-mark))
+ (setq whitespace-line-column 80)
+ (global-whitespace-mode +1))
+
+(use-package magit
+ :ensure t
+ :config
+ (global-set-key (kbd "C-x g") 'magit-status))
+
+(use-package evil-magit
+ :ensure t)
+
+(use-package editorconfig
+ :ensure t
+ :init
+ (add-hook 'prog-mode-hook (editorconfig-mode 1))
+ (add-hook 'text-mode-hook (editorconfig-mode 1)))
+
+(use-package js2-mode
+ :ensure t
+ :config
+ (add-to-list 'auto-mode-alist '("\\.js\\'" . js2-mode))
+ (setq js2-strict-missing-semi-warning nil))
+
+(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
+ :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 fci-rule-column 80)
+ (add-hook 'after-change-major-mode-hook 'fci-mode))
+
+;;;(global-company-mode)
+;;;(add-hook 'after-init-hook 'global-company-mode)