This commit is contained in:
Henrik Lissner 2015-08-13 12:14:41 -04:00
parent b32a587b75
commit 90ef15e1c1
13 changed files with 93 additions and 106 deletions

View file

@ -1,27 +1,27 @@
;;; core-vcs.el --- version control awareness ;;; core-vcs.el --- version control awareness
(use-package git-commit-mode ; (use-package git-commit-mode ;
:mode ("/COMMIT_EDITMSG\\'" :mode ("/COMMIT_EDITMSG$"
"/NOTES_EDITMSG\\'" "/NOTES_EDITMSG$"
"/MERGE_MSG\\'" "/MERGE_MSG$"
"/TAG_EDITMSG\\'" "/TAG_EDITMSG$"
"/PULLREQ_EDITMSG\\'") "/PULLREQ_EDITMSG$")
:config :config
(evil-set-initial-state 'git-commit-mode 'insert)) (evil-set-initial-state 'git-commit-mode 'insert))
(use-package git-rebase-mode (use-package git-rebase-mode
:mode "/git-rebase-todo\\'" :mode "/git-rebase-todo$"
:config :config
(evil-set-initial-state 'git-rebase-mode 'insert)) (evil-set-initial-state 'git-rebase-mode 'insert))
(use-package gitconfig-mode (use-package gitconfig-mode
:mode ("/\\.?git/?config\\'" "/\\.gitmodules\\'") :mode ("/\\.?git/?config$" "/\\.gitmodules$")
:init (add-hook 'gitconfig-mode-hook 'flyspell-mode)) :init (add-hook 'gitconfig-mode-hook 'flyspell-mode))
(use-package gitignore-mode (use-package gitignore-mode
:mode ("/\\.gitignore\\'" :mode ("/\\.gitignore$"
"/\\.git/info/exclude\\'" "/\\.git/info/exclude$"
"/git/ignore\\'")) "/git/ignore$"))
(use-package diff-hl (use-package diff-hl
:init (setq diff-hl-draw-borders nil) :init (setq diff-hl-draw-borders nil)

View file

@ -158,6 +158,9 @@
recentf-auto-cleanup 600) recentf-auto-cleanup 600)
(recentf-mode 1) (recentf-mode 1)
(require 'popwin)
(popwin-mode 1)
;; Save cursor location across sessions. Only save for files that exist. ;; Save cursor location across sessions. Only save for files that exist.
(use-package saveplace (use-package saveplace
:defer t :defer t
@ -168,8 +171,6 @@
(require 'saveplace) (require 'saveplace)
(setq save-place t)))) (setq save-place t))))
(use-package popwin :config (popwin-mode 1))
(use-package help-fns+ ; Improved help commands (use-package help-fns+ ; Improved help commands
:commands (describe-buffer describe-command describe-file :commands (describe-buffer describe-command describe-file
describe-keymap describe-option describe-option-of-type)) describe-keymap describe-option describe-option-of-type))

View file

@ -4,9 +4,7 @@
:mode "\\.ya?ml$" :mode "\\.ya?ml$"
:init (add-hook! yaml-mode 'narf|enable-tab-width-2)) :init (add-hook! yaml-mode 'narf|enable-tab-width-2))
(use-package json-mode (use-package json-mode :mode "\\.js\\(on\\|hintrc\\)$")
:mode (("\\.json$" . json-mode)
("\\.jshintrc$" . json-mode)))
;; TODO: Db client ;; TODO: Db client

View file

@ -12,7 +12,7 @@
(narf:compile-el))) (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))
;; Real go-to-definition for elisp ;; Real go-to-definition for elisp

View file

@ -37,10 +37,10 @@
(use-package groovy-mode (use-package groovy-mode
:functions (is-groovy-mode) :functions (is-groovy-mode)
:mode "\\.\\(gradle\\|gvy\\|groovy\\)$") :mode "\\.g\\(radle\\|vy\\|roovy\\)$")
(use-package scala-mode2 (use-package scala-mode2
:mode ("\\.\\(scala\\|sbt\\)$" . scala-mode)) :mode ("\\.s\\(cala\\|bt\\)$" . scala-mode))
(provide 'module-java) (provide 'module-java)
;;; module-java.el ends here ;;; module-java.el ends here

View file

