Skip to content

fmt: preserve spacing in templates to allow for organizing code #374

Description

@andradei

They are useful to organize HTML tags, but the formatter removes all empty lines.

Example:

This

templ Form() {
	<a href="event/new">
		+ Create
	</a>

	<form method="post" action="/event/new">
		<label for="title">Title</label>
		<input id="title" name="title" type="text" required class="border rounded-lg block"/>

		<label for="date">Title</label>
		<input id="date" name="date" type="date" required class="border rounded-lg"/>

		<button type="submit">Create</button>
	</form>
}

becomes

templ Form() {
	<a href="event/new">
		+ Create
	</a>
	<form method="post" action="/event/new">
		<label for="title">Title</label>
		<input id="title" name="title" type="text" required class="border rounded-lg block"/>
		<label for="date">Title</label>
		<input id="date" name="date" type="date" required class="border rounded-lg"/>
		<button type="submit">Create</button>
	</form>
}

It would be great if at least 1 blank line was kept on those situations.

Environment

  • macOS 14.2.1
  • templ 0.2.476
  • go1.21.5 darwin/arm64
  • VSCode 1.85.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions