2019-01-12 04:58:27 +00:00
# Dedent
2019-04-07 17:07:55 +00:00
[![Build Status ](https://travis-ci.org/lithammer/dedent.svg?branch=master )](https://travis-ci.org/lithammer/dedent)
[![Godoc ](https://img.shields.io/badge/godoc-reference-blue.svg?style=flat )](https://godoc.org/github.com/lithammer/dedent)
2019-01-12 04:58:27 +00:00
Removes common leading whitespace from multiline strings. Inspired by [`textwrap.dedent` ](https://docs.python.org/3/library/textwrap.html#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.
```go
package main
import (
2019-04-07 17:07:55 +00:00
"fmt"
2019-01-12 04:58:27 +00:00
2019-04-07 17:07:55 +00:00
"github.com/lithammer/dedent"
2019-01-12 04:58:27 +00:00
)
func main() {
2019-04-07 17:07:55 +00:00
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)
2019-01-12 04:58:27 +00:00
}
```
To illustrate the difference, here's the output:
```bash
$ 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.
-------------
2019-04-07 17:07:55 +00:00
Lorem ipsum dolor sit amet,
consectetur adipiscing elit.
Curabitur justo tellus, facilisis nec efficitur dictum,
fermentum vitae ligula. Sed eu convallis sapien.
2019-01-12 04:58:27 +00:00
```
## License
MIT