From d9cae60fa5048abd3528f96a285109329639fda6 Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Fri, 23 Jan 2015 23:23:05 -0500 Subject: Improve organization and consistency of files - Add pages and more headings for large files. - Try to use consistent order for file (or page) structure. * Loading * Settings * Hooks * Any mode activation or function calls * My functions * Key bindings --- lisp/init-projectile.el | 126 ++++++++++++++++++++++++------------------------ 1 file changed, 64 insertions(+), 62 deletions(-) (limited to 'lisp/init-projectile.el') diff --git a/lisp/init-projectile.el b/lisp/init-projectile.el index 1571906..b518e4a 100644 --- a/lisp/init-projectile.el +++ b/lisp/init-projectile.el @@ -1,10 +1,10 @@ -(projectile-global-mode) - (setq projectile-switch-project-action 'projectile-commander projectile-find-dir-includes-top-level t projectile-use-git-grep t) +(projectile-global-mode) + (defun km/projectile-switch-project-to-file () "Provide access to the of default `projectile-find-file'. @@ -50,88 +50,90 @@ Interactive arguments are processed according to (kill-new fname)) (message "%s" fname))) -;; Default binding is D. -(def-projectile-commander-method ?t - "Open project root in dired." - (projectile-dired)) +(define-key projectile-command-map (kbd "4 v") + 'km/projectile-view-file-other-window) -(def-projectile-commander-method ?D - "Find a project directory in other window." - (call-interactively 'projectile-find-dir-other-window)) +(define-key projectile-command-map "." + 'km/projectile-copy-project-filename-as-kill) +;; Swap `projectile-invalidate-cache' and `projectile-ibuffer'. +(define-key projectile-command-map "I" 'projectile-invalidate-cache) +(define-key projectile-command-map "i" 'projectile-ibuffer) +(define-key projectile-command-map "j" + 'km/projectile-switch-project-to-file) -;; Default binding is v. -(def-projectile-commander-method ?m - "Open project root in vc-dir or magit." - (projectile-vc)) +(key-chord-define-global ";c" 'projectile-commander) +(key-chord-define-global ";d" 'projectile-find-dir) +(key-chord-define-global ";f" 'projectile-find-file) +(key-chord-define-global ";g" 'projectile-grep) +(key-chord-define-global ";r" 'projectile-recentf) +(key-chord-define-global ";s" 'projectile-switch-project) +(key-chord-define-global ";t" 'km/projectile-open-external-terminal-in-root) +(key-chord-define-global ";v" 'km/projectile-view-file) -(def-projectile-commander-method ?v - "View project file." - (km/projectile-view-file)) +(define-prefix-command 'km/projectile-ctl-x-4-map) +(define-key ctl-x-4-map "p" 'km/projectile-ctl-x-4-map) -(def-projectile-commander-method ?V - "View project file in other window." - (km/projectile-view-file-other-window)) +(define-key km/projectile-ctl-x-4-map (kbd "C-o") + 'projectile-display-buffer) +(define-key km/projectile-ctl-x-4-map "b" + 'projectile-switch-to-buffer-other-window) +(define-key km/projectile-ctl-x-4-map "d" + 'projectile-find-dir-other-window) +(define-key km/projectile-ctl-x-4-map "f" + 'projectile-find-file-other-window) +(define-key km/projectile-ctl-x-4-map "t" + 'projectile-find-implementation-or-test-other-window) +(define-key km/projectile-ctl-x-4-map "v" + 'km/projectile-view-file-other-window) + + +;;; Commander methods + +(def-projectile-commander-method ?B + "Find project buffer in other window." + (call-interactively 'projectile-switch-to-buffer-other-window)) (def-projectile-commander-method ?c "Run project compilation command." (call-interactively 'projectile-compile-project)) -;; Default binding is e. -(def-projectile-commander-method ?r - "Find recently visited file in project." - (projectile-recentf)) +(def-projectile-commander-method ?D + "Find a project directory in other window." + (call-interactively 'projectile-find-dir-other-window)) (def-projectile-commander-method ?F "Find project file in other window." (call-interactively 'projectile-find-file-other-window)) -(def-projectile-commander-method ?B - "Find project buffer in other window." - (call-interactively 'projectile-switch-to-buffer-other-window)) - -(def-projectile-commander-method ?O - "Display a project buffer in other window." - (call-interactively 'projectile-display-buffer)) - (def-projectile-commander-method ?i "Open an IBuffer window showing all buffers in the current project." (call-interactively 'projectile-ibuffer)) -(key-chord-define-global ";s" 'projectile-switch-project) -(key-chord-define-global ";f" 'projectile-find-file) -(key-chord-define-global ";v" 'km/projectile-view-file) -(key-chord-define-global ";d" 'projectile-find-dir) -(key-chord-define-global ";t" 'km/projectile-open-external-terminal-in-root) -(key-chord-define-global ";g" 'projectile-grep) -(key-chord-define-global ";r" 'projectile-recentf) -(key-chord-define-global ";c" 'projectile-commander) +;; Default binding is v. +(def-projectile-commander-method ?m + "Open project root in vc-dir or magit." + (projectile-vc)) -(define-key projectile-command-map "j" - 'km/projectile-switch-project-to-file) -(define-key projectile-command-map "." - 'km/projectile-copy-project-filename-as-kill) +(def-projectile-commander-method ?O + "Display a project buffer in other window." + (call-interactively 'projectile-display-buffer)) -;; Swap `projectile-invalidate-cache' and `projectile-ibuffer'. -(define-key projectile-command-map "I" 'projectile-invalidate-cache) -(define-key projectile-command-map "i" 'projectile-ibuffer) +;; Default binding is e. +(def-projectile-commander-method ?r + "Find recently visited file in project." + (projectile-recentf)) -(define-key projectile-command-map (kbd "4 v") - 'km/projectile-view-file-other-window) +;; Default binding is D. +(def-projectile-commander-method ?t + "Open project root in dired." + (projectile-dired)) -(define-prefix-command 'km/projectile-ctl-x-4-map) -(define-key ctl-x-4-map "p" 'km/projectile-ctl-x-4-map) +(def-projectile-commander-method ?v + "View project file." + (km/projectile-view-file)) -(define-key km/projectile-ctl-x-4-map (kbd "C-o") - 'projectile-display-buffer) -(define-key km/projectile-ctl-x-4-map "b" - 'projectile-switch-to-buffer-other-window) -(define-key km/projectile-ctl-x-4-map "d" - 'projectile-find-dir-other-window) -(define-key km/projectile-ctl-x-4-map "f" - 'projectile-find-file-other-window) -(define-key km/projectile-ctl-x-4-map "v" - 'km/projectile-view-file-other-window) -(define-key km/projectile-ctl-x-4-map "t" - 'projectile-find-implementation-or-test-other-window) +(def-projectile-commander-method ?V + "View project file in other window." + (km/projectile-view-file-other-window)) (provide 'init-projectile) -- cgit v1.2.3