X-Git-Url: https://git.friedersdorff.com/?a=blobdiff_plain;f=emacs%2F.emacs;h=040b49d97e0e2497d5626318721274f74dc11982;hb=50285a8d49aef2f795f7b9a0c286ffa9dea39474;hp=1d258be21a7e9a60593bac23877ec6b259b24f38;hpb=27e23fcde870116ad04b3fbe5e0fc4a18b37f704;p=max%2Fdotfiles.git diff --git a/emacs/.emacs b/emacs/.emacs index 1d258be..040b49d 100644 --- a/emacs/.emacs +++ b/emacs/.emacs @@ -15,14 +15,14 @@ '(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 - (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 @@ -57,6 +57,8 @@ (make-directory "~/.emacs.d/autosaves/" t) (use-package evil + :init + (setq evil-want-C-i-jump nil) :ensure t :config (evil-mode 1)) @@ -66,6 +68,7 @@ (use-package org-evil :ensure t) + (use-package flycheck :ensure t :init (global-flycheck-mode)) @@ -89,20 +92,20 @@ (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-indend-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)) @@ -114,10 +117,82 @@ (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))) -(add-hook 'after-init-hook 'global-company-mode) +(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")))))