Keymap changes with general.el
This commit is contained in:
parent
ee1098a843
commit
1401f0b8f8
@ -45,10 +45,7 @@
|
|||||||
(fset 'yes-or-no-p 'y-or-n-p)
|
(fset 'yes-or-no-p 'y-or-n-p)
|
||||||
|
|
||||||
;; Show paren differently
|
;; Show paren differently
|
||||||
(setq show-paren-delay 0.1
|
(setq show-paren-delay 0.1 show-paren-highlight-openparen t show-paren-when-point-inside-paren t show-paren-when-point-in-periphery t)
|
||||||
show-paren-highlight-openparen t
|
|
||||||
show-paren-when-point-inside-paren t
|
|
||||||
show-paren-when-point-in-periphery t)
|
|
||||||
|
|
||||||
;;; Memory Limits and Performance
|
;;; Memory Limits and Performance
|
||||||
;; Undo/Redo
|
;; Undo/Redo
|
||||||
@ -331,81 +328,76 @@
|
|||||||
;; https://github.com/cofi/evil-numbers
|
;; https://github.com/cofi/evil-numbers
|
||||||
(use-package evil-numbers
|
(use-package evil-numbers
|
||||||
:straight t
|
:straight t
|
||||||
:after evil)
|
:after evil
|
||||||
|
:config
|
||||||
(evil-define-key '(normal visual) 'global (kbd "C-a +") 'evil-numbers/inc-at-pt)
|
(evil-define-key '(normal visual) 'global (kbd "C-a +") 'evil-numbers/inc-at-pt)
|
||||||
(evil-define-key '(normal visual) 'global (kbd "C-a -") 'evil-numbers/dec-at-pt)
|
(evil-define-key '(normal visual) 'global (kbd "C-a -") 'evil-numbers/dec-at-pt)
|
||||||
(evil-define-key '(normal visual) 'global (kbd "C-a C-+") 'evil-numbers/inc-at-pt-incremental)
|
(evil-define-key '(normal visual) 'global (kbd "C-a C-+") 'evil-numbers/inc-at-pt-incremental)
|
||||||
(evil-define-key '(normal visual) 'global (kbd "C-a C--") 'evil-numbers/dec-at-pt-incremental)
|
(evil-define-key '(normal visual) 'global (kbd "C-a C--") 'evil-numbers/dec-at-pt-incremental))
|
||||||
|
|
||||||
;;; Org mode Evil bindings
|
|
||||||
;; https://github.com/Somelauw/evil-org-mode
|
|
||||||
(use-package evil-org
|
|
||||||
:straight t
|
|
||||||
:hook (org-mode . evil-org-mode)
|
|
||||||
:after org
|
|
||||||
:config
|
|
||||||
(require 'evil-org-agenda)
|
|
||||||
(evil-org-agenda-set-keys))
|
|
||||||
|
|
||||||
;; Custom Evil Keybinds
|
;; Custom Evil Keybinds
|
||||||
;; Evil Guide: https://github.com/noctuid/evil-guide?tab=readme-ov-file#keybindings-and-states
|
;; Evil Guide: https://github.com/noctuid/evil-guide?tab=readme-ov-file#keybindings-and-states
|
||||||
|
;; General keybind definition helper
|
||||||
|
;; https://github.com/noctuid/general.el
|
||||||
|
(use-package general
|
||||||
|
:straight t
|
||||||
|
:config (general-evil-setup))
|
||||||
|
|
||||||
;; Leader (prefix key)
|
;; Global Normal Mode Keymaps
|
||||||
(evil-set-leader nil (kbd "SPC"))
|
(general-nmap
|
||||||
|
:prefix "SPC"
|
||||||
;; Eval
|
;; Eval Keybinds
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> :") 'eval-expression)
|
":" 'eval-expression
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> p") 'execute-extended-command)
|
"p" 'execute-extended-command
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> e") 'eval-last-sexp)
|
"e" 'eval-last-sexp
|
||||||
(evil-define-key 'visual 'global (kbd "<leader> e") 'eval-region)
|
"E" 'eval-print-last-sexp
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> E") 'eval-print-last-sexp)
|
"b" 'eval-buffer
|
||||||
|
"." 'repeat-complex-command
|
||||||
|
"q" 'evil-quit-all
|
||||||
;; Buffer Management
|
;; Buffer Management
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> w") 'save-buffer)
|
"w" 'save-buffer
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> b") 'eval-buffer)
|
"l" 'ibuffer
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> l") 'ibuffer)
|
"d" 'evil-delete-buffer
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> d") 'evil-delete-buffer)
|
|
||||||
|
|
||||||
;; Toggles
|
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> A") 'abbrev-mode)
|
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> W") 'whitespace-mode)
|
|
||||||
|
|
||||||
;; Search and replace (interactive)
|
;; Search and replace (interactive)
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> o") 'occur)
|
"r" 'replace-regexp
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> r") 'replace-regexp)
|
"y" 'yank-from-kill-ring
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> y") 'yank-from-kill-ring)
|
|
||||||
|
|
||||||
;; Running external stuff
|
;; Running external stuff
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> c") 'compile)
|
"c" 'compile
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> r") 'recompile)
|
"!" 'shell-command
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> !") 'shell-command)
|
"&" 'async-shell-command
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> &") 'async-shell-command)
|
"g" 'magit-status
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> g") 'magit-status)
|
|
||||||
|
|
||||||
;; Jumping places
|
;; Jumping places
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> f") 'ffap)
|
"f" 'ffap
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> -") 'dired-jump)
|
"-" 'dired-jump
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> B") 'bookmark-jump)
|
"B" 'bookmark-jump
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> R") 'recentf)
|
;; External Apps
|
||||||
(evil-define-key 'normal 'global (kbd "C-c i") (lambda () (interactive) (find-file user-init-file)))
|
"O" 'ext-file-browser-in-workdir
|
||||||
|
"T" 'ext-terminal-in-workdir
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> O") 'ext-file-browser-in-workdir)
|
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> T") 'ext-terminal-in-workdir)
|
|
||||||
|
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> x") ctl-x-map)
|
|
||||||
;; Extra packages
|
;; Extra packages
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> s") 'yas-insert-snippet)
|
"s" 'yas-insert-snippet
|
||||||
(evil-define-key 'normal 'global (kbd "<leader> F") 'format-all-region-or-buffer)
|
"F" 'format-all-region-or-buffer)
|
||||||
|
|
||||||
|
;; Global Toggle Keymaps
|
||||||
|
(general-nmap
|
||||||
|
:prefix "SPC t"
|
||||||
|
;; Toggle Modes
|
||||||
|
"A" 'abbrev-mode
|
||||||
|
"W" 'whitespace-mode
|
||||||
|
"P" 'smartparens-mode)
|
||||||
|
|
||||||
|
;; Global Visual Mode Keymaps
|
||||||
|
(general-vmap
|
||||||
|
:prefix "SPC"
|
||||||
|
"e" 'eval-region)
|
||||||
|
|
||||||
;; Custom Ex commands
|
;; Custom Ex commands
|
||||||
(evil-ex-define-cmd "Format" 'format-all-region-or-buffer)
|
(evil-ex-define-cmd "Format" 'format-all-region-or-buffer) ;; format-all-code
|
||||||
;; end evil
|
;; end evil
|
||||||
|
|
||||||
(global-set-key (kbd "C-c C-y") 'yank-from-kill-ring)
|
;;; Regular Keybinds
|
||||||
;; TODO: use general to setup more specific keybinds
|
(global-set-key (kbd "C-c i") (lambda () (interactive) (find-file user-init-file)))
|
||||||
;; https://github.com/noctuid/general.el?tab=readme-ov-file
|
(global-set-key (kbd "C-c d") (lambda () (interactive) (find-file (getenv "DOTFILES"))))
|
||||||
|
(global-set-key (kbd "C-c g") (lambda () (interactive) (find-file (concat (getenv "DOTFILES") "/config/emacs/.config/emacs/init.el"))))
|
||||||
;;; Easy find init file
|
|
||||||
(set-register ?i (cons 'file user-init-file))
|
|
||||||
|
|
||||||
;;; Vanilla+ Packages (dired, magit, org-mode)
|
;;; Vanilla+ Packages (dired, magit, org-mode)
|
||||||
;; Dired (directory editor)
|
;; Dired (directory editor)
|
||||||
@ -416,22 +408,25 @@
|
|||||||
:config
|
:config
|
||||||
(setq dired-dwim-target t))
|
(setq dired-dwim-target t))
|
||||||
|
|
||||||
;; Magit (git interface)
|
;; Magit (intuitive git interface)
|
||||||
;; https://magit.vc/
|
;; https://magit.vc/
|
||||||
(use-package magit
|
(use-package magit
|
||||||
:straight t)
|
:straight t)
|
||||||
|
|
||||||
;; Org mode
|
;; Org mode (organization framework)
|
||||||
;; https://orgmode.org/
|
;; https://orgmode.org/
|
||||||
(use-package org
|
(use-package org
|
||||||
:straight nil)
|
:straight nil
|
||||||
|
:config
|
||||||
'(org-export-backends '(ascii html icalendar latex man md odt org))
|
'(org-export-backends '(ascii html icalendar latex man md odt org))
|
||||||
(global-set-key (kbd "C-c a") #'org-agenda)
|
(global-set-key (kbd "C-c a") #'org-agenda)
|
||||||
(global-set-key (kbd "C-c c") #'org-capture)
|
(global-set-key (kbd "C-c c") #'org-capture)
|
||||||
|
(global-set-key (kbd "C-c l") #'org-store-link)
|
||||||
(evil-define-key 'normal org-mode-map
|
(evil-define-key 'normal org-mode-map
|
||||||
(kbd "SPC TAB") 'org-todo
|
(kbd "SPC TAB") 'org-todo
|
||||||
|
(kbd "SPC t") 'org-todo
|
||||||
">" 'org-shiftmetaright
|
">" 'org-shiftmetaright
|
||||||
"<" 'org-shiftmetaleft)
|
"<" 'org-shiftmetaleft))
|
||||||
|
|
||||||
;;; Markdown support for emacs
|
;;; Markdown support for emacs
|
||||||
;; https://github.com/jrblevin/markdown-mode
|
;; https://github.com/jrblevin/markdown-mode
|
||||||
@ -508,13 +503,14 @@
|
|||||||
(define-fringe-bitmap 'git-gutter-fr:modified [224] nil nil '(center repeated))
|
(define-fringe-bitmap 'git-gutter-fr:modified [224] nil nil '(center repeated))
|
||||||
(define-fringe-bitmap 'git-gutter-fr:deleted [128 192 224 240] nil nil 'bottom))
|
(define-fringe-bitmap 'git-gutter-fr:deleted [128 192 224 240] nil nil 'bottom))
|
||||||
|
|
||||||
;;; Mini-buffer improvements (vertico, orderless, marginalia)
|
;;; Mini-buffer improvements (fido, orderless, marginalia)
|
||||||
|
|
||||||
;; Vertical Completion UI
|
;; Vertical Completion UI
|
||||||
;; https://github.com/minad/vertico
|
;; https://github.com/minad/vertico
|
||||||
(use-package vertico
|
;; (use-package vertico
|
||||||
:straight t
|
;; :straight t
|
||||||
:init (vertico-mode))
|
;; :init (vertico-mode))
|
||||||
|
(fido-vertical-mode)
|
||||||
|
|
||||||
;; Ordering regex for completion
|
;; Ordering regex for completion
|
||||||
;; https://github.com/oantolin/orderless
|
;; https://github.com/oantolin/orderless
|
||||||
@ -619,11 +615,6 @@
|
|||||||
|
|
||||||
;; Abbrevs and Snippets
|
;; Abbrevs and Snippets
|
||||||
|
|
||||||
;;; General English Abbrevs
|
|
||||||
(define-abbrev global-abbrev-table "bg" "background")
|
|
||||||
(define-abbrev global-abbrev-table "ty" "thank you")
|
|
||||||
(define-abbrev global-abbrev-table "yw" "you are welcome")
|
|
||||||
(define-abbrev global-abbrev-table "u" "you")
|
|
||||||
;; URLs
|
;; URLs
|
||||||
(define-abbrev global-abbrev-table "mygh" "https://github.com/lemonase")
|
(define-abbrev global-abbrev-table "mygh" "https://github.com/lemonase")
|
||||||
;; Timestamps
|
;; Timestamps
|
||||||
@ -720,11 +711,10 @@
|
|||||||
(use-package format-all
|
(use-package format-all
|
||||||
:straight t)
|
:straight t)
|
||||||
|
|
||||||
;;; Lua
|
;;; Other misc modes (lua, docker, gptel, load-env-vars, csv-mode)
|
||||||
(use-package lua-mode
|
(use-package lua-mode
|
||||||
:straight t)
|
:straight t)
|
||||||
|
|
||||||
;;; Other misc modes (docker, gptel, load-env-vars, csv-mode)
|
|
||||||
(use-package docker
|
(use-package docker
|
||||||
:straight t
|
:straight t
|
||||||
:defer t)
|
:defer t)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user