commit 7ab5bcbe4a77fd9c1b02684b6a5f6ca952a731bf Author: Stephen McQuay Date: Mon Oct 27 12:06:31 2014 -0700 init diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..ee7d6a5 --- /dev/null +++ b/LICENSE @@ -0,0 +1,14 @@ + DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE + Version 2, December 2004 + + Copyright (C) 2004 Sam Hocevar + + Everyone is permitted to copy and distribute verbatim or modified + copies of this license document, and changing it is allowed as long + as the name is changed. + + DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. You just DO WHAT THE FUCK YOU WANT TO. + diff --git a/main.go b/main.go new file mode 100644 index 0000000..a214b8f --- /dev/null +++ b/main.go @@ -0,0 +1,34 @@ +package main + +import ( + "bytes" + "fmt" + "io" + "io/ioutil" + "log" + "os" + + "gopkg.in/yaml.v2" +) + +func main() { + log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile) + b, err := ioutil.ReadAll(os.Stdin) + if err != nil { + fmt.Fprintf(os.Stderr, "problem reading stdin: %v\n", err) + os.Exit(1) + } + var obj interface{} + err = yaml.Unmarshal(b, &obj) + if err != nil { + fmt.Fprintf(os.Stderr, "issue in decoding: %v\n", err) + os.Exit(1) + } + bs, err := yaml.Marshal(obj) + if err != nil { + fmt.Fprintf(os.Stderr, "issue in encoding: %v\n", err) + os.Exit(1) + } + r := bytes.NewReader(bs) + io.Copy(os.Stdout, r) +} diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..bd21d4b --- /dev/null +++ b/readme.md @@ -0,0 +1,4 @@ +jsoon +===== + +Simple lint check for yaml files in the spirit of `python -mjson.tool`.