From 7bbcda6f9d2ff5ed4f121cb9028a7d908832e9ae Mon Sep 17 00:00:00 2001 From: Mariano Cano Date: Mon, 1 Nov 2021 19:12:03 -0700 Subject: [PATCH] Change template to generate simplified code --- emoji/map_json.go | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/emoji/map_json.go b/emoji/map_json.go index b94fc84..14cd919 100644 --- a/emoji/map_json.go +++ b/emoji/map_json.go @@ -8,6 +8,7 @@ import ( "fmt" "log" "os" + "strings" "text/template" "github.com/emojisum/emojisum/emoji" @@ -39,6 +40,7 @@ func main() { "IsColonNotation": emoji.IsColonNotation, "IsCodepoint": emoji.IsCodepoint, "CodepointLinkMarkdown": codepointLinkMarkdown, + "Join": join, } mapGoTemp, err := template.New("").Funcs(funcMap).Parse(tmpl[*flTemplate]) @@ -54,6 +56,10 @@ func codepointLinkMarkdown(word string) string { return fmt.Sprintf(`[%s](%s)`, word, emoji.UnicodeLinkURL(word)) } +func join(sep string, v []string) string { + return strings.Join(v, sep) +} + var ( flInput = flag.String("in", "emojimap.json", "json input") flOutput = flag.String("out", "map_gen.go", "golang output") @@ -61,21 +67,20 @@ var ( ) var tmpl = map[string]string{ - "map_gen": ` -// THIS FILE IS GENERATED. DO NOT EDIT. + "map_gen": `// THIS FILE IS GENERATED. DO NOT EDIT. package emoji func init() { - mapGen = VersionedMap{ - Description: "{{.Description}}", - Version: "{{.Version}}", - EmojiWords: []Words{ {{- range .EmojiWords }} - Words{ {{ range . -}} - "{{- . }}",{{- end }} - },{{- end }} - }, - } + mapGen = VersionedMap{ + Description: "{{.Description}}", + Version: "{{.Version}}", + EmojiWords: []Words{ + {{- range .EmojiWords }} + {"{{- Join "\", \"" . }}"}, + {{- end }} + }, + } } `, "markdown_gen": `