package main import ( "bytes" "flag" "io" "io/ioutil" "local/pt-todo-server/pttodo" "log" "os" "gopkg.in/yaml.v2" ) func main() { if err := _main(); err != nil { panic(err) } } func _main() error { filepath := flag.String("f", "-", "path to yaml file") flag.Parse() var reader io.Reader if *filepath == "-" { reader = os.Stdin } else { b, err := ioutil.ReadFile(*filepath) if err != nil { return err } reader = bytes.NewReader(b) } b, err := ioutil.ReadAll(reader) if err != nil { return err } var root pttodo.Root if err := yaml.Unmarshal(b, &root); err != nil { return err } b2, err := yaml.Marshal(root) if err != nil { return err } log.Printf("%s", b2) return nil }