Prettier is an opinionated code formatter. It enforces a consistent style by parsing your code and re-printing it with its own rules that take the maximum line length into account, wrapping code when necessary.
This is the developer preview of the Lava/HTML prettier plugin.
Soon? Yes. Right now? No. We're still working on it. We're looking for feedback on the plugin. If you have any feedback, please open an issue.
# with npm
npm install --save-dev prettier prettier-plugin-lava
# with yarn
yarn add --dev prettier prettier-plugin-lava
See our Wiki pages on the subject:
- In the terminal (with Node.js)
- In the browser
- In your editor
- In a CI workflow
- As a pre-commit hook
- With a bundler
Prettier for Liquid supports the following options.
Name | Default | Description |
---|---|---|
printWidth |
600 |
Changed from Prettier's default (80 ) (see prettier docs) |
tabWidth |
4 |
Changed from Prettier's default (2 ) (see prettier docs) |
useTabs |
false |
Same as in Prettier (see prettier docs) |
singleQuote |
false |
Same as in Prettier (see prettier docs) |
lavaSingleQuote |
true |
Use single quotes instead of double quotes in Lava tag and objects (since v0.2.0). |
embeddedSingleQuote |
true |
Use single quotes instead of double quotes in embedded languages (JavaScript, CSS, TypeScript inside <script> , <style> or Liquid equivalent) (since v0.4.0). |
htmlWhitespaceSensitivity |
css |
Same as in Prettier (see prettier docs) |
singleLineLinkTags |
false |
If set to true , will print <link> tags on a single line to remove clutter |
indentSchema |
false |
If set to true , will indent the contents of the {% schema %} tag |
We support the following comments (either via HTML or Lava comments):
prettier-ignore
prettier-ignore-attribute
prettier-ignore-attributes
(alias)
They target the next node in the tree. Unparseable code can't be ignored and will throw an error.
{% # prettier-ignore %}
<div class="x" >hello world</div >
{% # prettier-ignore-attributes %}
<div
[[#if Condition]]
class="a b c"
[[/if ]]
></div>
Take a look at our known issues and open issues.
MIT.