# svelte/mustache-spacing

enforce unified spacing in mustache

  • 🔧 The --fix option on the command line can automatically fix some of the problems reported by this rule.

# 📖 Rule Details

This rule aims at enforcing unified spacing in mustaches.

<script>  /* eslint svelte/mustache-spacing: "error" */ </script>  <!-- ✓ GOOD --> {name} <input bind:value={text} class="foo {bar}" /> <input {id} {...attrs} /> {@html page} {@debug o1, o2}  {#if c1}...{:else if c2}...{:else}...{/if}  {#each list as item}...{/each}  {#await p}...{:then val}...{:catch err}...{/await}  {#key id}...{/key}  <!-- ✗ BAD --> 
Expected no space after '{', but found. (svelte/mustache-spacing)
{
Expected no space before '}', but found. (svelte/mustache-spacing)
name }
<input bind:value=
Expected no space after '{', but found. (svelte/mustache-spacing)
{
Expected no space before '}', but found. (svelte/mustache-spacing)
Expected no space after '{', but found. (svelte/mustache-spacing)
Expected no space before '}', but found. (svelte/mustache-spacing)
text } class="foo { bar }" />
<input
Expected no space after '{', but found. (svelte/mustache-spacing)
{
Expected no space before '}', but found. (svelte/mustache-spacing)
Expected no space after '{', but found. (svelte/mustache-spacing)
Expected no space before '}', but found. (svelte/mustache-spacing)
id } { ...attrs } />
Expected no space after '{', but found. (svelte/mustache-spacing)
{
Expected no space before '}', but found. (svelte/mustache-spacing)
@html page }
Expected no space after '{', but found. (svelte/mustache-spacing)
{
Expected no space before '}', but found. (svelte/mustache-spacing)
@debug o1, o2 }
Expected no space after '{', but found. (svelte/mustache-spacing)
{
Expected no space before '}', but found. (svelte/mustache-spacing)
Expected no space after '{', but found. (svelte/mustache-spacing)
Expected no space before '}', but found. (svelte/mustache-spacing)
Expected no space after '{', but found. (svelte/mustache-spacing)
Expected no space before '}', but found. (svelte/mustache-spacing)
Expected no space after '{', but found. (svelte/mustache-spacing)
Expected no space before '}', but found. (svelte/mustache-spacing)
#if c1 }...{ :else if c2 }...{ :else }...{ /if }
Expected no space after '{', but found. (svelte/mustache-spacing)
{
Expected no space before '}', but found. (svelte/mustache-spacing)
Expected no space after '{', but found. (svelte/mustache-spacing)
Expected no space before '}', but found. (svelte/mustache-spacing)
#each list as item }...{ /each }
Expected no space after '{', but found. (svelte/mustache-spacing)
{
Expected no space before '}', but found. (svelte/mustache-spacing)
Expected no space after '{', but found. (svelte/mustache-spacing)
Expected no space before '}', but found. (svelte/mustache-spacing)
Expected no space after '{', but found. (svelte/mustache-spacing)
Expected no space before '}', but found. (svelte/mustache-spacing)
Expected no space after '{', but found. (svelte/mustache-spacing)
Expected no space before '}', but found. (svelte/mustache-spacing)
#await p }...{ :then val }...{ :catch err }...{ /await }
Expected no space after '{', but found. (svelte/mustache-spacing)
{
Expected no space before '}', but found. (svelte/mustache-spacing)
Expected no space after '{', but found. (svelte/mustache-spacing)
Expected no space before '}', but found. (svelte/mustache-spacing)
#key id }...{ /key }

# 🔧 Options

{  "svelte/mustache-spacing": [  "error",  {  "textExpressions": "never", // or "always"  "attributesAndProps": "never", // or "always"  "directiveExpressions": "never", // or "always"  "tags": {  "openingBrace": "never", // or "always"  "closingBrace": "never" // or "always" or "always-after-expression"  }  }  ] }
  • "never" … Expect no spaces between token and curly brackets. This is default.
  • "always" … Expect one space between token and curly brackets.
  • "always-after-expression" … Expect one space between expression and closing curly brackets, if the expression before the closing curly bracket.
  • textExpressions … Enforces the style of the mustache for the text expressions. e.g. {text}.
  • attributesAndProps … Enforces the style of the mustache for the attributes and props. e.g. <input value={text}.
  • directiveExpressions … Enforces the style of the mustache for the directive expressions. e.g. <input bind:value={text}.
  • tags … Enforces the style of the mustache for the mustache tags. e.g. {#if condition}.

# 🚀 Version

This rule was introduced in eslint-plugin-svelte v0.15.0

# 🔍 Implementation