diff options
| author | Craig Jennings <c@cjennings.net> | 2026-05-12 18:00:50 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-05-12 18:00:50 -0500 |
| commit | 98a200c955117893d3c27ace8e911c53ca2a7395 (patch) | |
| tree | 2a180b1190d8f1e0e30d85ca164fabc73662ccc6 /modules/prog-webdev.el | |
| parent | 040038d42f82d48c2e6b57a0d4494d9aabf453a9 (diff) | |
| download | dotemacs-98a200c955117893d3c27ace8e911c53ca2a7395.tar.gz dotemacs-98a200c955117893d3c27ace8e911c53ca2a7395.zip | |
refactor(prog-webdev): extract the prettier format-command builder
I pulled the prettier command-string construction out of `cj/webdev-format-buffer` into `cj/--webdev-format-command`. The wrapper stays thin: resolve `(or buffer-file-name "file.ts")`, hand the command to `shell-command-on-region`, clamp point. With the command shape in a pure helper I can unit-test it directly.
Diffstat (limited to 'modules/prog-webdev.el')
| -rw-r--r-- | modules/prog-webdev.el | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/modules/prog-webdev.el b/modules/prog-webdev.el index 4b0333f2..2b66f2ec 100644 --- a/modules/prog-webdev.el +++ b/modules/prog-webdev.el @@ -58,6 +58,10 @@ Install with: sudo pacman -S prettier") (executable-find ts-language-server-path)) (lsp-deferred))) +(defun cj/--webdev-format-command (file) + "Return the prettier command that formats FILE's contents on stdin." + (format "prettier --stdin-filepath %s" (shell-quote-argument file))) + (defun cj/webdev-format-buffer () "Format the current buffer with prettier. Detects the file type automatically from the filename." @@ -65,10 +69,9 @@ Detects the file type automatically from the filename." (if (executable-find prettier-path) (let ((point (point))) (shell-command-on-region (point-min) (point-max) - (format "prettier --stdin-filepath %s" - (shell-quote-argument - (or buffer-file-name "file.ts"))) - nil t) + (cj/--webdev-format-command + (or buffer-file-name "file.ts")) + nil t) (goto-char (min point (point-max)))) (user-error "prettier not found; install with: sudo pacman -S prettier"))) |
