From 8eb103f15244f2d6e84c69ece43e08b2e53b114e Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Fri, 20 Nov 2015 04:00:38 -0500 Subject: [PATCH] Clean up --- core/core-defuns.el | 3 +++ core/core-evil.el | 28 +++------------------- core/core-project.el | 1 + core/core-quickrun.el | 2 ++ core/core-ui.el | 52 ++++++++++++++++++++--------------------- modules/module-elisp.el | 7 +++++- modules/module-ruby.el | 15 ++++++------ 7 files changed, 48 insertions(+), 60 deletions(-) diff --git a/core/core-defuns.el b/core/core-defuns.el index 055a0cd0e..742299dcd 100644 --- a/core/core-defuns.el +++ b/core/core-defuns.el @@ -212,6 +212,9 @@ Examples: (defun narf|enable-tab-width-4 () (setq tab-width 4 evil-shift-width 4)) +(defun narf|enable-tab-width-8 () + (setq tab-width 8 evil-shift-width 8)) + (defun narf|disable-final-newline () (set (make-local-variable 'require-final-newline) nil)) diff --git a/core/core-evil.el b/core/core-evil.el index 064e0d09c..045ec6038 100644 --- a/core/core-evil.el +++ b/core/core-evil.el @@ -29,16 +29,8 @@ evil-echo-state nil evil-ex-substitute-global t - evil-normal-state-tag "N" - evil-insert-state-tag "I" - evil-motion-state-tag "M" - evil-replace-state-tag "R" - evil-emacs-state-tag "E" - evil-visual-state-tag "V" - evil-operator-state-tag "O" - evil-iedit-state-tag "X" - ;; Color-coded state cursors + evil-default-cursor "orange" evil-normal-state-cursor 'box evil-emacs-state-cursor 'bar evil-insert-state-cursor 'bar @@ -76,7 +68,8 @@ (when (minibuffer-window-active-p (minibuffer-window)) (narf-minibuffer-quit))) - ;; buffer-local ex commands, thanks to: http://emacs.stackexchange.com/questions/13186 + ;; buffer-local ex commands, thanks to: + ;; http://emacs.stackexchange.com/questions/13186 (defun evil-ex-define-cmd-local (cmd function) "Locally binds the function FUNCTION to the command CMD." (unless (local-variable-p 'evil-ex-commands) @@ -285,10 +278,6 @@ (use-package evil-snipe :diminish evil-snipe-local-mode - ;; :commands (evil-snipe-f evil-snipe-F - ;; evil-snipe-t evil-snipe-T - ;; evil-snipe-s evil-snipe-S - ;; evil-snipe-x evil-snipe-X) :init (setq-default evil-snipe-smart-case t @@ -299,17 +288,6 @@ evil-snipe-symbol-groups '((?\[ "[[{(]") (?\] "[]})]") (?\; "[;:]"))) - - ;; (define-key evil-normal-state-map "s" nil) - ;; (define-key evil-normal-state-map "S" nil) - ;; (define-key evil-motion-state-map "s" 'evil-snipe-s) - ;; (define-key evil-motion-state-map "S" 'evil-snipe-S) - ;; (define-key evil-motion-state-map "f" 'evil-snipe-f) - ;; (define-key evil-motion-state-map "F" 'evil-snipe-F) - ;; (define-key evil-motion-state-map "t" 'evil-snipe-t) - ;; (define-key evil-motion-state-map "T" 'evil-snipe-T) - ;; (define-key evil-operator-state-map "z" 'evil-snipe-s) - ;; (define-key evil-operator-state-map "Z" 'evil-snipe-S) :config (evil-snipe-mode 1) (evil-snipe-override-mode 1)) diff --git a/core/core-project.el b/core/core-project.el index 01e846779..b52d31a29 100644 --- a/core/core-project.el +++ b/core/core-project.el @@ -16,6 +16,7 @@ ido-create-new-buffer 'always ido-enable-tramp-completion t ido-enable-last-directory-history t + ido-cr+-max-items 10000 ido-save-directory-list-file (concat narf-temp-dir "ido.last")) :config (add-to-list 'ido-ignore-files "\\`.DS_Store$") diff --git a/core/core-quickrun.el b/core/core-quickrun.el index 59c7cbafa..a509fea66 100644 --- a/core/core-quickrun.el +++ b/core/core-quickrun.el @@ -11,6 +11,8 @@ :config (setq quickrun-focus-p t) (add-hook! quickrun/mode 'linum-mode) + (add-hook! quickrun/mode 'yascroll-bar-mode) + (add-to-list 'quickrun-file-alist '("\\.gvy$" . "groovy"))) (provide 'core-quickrun) diff --git a/core/core-ui.el b/core/core-ui.el index d223ab4fb..6fbfea54d 100644 --- a/core/core-ui.el +++ b/core/core-ui.el @@ -74,28 +74,6 @@ ("\\<\\(FIXME\\((.+)\\)?:?\\)" 1 'narf-fixme-face prepend) ("\\<\\(NOTE\\((.+)\\)?:?\\)" 1 'narf-note-face prepend)))) -;; Prettify code folding in emacs ;;;;;; -(define-fringe-bitmap 'hs-marker [16 48 112 240 112 48 16] nil nil 'center) -(defface hs-face '((t (:background "#ff8"))) - "Face to hightlight the ... area of hidden regions" - :group 'hideshow) -(defface hs-fringe-face '((t (:foreground "#888"))) - "Face used to highlight the fringe on folded regions" - :group 'hideshow) - -(setq hs-set-up-overlay - (lambda (ov) - (when (eq 'code (overlay-get ov 'hs)) - (let* ((marker-string "*fringe-dummy*") - (marker-length (length marker-string)) - (display-string (format " ... " (count-lines (overlay-start ov) - (overlay-end ov))))) - (put-text-property 0 marker-length 'display - (list 'right-fringe 'hs-marker 'hs-fringe-face) marker-string) - (put-text-property 0 (length display-string) 'face 'hs-face display-string) - (overlay-put ov 'before-string marker-string) - (overlay-put ov 'display display-string))))) - ;; Fade out when unfocused ;;;;;;;;;;;;; (add-hook! focus-in (set-frame-parameter nil 'alpha 100)) (add-hook! focus-out (set-frame-parameter nil 'alpha 80)) @@ -105,10 +83,8 @@ :commands (yascroll-bar-mode) :config (add-to-list 'yascroll:enabled-window-systems 'mac) - (setq yascroll:scroll-bar 'right-fringe - yascroll:delay-to-hide nil) - - (defun yascroll:before-change (beg end))) + (setq yascroll:scroll-bar 'left-fringe + yascroll:delay-to-hide nil)) (use-package hideshow :commands (hs-minor-mode hs-toggle-hiding hs-already-hidden-p) @@ -119,7 +95,29 @@ (defun narf-load-hs-minor-mode () (hs-minor-mode 1) (advice-remove 'evil-toggle-fold 'narf-load-hs-minor-mode)) - (advice-add 'evil-toggle-fold :before 'narf-load-hs-minor-mode))) + (advice-add 'evil-toggle-fold :before 'narf-load-hs-minor-mode)) + + ;; Prettify code folding in emacs ;;;;;; + (define-fringe-bitmap 'hs-marker [16 48 112 240 112 48 16] nil nil 'center) + (defface hs-face '((t (:background "#ff8"))) + "Face to hightlight the ... area of hidden regions" + :group 'hideshow) + (defface hs-fringe-face '((t (:foreground "#888"))) + "Face used to highlight the fringe on folded regions" + :group 'hideshow) + + (setq hs-set-up-overlay + (lambda (ov) + (when (eq 'code (overlay-get ov 'hs)) + (let* ((marker-string "*fringe-dummy*") + (marker-length (length marker-string)) + (display-string (format " ... " (count-lines (overlay-start ov) + (overlay-end ov))))) + (put-text-property 0 marker-length 'display + (list 'right-fringe 'hs-marker 'hs-fringe-face) marker-string) + (put-text-property 0 (length display-string) 'face 'hs-face display-string) + (overlay-put ov 'before-string marker-string) + (overlay-put ov 'display display-string)))))) (use-package rainbow-delimiters :commands rainbow-delimiters-mode diff --git a/modules/module-elisp.el b/modules/module-elisp.el index 80dfb72c0..aeb2c81fd 100644 --- a/modules/module-elisp.el +++ b/modules/module-elisp.el @@ -11,9 +11,14 @@ (when (narf/is-recompilable-p) (narf:compile-el))) +(add-hook! emacs-lisp-mode 'narf|enable-tab-width-8) (add-hook! emacs-lisp-mode (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) + + (add-to-list 'imenu-generic-expression + '("Package" + "\\(^\\s-*(use-package +\\)\\(\\_<.+\\_>\\)" 2))) ;; Highlight extra NARF keywords (let ((keywords '("add-hook!" diff --git a/modules/module-ruby.el b/modules/module-ruby.el index 7ff646b24..986638baf 100644 --- a/modules/module-ruby.el +++ b/modules/module-ruby.el @@ -49,11 +49,11 @@ ;; Rake (("task" "namespace") () "end"))) :config - (bind! (:prefix "," - :n "tr" 'rspec-rerun - :n "ta" 'rspec-verify-all - :n "ts" 'rspec-verify-single - :n "tv" 'rspec-verify))) + (bind! (:map rspec-mode-map + :n ",tr" 'rspec-rerun + :n ",ta" 'rspec-verify-all + :n ",ts" 'rspec-verify-single + :n ",tv" 'rspec-verify))) (use-package inf-ruby :commands (inf-ruby inf-ruby-console-auto) @@ -67,8 +67,9 @@ :diminish "R" :commands (robe-mode robe-start ruby-load-file) :init - (add-hook! after-save 'narf|ruby-load-file) - (add-hook! ruby-mode 'narf|enable-robe-maybe) + (add-hook! ruby-mode + (narf|ruby-load-file) + (add-hook 'after-save-hook 'narf|ruby-load-file nil t)) :config (after! company (require 'company-robe)