htmgo/htmgo-site/md/docs/8_miscellaneous/3_htmgo format.md
2024-10-25 10:54:12 -05:00

1.2 KiB

Htmgo Format

htmgo has a built-in formatter that can be used to format htmgo element blocks.

It is available through the 'htmgo' cli tool that is installed with htmgo.

Note: if you have previously installed htmgo, you will need to run GOPROXY=direct go install github.com/maddalax/htmgo/cli/htmgo@latest to update the cli tool.


To use it, run the following command:
// format all .go files in the current directory recursively
htmgo format .

// format the file specified
htmgo format ./my-file.go

This will format all htmgo element blocks in your project.

Example:

h.Div(
	h.Class("flex gap-2"), h.Text("hello"), h.Text("world"),
)

Output:

h.Div(
	h.Class("flex gap-2"),
	h.Text("hello"),
	h.Text("world"),
)

Running htmgo format on save

Jetbrains IDE's

  1. Go to Settings -> Tools -> File Watchers -> + custom

  2. Set the following values:

Name: htmgo format
File Type: Go
Scope: Current File
Program: htmgo
Arguments: format $FilePath$
Output paths to refresh: $FilePath$
Working directory: $ProjectFileDir$
  1. Save the file watcher and ensure it is enabled

  2. Go to Settings -> Tools -> Actions On Save and ensure the htmgo format action is enabled