mirror of
https://github.com/opentofu/opentofu.git
synced 2025-02-25 18:45:20 -06:00
Nomad was manually updated, so revert that to the version in master, remove it from vendor.json and add it to the ignore list. Update all packages that were in an unknown state to their latest master commits.
70 lines
1.9 KiB
Markdown
70 lines
1.9 KiB
Markdown
Columnize
|
|
=========
|
|
|
|
Easy column-formatted output for golang
|
|
|
|
[](https://travis-ci.org/ryanuber/columnize)
|
|
[](https://godoc.org/github.com/ryanuber/columnize)
|
|
|
|
Columnize is a really small Go package that makes building CLI's a little bit
|
|
easier. In some CLI designs, you want to output a number similar items in a
|
|
human-readable way with nicely aligned columns. However, figuring out how wide
|
|
to make each column is a boring problem to solve and eats your valuable time.
|
|
|
|
Here is an example:
|
|
|
|
```go
|
|
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"github.com/ryanuber/columnize"
|
|
)
|
|
|
|
func main() {
|
|
output := []string{
|
|
"Name | Gender | Age",
|
|
"Bob | Male | 38",
|
|
"Sally | Female | 26",
|
|
}
|
|
result := columnize.SimpleFormat(output)
|
|
fmt.Println(result)
|
|
}
|
|
```
|
|
|
|
As you can see, you just pass in a list of strings. And the result:
|
|
|
|
```
|
|
Name Gender Age
|
|
Bob Male 38
|
|
Sally Female 26
|
|
```
|
|
|
|
Columnize is tolerant of missing or empty fields, or even empty lines, so
|
|
passing in extra lines for spacing should show up as you would expect.
|
|
|
|
Configuration
|
|
=============
|
|
|
|
Columnize is configured using a `Config`, which can be obtained by calling the
|
|
`DefaultConfig()` method. You can then tweak the settings in the resulting
|
|
`Config`:
|
|
|
|
```
|
|
config := columnize.DefaultConfig()
|
|
config.Delim = "|"
|
|
config.Glue = " "
|
|
config.Prefix = ""
|
|
config.Empty = ""
|
|
```
|
|
|
|
* `Delim` is the string by which columns of **input** are delimited
|
|
* `Glue` is the string by which columns of **output** are delimited
|
|
* `Prefix` is a string by which each line of **output** is prefixed
|
|
* `Empty` is a string used to replace blank values found in output
|
|
|
|
You can then pass the `Config` in using the `Format` method (signature below) to
|
|
have text formatted to your liking.
|
|
|
|
See the [godoc](https://godoc.org/github.com/ryanuber/columnize) page for usage.
|