k3s/vendor/github.com/lithammer/dedent
Darren Shepherd 2193fe10cd Update vendor
2019-04-08 22:50:54 -07:00
..
.travis.yml Update vendor 2019-04-08 22:50:54 -07:00
dedent.go Update vendor 2019-04-08 22:50:54 -07:00
go.mod Update vendor 2019-04-08 22:50:54 -07:00
LICENSE Update vendor 2019-04-08 22:50:54 -07:00
README.md Update vendor 2019-04-08 22:50:54 -07:00

Dedent

Build Status Godoc

Removes common leading whitespace from multiline strings. Inspired by textwrap.dedent in Python.

Usage / example

Imagine the following snippet that prints a multiline string. You want the indentation to both look nice in the code as well as in the actual output.

package main

import (
	"fmt"

	"github.com/lithammer/dedent"
)

func main() {
	s := `
		Lorem ipsum dolor sit amet,
		consectetur adipiscing elit.
		Curabitur justo tellus, facilisis nec efficitur dictum,
		fermentum vitae ligula. Sed eu convallis sapien.`
	fmt.Println(Dedent(s))
	fmt.Println("-------------")
	fmt.Println(s)
}

To illustrate the difference, here's the output:

$ go run main.go
Lorem ipsum dolor sit amet,
consectetur adipiscing elit.
Curabitur justo tellus, facilisis nec efficitur dictum,
fermentum vitae ligula. Sed eu convallis sapien.
-------------

		Lorem ipsum dolor sit amet,
		consectetur adipiscing elit.
		Curabitur justo tellus, facilisis nec efficitur dictum,
		fermentum vitae ligula. Sed eu convallis sapien.

License

MIT