htmgo/htmgo-site/md/docs/8_miscellaneous/3_htmgo format.md

61 lines
1.2 KiB
Markdown
Raw Permalink Normal View History

## 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.
<br>
To use it, run the following command:
```bash
// 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:**
```go
h.Div(
h.Class("flex gap-2"), h.Text("hello"), h.Text("world"),
)
```
**Output:**
```go
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:
```yaml
Name: htmgo format
File Type: Go
Scope: Current File
Program: htmgo
Arguments: format $FilePath$
Output paths to refresh: $FilePath$
Working directory: $ProjectFileDir$
```
3. Save the file watcher and ensure it is enabled
4. Go to `Settings -> Tools -> Actions On Save` and ensure the `htmgo format` action is enabled