;; EXAMPLE: Global override of keybinding ;; Ged rid of default bindings I don't enjoy :< (general-def :states '(normal insert emacs visual) :keymaps 'override ;; This motherf***** + another ESC used to close my windows. NOO MOOORE! "M-ESC" (lambda () (interactive) (message "You pressed it again Mr. Fatfinger..."))) ;; GLOBAL BINDINGS (general-def :states '(normal insert visual) :keymaps 'override "C-j" 'evil-scroll-down "C-k" 'evil-scroll-up ;; "" 'evil-scroll-down ;; "" 'evil-scroll-up ) ;; This is a reference to the leader key defined in essentials.el ;; It basically means: + whatever is configured below ;; E.g. "SPC SPC" actually means "SPC SPC SPC" because it is prefix with `my-leader' (my-leader ;; These are the states for which the keybinding should work :states '(normal visual emacs) ;; This is the keymap for which the keybinding should work. ;; Override is the GLOBAL keymap but there are specific ones for each mode :keymaps 'override ;; This ignores the sole keybinding of "SPC SPC" to use this "namespace" for mode specific bindings "SPC" '(:ignore t :which-key "Mode Specific Binds") "SPC SPC" 'counsel-M-x "f" 'counsel-find-file "g" 'magit-status "h" 'evil-avy-goto-line "i" 'counsel-imenu "y" 'counsel-yank-pop ";" 'evilnc-comment-or-uncomment-lines "." 'save-buffer ;; window stuff "w" '(:ignore t :which-key "Window") ;; quick switch to other window "a" 'ace-window "w v" 'split-window-right "w h" 'split-window-below "w f" 'toggle-maximize-buffer "w L" 'windsize-right "w H" 'windsize-left "w J" 'windsize-down "w K" 'windsize-up ;; switch stuff "s" '(:ignore t :which-key "Switch") "s b" 'switch-to-buffer "s n" 'switch-to-next-buffer "s p" 'switch-to-prev-buffer "s s" 'counsel-switch-buffer "s a" 'ace-swap-window ;; kill stuff "k" '(:ignore t :which-key "Kill") "k b" 'kill-buffer "k w" 'delete-window "k W" 'kill-buffer-and-window "k o b" 'kill-some-buffers "k o w" 'delete-other-windows "k q q" 'kill-emacs "k k" 'kill-current-buffer ;; buffer stuff "b" '(:ignore t :which-key "Buffer (revert)") "b r" 'revert-buffer "b a r" 'auto-revert-mode ;; edit stuff "e" '(:ignore t :which-key "Edit") "e c" '((lambda() (interactive) (dired my/emacsconf)) :which-key "edit emacs config") ;; ui stuff "q" '(:ignore t :which-key "Quality :)") "q t" 'phga/cycle-themes "q =" 'phga/text-scale-adjust ;; tools "t u" 'vundo ;; describe stuff "?" '(:ignore t :which-key "Describe") "? v" 'describe-variable "? f" 'describe-function "? c" 'describe-char "? m" 'describe-mode "? k" 'describe-key "? F" 'describe-face ) (provide 'global-keybindings)