diff --git a/lisp/init-prettier.el b/lisp/init-prettier.el index aab0d46..01960bb 100644 --- a/lisp/init-prettier.el +++ b/lisp/init-prettier.el @@ -8,8 +8,18 @@ (or (not prettier-version) (prettier--in-node-modules-p))) (prettier-mode -1))) +(defun creature/prettier-json-parser () + (if (and buffer-file-name + (seq-contains + '("package.json" "package-lock.json" "composer.json") + (file-name-nondirectory buffer-file-name))) + '(json-stringify json json5) + '(json json5 json-stringify))) + (with-eval-after-load 'prettier - (add-hook 'prettier-mode-hook #'creature/prettier-setup)) + (add-hook 'prettier-mode-hook #'creature/prettier-setup) + (add-to-list 'prettier-major-mode-parsers + '(js-json-mode . creature/prettier-json-parser))) (dolist (hook '(css-mode-hook js-mode-hook typescript-mode-hook)) (add-hook hook #'prettier-mode))