Make prettier into a global minor mode that can be toggled on and off (#1496)

master
Paul Carduner 2017-05-05 09:10:59 -07:00 committed by Christopher Chedeau
parent 3cfc37d411
commit af754adb7b
2 changed files with 11 additions and 6 deletions

View File

@ -2,9 +2,7 @@ Add this to your init:
```elisp
(require 'prettier-js)
(add-hook 'js-mode-hook
(lambda ()
(add-hook 'before-save-hook 'prettier-before-save)))
(prettier-mode)
```
If you don't use `js-mode`, which is what Prettier targets by default, you'll need to first set your major-mode of choice:
@ -12,9 +10,7 @@ If you don't use `js-mode`, which is what Prettier targets by default, you'll ne
```elisp
(require 'prettier-js)
(setq prettier-target-mode "js2-mode")
(add-hook 'js2-mode-hook
(lambda ()
(add-hook 'before-save-hook 'prettier-before-save)))
(prettier-mode)
```
To adjust the CLI args used for the prettier command, you can customize the `prettier-args` variable:

View File

@ -219,4 +219,13 @@ function."
(delete-file bufferfile)
(delete-file outputfile)))
;;;###autoload
(define-minor-mode prettier-mode
"Runs prettier on file save when this mode is turned on"
:lighter " prettier"
:global t
(if prettier-mode
(add-hook 'before-save-hook 'prettier-before-save)
(remove-hook 'before-save-hook 'prettier-before-save)))
(provide 'prettier-js)