Files
emacs/config/formatting.org
2025-12-02 04:30:57 -06:00

63 lines
1.5 KiB
Org Mode

* Blocks, Parentheses and Formatting Oh My!
** Parentheses, and Structural Editing
Sometimes if I delete a parenthesis out of hand I spend the next minute or two
kicking myself as I count the parentheses here and there. Well no more! With
[[https://shaunlebron.github.io/parinfer/][Parinfer]] structural editing, and taming parentheses becomes a
breeze.
#+begin_src emacs-lisp
(use-package parinfer-rust-mode
:ensure t
:init
(setq parinfer-rust-auto-download t)
:hook (emacs-lisp-mode . parinfer-rust-mode))
#+end_src
I also have =smart-parens= for parentheses matching in modes where =parinfer= would
be overkill.
#+begin_src emacs-lisp
(use-package smartparens
:ensure t
:hook (prog-mode text-mode markdown-mode)
:config
(require 'smartparens-config))
#+end_src
Might as well highlight the parentheses to make them easier to spot.
#+begin_src emacs-lisp
(use-package highlight-parentheses
:ensure t
:hook
(prog-mode . highlight-parentheses-mode))
#+end_src
** Apheleia
[[https://github.com/radian-software/apheleia][Aphelia]] tries to use the right formatting for any file and applies it asynchronously.
#+BEGIN_SRC emacs-lisp
(use-package apheleia
:config
(apheleia-global-mode +1))
#+END_SRC
** Indentation Level
#+begin_src emacs-lisp
;; Indent guides
(use-package highlight-indent-guides
:defer t
:hook (prog-mode . highlight-indent-guides-mode))
#+end_src
** List, and String Improvements
#+begin_src emacs-lisp
(use-package dash :ensure t)
(use-package s :ensure t)
#+end_src