@ -6,8 +6,8 @@
:lighter "lb6" :lighter "lb6"
:keymap (make-sparse-keymap) :keymap (make-sparse-keymap)
(add-yas-minor-mode! 'lb6-mode)) (add-yas-minor-mode! 'lb6-mode))
(associate! lb6-mode :match "\\.lb\\(action\\|ext\\)/.*$") (associate! lb6-mode :match "\\.lb\\(action\\|ext\\)/.*$")
(provide 'module-lb6) (provide 'module-lb6)
;;; module-lb6.el ends here ;;; module-lb6.el ends here

View file

@ -5,10 +5,8 @@
:interpreter "lua" :interpreter "lua"
:init :init
(setq-default lua-indent-level tab-width) (setq-default lua-indent-level tab-width)
;; (after! company-dict ;; (after! company-dict
;; (add-to-list 'company-dict-minor-mode-alist 'love-mode)) ;; (add-to-list 'company-dict-minor-mode-alist 'love-mode))
(add-hook! lua-mode (add-hook! lua-mode
(narf|enable-tab-width-2) (narf|enable-tab-width-2)
(setq lua-indent-level 2))) (setq lua-indent-level 2)))
@ -17,8 +15,8 @@
"Buffer local minor mode for Love2D" "Buffer local minor mode for Love2D"
:init-value nil :init-value nil
:lighter "" :lighter ""
:keymap (make-sparse-keymap)) :keymap (make-sparse-keymap)
(add-yas-minor-mode! 'love-mode) (add-yas-minor-mode! 'love-mode))
(associate! love-mode :files ("main.lua") :in (lua-mode)) (associate! love-mode :files ("main.lua") :in (lua-mode))
(build-for! love-mode "open -a love.app '%s'" "main.lua") (build-for! love-mode "open -a love.app '%s'" "main.lua")

View file

@ -6,9 +6,9 @@
:commands python-mode :commands python-mode
:init :init
(add-hook! python-mode '(narf|enable-tab-width-4 emr-initialize)) (add-hook! python-mode '(narf|enable-tab-width-4 emr-initialize))
(setq python-indent-offset 4) (setq python-indent-offset 4
(setq python-environment-directory narf-temp-dir) python-environment-directory narf-temp-dir
(setq python-shell-interpreter "ipython") python-shell-interpreter "ipython")
:config :config
(define-key python-mode-map (kbd "DEL") nil)) ; interferes with smartparens (define-key python-mode-map (kbd "DEL") nil)) ; interferes with smartparens

View file

@ -12,12 +12,10 @@
:config :config
(add-hook! reb-mode 'narf|reb-cleanup) (add-hook! reb-mode 'narf|reb-cleanup)
(evil-set-initial-state 'reb-mode 'insert) (evil-set-initial-state 'reb-mode 'insert)
(bind! :map reb-mode-map (bind! :map reb-mode-map
:n "C-g" 'reb-quit :n "C-g" 'reb-quit
:n [escape] 'reb-quit :n [escape] 'reb-quit
:n [backtab] 'reb-change-syntax)) :n [backtab] 'reb-change-syntax))
(provide 'module-regex) (provide 'module-regex)
;;; module-regex.el ends here ;;; module-regex.el ends here

View file

