Why Format your code?
Everyone loves clean readable and beautifully organized code using tabs/spaces (whatever you like), short lines etc. As a developer, while writing code, you should not spend time counting the tabs/spaces, instead let the tools handle your code formatting for you and that too automatically.
In this short post, we will learn how you can use golines
to automagically format all your golang code
Implementing Golines: a Golang formatter
- Installing golines ```
go install github.com/segmentio/golines@latest
- Using golines from VSCode
- Go into the VSCode settings menu, scroll down to the section for the `Run on Save` extension, click the `Edit in settings.json` link
- Set the `emeraldwalk.runonsave` key as follows
```
"emeraldwalk.runonsave": {
"commands": [
{
"match": "\\.go$",
"cmd": "golines ${file} -w"
}
]
}
- Save the settings and restart VSCode
- (optional) using golines from CLI ```
golines -w "path to *.go files"
### Summary
golines together with vscode helps you autoformatt your code
#### from
myMap := map[string]string{"first key": "first value", "second key": "second value", "third key": "third value", "fourth key": "fourth value", "fifth key": "fifth value"}
#### To
myMap := map[string]string{
"first key": "first value",
"second key": "second value",
"third key": "third value",
"fourth key": "fourth value",
"fifth key": "fifth value",
}
Isn't this beautiful, I know it is ;)
![](https://raw.githubusercontent.com/ksingh7/blogs/main/posts/assets/thats-all-folks.gif)
Top comments (2)
It is better than gofmt because that it also organizes imports! Thank you
Why not use Go's builtin code formatter,
gofmt
?usage:
go fmt path/to/your/package
I read about it on go.dev/blog/gofmt