X-Git-Url: https://git.friedersdorff.com/?a=blobdiff_plain;f=emacs%2F.emacs;h=040b49d97e0e2497d5626318721274f74dc11982;hb=50285a8d49aef2f795f7b9a0c286ffa9dea39474;hp=c1f6a1b9c4d7f7e6e49a19a26f96dec6802e78ce;hpb=e3277cd1c019d8ed5bb4ff28896b7ce0dbb10362;p=max%2Fdotfiles.git diff --git a/emacs/.emacs b/emacs/.emacs index c1f6a1b..040b49d 100644 --- a/emacs/.emacs +++ b/emacs/.emacs @@ -8,15 +8,44 @@ ;; If there is more than one, they won't work right. '(ansi-color-faces-vector [default default default italic underline success warning error]) + '(ansi-color-names-vector + ["#212526" "#ff4b4b" "#b4fa70" "#fce94f" "#729fcf" "#e090d7" "#8cc4ff" "#eeeeec"]) '(auto-save-file-name-transforms (quote ((".*" "~/.emacs.d/autosaves/\\1" t)))) '(backup-directory-alist (quote ((".*" . "~/.emacs.d/backups/")))) - '(custom-enabled-themes (quote (zenburn))) + '(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 - (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 + (quote + ((20 . "#BC8383") + (40 . "#CC9393") + (60 . "#DFAF8F") + (80 . "#D0BF8F") + (100 . "#E0CF9F") + (120 . "#F0DFAF") + (140 . "#5F7F5F") + (160 . "#7F9F7F") + (180 . "#8FB28F") + (200 . "#9FC59F") + (220 . "#AFD8AF") + (240 . "#BFEBBF") + (260 . "#93E0E3") + (280 . "#6CA0A3") + (300 . "#7CB8BB") + (320 . "#8CD0D3") + (340 . "#94BFF3") + (360 . "#DC8CC3"))) t) + '(vc-annotate-very-old-color "#DC8CC3")) (custom-set-faces ;; custom-set-faces was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. @@ -28,21 +57,142 @@ (make-directory "~/.emacs.d/autosaves/" t) (use-package evil + :init + (setq evil-want-C-i-jump nil) :ensure t :config (evil-mode 1)) +(use-package org + :ensure t) + +(use-package org-evil + :ensure t) + + (use-package flycheck :ensure t :init (global-flycheck-mode)) +(use-package flycheck-mypy + :ensure t) + (use-package helm-config :ensure helm :config (helm-mode 1) (global-set-key (kbd "M-x") 'helm-M-x)) +(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) -(add-hook 'after-init-hook 'global-company-mode) +(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 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) + +(add-hook 'prog-mode-hook 'electric-pair-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")))))