From b7295426c95bf968288bb6ead2db416a71ec4d3e Mon Sep 17 00:00:00 2001 From: Case Duckworth Date: Sun, 9 Jan 2022 20:52:07 -0600 Subject: Weekend, babee --- lisp/+casing.el | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) (limited to 'lisp/+casing.el') diff --git a/lisp/+casing.el b/lisp/+casing.el index 5f39b2e..c8e9e4d 100644 --- a/lisp/+casing.el +++ b/lisp/+casing.el @@ -3,7 +3,6 @@ ;;; Code: (require 'thingatpt) -(require '+key) ;;;###autoload (defun +upcase-dwim (arg) @@ -61,21 +60,23 @@ Otherwise, it calls `capitalize-word' on the word at point (using ;; Later on, I'll add repeat maps and stuff in here... +(defvar +casing-map (let ((map (make-sparse-keymap))) + (define-key map "u" #'+upcase-dwim) + (define-key map (kbd "M-u") #'+upcase-dwim) + (define-key map "l" #'+downcase-dwim) + (define-key map (kbd "M-l") #'+downcase-dwim) + (define-key map "c" #'+capitalize-dwim) + (define-key map (kbd "M-c") #'+capitalize-dwim) + map) + "Keymap for case-related twiddling.") + (define-minor-mode +casing-mode "Enable easy case-twiddling commands." :lighter " cC" + :global t :keymap (let ((map (make-sparse-keymap))) - (define-key map "u" #'+upcase-dwim) - (define-key map (kbd "M-u") #'+upcase-dwim) - (define-key map "l" #'+downcase-dwim) - (define-key map (kbd "M-l") #'+downcase-dwim) - (define-key map "c" #'+capitalize-dwim) - (define-key map (kbd "M-c") #'+capitalize-dwim) - map) - (define-key +key-mode-map (kbd "M-c") (when +casing-mode - +casing-mode-map))) - -(defvaralias '+casing-map '+casing-mode-map) + (define-key map (kbd "M-c") +casing-map) + map)) (provide '+casing) ;;; +casing.el ends here -- cgit 1.4.1-21-gabe81