From 74be503228a6c4a066b3ac9cc8b508f299cc27b4 Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Tue, 8 Jan 2013 23:42:27 -0500 Subject: evil: cleanup binding - add eval-region under hook restructure org evil bindings - model after cofi's config - github.com/cofi/dotfiles/blob/master/emacs.d/config/cofi-evil.el - move org-export under here don't bind jf with keychord don't use ,j ,k (use builtin evil mappings) --- conf/ev.el | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 80 insertions(+), 13 deletions(-) (limited to 'conf/ev.el') diff --git a/conf/ev.el b/conf/ev.el index 406ecc5..87d5375 100644 --- a/conf/ev.el +++ b/conf/ev.el @@ -20,22 +20,19 @@ (kill-this-buffer) ) -(defun my-back-one-window () - "Go back one windo" - (interactive) - (other-window -1)) +(define-key evil-insert-state-map "jf" 'evil-normal-state) (define-key evil-normal-state-map ",w" 'save-buffer) -(define-key evil-normal-state-map "Q" 'fill-paragraph) -(define-key evil-normal-state-map ",b" 'ido-switch-buffer) +(define-key evil-normal-state-map ",q" 'kill-buffer) (define-key evil-normal-state-map ",d" 'save-and-kill-buffer) -(define-key evil-visual-state-map ",c" 'comment-or-uncomment-region) +(define-key evil-normal-state-map "Q" 'fill-paragraph) -(define-key evil-normal-state-map ",j" 'other-window) -(define-key evil-normal-state-map ",k" 'my-back-one-window) -(define-key evil-normal-state-map ",q" 'kill-buffer) -(define-key evil-normal-state-map ",a" 'org-archive-subtree) +(evil-define-key 'visual emacs-lisp-mode-map + ",e" 'eval-region) +(evil-define-key 'visual lisp-interaction-mode-map + ",e" 'eval-region) +(define-key evil-visual-state-map ",c" 'comment-or-uncomment-region) (fset 'comment-this-line ;; this depends on evil bindings "0v$,c") (define-key evil-normal-state-map ",c" 'comment-this-line) @@ -43,11 +40,81 @@ (require 'key-chord) (key-chord-mode 1) -(key-chord-define-global "jf" 'evil-normal-state) (key-chord-define-global ",r" 'recentf-ido-find-file) (key-chord-define-global ",t" 'org-capture) -(key-chord-define-global ",e" 'org-export-as-pdf) ;; instead of alt-x (key-chord-define-global ",x" 'execute-extended-command) (key-chord-define-global ",f" 'find-file) (key-chord-define-global ",g" 'indent-relative) +(key-chord-define-global ",b" 'ido-switch-buffer) + +;; org bindings +(defun always-insert-item () + (interactive) + (if (not (org-in-item-p)) + (insert "\n- ") + (org-insert-item))) + +;; most from cofi config +(evil-define-key 'normal org-mode-map + (kbd "RET") 'org-open-at-point + "za" 'org-cycle + "zA" 'org-shifttab + "zm" 'hide-body + "zr" 'show-all + "zo" 'show-subtree + "zO" 'show-all + "zc" 'hide-subtree + "zC" 'hide-all + ",e" 'org-export-as-pdf + ",a" 'org-archive-subtree + ",s" 'org-todo + "O" (lambda () + (interactive) + (end-of-line) + (org-insert-heading t) + (evil-append nil)) + "o" (lambda () + (interactive) + (end-of-line) + (always-insert-item) + (evil-append nil)) +(kbd "M-j") 'org-shiftleft + (kbd "M-k") 'org-shiftright + (kbd "M-H") 'org-metaleft + (kbd "M-J") 'org-metadown + (kbd "M-K") 'org-metaup + (kbd "M-L") 'org-metaright) + +(evil-define-key 'normal orgstruct-mode-map + (kbd "RET") 'org-open-at-point + "za" 'org-cycle + "zA" 'org-shifttab + "zm" 'hide-body + "zr" 'show-all + "zo" 'show-subtree + "zO" 'show-all + "zc" 'hide-subtree + "zC" 'hide-all + (kbd "M-j") 'org-shiftleft + (kbd "M-k") 'org-shiftright + (kbd "M-H") 'org-metaleft + (kbd "M-J") 'org-metadown + (kbd "M-K") 'org-metaup + (kbd "M-L") 'org-metaright) + +(evil-define-key 'insert org-mode-map + (kbd "M-j") 'org-shiftleft + (kbd "M-k") 'org-shiftright + (kbd "M-H") 'org-metaleft + (kbd "M-J") 'org-metadown + (kbd "M-K") 'org-metaup + (kbd "M-L") 'org-metaright) + +(evil-define-key 'insert orgstruct-mode-map + (kbd "M-j") 'org-shiftleft + (kbd "M-k") 'org-shiftright + (kbd "M-H") 'org-metaleft + (kbd "M-J") 'org-metadown + (kbd "M-K") 'org-metaup + (kbd "M-L") 'org-metaright) -- cgit v1.2.3