package main import ( "fmt" "os" "text/template" "git.yetaga.in/alazyreader/why/filetypes" ) func main() { tpl, err := template.New("template").Parse(tmpl) if err != nil { fmt.Println(err) return } fplist, err := os.Create("documentTypes.plist") if err != nil { fmt.Println(err) return } defer fplist.Close() if err := tpl.Execute(fplist, filetypes.Valid); err != nil { fmt.Println(err) return } } var tmpl = ` CFBundleDocumentTypes {{ range . }} CFBundleTypeExtensions {{ range .MacExtensions }} {{ . }}{{ end }} CFBundleTypeIconFile {{ .IconFile }} CFBundleTypeMIMETypes {{ range .MIMETypes }} {{ . }}{{ end }} CFBundleTypeName {{ .TypeName }} CFBundleTypeOSTypes {{ range .OSTypes }} {{ . }}{{ end }} CFBundleTypeRole Viewer LSItemContentTypes {{ .ItemContentTypes }} LSTypeIsPackage {{ end }} `