Skip to content

Instantly share code, notes, and snippets.

@zeapo
Created March 25, 2016 13:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zeapo/b6430eb31967dddd6adc to your computer and use it in GitHub Desktop.
Save zeapo/b6430eb31967dddd6adc to your computer and use it in GitHub Desktop.
;;;; global
;; text-width
(set-fill-column 120)
(define-key evil-normal-state-map ";" 'evil-ex)
(define-key evil-normal-state-map "v" 'evil-visual-block)
(define-key evil-normal-state-map (kbd "C-v") 'evil-visual-state)
(define-key evil-normal-state-map " " 'ace-jump-mode)
(define-key evil-normal-state-map " k" 'ace-jump-char-mode)
(define-key evil-normal-state-map " l" 'ace-jump-line-mode)
;(define-key evil-normal-state-map " s" 'textmate-goto-symbol)
(define-key evil-normal-state-map " m" 'evil-jump-item)
(define-key evil-normal-state-map "-" 'delete-other-windows)
(define-key evil-normal-state-map (kbd "C-,") 'evil-force-normal-state)
(define-key evil-visual-state-map (kbd "C-,") 'evil-change-to-previous-state)
(define-key evil-insert-state-map (kbd "C-,") 'evil-normal-state)
(define-key evil-replace-state-map (kbd "C-,") 'evil-normal-state)
(define-key evil-normal-state-map (kbd "M-b") 'ido-switch-buffer)
(define-key evil-normal-state-map (kbd "M-e") 'ido-find-file)
(define-key evil-normal-state-map ",B" 'magit-checkout)
(define-key evil-normal-state-map (kbd "<tab>") 'indent-for-tab-command)
(define-key evil-normal-state-map (kbd "<C-return>") 'new-line-in-normal-mode)
(define-key evil-normal-state-map (kbd "M-t") 'multi-term)
(define-key evil-normal-state-map (kbd "M-F") 'dired)
(define-key evil-normal-state-map (kbd "C-w") 'delete-trailing-whitespace)
(define-key evil-normal-state-map (kbd "M-j") 'evil-window-next)
(define-key evil-normal-state-map (kbd "M-k") 'evil-window-prev)
(define-key evil-normal-state-map (kbd "M-.") 'my-find-tag)
(define-key evil-normal-state-map (kbd "C-w") 'delete-trailing-whitespace)
(define-key evil-normal-state-map (kbd "C-SPC") 'comment-or-uncomment-region-or-line)
(define-key evil-normal-state-map (kbd "M-o") 'session-jump-to-last-change)
(evil-define-key 'visual global-map (kbd ",re") 'dr/extract-variable)
(evil-define-key 'normal global-map (kbd ",ri") 'dr/inline-variable)
(global-set-key (kbd "C-x f") 'fiplr-find-file)
(global-set-key [f1] 'magit-status)
(global-set-key [f2] 'writeroom-mode)
(global-set-key [f5] 'my-clear-all-caches)
(global-set-key [escape] 'keyboard-quit)
(global-set-key (kbd "M-a") 'mark-whole-buffer)
(global-set-key (kbd "C-\\") 'highlight-symbol-at-point)
(global-set-key (kbd "<M-up>") 'er/expand-region) ;
(global-set-key (kbd "<M-down>") 'er/contract-region)
(global-set-key (kbd "C-<backspace>") 'my-delete-backwards)
(global-set-key (kbd "RET") 'newline-and-indent)
(global-set-key (kbd "M-.") 'my-find-tag)
(global-set-key (kbd "M-b") 'ibuffer)
(global-set-key (kbd "M-v") 'evil-paste-after)
(global-set-key (kbd "M-s") 'save-buffer)
(global-set-key (kbd "M-w") 'quit-window)
(global-set-key (kbd "M-W") 'projectile-kill-buffers)
;;; i miss intellij
(global-set-key (kbd "M-q") 'evil-quit-all)
(evil-define-key 'visual global-map
(kbd "M-d") 'duplicate-region)
(evil-define-key 'normal global-map
(kbd "M-d") 'duplicate-line)
(evil-define-key 'insert global-map
(kbd "M-d") 'duplicate-line
(kbd "M-<backspace>") 'kill-whole-line
(kbd "M-J") 'evil-join
(kbd "M-<return>") 'evil-open-below
(kbd "M-<left>") 'evil-first-non-blank
(kbd "M-<right>") 'move-end-of-line)
;; use C-; to comment/uncomment region and line
(defun comment-or-uncomment-region-or-line ()
"Comments or uncomments the region or the current line if there's no active region."
(interactive)
(let (beg end)
(if (region-active-p)
(setq beg (region-beginning) end (region-end))
(setq beg (line-beginning-position) end (line-end-position)))
(comment-or-uncomment-region beg end)
(next-line)))
(define-key evil-normal-state-map (kbd "C-;") 'comment-or-uncomment-region-or-line)
(define-key evil-visual-state-map (kbd "C-;") 'comment-or-uncomment-region-or-line)
(define-key evil-insert-state-map (kbd "C-;") 'comment-or-uncomment-region-or-line)
;;; Some keybindings
(provide 'vim-keymaps)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment