diff options
| author | Craig Jennings <c@cjennings.net> | 2025-10-16 02:08:14 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2025-10-16 02:08:14 -0500 |
| commit | ca96c41bcbfcacec1f9737cc244a01b45f404b41 (patch) | |
| tree | f71ac5bd8ceaf6d703b0a4691ef3811410cfc176 /modules | |
| parent | e8e76382f191325e15f8217880dee335f0e8003a (diff) | |
refactor: keybindings: Enhance case-change operations keymap
- Transitioned to `defvar-keymap` for a clearer keymap definition.
- Updated keybinding setup to use `keymap-set`.
- Added keybindings dependency check with eval-when-compile.
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/custom-case.el | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/modules/custom-case.el b/modules/custom-case.el index 6baffeb7..e7403d4a 100644 --- a/modules/custom-case.el +++ b/modules/custom-case.el @@ -5,6 +5,8 @@ ;;; Code: +(eval-when-compile (require 'keybindings)) + (defun cj/upcase-dwim () "Upcase the active region, or upcase the symbol at point if no region." (interactive) @@ -93,16 +95,17 @@ and all articles are considered minor words." (insert c-up)))))) (goto-char word-end) (setq is-first nil)))))) + ;; replace the capitalize-region keybinding to call title-case (global-set-key [remap capitalize-region] 'cj/title-case-region) ;; Case-change operations prefix and keymap -(define-prefix-command 'cj/case-map nil - "Keymap for case-change operations.") -(define-key cj/custom-keymap "c" 'cj/case-map) -(define-key cj/case-map "t" 'cj/title-case-region) -(define-key cj/case-map "u" 'cj/upcase-dwim) -(define-key cj/case-map "l" 'cj/downcase-dwim) ;; for "lower" case +(defvar-keymap cj/case-map + :doc "Keymap for case-change operations." + "t" #'cj/title-case-region + "u" #'cj/upcase-dwim + "l" #'cj/downcase-dwim) +(keymap-set cj/custom-keymap "c" cj/case-map) (provide 'custom-case) ;;; custom-case.el ends here. |
