mirror of
https://github.com/emojisum/emojisum.git
synced 2025-07-17 06:00:29 +00:00
emoji: fix the template output for markdown
Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
This commit is contained in:
parent
fdb51823d7
commit
a9e159d830
8 changed files with 855 additions and 301 deletions
|
@ -2,12 +2,12 @@
|
|||
default: map_gen.go list.md
|
||||
|
||||
.PHONY: map_gen.go
|
||||
map_gen.go: map_json.go map.go emojimap.json map_gen.tmpl
|
||||
rm -f map_gen.go
|
||||
go run map_json.go -template map_gen.tmpl -in ./emojimap.json -out ./$@
|
||||
map_gen.go: map_json.go map.go emojimap.json
|
||||
rm -f $@
|
||||
go run map_json.go -template map_gen -in ./emojimap.json -out ./$@
|
||||
|
||||
.PHONY: map_gen.go
|
||||
list.md: map_json.go map.go emojimap.json markdown_gen.tmpl
|
||||
rm -f map_gen.go
|
||||
go run map_json.go -template markdown_gen.tmpl -in ./emojimap.json -out ./$@
|
||||
.PHONY: list.md
|
||||
list.md: map_json.go map.go emojimap.json
|
||||
rm -f $@
|
||||
go run map_json.go -template markdown_gen -in ./emojimap.json -out ./$@
|
||||
|
||||
|
|
|
@ -133,7 +133,7 @@
|
|||
[":man:"],
|
||||
[":maple_leaf:"],
|
||||
[":mask:"],
|
||||
[":metal:"],
|
||||
[":metal:", "U+1F918"],
|
||||
[":microscope:"],
|
||||
[":moneybag:"],
|
||||
[":monkey:"],
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
|
||||
## Emoji Map list
|
||||
|
||||
_THIS FILE IS GENERATED. DO NOT EDIT._
|
||||
|
@ -145,7 +146,7 @@ draft+1
|
|||
* `128` -- :man: `:man:`
|
||||
* `129` -- :maple_leaf: `:maple_leaf:`
|
||||
* `130` -- :mask: `:mask:`
|
||||
* `131` -- :metal: `:metal:`
|
||||
* `131` -- :metal: `:metal:` U+1F918
|
||||
* `132` -- :microscope: `:microscope:`
|
||||
* `133` -- :moneybag: `:moneybag:`
|
||||
* `134` -- :monkey: `:monkey:`
|
||||
|
|
12
emoji/map.go
12
emoji/map.go
|
@ -1,5 +1,7 @@
|
|||
package emoji
|
||||
|
||||
import "strings"
|
||||
|
||||
// Map returns the emoji at the provided position.
|
||||
// This list is from 0-255
|
||||
func Map(b byte) Words {
|
||||
|
@ -25,3 +27,13 @@ type VersionedMap struct {
|
|||
// Words are a set of options to represent an emoji.
|
||||
// Possible options could be the ":colon_notion:" or a "U+26CF" style codepoint.
|
||||
type Words []string
|
||||
|
||||
// IsColonNotation checks for whether a word is the :colon_notion: of emoji
|
||||
func IsColonNotation(word string) bool {
|
||||
return strings.HasPrefix(word, ":") && strings.HasSuffix(word, ":")
|
||||
}
|
||||
|
||||
// IsCodepoint checks for whether a word is the "U+1234" codepoint style of emoji
|
||||
func IsCodepoint(word string) bool {
|
||||
return strings.HasPrefix(strings.ToUpper(word), "U+")
|
||||
}
|
||||
|
|
525
emoji/map_gen.go
Normal file
525
emoji/map_gen.go
Normal file
|
@ -0,0 +1,525 @@
|
|||
|
||||
// THIS FILE IS GENERATED. DO NOT EDIT.
|
||||
|
||||
package emoji
|
||||
|
||||
func init() {
|
||||
mapGen = VersionedMap{
|
||||
Description: "This ordered list of emojiwords is the conventional order for the practice of conveying checksums with emoji. Each position provides the alternative for resolving the desired emoji.",
|
||||
Version: "draft+1",
|
||||
EmojiWords: []Words{
|
||||
Words{ ":+1:",
|
||||
},
|
||||
Words{ ":8ball:",
|
||||
},
|
||||
Words{ ":airplane:",
|
||||
},
|
||||
Words{ ":alien:",
|
||||
},
|
||||
Words{ ":anchor:",
|
||||
},
|
||||
Words{ ":angel:",
|
||||
},
|
||||
Words{ ":angry:",
|
||||
},
|
||||
Words{ ":ant:",
|
||||
},
|
||||
Words{ ":apple:",
|
||||
},
|
||||
Words{ ":art:",
|
||||
},
|
||||
Words{ ":baby:",
|
||||
},
|
||||
Words{ ":baby_bottle:",
|
||||
},
|
||||
Words{ ":back:",
|
||||
},
|
||||
Words{ ":bamboo:",
|
||||
},
|
||||
Words{ ":banana:",
|
||||
},
|
||||
Words{ ":barber:",
|
||||
},
|
||||
Words{ ":bathtub:",
|
||||
},
|
||||
Words{ ":beer:",
|
||||
},
|
||||
Words{ ":bell:",
|
||||
},
|
||||
Words{ ":bicyclist:",
|
||||
},
|
||||
Words{ ":bird:",
|
||||
},
|
||||
Words{ ":birthday:",
|
||||
},
|
||||
Words{ ":blossom:",
|
||||
},
|
||||
Words{ ":blue_car:",
|
||||
},
|
||||
Words{ ":boar:",
|
||||
},
|
||||
Words{ ":bomb:",
|
||||
},
|
||||
Words{ ":boom:",
|
||||
},
|
||||
Words{ ":bow:",
|
||||
},
|
||||
Words{ ":boy:",
|
||||
},
|
||||
Words{ ":broken_heart:",
|
||||
},
|
||||
Words{ ":bulb:",
|
||||
},
|
||||
Words{ ":bus:",
|
||||
},
|
||||
Words{ ":cactus:",
|
||||
},
|
||||
Words{ ":calendar:",
|
||||
},
|
||||
Words{ ":camera:",
|
||||
},
|
||||
Words{ ":candy:",
|
||||
},
|
||||
Words{ ":cat:",
|
||||
},
|
||||
Words{ ":cherries:",
|
||||
},
|
||||
Words{ ":children_crossing:",
|
||||
},
|
||||
Words{ ":chocolate_bar:",
|
||||
},
|
||||
Words{ ":clap:",
|
||||
},
|
||||
Words{ ":cloud:",
|
||||
},
|
||||
Words{ ":clubs:",
|
||||
},
|
||||
Words{ ":cn:",
|
||||
},
|
||||
Words{ ":coffee:",
|
||||
},
|
||||
Words{ ":construction:",
|
||||
},
|
||||
Words{ ":cookie:",
|
||||
},
|
||||
Words{ ":copyright:",
|
||||
},
|
||||
Words{ ":corn:",
|
||||
},
|
||||
Words{ ":cow:",
|
||||
},
|
||||
Words{ ":crescent_moon:",
|
||||
},
|
||||
Words{ ":crown:",
|
||||
},
|
||||
Words{ ":cry:",
|
||||
},
|
||||
Words{ ":crystal_ball:",
|
||||
},
|
||||
Words{ ":curly_loop:",
|
||||
},
|
||||
Words{ ":dancers:",
|
||||
},
|
||||
Words{ ":dash:",
|
||||
},
|
||||
Words{ ":de:",
|
||||
},
|
||||
Words{ ":diamonds:",
|
||||
},
|
||||
Words{ ":dog:",
|
||||
},
|
||||
Words{ ":doughnut:",
|
||||
},
|
||||
Words{ ":dragon:",
|
||||
},
|
||||
Words{ ":dvd:",
|
||||
},
|
||||
Words{ ":ear:",
|
||||
},
|
||||
Words{ ":eggplant:",
|
||||
},
|
||||
Words{ ":elephant:",
|
||||
},
|
||||
Words{ ":end:",
|
||||
},
|
||||
Words{ ":envelope:",
|
||||
},
|
||||
Words{ ":es:",
|
||||
},
|
||||
Words{ ":eyes:",
|
||||
},
|
||||
Words{ ":facepunch:",
|
||||
},
|
||||
Words{ ":family:",
|
||||
},
|
||||
Words{ ":ferris_wheel:",
|
||||
},
|
||||
Words{ ":finnadie:",
|
||||
},
|
||||
Words{ ":fire:",
|
||||
},
|
||||
Words{ ":fireworks:",
|
||||
},
|
||||
Words{ ":floppy_disk:",
|
||||
},
|
||||
Words{ ":football:",
|
||||
},
|
||||
Words{ ":fork_and_knife:",
|
||||
},
|
||||
Words{ ":four_leaf_clover:",
|
||||
},
|
||||
Words{ ":fr:",
|
||||
},
|
||||
Words{ ":fries:",
|
||||
},
|
||||
Words{ ":frog:",
|
||||
},
|
||||
Words{ ":fu:",
|
||||
},
|
||||
Words{ ":full_moon:",
|
||||
},
|
||||
Words{ ":game_die:",
|
||||
},
|
||||
Words{ ":eu:",
|
||||
},
|
||||
Words{ ":gem:",
|
||||
},
|
||||
Words{ ":girl:",
|
||||
},
|
||||
Words{ ":goat:",
|
||||
},
|
||||
Words{ ":grimacing:",
|
||||
},
|
||||
Words{ ":grin:",
|
||||
},
|
||||
Words{ ":guardsman:",
|
||||
},
|
||||
Words{ ":guitar:",
|
||||
},
|
||||
Words{ ":gun:",
|
||||
},
|
||||
Words{ ":hamburger:",
|
||||
},
|
||||
Words{ ":hammer:",
|
||||
},
|
||||
Words{ ":hamster:",
|
||||
},
|
||||
Words{ ":hear_no_evil:",
|
||||
},
|
||||
Words{ ":heart:",
|
||||
},
|
||||
Words{ ":heart_eyes_cat:",
|
||||
},
|
||||
Words{ ":hearts:",
|
||||
},
|
||||
Words{ ":heavy_check_mark:",
|
||||
},
|
||||
Words{ ":moyai:",
|
||||
},
|
||||
Words{ ":izakaya_lantern:",
|
||||
},
|
||||
Words{ ":helicopter:",
|
||||
},
|
||||
Words{ ":hocho:",
|
||||
},
|
||||
Words{ ":honeybee:",
|
||||
},
|
||||
Words{ ":horse:",
|
||||
},
|
||||
Words{ ":horse_racing:",
|
||||
},
|
||||
Words{ ":hourglass:",
|
||||
},
|
||||
Words{ ":house:",
|
||||
},
|
||||
Words{ ":hurtrealbad:",
|
||||
},
|
||||
Words{ ":icecream:",
|
||||
},
|
||||
Words{ ":imp:",
|
||||
},
|
||||
Words{ ":it:",
|
||||
},
|
||||
Words{ ":jack_o_lantern:",
|
||||
},
|
||||
Words{ ":japanese_goblin:",
|
||||
},
|
||||
Words{ ":jp:",
|
||||
},
|
||||
Words{ ":key:",
|
||||
},
|
||||
Words{ ":kiss:",
|
||||
},
|
||||
Words{ ":kissing_cat:",
|
||||
},
|
||||
Words{ ":koala:",
|
||||
},
|
||||
Words{ ":kr:",
|
||||
},
|
||||
Words{ ":lemon:",
|
||||
},
|
||||
Words{ ":lipstick:",
|
||||
},
|
||||
Words{ ":lock:",
|
||||
},
|
||||
Words{ ":lollipop:",
|
||||
},
|
||||
Words{ ":man:",
|
||||
},
|
||||
Words{ ":maple_leaf:",
|
||||
},
|
||||
Words{ ":mask:",
|
||||
},
|
||||
Words{ ":metal:","U+1F918",
|
||||
},
|
||||
Words{ ":microscope:",
|
||||
},
|
||||
Words{ ":moneybag:",
|
||||
},
|
||||
Words{ ":monkey:",
|
||||
},
|
||||
Words{ ":mount_fuji:",
|
||||
},
|
||||
Words{ ":muscle:",
|
||||
},
|
||||
Words{ ":mushroom:",
|
||||
},
|
||||
Words{ ":musical_keyboard:",
|
||||
},
|
||||
Words{ ":musical_score:",
|
||||
},
|
||||
Words{ ":nail_care:",
|
||||
},
|
||||
Words{ ":new_moon:",
|
||||
},
|
||||
Words{ ":no_entry:",
|
||||
},
|
||||
Words{ ":nose:",
|
||||
},
|
||||
Words{ ":notes:",
|
||||
},
|
||||
Words{ ":nut_and_bolt:",
|
||||
},
|
||||
Words{ ":o:",
|
||||
},
|
||||
Words{ ":ocean:",
|
||||
},
|
||||
Words{ ":ok_hand:",
|
||||
},
|
||||
Words{ ":on:",
|
||||
},
|
||||
Words{ ":package:",
|
||||
},
|
||||
Words{ ":palm_tree:",
|
||||
},
|
||||
Words{ ":panda_face:",
|
||||
},
|
||||
Words{ ":paperclip:",
|
||||
},
|
||||
Words{ ":partly_sunny:",
|
||||
},
|
||||
Words{ ":passport_control:",
|
||||
},
|
||||
Words{ ":paw_prints:",
|
||||
},
|
||||
Words{ ":peach:",
|
||||
},
|
||||
Words{ ":penguin:",
|
||||
},
|
||||
Words{ ":phone:",
|
||||
},
|
||||
Words{ ":pig:",
|
||||
},
|
||||
Words{ ":pill:",
|
||||
},
|
||||
Words{ ":pineapple:",
|
||||
},
|
||||
Words{ ":pizza:",
|
||||
},
|
||||
Words{ ":point_left:",
|
||||
},
|
||||
Words{ ":point_right:",
|
||||
},
|
||||
Words{ ":poop:",
|
||||
},
|
||||
Words{ ":poultry_leg:",
|
||||
},
|
||||
Words{ ":pray:",
|
||||
},
|
||||
Words{ ":princess:",
|
||||
},
|
||||
Words{ ":purse:",
|
||||
},
|
||||
Words{ ":pushpin:",
|
||||
},
|
||||
Words{ ":rabbit:",
|
||||
},
|
||||
Words{ ":rainbow:",
|
||||
},
|
||||
Words{ ":raised_hand:",
|
||||
},
|
||||
Words{ ":recycle:",
|
||||
},
|
||||
Words{ ":red_car:",
|
||||
},
|
||||
Words{ ":registered:",
|
||||
},
|
||||
Words{ ":ribbon:",
|
||||
},
|
||||
Words{ ":rice:",
|
||||
},
|
||||
Words{ ":rocket:",
|
||||
},
|
||||
Words{ ":roller_coaster:",
|
||||
},
|
||||
Words{ ":rooster:",
|
||||
},
|
||||
Words{ ":ru:",
|
||||
},
|
||||
Words{ ":sailboat:",
|
||||
},
|
||||
Words{ ":santa:",
|
||||
},
|
||||
Words{ ":satellite:",
|
||||
},
|
||||
Words{ ":satisfied:",
|
||||
},
|
||||
Words{ ":saxophone:",
|
||||
},
|
||||
Words{ ":scissors:",
|
||||
},
|
||||
Words{ ":see_no_evil:",
|
||||
},
|
||||
Words{ ":sheep:",
|
||||
},
|
||||
Words{ ":shell:",
|
||||
},
|
||||
Words{ ":shoe:",
|
||||
},
|
||||
Words{ ":ski:",
|
||||
},
|
||||
Words{ ":skull:",
|
||||
},
|
||||
Words{ ":sleepy:",
|
||||
},
|
||||
Words{ ":smile:",
|
||||
},
|
||||
Words{ ":smiley_cat:",
|
||||
},
|
||||
Words{ ":smirk:",
|
||||
},
|
||||
Words{ ":smoking:",
|
||||
},
|
||||
Words{ ":snail:",
|
||||
},
|
||||
Words{ ":snake:",
|
||||
},
|
||||
Words{ ":snowflake:",
|
||||
},
|
||||
Words{ ":soccer:",
|
||||
},
|
||||
Words{ ":soon:",
|
||||
},
|
||||
Words{ ":space_invader:",
|
||||
},
|
||||
Words{ ":spades:",
|
||||
},
|
||||
Words{ ":speak_no_evil:",
|
||||
},
|
||||
Words{ ":star:",
|
||||
},
|
||||
Words{ ":stars:",
|
||||
},
|
||||
Words{ ":statue_of_liberty:",
|
||||
},
|
||||
Words{ ":steam_locomotive:",
|
||||
},
|
||||
Words{ ":sunflower:",
|
||||
},
|
||||
Words{ ":sunglasses:",
|
||||
},
|
||||
Words{ ":sunny:",
|
||||
},
|
||||
Words{ ":sunrise:",
|
||||
},
|
||||
Words{ ":surfer:",
|
||||
},
|
||||
Words{ ":swimmer:",
|
||||
},
|
||||
Words{ ":syringe:",
|
||||
},
|
||||
Words{ ":tada:",
|
||||
},
|
||||
Words{ ":tangerine:",
|
||||
},
|
||||
Words{ ":taxi:",
|
||||
},
|
||||
Words{ ":tennis:",
|
||||
},
|
||||
Words{ ":tent:",
|
||||
},
|
||||
Words{ ":thought_balloon:",
|
||||
},
|
||||
Words{ ":tm:",
|
||||
},
|
||||
Words{ ":toilet:",
|
||||
},
|
||||
Words{ ":tongue:",
|
||||
},
|
||||
Words{ ":tophat:",
|
||||
},
|
||||
Words{ ":tractor:",
|
||||
},
|
||||
Words{ ":trolleybus:",
|
||||
},
|
||||
Words{ ":trollface:",
|
||||
},
|
||||
Words{ ":trophy:",
|
||||
},
|
||||
Words{ ":trumpet:",
|
||||
},
|
||||
Words{ ":turtle:",
|
||||
},
|
||||
Words{ ":two_men_holding_hands:",
|
||||
},
|
||||
Words{ ":two_women_holding_hands:",
|
||||
},
|
||||
Words{ ":uk:",
|
||||
},
|
||||
Words{ ":umbrella:",
|
||||
},
|
||||
Words{ ":unlock:",
|
||||
},
|
||||
Words{ ":us:",
|
||||
},
|
||||
Words{ ":v:",
|
||||
},
|
||||
Words{ ":vhs:",
|
||||
},
|
||||
Words{ ":violin:",
|
||||
},
|
||||
Words{ ":warning:",
|
||||
},
|
||||
Words{ ":watermelon:",
|
||||
},
|
||||
Words{ ":wave:",
|
||||
},
|
||||
Words{ ":wavy_dash:",
|
||||
},
|
||||
Words{ ":wc:",
|
||||
},
|
||||
Words{ ":wheelchair:",
|
||||
},
|
||||
Words{ ":woman:",
|
||||
},
|
||||
Words{ ":x:",
|
||||
},
|
||||
Words{ ":yum:",
|
||||
},
|
||||
Words{ ":zap:",
|
||||
},
|
||||
Words{ ":zzz:",
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
// 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 }}
|
||||
},
|
||||
}
|
||||
}
|
|
@ -33,7 +33,16 @@ func main() {
|
|||
}
|
||||
defer output.Close()
|
||||
|
||||
mapGoTemp := template.Must(template.ParseFiles(*flTemplate))
|
||||
//mapGoTemp := template.Must(template.ParseFiles(*flTemplate))
|
||||
funcMap := template.FuncMap{
|
||||
"IsColonNotation": emoji.IsColonNotation,
|
||||
"IsCodepoint": emoji.IsCodepoint,
|
||||
}
|
||||
|
||||
mapGoTemp, err := template.New("").Funcs(funcMap).Parse(tmpl[*flTemplate])
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
if err := mapGoTemp.Execute(output, vm); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
@ -42,5 +51,47 @@ func main() {
|
|||
var (
|
||||
flInput = flag.String("in", "emojimap.json", "json input")
|
||||
flOutput = flag.String("out", "map_gen.go", "golang output")
|
||||
flTemplate = flag.String("template", "map_gen.tmpl", "template of golang source to use")
|
||||
flTemplate = flag.String("template", "map_gen", "template to use (map_gen or markdown_gen)")
|
||||
)
|
||||
|
||||
var tmpl = map[string]string{
|
||||
"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 }}
|
||||
},
|
||||
}
|
||||
}
|
||||
`,
|
||||
"markdown_gen": `
|
||||
## Emoji Map list
|
||||
|
||||
_THIS FILE IS GENERATED. DO NOT EDIT._
|
||||
|
||||
This is for "pretty" viewing purposes.
|
||||
To view the functional document, see [emojimap.json](./emojimap.json).
|
||||
|
||||
### Description
|
||||
|
||||
{{ .Description }}
|
||||
|
||||
### Version
|
||||
|
||||
{{ .Version }}
|
||||
|
||||
### List
|
||||
|
||||
{{- range $index, $words := .EmojiWords }}
|
||||
* ` + "`{{ $index }}`" + ` -- {{ range $words }} {{- if IsColonNotation . -}} {{ . }} ` + "`{{ . }}`" + ` {{- else }} {{.}} {{- end }}{{- end }}
|
||||
{{- end }}
|
||||
`,
|
||||
}
|
||||
|
|
|
@ -1,20 +0,0 @@
|
|||
## Emoji Map list
|
||||
|
||||
_THIS FILE IS GENERATED. DO NOT EDIT._
|
||||
|
||||
This is for "pretty" viewing purposes.
|
||||
To view the functional document, see [emojimap.json](./emojimap.json).
|
||||
|
||||
### Description
|
||||
|
||||
{{ .Description }}
|
||||
|
||||
### Version
|
||||
|
||||
{{ .Version }}
|
||||
|
||||
### List
|
||||
|
||||
{{- range $index, $words := .EmojiWords }}
|
||||
* `{{ $index }}` -- {{ range $words }} {{ . }} `{{ . }}` {{- end }}
|
||||
{{- end }}
|
Loading…
Add table
Add a link
Reference in a new issue