;;; -*- lexical-binding: t -*- ;; Disable suspend-frame, it's annoying (global-set-key (kbd "C-z") nil) (global-set-key (kbd "C-x C-z") nil) ;; General commands (global-set-key (kbd "M-x") 'counsel-M-x) ;; Search (global-set-key (kbd "C-s") 'swiper) (global-set-key (kbd "C-r") 'ivy-resume) ;; Files/buffers (global-set-key (kbd "C-x C-f") 'counsel-find-file) (global-set-key (kbd "C-x f") 'counsel-git) (global-set-key (kbd "C-x g") 'counsel-git-grep) (global-set-key (kbd "C-x c") 'my/kill-buffers-not-in-frame) (global-set-key (kbd "C-x C-b") 'ibuffer) (global-set-key (kbd "C-x C-r") 'ivy-recentf) (global-set-key (kbd "C-c g d") 'git-gutter:popup-hunk) (global-set-key (kbd "C-c g p") 'git-gutter:previous-hunk) (global-set-key (kbd "C-c g n") 'git-gutter:next-hunk) (global-set-key (kbd "C-c g a") 'git-gutter:stage-hunk) (global-set-key (kbd "C-c g u") 'git-gutter:revert-hunk) (global-set-key (kbd "C-c g r") 'my/git-reset-buffer) ;; Windows/frames (global-set-key (kbd "") 'windmove-up) (global-set-key (kbd "") 'windmove-down) (global-set-key (kbd "") 'windmove-left) (global-set-key (kbd "") 'windmove-right) ;; Movement (global-set-key (kbd "M-g M-j") 'avy-goto-char-timer) (global-set-key (kbd "M-g M-l") 'avy-goto-char-in-line) (global-set-key (kbd "M-g M-w") 'avy-goto-word-1) (global-set-key (kbd "M-g M-g") 'avy-goto-line) ;; Text formatting (global-set-key (kbd "M-/") 'hippie-expand) (global-set-key (kbd "M-;") 'my/comment-dwim) (global-set-key (kbd "M-i") 'change-inner) (global-set-key (kbd "C-o") 'my/open-line-above) (global-set-key (kbd "M-o") 'my/open-line-below) (global-set-key (kbd "C-c c") 'my/copy-line) (global-set-key (kbd "C-c d") 'my/duplicate-line) ;; Marking (global-set-key (kbd "C-=") 'er/expand-region) (global-set-key (kbd "C-c l") 'mc/edit-lines) (global-set-key (kbd "C-c m") 'mc/mark-more-like-this-extended) ;; Killing and deleting (global-set-key (kbd "C-y") 'my/yank) (global-set-key (kbd "M-y") 'counsel-yank-pop) (global-set-key (kbd "M-z") 'zap-up-to-char) (global-set-key (kbd "C-c k") 'kill-whole-line) (global-set-key (kbd "C-c s") 'my/substitute-line) ;; Mode switching (global-set-key (kbd "C-x C-j") 'direx-project:jump-to-project-root-other-window) (global-set-key (kbd "") 'flyspell-mode) (global-set-key (kbd "") 'whitespace-mode) (global-set-key (kbd "") 'toggle-truncate-lines)