General cleanup (again)
This commit is contained in:
parent
53c94b8273
commit
f9f0b9a2e4
11 changed files with 84 additions and 85 deletions
|
@ -12,7 +12,7 @@
|
||||||
(add-hook 'quickrun/mode-hook 'linum-mode)
|
(add-hook 'quickrun/mode-hook 'linum-mode)
|
||||||
:config
|
:config
|
||||||
(setq quickrun-focus-p nil)
|
(setq quickrun-focus-p nil)
|
||||||
(add-to-list 'quickrun-file-alist '("\\.gvy$" . "groovy")))
|
(push '("\\.gvy$" . "groovy") quickrun-file-alist))
|
||||||
|
|
||||||
(use-package repl-toggle
|
(use-package repl-toggle
|
||||||
:commands (rtog/toggle-repl rtog/add-repl)
|
:commands (rtog/toggle-repl rtog/add-repl)
|
||||||
|
|
|
@ -44,5 +44,17 @@
|
||||||
(narf--ert-pre)
|
(narf--ert-pre)
|
||||||
(ert-run-tests-interactively t))
|
(ert-run-tests-interactively t))
|
||||||
|
|
||||||
|
;;;###autoload
|
||||||
|
(defun narf/elisp-auto-compile ()
|
||||||
|
(when (narf/is-recompilable-p)
|
||||||
|
(narf:compile-el)))
|
||||||
|
|
||||||
|
;;;###autoload
|
||||||
|
(defun narf/elisp-inf-ielm ()
|
||||||
|
(ielm)
|
||||||
|
(let ((buf (current-buffer)))
|
||||||
|
(bury-buffer)
|
||||||
|
(pop-to-buffer buf)))
|
||||||
|
|
||||||
(provide 'defuns-lisp)
|
(provide 'defuns-lisp)
|
||||||
;;; defuns-lisp.el ends here
|
;;; defuns-lisp.el ends here
|
||||||
|
|
|
@ -5,13 +5,12 @@
|
||||||
;; TODO Set up emacs task runners for fruitstrap
|
;; TODO Set up emacs task runners for fruitstrap
|
||||||
(use-package swift-mode
|
(use-package swift-mode
|
||||||
:mode "\\.swift$"
|
:mode "\\.swift$"
|
||||||
:init
|
:init (add-hook 'swift-mode-hook 'flycheck-mode)
|
||||||
(add-hook! swift-mode 'flycheck-mode)
|
|
||||||
:config
|
:config
|
||||||
(after! flycheck (add-to-list 'flycheck-checkers 'swift))
|
(after! flycheck (push 'swift flycheck-checkers))
|
||||||
(after! company
|
|
||||||
(require 'company-sourcekit)
|
(require 'company-sourcekit)
|
||||||
(define-company-backend! swift-mode (sourcekit yasnippet))))
|
(define-company-backend! swift-mode (sourcekit yasnippet)))
|
||||||
|
|
||||||
|
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -3,9 +3,8 @@
|
||||||
(use-package cmake-mode
|
(use-package cmake-mode
|
||||||
:mode "CMakeLists\\.txt$"
|
:mode "CMakeLists\\.txt$"
|
||||||
:config
|
:config
|
||||||
(after! company
|
|
||||||
(require 'company-cmake)
|
(require 'company-cmake)
|
||||||
(define-company-backend! cmake-mode (cmake yasnippet))))
|
(define-company-backend! cmake-mode (cmake yasnippet)))
|
||||||
|
|
||||||
(use-package glsl-mode
|
(use-package glsl-mode
|
||||||
:mode ("\\.glsl\\'" "\\.vert\\'" "\\.frag\\'" "\\.geom\\'"))
|
:mode ("\\.glsl\\'" "\\.vert\\'" "\\.frag\\'" "\\.geom\\'"))
|
||||||
|
@ -43,6 +42,10 @@
|
||||||
(sp-local-pair "/**" "*/" :post-handlers '(("||\n[i]" "RET") ("||\n[i]" "SPC")))
|
(sp-local-pair "/**" "*/" :post-handlers '(("||\n[i]" "RET") ("||\n[i]" "SPC")))
|
||||||
(sp-local-pair "/*!" "*/" :post-handlers '(("||\n[i]" "RET") ("[d-1]< | " "SPC"))))
|
(sp-local-pair "/*!" "*/" :post-handlers '(("||\n[i]" "RET") ("[d-1]< | " "SPC"))))
|
||||||
|
|
||||||
|
;; TODO Clang is *really* slow in larger projects, maybe replace it with
|
||||||
|
;; irony-mode or ycmd?
|
||||||
|
(define-company-backend! c-mode-common (c-headers clang xcode))
|
||||||
|
|
||||||
;; C/C++ Settings
|
;; C/C++ Settings
|
||||||
(add-hook! (c-mode c++-mode)
|
(add-hook! (c-mode c++-mode)
|
||||||
(electric-indent-local-mode +1)
|
(electric-indent-local-mode +1)
|
||||||
|
@ -50,11 +53,10 @@
|
||||||
(add-hook! c++-mode 'narf|init-c++-C11-highlights)
|
(add-hook! c++-mode 'narf|init-c++-C11-highlights)
|
||||||
|
|
||||||
(when IS-MAC
|
(when IS-MAC
|
||||||
(after! company
|
|
||||||
(setq-default company-c-headers-path-system
|
(setq-default company-c-headers-path-system
|
||||||
(append '("/usr/include/" "/usr/local/include")
|
(append '("/usr/include/" "/usr/local/include")
|
||||||
(f-directories "/usr/include/c++/")
|
(f-directories "/usr/include/c++/")
|
||||||
(f-directories "/usr/local/include/c++/"))))
|
(f-directories "/usr/local/include/c++/")))
|
||||||
(after! flycheck
|
(after! flycheck
|
||||||
(setq-default flycheck-clang-include-path '("/usr/local/include")
|
(setq-default flycheck-clang-include-path '("/usr/local/include")
|
||||||
flycheck-gcc-include-path '("/usr/local/include"))))
|
flycheck-gcc-include-path '("/usr/local/include"))))
|
||||||
|
@ -63,11 +65,6 @@
|
||||||
(add-hook! c++-mode (setq flycheck-clang-language-standard "c++11"
|
(add-hook! c++-mode (setq flycheck-clang-language-standard "c++11"
|
||||||
flycheck-clang-standard-library "libc++")))
|
flycheck-clang-standard-library "libc++")))
|
||||||
|
|
||||||
(after! company
|
|
||||||
;; TODO Clang is *really* slow in larger projects, maybe replace it with
|
|
||||||
;; irony-mode or ycmd?
|
|
||||||
(define-company-backend! c-mode-common (c-headers clang xcode)))
|
|
||||||
|
|
||||||
;; Fix enum and C++11 lambda indentation
|
;; Fix enum and C++11 lambda indentation
|
||||||
(defadvice c-lineup-arglist (around c-lineup-arglist-indent-fix activate)
|
(defadvice c-lineup-arglist (around c-lineup-arglist-indent-fix activate)
|
||||||
"Improve indentation of continued C++11 lambda function opened as argument."
|
"Improve indentation of continued C++11 lambda function opened as argument."
|
||||||
|
|
|
@ -3,17 +3,16 @@
|
||||||
(use-package csharp-mode
|
(use-package csharp-mode
|
||||||
:functions (csharp-log)
|
:functions (csharp-log)
|
||||||
:mode "\\.cs$"
|
:mode "\\.cs$"
|
||||||
:init (add-hook! csharp-mode 'flycheck-mode)
|
:init (add-hook 'csharp-mode-hook 'flycheck-mode))
|
||||||
:config (require 'omnisharp))
|
|
||||||
|
|
||||||
;; unity shaders
|
;; unity shaders
|
||||||
(use-package shader-mode :mode "\\.shader$")
|
(use-package shader-mode :mode "\\.shader$")
|
||||||
|
|
||||||
(setq omnisharp-auto-complete-want-documentation nil
|
|
||||||
omnisharp-server-executable-path (concat narf-ext-dir "/OmniSharp.exe"))
|
|
||||||
|
|
||||||
(use-package omnisharp
|
(use-package omnisharp
|
||||||
:defer t
|
:commands (omnisharp-mode)
|
||||||
|
:preface
|
||||||
|
(setq omnisharp-auto-complete-want-documentation nil
|
||||||
|
omnisharp-server-executable-path (concat narf-ext-dir "/OmniSharp.exe"))
|
||||||
:when (file-exists-p omnisharp-server-executable-path)
|
:when (file-exists-p omnisharp-server-executable-path)
|
||||||
:init
|
:init
|
||||||
(add-hook! csharp-mode '(emr-initialize omnisharp-mode))
|
(add-hook! csharp-mode '(emr-initialize omnisharp-mode))
|
||||||
|
@ -25,15 +24,15 @@
|
||||||
"ts" (λ! (omnisharp-unit-test "single"))
|
"ts" (λ! (omnisharp-unit-test "single"))
|
||||||
"ta" (λ! (omnisharp-unit-test "all"))))
|
"ta" (λ! (omnisharp-unit-test "all"))))
|
||||||
|
|
||||||
(after! company
|
|
||||||
(define-company-backend! csharp-mode (omnisharp))
|
(define-company-backend! csharp-mode (omnisharp))
|
||||||
(add-hook! csharp-mode 'turn-on-eldoc-mode))
|
(add-hook! csharp-mode 'turn-on-eldoc-mode)
|
||||||
|
|
||||||
;; Map all refactor commands (see emr)
|
;; Map all refactor commands (see emr)
|
||||||
(mapc (lambda (x)
|
(mapc (lambda (x)
|
||||||
(let ((command-name (car x))
|
(let ((command-name (car x))
|
||||||
(title (cadr x)))
|
(title (cadr x)))
|
||||||
(emr-declare-command (intern (format "omnisharp-%s" (symbol-name command-name)))
|
(emr-declare-command
|
||||||
|
(intern (format "omnisharp-%s" (symbol-name command-name)))
|
||||||
:title title :modes 'omnisharp-mode)))
|
:title title :modes 'omnisharp-mode)))
|
||||||
'((find-usages "find usages")
|
'((find-usages "find usages")
|
||||||
(find-implementations "find implementations")
|
(find-implementations "find implementations")
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
(use-package helm-go-package :defer t))
|
(use-package helm-go-package :defer t))
|
||||||
|
|
||||||
(use-package go-eldoc
|
(use-package go-eldoc
|
||||||
:config (add-hook! go-mode 'go-eldoc-setup))
|
:config (add-hook 'go-mode-hook 'go-eldoc-setup))
|
||||||
|
|
||||||
(use-package company-go
|
(use-package company-go
|
||||||
:config
|
:config
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
(map! :map js2-mode-map :m "gQ" 'web-beautify-js))
|
(map! :map js2-mode-map :m "gQ" 'web-beautify-js))
|
||||||
|
|
||||||
(use-package js2-refactor
|
(use-package js2-refactor
|
||||||
:init (add-hook! js2-mode 'emr-initialize)
|
:init (add-hook 'js2-mode-hook 'emr-initialize)
|
||||||
:config
|
:config
|
||||||
(require 'emr)
|
(require 'emr)
|
||||||
(mapc (lambda (x)
|
(mapc (lambda (x)
|
||||||
|
@ -34,7 +34,8 @@
|
||||||
(t (if region-p
|
(t (if region-p
|
||||||
(lambda () (use-region-p))
|
(lambda () (use-region-p))
|
||||||
(lambda () (not (use-region-p)))))))
|
(lambda () (not (use-region-p)))))))
|
||||||
(emr-declare-command (intern (format "js2r-%s" (symbol-name command-name)))
|
(emr-declare-command
|
||||||
|
(intern (format "js2r-%s" (symbol-name command-name)))
|
||||||
:title title :modes 'js2-mode :predicate predicate)))
|
:title title :modes 'js2-mode :predicate predicate)))
|
||||||
'((extract-function "extract function" t)
|
'((extract-function "extract function" t)
|
||||||
(extract-method "extract method" t)
|
(extract-method "extract method" t)
|
||||||
|
|
|
@ -3,24 +3,15 @@
|
||||||
(add-hook! emacs-lisp-mode '(turn-on-eldoc-mode flycheck-mode))
|
(add-hook! emacs-lisp-mode '(turn-on-eldoc-mode flycheck-mode))
|
||||||
|
|
||||||
;; Pop-up REPL
|
;; Pop-up REPL
|
||||||
(defun narf-inf-ielm ()
|
(define-repl! emacs-lisp-mode narf/elisp-inf-ielm)
|
||||||
(ielm)
|
|
||||||
(let ((buf (current-buffer)))
|
|
||||||
(bury-buffer)
|
|
||||||
(pop-to-buffer buf)))
|
|
||||||
(define-repl! emacs-lisp-mode narf-inf-ielm)
|
|
||||||
|
|
||||||
;; [pedantry intensifies]
|
;; 'Emacs Lisp' is too long [pedantry intensifies]
|
||||||
(defadvice emacs-lisp-mode (after emacs-lisp-mode-rename-modeline activate)
|
(defadvice emacs-lisp-mode (after emacs-lisp-mode-rename-modeline activate)
|
||||||
(setq mode-name "Elisp"))
|
(setq mode-name "Elisp"))
|
||||||
|
|
||||||
(defun narf-elisp-auto-compile ()
|
|
||||||
(when (narf/is-recompilable-p)
|
|
||||||
(narf:compile-el)))
|
|
||||||
|
|
||||||
(add-hook! emacs-lisp-mode
|
(add-hook! emacs-lisp-mode
|
||||||
(add-hook 'before-save-hook 'delete-trailing-whitespace nil t)
|
(add-hook 'before-save-hook 'delete-trailing-whitespace nil t)
|
||||||
(add-hook 'after-save-hook 'narf-elisp-auto-compile nil t)
|
(add-hook 'after-save-hook 'narf/elisp-auto-compile nil t)
|
||||||
|
|
||||||
(let ((header-face 'font-lock-constant-face))
|
(let ((header-face 'font-lock-constant-face))
|
||||||
(add-to-list 'imenu-generic-expression
|
(add-to-list 'imenu-generic-expression
|
||||||
|
@ -59,17 +50,18 @@
|
||||||
(cons disp (cons k v)))))
|
(cons disp (cons k v)))))
|
||||||
|
|
||||||
(font-lock-add-keywords
|
(font-lock-add-keywords
|
||||||
'emacs-lisp-mode
|
'emacs-lisp-mode `(("(\\(lambda\\)"
|
||||||
`(("(\\(lambda\\)"
|
|
||||||
(1 (narf/show-as ?λ)))
|
(1 (narf/show-as ?λ)))
|
||||||
;; Highlight narf macros (macros are fontified in emacs 25+)
|
;; Highlight narf macros (macros are fontified in emacs 25+)
|
||||||
(,(concat
|
(,(concat
|
||||||
"(\\("
|
"(\\("
|
||||||
(regexp-opt '("λ" "in" "map" "after" "exmap" "shut-up"
|
(regexp-opt '("λ" "in" "map" "after" "exmap" "shut-up" "add-hook"
|
||||||
"add-hook" "associate" "open-with" "define-repl"
|
"associate" "open-with" "define-repl"
|
||||||
"define-builder" "narf-space-setup" "define-env-command"
|
"define-builder" "narf-space-setup"
|
||||||
"define-text-object" "add-yas-minor-mode" "define-docset"
|
"define-env-command" "define-text-object"
|
||||||
"define-org-link!" "define-company-backend" "define-org-section"))
|
"add-yas-minor-mode" "define-docset"
|
||||||
|
"define-org-link!" "define-company-backend"
|
||||||
|
"define-org-section"))
|
||||||
"!\\)")
|
"!\\)")
|
||||||
(1 font-lock-keyword-face append))
|
(1 font-lock-keyword-face append))
|
||||||
;; Ert
|
;; Ert
|
||||||
|
|
|
@ -10,10 +10,11 @@
|
||||||
:config (add-hook! rust-mode 'flycheck-mode))
|
:config (add-hook! rust-mode 'flycheck-mode))
|
||||||
|
|
||||||
(use-package racer
|
(use-package racer
|
||||||
:when (file-exists-p (concat narf-ext-dir "/racer"))
|
:preface
|
||||||
:config
|
|
||||||
(setq racer-cmd (concat narf-ext-dir "/racer")
|
(setq racer-cmd (concat narf-ext-dir "/racer")
|
||||||
racer-rust-src-path (concat narf-ext-dir "/rust/src/"))
|
racer-rust-src-path (concat narf-ext-dir "/rust/src/"))
|
||||||
|
:when (file-exists-p racer-cmd)
|
||||||
|
:config
|
||||||
(map! :map rust-mode-map :m "gd" 'racer-find-definition)
|
(map! :map rust-mode-map :m "gd" 'racer-find-definition)
|
||||||
|
|
||||||
;; TODO Unit test keybinds
|
;; TODO Unit test keybinds
|
||||||
|
|
|
@ -9,22 +9,21 @@
|
||||||
(associate! sh-mode :match "/\\.?z\\(sh/.*\\|profile\\|login\\|logout\\|shrc\\|shenv\\)$")
|
(associate! sh-mode :match "/\\.?z\\(sh/.*\\|profile\\|login\\|logout\\|shrc\\|shenv\\)$")
|
||||||
(associate! sh-mode :match "/\\.?bash\\(/.*\\|rc\\|_profile\\)$")
|
(associate! sh-mode :match "/\\.?bash\\(/.*\\|rc\\|_profile\\)$")
|
||||||
(after! sh-script
|
(after! sh-script
|
||||||
;; [pedantry intensifies]
|
(add-hook 'sh-mode-hook 'flycheck-mode)
|
||||||
(defadvice sh-mode (after sh-mode-rename-modeline activate)
|
(add-hook 'sh-mode-hook 'narf|sh-extra-font-lock-activate) ; Fontify variables in strings
|
||||||
(setq mode-name "sh"))
|
|
||||||
|
|
||||||
(setq sh-indent-after-continuation 'always)
|
|
||||||
|
|
||||||
(define-repl! sh-mode narf/inf-shell)
|
|
||||||
(add-hook! sh-mode 'flycheck-mode)
|
|
||||||
(add-hook! sh-mode
|
(add-hook! sh-mode
|
||||||
(electric-indent-local-mode +1)
|
(electric-indent-local-mode +1)
|
||||||
(setq narf-electric-indent-words '("else" "elif" "fi" "done")))
|
(setq narf-electric-indent-words '("else" "elif" "fi" "done")))
|
||||||
|
|
||||||
(require 'company-shell)
|
(define-repl! sh-mode narf/inf-shell)
|
||||||
|
|
||||||
;; Fontify variables in strings
|
(setq sh-indent-after-continuation 'always)
|
||||||
(add-hook 'sh-mode-hook 'narf|sh-extra-font-lock-activate)
|
|
||||||
|
;; [pedantry intensifies]
|
||||||
|
(defadvice sh-mode (after sh-mode-rename-modeline activate)
|
||||||
|
(setq mode-name "sh"))
|
||||||
|
|
||||||
|
(require 'company-shell)
|
||||||
|
|
||||||
(sp-with-modes '(sh-mode)
|
(sp-with-modes '(sh-mode)
|
||||||
(sp-local-pair "case" "" :when '(("SPC")) :post-handlers '((:add narf/sp-insert-yasnippet)) :actions '(insert))
|
(sp-local-pair "case" "" :when '(("SPC")) :post-handlers '((:add narf/sp-insert-yasnippet)) :actions '(insert))
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
(use-package sass-mode
|
(use-package sass-mode
|
||||||
:mode "\\.sass$"
|
:mode "\\.sass$"
|
||||||
:config
|
:config
|
||||||
(after! company (define-company-backend! sass-mode (css))))
|
(define-company-backend! sass-mode (css)))
|
||||||
|
|
||||||
(use-package scss-mode
|
(use-package scss-mode
|
||||||
:mode "\\.scss$"
|
:mode "\\.scss$"
|
||||||
|
@ -14,7 +14,6 @@
|
||||||
:init
|
:init
|
||||||
(define-docset! scss-mode "sass,bourbon")
|
(define-docset! scss-mode "sass,bourbon")
|
||||||
(add-hook! scss-mode '(hs-minor-mode narf|hl-line-off))
|
(add-hook! scss-mode '(hs-minor-mode narf|hl-line-off))
|
||||||
(setq-default css-indent-offset 2)
|
|
||||||
(setq scss-compile-at-save nil)
|
(setq scss-compile-at-save nil)
|
||||||
:config
|
:config
|
||||||
(sp-local-pair 'scss-mode "/*" "*/" :post-handlers '(("[d-3]||\n[i]" "RET") ("| " "SPC")))
|
(sp-local-pair 'scss-mode "/*" "*/" :post-handlers '(("[d-3]||\n[i]" "RET") ("| " "SPC")))
|
||||||
|
@ -25,6 +24,8 @@
|
||||||
:n ";" 'helm-css-scss
|
:n ";" 'helm-css-scss
|
||||||
:n ":" 'helm-css-scss-multi))
|
:n ":" 'helm-css-scss-multi))
|
||||||
|
|
||||||
|
(define-company-backend! scss-mode (css))
|
||||||
|
|
||||||
(after! web-beautify
|
(after! web-beautify
|
||||||
(add-hook! scss-mode (setenv "jsbeautify_indent_size" "2"))
|
(add-hook! scss-mode (setenv "jsbeautify_indent_size" "2"))
|
||||||
(map! :map scss-mode-map :m "gQ" 'web-beautify-css))
|
(map! :map scss-mode-map :m "gQ" 'web-beautify-css))
|
||||||
|
@ -33,9 +34,7 @@
|
||||||
(emr-declare-command 'narf/scss-toggle-inline-or-block
|
(emr-declare-command 'narf/scss-toggle-inline-or-block
|
||||||
:title "toggle inline/block"
|
:title "toggle inline/block"
|
||||||
:modes 'scss-mode
|
:modes 'scss-mode
|
||||||
:predicate (lambda () (not (use-region-p)))))
|
:predicate (lambda () (not (use-region-p))))))
|
||||||
|
|
||||||
(after! company (define-company-backend! scss-mode (css))))
|
|
||||||
|
|
||||||
(use-package web-beautify
|
(use-package web-beautify
|
||||||
:commands (web-beautify-js web-beautify-css web-beautify-html)
|
:commands (web-beautify-js web-beautify-css web-beautify-html)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue