Some more emacs config fixes and keybinds
This commit is contained in:
@@ -24,6 +24,7 @@
|
|||||||
(blink-cursor-mode 0) ; No blinking
|
(blink-cursor-mode 0) ; No blinking
|
||||||
(global-hl-line-mode) ; Where am I?
|
(global-hl-line-mode) ; Where am I?
|
||||||
(pixel-scroll-precision-mode 1) ; This is kinda epic
|
(pixel-scroll-precision-mode 1) ; This is kinda epic
|
||||||
|
(global-visual-line-mode 1) ; Visual lines make more sense
|
||||||
|
|
||||||
;; I prefer visual lines
|
;; I prefer visual lines
|
||||||
(setq display-line-numbers-type 'visual
|
(setq display-line-numbers-type 'visual
|
||||||
@@ -88,26 +89,54 @@
|
|||||||
:config
|
:config
|
||||||
(evil-collection-init))
|
(evil-collection-init))
|
||||||
|
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>.") 'find-file)
|
;; based on http://emacsredux.com/blog/2013/04/03/delete-file-and-buffer/
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>bi") 'ibuffer)
|
(defun delete-file-and-buffer ()
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>bd") 'delete-buffer)
|
"Kill the current buffer and deletes the file it is visiting."
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>bn") 'next-buffer)
|
(interactive)
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>bp") 'previous-buffer)
|
(let ((filename (buffer-file-name)))
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>pp") 'projectile-switch-project)
|
(if filename
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>pf") 'projectile-find-file)
|
(if (y-or-n-p (concat "Do you really want to delete file " filename " ?"))
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>pa") 'projectile-add-known-project)
|
(progn
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>gg") 'magit-status)
|
(delete-file filename)
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>hv") 'describe-variable)
|
(message "Deleted file %s." filename)
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>hf") 'describe-function)
|
(kill-buffer)))
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>hk") 'describe-key)
|
(message "Not a file visiting buffer!"))))
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>hF") 'describe-face)
|
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>ws") 'evil-window-split)
|
(evil-define-key 'motion 'global (kbd "j") 'evil-next-visual-line)
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>wv") 'evil-window-vsplit)
|
(evil-define-key 'motion 'global (kbd "k") 'evil-previous-visual-line)
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>wd") 'evil-window-delete)
|
(evil-define-key 'motion 'global (kbd "<leader>.") 'find-file)
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>wj") 'evil-window-down)
|
(evil-define-key 'motion 'global (kbd "<leader>bi") 'ibuffer)
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>wk") 'evil-window-up)
|
(evil-define-key 'motion 'global (kbd "<leader>bd") 'delete-buffer)
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>wh") 'evil-window-left)
|
(evil-define-key 'motion 'global (kbd "<leader>bn") 'next-buffer)
|
||||||
(evil-define-key 'normal 'global (kbd "<leader>wl") 'evil-window-right)
|
(evil-define-key 'motion 'global (kbd "<leader>bp") 'previous-buffer)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>pp") 'projectile-switch-project)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>pf") 'projectile-find-file)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>pa") 'projectile-add-known-project)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>gg") 'magit-status)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>hv") 'describe-variable)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>hf") 'describe-function)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>hk") 'describe-key)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>hF") 'describe-face)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>ws") 'evil-window-split)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>wv") 'evil-window-vsplit)
|
||||||
|
(defun evil-window-split-follow ()
|
||||||
|
(interactive)
|
||||||
|
(let ((evil-split-window-below t))
|
||||||
|
(evil-window-split)))
|
||||||
|
(defun evil-window-vsplit-follow ()
|
||||||
|
(interactive)
|
||||||
|
(let ((evil-vsplit-window-right t))
|
||||||
|
(evil-window-vsplit)))
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>wS") 'evil-window-split-follow)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>wV") 'evil-window-vsplit-follow)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>wd") 'evil-window-delete)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>wj") 'evil-window-down)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>wk") 'evil-window-up)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>wh") 'evil-window-left)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>wl") 'evil-window-right)
|
||||||
|
(evil-define-key 'motion 'global (kbd "<leader>fd") 'delete-file-and-buffer)
|
||||||
|
(evil-define-key 'motion 'org-mode-map (kbd "<leader>mll") 'org-insert-link)
|
||||||
|
(define-key magit-mode-map (kbd "SPC") nil)
|
||||||
|
|
||||||
(global-set-key (kbd "C-j") 'evil-window-down)
|
(global-set-key (kbd "C-j") 'evil-window-down)
|
||||||
(global-set-key (kbd "C-k") 'evil-window-up)
|
(global-set-key (kbd "C-k") 'evil-window-up)
|
||||||
|
Reference in New Issue
Block a user