@ -15,96 +15,91 @@
(setq ruby-indent-level 2 (setq ruby-indent-level 2
ruby-deep-indent-paren t) ruby-deep-indent-paren t)
(associate! text-mode :match "/\\.rspec$")
;; Don't interfere with my custom RET behavior ;; Don't interfere with my custom RET behavior
(define-key ruby-mode-map [?\n] nil) (define-key ruby-mode-map [?\n] nil)
(use-package ruby-refactor
:init (add-hook! ruby-mode 'emr-initialize)
:config
(after! emr
(emr-declare-command 'ruby-toggle-block
:title "toggle block"
:modes 'ruby-mode
:predicate (lambda () (not (use-region-p))))
(emr-declare-command 'ruby-refactor-extract-to-method
:title "extract method"
:modes 'ruby-mode
:predicate (lambda () (use-region-p)))
(emr-declare-command 'ruby-refactor-extract-local-variable
:title "extract local variable"
:modes 'ruby-mode
:predicate (lambda () (use-region-p)))
(emr-declare-command 'ruby-refactor-extract-constant
:title "extract constant"
:modes 'ruby-mode
:predicate (lambda () (use-region-p)))
(emr-declare-command 'ruby-refactor-add-parameter
:title "add parameter"
:modes 'ruby-mode)
(emr-declare-command 'ruby-refactor-extract-to-let
:title "extract to let"
:modes 'ruby-mode
:predicate (lambda () (use-region-p)))))
;; Rakefiles ;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Rakefiles ;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define-minor-mode rake-mode (define-minor-mode rake-mode
"Buffer local minor mode for rake files" "Buffer local minor mode for rake files"
:lighter " Rake" :keymap (make-sparse-keymap) :lighter " Rake" :keymap (make-sparse-keymap)
(add-yas-minor-mode! 'rake-mode)) (add-yas-minor-mode! 'rake-mode))
(associate! rake-mode :match "/\\(Rakefile\\|\\.rake\\)$") (associate! rake-mode :match "\\(/Rakefile\\|\\.rake\\)$")
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Vagrantfiles ;;;;;;;;;;;;;;;;;;;;;;;; ;; Vagrantfiles ;;;;;;;;;;;;;;;;;;;;;;;;
(define-minor-mode vagrant-mode (define-minor-mode vagrant-mode
"Buffer local minor mode for vagrant files" "Buffer local minor mode for vagrant files"
:lighter " Va" :keymap (make-sparse-keymap) :lighter " Va" :keymap (make-sparse-keymap)
(add-yas-minor-mode! 'vagrant-mode)) (add-yas-minor-mode! 'vagrant-mode))
(associate! vagrant-mode :match "/Vagrantfile$") (associate! vagrant-mode :match "/Vagrantfile$"))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Rspec files ;;;;;;;;;;;;;;;;;;;;;;;;; (use-package rspec-mode
(use-package rspec-mode :defer t
:defer t :mode ("/\\.rspec$" . text-mode)
:init :init
(associate! rspec-mode :match "\\(/spec_helper\\|_spec\\)\\.rb$") (associate! rspec-mode :match "\\(/spec_helper\\|_spec\\)\\.rb$")
(associate! rspec-mode :match "/\\.rspec$") (associate! rspec-mode :match "/\\.rspec$")
(defvar rspec-mode-verifiable-map (make-sparse-keymap)) (defvar rspec-mode-verifiable-map (make-sparse-keymap))
(defvar evilmi-ruby-match-tags (defvar evilmi-ruby-match-tags
'((("unless" "if") ("elsif" "else") "end") '((("unless" "if") ("elsif" "else") "end")
("begin" ("rescue" "ensure") "end") ("begin" ("rescue" "ensure") "end")
("case" ("when" "else") "end") ("case" ("when" "else") "end")
(("class" "def" "while" "do" "module" "for" "until") () "end") (("class" "def" "while" "do" "module" "for" "until") () "end")
;; Rake ;; Rake
(("task" "namespace") () "end"))) (("task" "namespace") () "end")))
:config :config
(bind! (:prefix "," (bind! (:prefix ","
:n "tr" 'rspec-rerun :n "tr" 'rspec-rerun
:n "ta" 'rspec-verify-all :n "ta" 'rspec-verify-all
:n "ts" 'rspec-verify-single :n "ts" 'rspec-verify-single
:n "tv" 'rspec-verify))) :n "tv" 'rspec-verify)))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (use-package inf-ruby
:commands (inf-ruby inf-ruby-console-auto)
:config
(evil-set-initial-state 'inf-ruby-mode 'insert)
(after! company
(require 'company-inf-ruby)
(add-company-backend! inf-ruby-mode (inf-ruby))))
(use-package inf-ruby (use-package robe
:commands (inf-ruby inf-ruby-console-auto) :commands (robe-mode robe-start ruby-load-file)
:config :init
(evil-set-initial-state 'inf-ruby-mode 'insert) (add-hook! after-save 'narf|ruby-load-file)
(after! company (add-hook! ruby-mode 'narf|enable-robe-maybe)
(require 'company-inf-ruby) :config
(add-company-backend! inf-ruby-mode (inf-ruby)))) (after! company
(require 'company-robe)
(add-company-backend! ruby-mode (robe))))
(use-package robe (use-package ruby-refactor
:functions (robe-mode robe-start ruby-load-file) :after emr
:config :init (add-hook! ruby-mode 'emr-initialize)
(add-hook! after-save 'narf|ruby-load-file) :config
(add-hook! ruby-mode 'narf|enable-robe-maybe) (emr-declare-command 'ruby-toggle-block
:title "toggle block"
(after! company :modes 'ruby-mode
(require 'company-robe) :predicate (lambda () (not (use-region-p))))
(add-company-backend! ruby-mode (robe))))) (emr-declare-command 'ruby-refactor-extract-to-method
:title "extract method"
:modes 'ruby-mode
:predicate (lambda () (use-region-p)))
(emr-declare-command 'ruby-refactor-extract-local-variable
:title "extract local variable"
:modes 'ruby-mode
:predicate (lambda () (use-region-p)))
(emr-declare-command 'ruby-refactor-extract-constant
:title "extract constant"
:modes 'ruby-mode
:predicate (lambda () (use-region-p)))
(emr-declare-command 'ruby-refactor-add-parameter
:title "add parameter"
:modes 'ruby-mode
:predicate (lambda () (not (use-region-p))))
(emr-declare-command 'ruby-refactor-extract-to-let
:title "extract to let"
:modes 'ruby-mode
:predicate (lambda () (use-region-p))))
(provide 'module-ruby) (provide 'module-ruby)
;;; module-ruby.el ends here ;;; module-ruby.el ends here

View file

@ -8,8 +8,7 @@
(use-package scss-mode (use-package scss-mode
:mode "\\.scss$" :mode "\\.scss$"
:init :init
(add-hook! scss-mode 'narf|enable-tab-width-2) (add-hook! scss-mode '(narf|enable-tab-width-2 hs-minor-mode))
(add-hook! scss-mode 'hs-minor-mode)
(setq-default css-indent-offset 2) (setq-default css-indent-offset 2)
(setq scss-compile-at-save nil) (setq scss-compile-at-save nil)
:config :config

View file

@ -4,7 +4,7 @@
:mode "\\.swift$" :mode "\\.swift$"
:config :config
(after! flycheck (add-to-list 'flycheck-checkers 'swift)) (after! flycheck (add-to-list 'flycheck-checkers 'swift))
(after! company (add-company-backend! swift-mode (xcode)))) (after! company (add-company-backend! swift-mode (xcode))))
;; TODO Set up emacs task runners for fruitstrap ;; TODO Set up emacs task runners for fruitstrap

View file

@ -24,10 +24,10 @@
(exmap "m[sg]" 'popwin:messages) (exmap "m[sg]" 'popwin:messages)
(exmap "ma[ke]" 'narf:build) (exmap "ma[ke]" 'narf:build)
(exmap "mv" 'narf:file-move) (exmap "mv" 'narf:file-move)
;; (exmap "n[otes]" 'narf:org-search-files-or-headers)
(exmap "na[rrow]" 'narf:narrow) ; Narrow buffer to selection (exmap "na[rrow]" 'narf:narrow) ; Narrow buffer to selection
(exmap "proj[ect]" 'helm-projectile-switch-project) (exmap "proj[ect]" 'helm-projectile-switch-project)
(exmap "rec[ent]" 'narf:helm-recentf) (exmap "rec[ent]" 'narf:helm-recentf)
(exmap "re[gex]" 'narf:regex)
(exmap "ref[actor]" 'emr-show-refactor-menu) (exmap "ref[actor]" 'emr-show-refactor-menu)
(exmap "retab" 'narf:whitespace-retab) (exmap "retab" 'narf:whitespace-retab)
(exmap "rm" 'narf:file-delete) ; rm[!] (exmap "rm" 'narf:file-delete) ; rm[!]
@ -36,13 +36,11 @@
(exmap "fi[nd]" 'narf:helm-swoop) (exmap "fi[nd]" 'narf:helm-swoop)
(exmap "t" 'narf:tmux-run) (exmap "t" 'narf:tmux-run)
(exmap "tcd" 'narf:tmux-chdir) (exmap "tcd" 'narf:tmux-chdir)
(exmap "tsnip[pets]" 'narf:yas-file-templates) ; temp[!] (exmap "tsnip[pets]" 'narf:yas-file-templates) ; tsnip[!]
;; (exmap "term" 'narf:term-init) ;; (exmap "term" 'narf:term-init)
(exmap "x" 'narf:scratch-buffer) (exmap "x" 'narf:scratch-buffer)
(after! flycheck (after! flycheck
(exmap "er[rors]" (λ (flycheck-buffer) (flycheck-list-errors)))) (exmap "er[rors]" (λ (flycheck-buffer) (flycheck-list-errors))))
(after! re-builder
(exmap "re[gex]" 'narf:regex)) ; TODO: Implement this
(after! org (after! org
(exmap "o[rg]edit" 'org-edit-special) (exmap "o[rg]edit" 'org-edit-special)
(exmap "o[rg]refile" 'org-refile) (exmap "o[rg]refile" 'org-refile)