diff options
| author | Craig Jennings <c@cjennings.net> | 2025-10-20 09:17:00 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2025-10-20 09:17:00 -0500 |
| commit | f8ab66f82de1343be241ff4ac721a0e32f8af424 (patch) | |
| tree | cc35be904ad8b3fe25a36e9a0d1670c1b79376ff | |
| parent | f041d7f355cdfeeee963553e98e0deea4306f1a9 (diff) | |
refactor: text-config: Use setopt and tweak hook functions
- Replace `setq-default` with `setopt` for consistency.
- Update hook functions to use sharp-quote for improved efficiency.
- Remove unnecessary defer statements and improve prettify-symbols setup with a function for case insensitivity.
| -rw-r--r-- | modules/text-config.el | 66 |
1 files changed, 24 insertions, 42 deletions
diff --git a/modules/text-config.el b/modules/text-config.el index 45f0e8b2..730e36a3 100644 --- a/modules/text-config.el +++ b/modules/text-config.el @@ -15,20 +15,19 @@ ;; ------------------------------- Text Settings ------------------------------- ;; Global text settings -(setq-default indent-tabs-mode nil) ;; indentation should not insert tabs -(setq require-final-newline nil) ;; don't require newlines at the end of files -(setq sentence-end-double-space nil) ;; in the 21st century, sentences end w/ a single space +(setopt indent-tabs-mode nil) ;; indentation should not insert tabs +(setopt require-final-newline nil) ;; don't require newlines at the end of files +(setopt sentence-end-double-space nil) ;; in the 21st century, sentences end w/ a single space (defun cj/text-mode-settings () "Personal settings for `text-mode'." (turn-on-visual-line-mode)) ;; wrap text in text modes -(add-hook 'text-mode-hook 'cj/text-mode-settings) +(add-hook 'text-mode-hook #'cj/text-mode-settings) ;; --------------------------------- Move Text --------------------------------- ;; move the current line or selected region up or down in the buffer (use-package move-text - :defer 0.5 :bind (("C-<up>" . move-text-up) ("C-<down>" . move-text-down))) @@ -37,7 +36,6 @@ ;; increase the region by semantic units (use-package expand-region - :defer 0.5 :bind (("M-=" . er/expand-region) ("C->" . er/expand-region) @@ -48,7 +46,6 @@ ;; change inner and outer, just like in vim. (use-package change-inner - :defer 0.5 :bind (("C-c i" . change-inner) ("C-c o" . change-outer))) @@ -57,7 +54,6 @@ (use-package delsel :ensure nil ;; built-in - :defer 0.5 :config (delete-selection-mode t)) @@ -65,57 +61,43 @@ ;; edit selection in new buffer, C-c to finish; replaces with modifications (use-package edit-indirect - :defer 1 :bind ("M-I" . edit-indirect-region)) ;; ------------------------------ Prettify Symbols ----------------------------- ;; replacing the word l-a-m-b-d-a with a symbol, just because -(setq-default prettify-symbols-alist - (let ((mapping (lambda (pair) - (let ((k (car pair)) - (v (cdr pair))) - (list (cons (downcase k) v) - (cons (upcase k) v)))))) - (apply #'append - (mapcar mapping - '( - ("#+begin_src" . "λ") - ("#+begin_src" . "λ") - ("#+end_src" . "λ") - ("#+begin_quote" . "") - ("#+end_quote" . "") - ("lambda" . "λ")))))) - - -(add-hook 'prog-mode-hook 'turn-on-prettify-symbols-mode) -(add-hook 'org-mode-hook 'turn-on-prettify-symbols-mode) +(defun cj/case-insensitive-symbol-pair (pair) + "Convert a symbol PAIR to both lowercase and uppercase variants. +PAIR is a cons cell of (string . symbol)." + (let ((k (car pair)) + (v (cdr pair))) + (list (cons (downcase k) v) + (cons (upcase k) v)))) + +(setopt prettify-symbols-alist + (apply #'append + (mapcar #'cj/case-insensitive-symbol-pair + '(("#+begin_src" . "λ") + ("#+end_src" . "λ") + ("lambda" . "λ"))))) + +(add-hook 'prog-mode-hook #'turn-on-prettify-symbols-mode) +(add-hook 'org-mode-hook #'turn-on-prettify-symbols-mode) ;; ---------------------------------- Olivetti --------------------------------- ;; center text in the middle of the screen. (use-package olivetti - :defer 1 + :commands olivetti-mode :config - (setq-default olivetti-body-width 100)) + (setopt olivetti-body-width 100)) ;; 100 characters wide (comfortable reading width) ;; --------------------------- Accent (Diacriticals) --------------------------- ;; an easy way to enter diacritical marks (use-package accent - :defer 1 + :commands accent-company :bind ("C-`" . accent-company)) -;; ----------------------------- Visual Fill Column ---------------------------- -;; text wrapping - -;; (use-package visual-fill-column -;; :defer 0.5 -;; :config -;; (setq-default visual-fill-column-center-text nil) -;; (setq-default visual-fill-column-width 100) -;; :hook -;; (visual-line-mode . visual-fill-column-mode)) - (provide 'text-config) ;;; text-config.el ends here |
