feat: Add god-mode modal editing with custom keybindings

This commit is contained in:
2026-05-12 09:12:22 +08:00
parent 61edd16f0c
commit b0a340f8b5
4 changed files with 40 additions and 5 deletions

View File

@@ -158,6 +158,7 @@ targets."
search-ring
regexp-search-ring
extended-command-history)
savehist-ignored-variables '(consult-notes-history)
savehist-autosave-interval 300)
(savehist-mode))
@@ -194,7 +195,7 @@ targets."
("C-x p b" . consult-project-buffer))
:config
(setq projectile-enable-caching t))
;; ibuffer
(use-package ibuffer
:config
@@ -224,7 +225,7 @@ targets."
(name . "^\\*Help\\*$")
(name . "^\\*Custom.*")
(name . "^\\*Org Agenda\\*$")
(name . "^\\*info\\*$")
(name . "^\\*info\\*$")
(name . "^\\*Backtrace\\*$")
(name . "^\\*Messages\\*$")
(name . "*Chinese-word-segmentation*")
@@ -326,6 +327,20 @@ targets."
(?t "Types" font-lock-type-face)
(?v "Variables" font-lock-variable-name-face)))))))
;; god-mode模态编辑
(use-package god-mode
:config
(setq god-mode-enable-function-key-translation nil)
(defun god-mode-enable-relative-line-numbers ()
(if god-local-mode
(setq display-line-numbers 'relative)
(setq display-line-numbers t)))
(add-hook 'god-local-mode-hook #'god-mode-enable-relative-line-numbers)
(setq god-exempt-major-modes
(delete-dups (append '(diff-mode exwm-mode) god-exempt-major-modes))))
;; perspective工作区管理
(use-package perspective
:bind