1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274
|
package emoji
import "strings"
func Emoji(input []byte) string {
var b strings.Builder
for _, r := range input {
b.WriteString(emojiCodeMap[r])
}
return b.String()
}
// emojiCodeMap is a mapping from byte to emoji.
//
// The mapping is based on draft+2 of https://github.com/emojisum/emojisum.
// (see: https://github.com/emojisum/emojisum/releases/tag/draft%2B2)
var emojiCodeMap = []string{
"\U0001f44d", // đ :+1:
"\U0001f3b1", // đą :8ball:
"\u2708\ufe0f", // âī¸ :airplane:
"\U0001f47d", // đŊ :alien:
"\u2693", // â :anchor:
"\U0001f47c", // đŧ :angel:
"\U0001f620", // đ :angry:
"\U0001f41c", // đ :ant:
"\U0001f34e", // đ :apple:
"\U0001f3a8", // đ¨ :art:
"\U0001f476", // đļ :baby:
"\U0001f37c", // đŧ :baby_bottle:
"\U0001f519", // đ :back:
"\U0001f38d", // đ :bamboo:
"\U0001f34c", // đ :banana:
"\U0001f488", // đ :barber:
"\U0001f6c1", // đ :bathtub:
"\U0001f37a", // đē :beer:
"\U0001f514", // đ :bell:
"\U0001f6b4\u200d\u2642\ufe0f", // đ´ââī¸ :bicyclist:
"\U0001f426", // đĻ :bird:
"\U0001f382", // đ :birthday:
"\U0001f33c", // đŧ :blossom:
"\U0001f699", // đ :blue_car:
"\U0001f417", // đ :boar:
"\U0001f4a3", // đŖ :bomb:
"\U0001f4a5", // đĨ :boom:
"\U0001f647\u200d\u2642\ufe0f", // đââī¸ :bow:
"\U0001f466", // đĻ :boy:
"\U0001f494", // đ :broken_heart:
"\U0001f4a1", // đĄ :bulb:
"\U0001f68c", // đ :bus:
"\U0001f335", // đĩ :cactus:
"\U0001f4c6", // đ :calendar:
"\U0001f4f7", // đˇ :camera:
"\U0001f36c", // đŦ :candy:
"\U0001f431", // đą :cat:
"\U0001f352", // đ :cherries:
"\U0001f6b8", // đ¸ :children_crossing:
"\U0001f36b", // đĢ :chocolate_bar:
"\U0001f44f", // đ :clap:
"\u2601\ufe0f", // âī¸ :cloud:
"\u2663\ufe0f", // âŖī¸ :clubs:
"\U0001f1e8\U0001f1f3", // đ¨đŗ :cn:
"\u2615", // â :coffee:
"\U0001f6a7", // đ§ :construction:
"\U0001f36a", // đĒ :cookie:
"\u00a9\ufe0f", // ÂŠī¸ :copyright:
"\U0001f33d", // đŊ :corn:
"\U0001f42e", // đŽ :cow:
"\U0001f319", // đ :crescent_moon:
"\U0001f451", // đ :crown:
"\U0001f622", // đĸ :cry:
"\U0001f52e", // đŽ :crystal_ball:
"\u27b0", // â° :curly_loop:
"\U0001f46f\u200d\u2640\ufe0f", // đ¯ââī¸ :dancers:
"\U0001f4a8", // đ¨ :dash:
"\U0001f1e9\U0001f1ea", // đŠđĒ :de:
"\u2666\ufe0f", // âĻī¸ :diamonds:
"\U0001f436", // đļ :dog:
"\U0001f369", // đŠ :doughnut:
"\U0001f409", // đ :dragon:
"\U0001f4c0", // đ :dvd:
"\U0001f442", // đ :ear:
"\U0001f346", // đ :eggplant:
"\U0001f418", // đ :elephant:
"\U0001f51a", // đ :end:
"\u2709", // â :envelope:
"\U0001f1ea\U0001f1f8", // đĒđ¸ :es:
"\U0001f440", // đ :eyes:
"\U0001f44a", // đ :facepunch:
"\U0001f468\u200d\U0001f469\u200d\U0001f466", // đ¨âđŠâđĻ :family:
"\U0001f3a1", // đĄ :ferris_wheel:
"\U0001f630", // đ° :cold_sweat:
"\U0001f525", // đĨ :fire:
"\U0001f386", // đ :fireworks:
"\U0001f4be", // đž :floppy_disk:
"\U0001f3c8", // đ :football:
"\U0001f374", // đ´ :fork_and_knife:
"\U0001f340", // đ :four_leaf_clover:
"\U0001f1eb\U0001f1f7", // đĢđˇ :fr:
"\U0001f35f", // đ :fries:
"\U0001f95c", // đĨ :peanuts:
"\U0001f595", // đ :fu:
"\U0001f315", // đ :full_moon:
"\U0001f3b2", // đ˛ :game_die:
"\U0001f1ea\U0001f1fa", // đĒđē :eu:
"\U0001f48e", // đ :gem:
"\U0001f467", // đ§ :girl:
"\U0001f410", // đ :goat:
"\U0001f62c", // đŦ :grimacing:
"\U0001f601", // đ :grin:
"\U0001f482\u200d\u2642\ufe0f", // đââī¸ :guardsman:
"\U0001f3b8", // đ¸ :guitar:
"\U0001f52b", // đĢ :gun:
"\U0001f354", // đ :hamburger:
"\U0001f528", // đ¨ :hammer:
"\U0001f439", // đš :hamster:
"\U0001f649", // đ :hear_no_evil:
"\u2764\ufe0f", // â¤ī¸ :heart:
"\U0001f63b", // đģ :heart_eyes_cat:
"\u2763\ufe0f", // âŖī¸ :heavy_heart_exclamation:
"\u2714\ufe0f", // âī¸ :heavy_check_mark:
"\U0001f5ff", // đŋ :moyai:
"\U0001f3ee", // đŽ :izakaya_lantern:
"\U0001f681", // đ :helicopter:
"\U0001f52a", // đĒ :hocho:
"\U0001f41d", // đ :honeybee:
"\U0001f434", // đ´ :horse:
"\U0001f3c7", // đ :horse_racing:
"\u231b", // â :hourglass:
"\U0001f3e0", // đ :house:
"\U0001f575\ufe0f\u200d\u2640\ufe0f", // đĩī¸ââī¸ :female_detective:
"\U0001f366", // đĻ :icecream:
"\U0001f47f", // đŋ :imp:
"\U0001f1ee\U0001f1f9", // đŽđš :it:
"\U0001f383", // đ :jack_o_lantern:
"\U0001f47a", // đē :japanese_goblin:
"\U0001f1ef\U0001f1f5", // đ¯đĩ :jp:
"\U0001f511", // đ :key:
"\U0001f48b", // đ :kiss:
"\U0001f63d", // đŊ :kissing_cat:
"\U0001f428", // đ¨ :koala:
"\U0001f1f0\U0001f1f7", // đ°đˇ :kr:
"\U0001f34b", // đ :lemon:
"\U0001f484", // đ :lipstick:
"\U0001f512", // đ :lock:
"\U0001f36d", // đ :lollipop:
"\U0001f468", // đ¨ :man:
"\U0001f341", // đ :maple_leaf:
"\U0001f637", // đˇ :mask:
"\U0001f918", // đ¤ :metal:
"\U0001f52c", // đŦ :microscope:
"\U0001f4b0", // đ° :moneybag:
"\U0001f412", // đ :monkey:
"\U0001f5fb", // đģ :mount_fuji:
"\U0001f4aa", // đĒ :muscle:
"\U0001f344", // đ :mushroom:
"\U0001f3b9", // đš :musical_keyboard:
"\U0001f3bc", // đŧ :musical_score:
"\U0001f485", // đ
:nail_care:
"\U0001f311", // đ :new_moon:
"\u26d4", // â :no_entry:
"\U0001f443", // đ :nose:
"\U0001f39b\ufe0f", // đī¸ :control_knobs:
"\U0001f529", // đŠ :nut_and_bolt:
"\u2b55", // â :o:
"\U0001f30a", // đ :ocean:
"\U0001f44c", // đ :ok_hand:
"\U0001f51b", // đ :on:
"\U0001f4e6", // đĻ :package:
"\U0001f334", // đ´ :palm_tree:
"\U0001f43c", // đŧ :panda_face:
"\U0001f4ce", // đ :paperclip:
"\u26c5", // â
:partly_sunny:
"\U0001f6c2", // đ :passport_control:
"\U0001f43e", // đž :paw_prints:
"\U0001f351", // đ :peach:
"\U0001f427", // đ§ :penguin:
"\u260e\ufe0f", // âī¸ :phone:
"\U0001f437", // đˇ :pig:
"\U0001f48a", // đ :pill:
"\U0001f34d", // đ :pineapple:
"\U0001f355", // đ :pizza:
"\U0001f448", // đ :point_left:
"\U0001f449", // đ :point_right:
"\U0001f4a9", // đŠ :poop:
"\U0001f357", // đ :poultry_leg:
"\U0001f64f", // đ :pray:
"\U0001f478", // đ¸ :princess:
"\U0001f45b", // đ :purse:
"\U0001f4cc", // đ :pushpin:
"\U0001f430", // đ° :rabbit:
"\U0001f308", // đ :rainbow:
"\u270b", // â :raised_hand:
"\u267b\ufe0f", // âģī¸ :recycle:
"\U0001f697", // đ :red_car:
"\u00ae\ufe0f", // ÂŽī¸ :registered:
"\U0001f380", // đ :ribbon:
"\U0001f35a", // đ :rice:
"\U0001f680", // đ :rocket:
"\U0001f3a2", // đĸ :roller_coaster:
"\U0001f413", // đ :rooster:
"\U0001f1f7\U0001f1fa", // đˇđē :ru:
"\u26f5", // âĩ :sailboat:
"\U0001f385", // đ
:santa:
"\U0001f6f0\ufe0f", // đ°ī¸ :satellite:
"\U0001f606", // đ :satisfied:
"\U0001f3b7", // đˇ :saxophone:
"\u2702\ufe0f", // âī¸ :scissors:
"\U0001f648", // đ :see_no_evil:
"\U0001f411", // đ :sheep:
"\U0001f41a", // đ :shell:
"\U0001f45e", // đ :shoe:
"\U0001f3bf", // đŋ :ski:
"\U0001f480", // đ :skull:
"\U0001f62a", // đĒ :sleepy:
"\U0001f604", // đ :smile:
"\U0001f63a", // đē :smiley_cat:
"\U0001f60f", // đ :smirk:
"\U0001f6ac", // đŦ :smoking:
"\U0001f40c", // đ :snail:
"\U0001f40d", // đ :snake:
"\u2744\ufe0f", // âī¸ :snowflake:
"\u26bd", // âŊ :soccer:
"\U0001f51c", // đ :soon:
"\U0001f47e", // đž :space_invader:
"\u2660\ufe0f", // â ī¸ :spades:
"\U0001f64a", // đ :speak_no_evil:
"\u2b50", // â :star:
"\u26f2", // Ⲡ:fountain:
"\U0001f5fd", // đŊ :statue_of_liberty:
"\U0001f682", // đ :steam_locomotive:
"\U0001f33b", // đģ :sunflower:
"\U0001f60e", // đ :sunglasses:
"\u2600\ufe0f", // âī¸ :sunny:
"\U0001f305", // đ
:sunrise:
"\U0001f3c4\u200d\u2642\ufe0f", // đââī¸ :surfer:
"\U0001f3ca\u200d\u2642\ufe0f", // đââī¸ :swimmer:
"\U0001f489", // đ :syringe:
"\U0001f389", // đ :tada:
"\U0001f34a", // đ :tangerine:
"\U0001f695", // đ :taxi:
"\U0001f3be", // đž :tennis:
"\u26fa", // âē :tent:
"\U0001f4ad", // đ :thought_balloon:
"\u2122\ufe0f", // âĸī¸ :tm:
"\U0001f6bd", // đŊ :toilet:
"\U0001f445", // đ
:tongue:
"\U0001f3a9", // đŠ :tophat:
"\U0001f69c", // đ :tractor:
"\U0001f68e", // đ :trolleybus:
"\U0001f922", // đ¤ĸ :nauseated_face:
"\U0001f3c6", // đ :trophy:
"\U0001f3ba", // đē :trumpet:
"\U0001f422", // đĸ :turtle:
"\U0001f3a0", // đ :carousel_horse:
"\U0001f46d", // đ :two_women_holding_hands:
"\U0001f1ec\U0001f1e7", // đŦđ§ :uk:
"\u2602\ufe0f", // âī¸ :umbrella:
"\U0001f513", // đ :unlock:
"\U0001f1fa\U0001f1f8", // đēđ¸ :us:
"\u270c\ufe0f", // âī¸ :v:
"\U0001f4fc", // đŧ :vhs:
"\U0001f3bb", // đģ :violin:
"\u26a0\ufe0f", // â ī¸ :warning:
"\U0001f349", // đ :watermelon:
"\U0001f44b", // đ :wave:
"\u3030\ufe0f", // ã°ī¸ :wavy_dash:
"\U0001f6be", // đž :wc:
"\u267f", // âŋ :wheelchair:
"\U0001f469", // đŠ :woman:
"\u274c", // â :x:
"\U0001f60b", // đ :yum:
"\u26a1", // ⥠:zap:
"\U0001f4a4", // đ¤ :zzz:
}
|