23 lines
474 B
Go
23 lines
474 B
Go
|
package main
|
||
|
|
||
|
import (
|
||
|
"bytes"
|
||
|
"encoding/json"
|
||
|
"strconv"
|
||
|
)
|
||
|
|
||
|
type TextFilter func(input string) (output string, err error)
|
||
|
|
||
|
var TextFilters = map[string]TextFilter{
|
||
|
"unquote": func(input string) (output string, err error) {
|
||
|
return strconv.Unquote(input)
|
||
|
},
|
||
|
"format-json": func(input string) (output string, err error) {
|
||
|
var dst bytes.Buffer
|
||
|
if err := json.Indent(&dst, []byte(input), "", " "); err != nil {
|
||
|
return "", err
|
||
|
}
|
||
|
return dst.String(), nil
|
||
|
},
|
||
|
}
|