Autoformatting with js-beautify-html #241
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Turns out autoformatting is hard.
eslint --fix
with our configuration. You can try to find a prettier config that happens to overlap, but I don't believe it's possible.eslintConfig
from package.json. It's basically like runningyarn lint
every time you saveHTML formatting was another animal. Eslint isn't that opinionated about html formatting, and I think we should be more rigorous when possible.
For example:
eslint doesn't mind if you do stuff like this, but I'd prefer to be more strict:
autoformatting with
js-beautify
will produce this, but more work is needed to figure out how to get it to run in CI. I think this PR provides reasonable middle ground for VS Code users: hittingctrl+shift+i
will perform autoformatting.I'd love to bring back
yarn lint:html
but I've spent too long on this this morning so far. Settings for https://github.com/beautify-web/js-beautify can probably be found so that we can runjs-beautify
from a package.json command.