]> code.delx.au - dotemacs/blob - lisp/my-keys.el
more text utility functions with key bindings
[dotemacs] / lisp / my-keys.el
1 ;;; -*- lexical-binding: t -*-
2
3 ;; Disable suspend-frame, it's annoying
4 (global-set-key (kbd "C-z") nil)
5
6 ;; General commands
7 (global-set-key (kbd "M-x") 'counsel-M-x)
8
9 ;; Search
10 (global-set-key (kbd "C-s") 'swiper)
11 (global-set-key (kbd "C-r") 'ivy-resume)
12
13 ;; Files/buffers
14 (global-set-key (kbd "C-x C-f") 'counsel-find-file)
15 (global-set-key (kbd "C-x f") 'counsel-git)
16 (global-set-key (kbd "C-x g") 'counsel-git-grep)
17 (global-set-key (kbd "C-x c") 'my/kill-buffers-not-in-frame)
18 (global-set-key (kbd "C-x C-b") 'ibuffer)
19 (global-set-key (kbd "C-x C-r") 'ivy-recentf)
20 (global-set-key (kbd "C-c g d") 'git-gutter:popup-hunk)
21 (global-set-key (kbd "C-c g p") 'git-gutter:previous-hunk)
22 (global-set-key (kbd "C-c g n") 'git-gutter:next-hunk)
23 (global-set-key (kbd "C-c g a") 'git-gutter:stage-hunk)
24 (global-set-key (kbd "C-c g u") 'git-gutter:revert-hunk)
25 (global-set-key (kbd "C-c g r") 'my/git-reset-buffer)
26
27 ;; Windows/frames
28 (global-set-key (kbd "<C-up>") 'windmove-up)
29 (global-set-key (kbd "<C-down>") 'windmove-down)
30 (global-set-key (kbd "<C-left>") 'windmove-left)
31 (global-set-key (kbd "<C-right>") 'windmove-right)
32
33 ;; Movement
34 (global-set-key (kbd "M-g M-j") 'avy-goto-char-timer)
35 (global-set-key (kbd "M-g M-l") 'avy-goto-char-in-line)
36 (global-set-key (kbd "M-g M-w") 'avy-goto-word-1)
37 (global-set-key (kbd "M-g M-g") 'avy-goto-line)
38
39 ;; Text formatting
40 (global-set-key (kbd "M-/") 'hippie-expand)
41 (global-set-key (kbd "M-;") 'my/comment-dwim)
42 (global-set-key (kbd "M-i") 'change-inner)
43 (global-set-key (kbd "C-o") 'my/open-line-above)
44 (global-set-key (kbd "M-o") 'my/open-line-below)
45 (global-set-key (kbd "C-c c") 'my/copy-line)
46 (global-set-key (kbd "C-c d") 'my/duplicate-line)
47
48 ;; Marking
49 (global-set-key (kbd "C-=") 'er/expand-region)
50 (global-set-key (kbd "C-c l") 'mc/edit-lines)
51 (global-set-key (kbd "C-c m") 'mc/mark-more-like-this-extended)
52
53 ;; Killing and deleting
54 (global-set-key (kbd "M-y") 'counsel-yank-pop)
55 (global-set-key (kbd "M-z") 'zap-up-to-char)
56 (global-set-key (kbd "C-c k") 'kill-whole-line)
57 (global-set-key (kbd "C-c s") 'my/substitute-line)
58
59 ;; Mode switching
60 (global-set-key (kbd "C-x C-j") 'direx-project:jump-to-project-root-other-window)
61 (global-set-key (kbd "<f8>") 'flyspell-mode)
62 (global-set-key (kbd "<f9>") 'whitespace-mode)
63 (global-set-key (kbd "<f10>") 'toggle-truncate-lines)