mirror of
https://github.com/RGBCube/serenity
synced 2025-05-20 12:05:07 +00:00
Meta: Generate emoji.txt at build time from Unicode's emoji-test.txt
Instead of manually updating emoji.txt whenever new emoji are added, we use Unicode's emoji-test.txt to generate emoji.txt on each build, including only the emojis that Serenity supports at that time. By using emoji-test.txt, we can also include all forms of each emoji (fully-qualified, minimally-qualified, and unqualified) which can be helpful when double-checking how certain forms are handled.
This commit is contained in:
parent
8f4317e207
commit
221d9089e9
5 changed files with 86 additions and 509 deletions
1
Base/.gitignore
vendored
1
Base/.gitignore
vendored
|
@ -1 +1,2 @@
|
||||||
!*
|
!*
|
||||||
|
home/anon/Documents/emoji.txt
|
||||||
|
|
|
@ -1,509 +0,0 @@
|
||||||
Faces & Misc Emoji
|
|
||||||
------------------
|
|
||||||
|
|
||||||
☀️ - U+2600 U+FE0F SUN
|
|
||||||
☁️ - U+2601 U+FE0F CLOUD
|
|
||||||
☹️ - U+2639 U+FE0F FROWNING FACE
|
|
||||||
☺️ - U+263A U+FE0F SMILING FACE
|
|
||||||
✌️ - U+270C U+FE0F VICTORY HAND
|
|
||||||
✍️ - U+270D U+FE0F WRITING HAND
|
|
||||||
🅰️ - U+1F170 A BUTTON (BLOOD TYPE)
|
|
||||||
🅱️ - U+1F171 B BUTTON (BLOOD TYPE)
|
|
||||||
🅾️ - U+1F17E O BUTTON (BLOOD TYPE)
|
|
||||||
🅿️ - U+1F17F P BUTTON
|
|
||||||
🆎 - U+1F18E AB BUTTON (BLOOD TYPE)
|
|
||||||
🆑 - U+1F191 CL BUTTON
|
|
||||||
🆔 - U+1F194 ID BUTTON
|
|
||||||
🆖 - U+1F196 NG BUTTON
|
|
||||||
🆗 - U+1F197 OK BUTTON
|
|
||||||
🆘 - U+1F198 SOS BUTTON
|
|
||||||
🆙 - U+1F199 UP! BUTTON
|
|
||||||
🆚 - U+1F19A VS BUTTON
|
|
||||||
🈁 - U+1F201 JAPANESE “HERE” BUTTON
|
|
||||||
🈂️ - U+1F202 JAPANESE “SERVICE CHARGE” BUTTON
|
|
||||||
🈳 - U+1F233 JAPANESE “VACANCY” BUTTON
|
|
||||||
🈴 - U+1F234 JAPANESE “PASSING GRADE” BUTTON
|
|
||||||
🈶 - U+1F236 JAPANESE “NOT FREE OF CHARGE” BUTTON
|
|
||||||
🈷️ - U+1F237 JAPANESE “MONTHLY AMOUNT” BUTTON
|
|
||||||
🈸 - U+1F238 JAPANESE “APPLICATION” BUTTON
|
|
||||||
🉑 - U+1F251 JAPANESE “ACCEPTABLE” BUTTON
|
|
||||||
🌈 - U+1F308 RAINBOW
|
|
||||||
🌋 - U+1F30B VOLCANO
|
|
||||||
🌍 - U+1F30D GLOBE SHOWING EUROPE-AFRICA
|
|
||||||
🌎 - U+1F30E GLOBE SHOWING AMERICAS
|
|
||||||
🌏 - U+1F30F GLOBE SHOWING ASIA-AUSTRALIA
|
|
||||||
🌑 - U+1F311 NEW MOON
|
|
||||||
🌒 - U+1F312 WAXING CRESCENT MOON
|
|
||||||
🌓 - U+1F313 FIRST QUARTER MOON
|
|
||||||
🌔 - U+1F314 WAXING GIBBOUS MOON
|
|
||||||
🌕 - U+1F315 FULL MOON
|
|
||||||
🌖 - U+1F316 WANING GIBBOUS MOON
|
|
||||||
🌗 - U+1F317 LAST QUARTER MOON
|
|
||||||
🌘 - U+1F318 WANING CRESCENT MOON
|
|
||||||
🌙 - U+1F319 CRESCENT MOON
|
|
||||||
🌚 - U+1F31A NEW MOON FACE
|
|
||||||
🌛 - U+1F31B FIRST QUARTER MOON FACE
|
|
||||||
🌜 - U+1F31C LAST QUARTER MOON FACE
|
|
||||||
🌝 - U+1F31D FULL MOON FACE
|
|
||||||
🌤️ - U+1F324 U+FE0F SUN BEHIND SMALL CLOUD
|
|
||||||
🌥️ - U+1F325 U+FE0F SUN BEHIND LARGE CLOUD
|
|
||||||
🌦️ - U+1F326 U+FE0F SUN BEHIND RAIN CLOUD
|
|
||||||
🌧️ - U+1F327 U+FE0F CLOUD WITH RAIN
|
|
||||||
🌨️ - U+1F328 U+FE0F CLOUD WITH SNOW
|
|
||||||
🌩️ - U+1F329 U+FE0F CLOUD WITH LIGHTNING
|
|
||||||
🌭 - U+1F32D HOT DOG
|
|
||||||
🌮 - U+1F32E TACO
|
|
||||||
🌯 - U+1F32F BURRITO
|
|
||||||
🌱 - U+1F331 SEEDLING
|
|
||||||
🌲 - U+1F332 EVERGREEN TREE
|
|
||||||
🌴 - U+1F334 PALM TREE
|
|
||||||
🌵 - U+1F335 CACTUS
|
|
||||||
🌻 - U+1F33B SUNFLOWER
|
|
||||||
🍄 - U+1F344 MUSHROOM
|
|
||||||
🍅 - U+1F345 TOMATO
|
|
||||||
🍆 - U+1F346 EGGPLANT
|
|
||||||
🍇 - U+1F347 GRAPES
|
|
||||||
🍈 - U+1F348 MELON
|
|
||||||
🍉 - U+1F349 WATERMELON
|
|
||||||
🍊 - U+1F34A TANGERINE
|
|
||||||
🍋 - U+1F34B LEMON
|
|
||||||
🍌 - U+1F34C BANANA
|
|
||||||
🍍 - U+1F34D PINEAPPLE
|
|
||||||
🍎 - U+1F34E RED APPLE
|
|
||||||
🍏 - U+1F34E GREEN APPLE
|
|
||||||
🍐 - U+1F350 PEAR
|
|
||||||
🍑 - U+1F351 PEACH
|
|
||||||
🍒 - U+1F352 CHERRIES
|
|
||||||
🍓 - U+1F353 STRAWBERRY
|
|
||||||
🍔 - U+1F354 HAMBURGER
|
|
||||||
🍕 - U+1F355 SLICE OF PIZZA
|
|
||||||
🍟 - U+1F35F FRENCH FRIES
|
|
||||||
🍩 - U+1F369 DOUGHNUT
|
|
||||||
🍪 - U+1F36A COOKIE
|
|
||||||
🍳 - U+1F373 COOKING
|
|
||||||
🍷 - U+1F377 WINE GLASS
|
|
||||||
🍹 - U+1F379 TROPICAL DRINK
|
|
||||||
🎄 - U+1F384 CHRISTMAS TREE
|
|
||||||
🎉 - U+1F389 PARTY POPPER
|
|
||||||
🎨 - U+1F3A8 ARTIST PALETTE
|
|
||||||
🎹 - U+1F3B9 MUSICAL KEYBOARD
|
|
||||||
🏔️ - U+1F3D4 SNOW-CAPPED MOUNTAIN
|
|
||||||
🏜️ - U+1F3DC DESERT
|
|
||||||
🏝️ - U+1F3DD DESERT ISLAND
|
|
||||||
🐌 - U+1F40C SNAIL
|
|
||||||
🐙 - U+1F419 OCTOPUS
|
|
||||||
🐞 - U+1F41E LADY BEETLE
|
|
||||||
👀 - U+1F440 EYES
|
|
||||||
👆 - U+1F446 BACKHAND INDEX POINTING UP
|
|
||||||
👇 - U+1F447 BACKHAND INDEX POINTING DOWN
|
|
||||||
👈 - U+1F448 BACKHAND INDEX POINTING LEFT
|
|
||||||
👉 - U+1F449 BACKHAND INDEX POINTING RIGHT
|
|
||||||
👋 - U+1F44B WAVING HAND
|
|
||||||
👌 - U+1F44C OK HAND
|
|
||||||
👍 - U+1F44D THUMBS UP SIGN
|
|
||||||
👎 - U+1F44E THUMBS DOWN SIGN
|
|
||||||
👏 - U+1F44F CLAPPING HANDS
|
|
||||||
👑 - U+1F451 CROWN
|
|
||||||
👽 - U+1F47D ALIEN
|
|
||||||
💀 - U+1F480 SKULL
|
|
||||||
💌 - U+1F48C LOVE LETTER
|
|
||||||
💖 - U+1F496 SPARKLING HEART
|
|
||||||
💡 - U+1F4A1 ELECTRIC LIGHT BULB
|
|
||||||
💣 - U+1F4A3 BOMB
|
|
||||||
💦 - U+1F4A6 SWEAT DROPLETS
|
|
||||||
💯 - U+1F4AF HUNDRED POINTS
|
|
||||||
💾 - U+1F4BE FLOPPY DISK
|
|
||||||
📈 - U+1F4C8 CHART INCREASING
|
|
||||||
📉 - U+1F4C9 CHART DECREASING
|
|
||||||
📊 - U+1F4CA BAR CHART
|
|
||||||
📌 - U+1F4CC PUSHPIN
|
|
||||||
📍 - U+1F4CD ROUND PUSHPIN
|
|
||||||
📵 - U+1F4F5 NO MOBILE PHONES
|
|
||||||
📷 - U+1F4F7 CAMERA
|
|
||||||
📸 - U+1F4F8 CAMERA WITH FLASH
|
|
||||||
📺 - U+1F4FA TELEVISION
|
|
||||||
📻 - U+1F4FB RADIO
|
|
||||||
🔥 - U+1F525 FIRE
|
|
||||||
🔴 - U+1F534 RED CIRCLE
|
|
||||||
🔵 - U+1F535 BLUE CIRCLE
|
|
||||||
🔶 - U+1F536 LARGE ORANGE DIAMOND
|
|
||||||
🔷 - U+1F537 LARGE BLUE DIAMOND
|
|
||||||
🔸 - U+1F538 SMALL ORANGE DIAMOND
|
|
||||||
🔹 - U+1F539 SMALL BLUE DIAMOND
|
|
||||||
🔺 - U+1F53A UP-POINTING RED TRIANGLE
|
|
||||||
🔻 - U+1F53B DOWN-POINTING RED TRIANGLE
|
|
||||||
🕊 - U+1F54A DOVE
|
|
||||||
🕐 - U+1F550 ONE O’CLOCK
|
|
||||||
🕑 - U+1F551 TWO O’CLOCK
|
|
||||||
🕒 - U+1F552 THREE O’CLOCK
|
|
||||||
🕓 - U+1F553 FOUR O’CLOCK
|
|
||||||
🕔 - U+1F554 FIVE O’CLOCK
|
|
||||||
🕕 - U+1F555 SIX O’CLOCK
|
|
||||||
🕖 - U+1F556 SEVEN O’CLOCK
|
|
||||||
🕗 - U+1F557 EIGHT O’CLOCK
|
|
||||||
🕘 - U+1F558 NINE O’CLOCK
|
|
||||||
🕙 - U+1F559 TEN O’CLOCK
|
|
||||||
🕚 - U+1F55A ELEVEN O’CLOCK
|
|
||||||
🕛 - U+1F55B TWELVE O’CLOCK
|
|
||||||
🕜 - U+1F55C ONE-THIRTY
|
|
||||||
🕝 - U+1F55D TWO-THIRTY
|
|
||||||
🕞 - U+1F55E THREE-THIRTY
|
|
||||||
🕟 - U+1F55F FOUR-THIRTY
|
|
||||||
🕠 - U+1F560 FIVE-THIRTY
|
|
||||||
🕡 - U+1F561 SIX-THIRTY
|
|
||||||
🕢 - U+1F562 SEVEN-THIRTY
|
|
||||||
🕣 - U+1F563 EIGHT-THIRTY
|
|
||||||
🕤 - U+1F564 NINE-THIRTY
|
|
||||||
🕥 - U+1F565 TEN-THIRTY
|
|
||||||
🕦 - U+1F566 ELEVEN-THIRTY
|
|
||||||
🕧 - U+1F567 TWELVE-THIRTY
|
|
||||||
🕯 - U+1F56F CANDLE
|
|
||||||
🕳️ - U+1F573 HOLE
|
|
||||||
🕶️ - U+1F576 SUNGLASSES
|
|
||||||
🖊 - U+1F58A PEN
|
|
||||||
🖋 - U+1F58B FOUNTAIN PEN
|
|
||||||
🖌 - U+1F58C PAINTBRUSH
|
|
||||||
🖍 - U+1F58D CRAYON
|
|
||||||
🖐️ - U+1F590 HAND WITH FINGERS SPLAYED
|
|
||||||
🗝 - U+1F5DD OLD KEY
|
|
||||||
🗞 - U+1F5DE ROLLED-UP NEWSPAPER
|
|
||||||
🗡 - U+1F5E1 DAGGER
|
|
||||||
🗽 - U+1F5FD STATUE OF LIBERTY
|
|
||||||
😀 - U+1F600 GRINNING FACE
|
|
||||||
😁 - U+1F601 GRINNING FACE WITH SMILING EYES
|
|
||||||
😂 - U+1F602 FACE WITH TEARS OF JOY
|
|
||||||
😃 - U+1F603 SMILING FACE WITH OPEN MOUTH
|
|
||||||
😄 - U+1F604 SMILING FACE WITH OPEN MOUTH AND SMILING EYES
|
|
||||||
😆 - U+1F606 SMILING FACE WITH OPEN MOUTH AND TIGHTLY-CLOSED EYES
|
|
||||||
😈 - U+1F608 SMILING FACE WITH HORNS
|
|
||||||
😊 - U+1F60A SMILING FACE WITH SMILING EYES
|
|
||||||
😎 - U+1F60E SMILING FACE WITH SUNGLASSES
|
|
||||||
😬 - U+1F62C GRIMACING FACE
|
|
||||||
😮💨 - U+1F62E U+200D U+1F4A8 FACE EXHALING
|
|
||||||
😵💫 - U+1F635 U+200D U+1F4AB FACE WITH SPIRAL EYES
|
|
||||||
😶 - U+1F636 FACE WITHOUT MOUTH
|
|
||||||
😶🌫️ - U+1F636 U+200D U+1F32B U+FE0F FACE IN CLOUDS
|
|
||||||
😸 - U+1F638 GRINNING CAT WITH SMILING EYES
|
|
||||||
😺 - U+1F63A SMILING CAT FACE
|
|
||||||
😼 - U+1F63C CAT FACE WITH WRY SMILE
|
|
||||||
😽 - U+1F63D KISSING CAT FACE WITH CLOSED EYES
|
|
||||||
😾 - U+1F63E POUTING CAT FACE
|
|
||||||
😿 - U+1F63F CRYING CAT FACE
|
|
||||||
😹 - U+1F639 CAT FACE WITH TEARS OF JOY
|
|
||||||
🙀 - U+1F640 WEARY CAT FACE
|
|
||||||
🙂 - U+1F642 SLIGHTLY SMILING FACE
|
|
||||||
🙃 - U+1F643 UPSIDE-DOWN FACE
|
|
||||||
🚀 - U+1F680 ROCKET
|
|
||||||
🚥 - U+1F6A5 HORIZONTAL TRAFFIC LIGHT
|
|
||||||
🚦 - U+1F6A6 VERTICAL TRAFFIC LIGHT
|
|
||||||
🛖 - U+1F6D6 HUT
|
|
||||||
🛠️ - U+1F6E0 HAMMER AND WRENCH
|
|
||||||
🛡 - U+1F6E1 SHIELD
|
|
||||||
🟠 - U+1F7E0 ORANGE CIRLE
|
|
||||||
🟡 - U+1F7E1 YELLOW CIRLE
|
|
||||||
🟢 - U+1F7E2 GREEN CIRLE
|
|
||||||
🟣 - U+1F7E3 PURPLE CIRLE
|
|
||||||
🟤 - U+1F7E4 BROWN CIRLE
|
|
||||||
🟥 - U+1F7E5 RED SQUARE
|
|
||||||
🟦 - U+1F7E6 BLUE SQUARE
|
|
||||||
🟧 - U+1F7E7 ORANGE SQUARE
|
|
||||||
🟨 - U+1F7E8 YELLOW SQUARE
|
|
||||||
🟩 - U+1F7E9 GREEN SQUARE
|
|
||||||
🟪 - U+1F7EA PURPLE SQUARE
|
|
||||||
🟫 - U+1F7EB BROWN SQUARE
|
|
||||||
🤍 - U+1F90D WHITE HEART
|
|
||||||
🤎 - U+1F90E BROWN HEART
|
|
||||||
🤏 - U+1F90F PINCHING HAND
|
|
||||||
🤔 - U+1F914 THINKING FACE
|
|
||||||
🤖 - U+1F916 ROBOT
|
|
||||||
🤗 - U+1F917 SMILING FACE WITH OPEN HANDS
|
|
||||||
🤙 - U+1F919 CALL ME HAND
|
|
||||||
🤚 - U+1F91A RAISED BACK OF HAND
|
|
||||||
🤝 - U+1F91D HANDSHAKE
|
|
||||||
🤡 - U+1F921 CLOWN FACE
|
|
||||||
🤣 - U+1F923 ROLLING ON THE FLOOR LAUGHING
|
|
||||||
🤤 - U+1F924 DROOLING FACE
|
|
||||||
🤦 - U+1F926 FACE PALM
|
|
||||||
🤧 - U+1F927 SNEEZING FACE
|
|
||||||
🤪 - U+1F92A ZANY FACE
|
|
||||||
🤫 - U+1F92B SHUSHING FACE
|
|
||||||
🤭 - U+1F92D FACE WITH HAND OVER MOUTH
|
|
||||||
🥇 - U+1F947 FIRST PLACE MEDAL
|
|
||||||
🥈 - U+1F948 SECOND PLACE MEDAL
|
|
||||||
🥑 - U+1F951 AVOCADO
|
|
||||||
🥓 - U+1F953 BACON
|
|
||||||
🥕 - U+1F955 CARROT
|
|
||||||
🥛 - U+1F95B GLASS OF MILK
|
|
||||||
🥝 - U+1F95D KIWIFRUIT
|
|
||||||
🥦 - U+1F966 BROCCOLI
|
|
||||||
🥱 - U+1F971 YAWNING FACE
|
|
||||||
🥲 - U+1F972 SMILING FACE WITH TEAR
|
|
||||||
🥳 - U+1F973 PARTYING FACE
|
|
||||||
🥴 - U+1F974 WOOZY FACE
|
|
||||||
🥸 - U+1F978 DISGUISED FACE
|
|
||||||
🥹 - U+1F979 FACE HOLDING BACK TEARS
|
|
||||||
🥺 - U+1F97A PLEADING FACE
|
|
||||||
🦁 - U+1F981 LION FACE
|
|
||||||
🦄 - U+1F984 UNICORN FACE
|
|
||||||
🧋 - U+1F9CB BUBBLE TEA
|
|
||||||
🧐 - U+1F9D0 FACE WITH MONOCLE
|
|
||||||
🪤 - U+1FAA4 MOUSE TRAP
|
|
||||||
🫠 - U+1FAE0 MELTING FACE
|
|
||||||
🫡 - U+1FAE1 SALUTING FACE
|
|
||||||
🫢 - U+1FAE2 FACE WITH OPEN EYES AND HAND OVER MOUTH
|
|
||||||
🫣 - U+1FAE3 FACE WITH PEEKING EYE
|
|
||||||
🫤 - U+1FAE4 FACE WITH DIAGONAL MOUTH
|
|
||||||
🫥 - U+1FAE5 DOTTED LINE FACE
|
|
||||||
🫧 - U+1FAE7 BUBBLES
|
|
||||||
🧱 - U+1F9F1 BRICK
|
|
||||||
🧲 - U+1F9F2 MAGNET
|
|
||||||
🩱 - U+1FA71 ONE-PIECE SWIMSUIT
|
|
||||||
🩲 - U+1FA72 BRIEFS
|
|
||||||
🩳 - U+1FA73 SHORTS
|
|
||||||
🩸 - U+1FA78 DROP OF BLOOD
|
|
||||||
🩹 - U+1FA79 ADHESIVE BANDAGE
|
|
||||||
🪀 - U+1FA80 YO-YO
|
|
||||||
🪑 - U+1FA91 CHAIR
|
|
||||||
🪜 - U+1FA9C LADDER
|
|
||||||
🪢 - U+1FAA2 KNOT
|
|
||||||
🪵 - U+1FAB5 WOOD
|
|
||||||
🫑 - U+1FAD1 BELL PEPPER
|
|
||||||
🫒 - U+1FAD2 OLIVE
|
|
||||||
🫱 - U+1FAF1 RIGHTWARDS HAND
|
|
||||||
🫲 - U+1FAF2 LEFTWARDS HAND
|
|
||||||
🫳 - U+1FAF3 PALM DOWN HAND
|
|
||||||
🫴 - U+1FAF4 PALM UP HAND
|
|
||||||
🫶 - U+1FAF6 HEART HANDS
|
|
||||||
• - U+2022 BULLET
|
|
||||||
☕ - U+2615 HOT BEVERAGE
|
|
||||||
♋ - U+264B CANCER
|
|
||||||
⚓ - U+2693 ANCHOR
|
|
||||||
⚠ - U+26A0 WARNING SIGN
|
|
||||||
⚡ - U+26A1 HIGH VOLTAGE SIGN
|
|
||||||
⛓️ - U+26D3 CHAINS
|
|
||||||
⛔ - U+26D4 NO ENTRY
|
|
||||||
⛰️ - U+26F0 MOUNTAIN
|
|
||||||
⛱️ - U+26F1 UMBRELLA ON GROUND
|
|
||||||
⛽ - U+26FD FUEL PUMP
|
|
||||||
✋ - U+270B RAISED HAND
|
|
||||||
✨ - U+2728 SPARKLES
|
|
||||||
❤ - U+2764 RED HEART
|
|
||||||
⬆ - U+2B06 UPWARDS BLACK ARROW
|
|
||||||
⬇ - U+2B07 DOWNWARDS BLACK ARROW
|
|
||||||
⭐ - U+2B50 STAR
|
|
||||||
|
|
||||||
ZWJ Sequence Emoji (limited cross-platform support)
|
|
||||||
---------
|
|
||||||
|
|
||||||
🐱🐶 - U+1F431 U+200D U+1F436 CATDOG FACE
|
|
||||||
|
|
||||||
Yak Emoji (limited cross-platform support)
|
|
||||||
---------
|
|
||||||
|
|
||||||
- U+10CD00 HAIRYAK
|
|
||||||
- U+10CD01 IMMINENTYAKSHAVE
|
|
||||||
- U+10CD02 SHAVEDYAK
|
|
||||||
- U+10CD03 YAKPLUS
|
|
||||||
- U+10CD04 YAKPING
|
|
||||||
- U+10CD05 YAKMINUS
|
|
||||||
- U+10CD06 YAKTANGLE
|
|
||||||
- U+10CD07 YAKBAIT
|
|
||||||
- U+10CD08 REYAKTED
|
|
||||||
- U+10CD09 SLEEPYAK
|
|
||||||
- U+10CD0A YAKBRAIN
|
|
||||||
- U+10CD0B GOLDYAK
|
|
||||||
- U+10CD0C YAKKING
|
|
||||||
- U+10CD0D YAKMAIL
|
|
||||||
- U+10CD0E YAKMAGNET
|
|
||||||
- U+10CD0F YAKFIRE
|
|
||||||
- U+10CD10 YAKSPLODE
|
|
||||||
- U+10CD11 YAKSHED
|
|
||||||
- U+10CD12 YAKFUSED
|
|
||||||
- U+10CD13 8BITYAK
|
|
||||||
- U+10CD14 SKELEYAK
|
|
||||||
- U+10CD15 NEOYAK
|
|
||||||
- U+10CD16 YAKEA
|
|
||||||
- U+10CD17 YAKID2
|
|
||||||
- U+10CD18 YAKSLICE
|
|
||||||
- U+10CD19 YAKSTICKER
|
|
||||||
- U+10CD1A YAKKIE
|
|
||||||
- U+10CD1B ANGELYAK
|
|
||||||
- U+10CD1C YAK
|
|
||||||
- U+10CD1D YAKGONE
|
|
||||||
- U+10CD1E YAKMEASURE
|
|
||||||
- U+10CD1F YAKCOWBOY
|
|
||||||
- U+10CD20 YAKSPEED
|
|
||||||
- U+10CD21 YAKMANDO
|
|
||||||
- U+10CD22 NINJYAK
|
|
||||||
- U+10CD23 YOWL
|
|
||||||
- U+10CD60 PARTYAK
|
|
||||||
- U+10CD61 YAKKISS
|
|
||||||
- U+10CD62 THOUSANDYAKSTARE
|
|
||||||
- U+10CD63 YAKBLUSH
|
|
||||||
- U+10CD64 YAKSHRUG
|
|
||||||
- U+10CD65 YAKTHONK
|
|
||||||
- U+10CD66 YAKSAD
|
|
||||||
- U+10CD67 BABYAK
|
|
||||||
- U+10CD68 YAKKETYSAX
|
|
||||||
- U+10CD69 YAKBANE
|
|
||||||
- U+10CD90 YAKSTACK
|
|
||||||
- U+10CD91 YAKCHAIN
|
|
||||||
- U+10CD92 YAKRING
|
|
||||||
- U+10CD93 YAKOVERFLOW
|
|
||||||
- U+10CDB0 XMASYAK
|
|
||||||
- U+10CDB1 YAKTOBERFEST
|
|
||||||
- U+10CDD0 YAKSTEPS
|
|
||||||
- U+10CDE0 YAKRAGE-FRAME-1
|
|
||||||
- U+10CDE1 YAKRAGE-FRAME-2
|
|
||||||
- U+10CDE2 YAKRAGE-FRAME-3
|
|
||||||
- U+10CDE3 YAKRAGE-FRAME-4
|
|
||||||
- U+10CDE4 YAKRAGE-FRAME-5
|
|
||||||
- U+10CDE5 YAKRAGE-FRAME-6
|
|
||||||
|
|
||||||
ZWJ Sequence Flags
|
|
||||||
------------------
|
|
||||||
|
|
||||||
🏳️🐞 - U+1F3F3 U+FE0F U+200D U+1F41E SerenityOS flag (limited cross-platform support)
|
|
||||||
🏳️🌈 - U+1F3F3 U+FE0F U+200D U+1F308 Rainbow flag
|
|
||||||
🏳️⚧️ - U+1F3F3 U+FE0F U+200D U+26A7 U+FE0F Transgender flag
|
|
||||||
🏴☠️ - U+1F3F4 U+200D U+2620 U+FE0F Pirate flag
|
|
||||||
🏳️ - U+1F3F3 U+FE0F U+200D U+F8FF Klingon flag (limited cross-platform support)
|
|
||||||
🏳️🖖 - U+1F3F3 U+FE0F U+200D U+1F596 Vulcan flag (limited cross-platform support)
|
|
||||||
|
|
||||||
Regional Indicator Symbol Flags
|
|
||||||
-------------------------------
|
|
||||||
|
|
||||||
🇦🇪 - U+1F1E6 U+1F1EA AE United Arab Emirates
|
|
||||||
🇦🇲 - U+1F1E6 U+1F1F2 AM Armenia
|
|
||||||
🇦🇶 - U+1F1E6 U+1F1F6 AQ Antarctica
|
|
||||||
🇦🇹 - U+1F1E6 U+1F1F9 AT Austria
|
|
||||||
🇦🇽 - U+1F1E6 U+1F1FD AX Åland Islands
|
|
||||||
🇧🇮 - U+1F1E7 U+1F1EE BI Burundi
|
|
||||||
🇧🇻 - U+1F1E7 U+1F1FB BV Bouvet Island
|
|
||||||
🇨🇬 - U+1F1E8 U+1F1EC CG Congo - Brazzaville
|
|
||||||
🇨🇭 - U+1F1E8 U+1F1ED CH Switzerland
|
|
||||||
🇨🇮 - U+1F1E8 U+1F1EE CI Côte d'Ivoire
|
|
||||||
🇨🇵 - U+1F1E8 U+1F1F5 CP Clipperton Island
|
|
||||||
🇨🇷 - U+1F1E8 U+1F1F7 CR Costa Rica
|
|
||||||
🇨🇺 - U+1F1E8 U+1F1FA CU Cuba
|
|
||||||
🇩🇪 - U+1F1E9 U+1F1EA DE Germany
|
|
||||||
🇩🇯 - U+1F1E9 U+1F1EF DJ DJIBOUTI
|
|
||||||
🇩🇰 - U+1F1E9 U+1F1F0 DK Denmark
|
|
||||||
🇩🇴 - U+1F1E9 U+1F1F4 DO Dominican Republic
|
|
||||||
🇪🇦 - U+1F1EA U+1F1E6 EA Ceuta & Melilla
|
|
||||||
🇪🇭 - U+1F1EA U+1F1ED EH Western Sahara
|
|
||||||
🇪🇺 - U+1F1EA U+1F1FA EU European Union
|
|
||||||
🇫🇮 - U+1F1EB U+1F1EE FI Finland
|
|
||||||
🇫🇴 - U+1F1EB U+1F1F4 FO Faroe Islands
|
|
||||||
🇫🇷 - U+1F1EB U+1F1F7 FR France
|
|
||||||
🇬🇧 - U+1F1EC U+1F1E7 GB United Kingdom
|
|
||||||
🇬🇫 - U+1F1EC U+1F1EB GF French Guiana
|
|
||||||
🇬🇬 - U+1F1EC U+1F1EC GG Guernsey
|
|
||||||
🇬🇱 - U+1F1EC U+1F1F1 GL Greenland
|
|
||||||
🇬🇷 - U+1F1EC U+1F1F7 GR Greece
|
|
||||||
🇬🇹 - U+1F1EC U+1F1F9 GT Guatemala
|
|
||||||
🇭🇺 - U+1F1ED U+1F1FA HU Hungary
|
|
||||||
🇮🇩 - U+1F1EE_U+1F1E9 ID Indonesia
|
|
||||||
🇮🇱 - U+1F1EE U+1F1F1 IL Israel
|
|
||||||
🇮🇷 - U+1F1EE U+1F1F7 IR Iran
|
|
||||||
🇮🇸 - U+1F1EE U+1F1F8 IS Iceland
|
|
||||||
🇯🇴 - U+1F1EF U+1F1F4 JO Jordan
|
|
||||||
🇰🇳 - U+1F1F0 U+1F1F3 KN St. Kitts & Nevis
|
|
||||||
🇱🇦 - U+1F1F1 U+1F1E6 LA Laos
|
|
||||||
🇱🇧 - U+1F1F1 U+1F1E7 LB Lebanon
|
|
||||||
🇲🇫 - U+1F1F2_U+1F1EB MF St. Martin
|
|
||||||
🇲🇰 - U+1F1F2 U+1F1F0 MK North Macedonia
|
|
||||||
🇳🇫 - U+1F1F3 U+1F1EB NF Norfolk Island
|
|
||||||
🇳🇱 - U+1F1F3 U+1F1F1 NL Netherlands
|
|
||||||
🇳🇴 - U+1F1F3 U+1F1F4 NO Norway
|
|
||||||
🇵🇦 - U+1F1F5 U+1F1E6 PA Panama
|
|
||||||
🇵🇭 - U+1F1F5 U+1F1ED PH Philippines
|
|
||||||
🇵🇱 - U+1F1F5 U+1F1F1 PL Poland
|
|
||||||
🇵🇸 - U+1F1F5 U+1F1F8 PS Palestine
|
|
||||||
🇵🇼 - U+1F1F5 U+1F1FC PW Palau
|
|
||||||
🇷🇺 - U+1F1F7 U+1F1FA RU Russia
|
|
||||||
🇸🇪 - U+1F1F8 U+1F1EA SE Sweden
|
|
||||||
🇸🇯 - U+1F1F8 U+1F1EF SJ Svalbard & Jan Mayen
|
|
||||||
🇸🇹 - U+1F1F8 U+1F1F9 ST São Tomé & Príncipe
|
|
||||||
🇸🇾 - U+1F1F8 U+1F1FE SY Syria
|
|
||||||
🇹🇷 - U+1F1F9 U+1F1F7 TR Turkey
|
|
||||||
🇹🇼 - U+1F1F9 U+1F1FC TW Taiwan
|
|
||||||
🇺🇦 - U+1F1FA U+1F1E6 UA Ukraine
|
|
||||||
🇺🇲 - U+1F1FA_U+1F1F2 UM U.S. Outlying Islands
|
|
||||||
🇺🇳 - U+1F1FA U+1F1F3 UN United Nations
|
|
||||||
🇺🇸 - U+1F1FA U+1F1F8 US United States
|
|
||||||
🇻🇳 - U+1F1FB U+1F1F3 VN Vietnam
|
|
||||||
|
|
||||||
Emoji Tag Sequence Flags (limited cross-platform support)
|
|
||||||
------------------------
|
|
||||||
|
|
||||||
🏴 - U+1F3F4 U+E0063 U+E0061 U+E0071 U+E0063 U+E007F CA-QC Quebec
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0062 U+E0062 U+E007F DE-BB Brandenburg
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0062 U+E0065 U+E007F DE-BE Berlin
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0062 U+E0077 U+E007F DE-BW Baden-Württemberg
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0062 U+E0079 U+E007F DE-BY Bavaria
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0068 U+E0062 U+E007F DE-HB Bremen
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0068 U+E0065 U+E007F DE-HE Hesse
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0068 U+E0068 U+E007F DE-HH Hamburg
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E006D U+E0076 U+E007F DE-MV Mecklenburg-Vorpommern
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E006E U+E0069 U+E007F DE-NI Lower Saxony
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E006E U+E0077 U+E007F DE-NW North Rhine-Westphalia
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0072 U+E0070 U+E007F DE-RP Rhineland-Palatinate
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0073 U+E0068 U+E007F DE-SH Schleswig-Holstein
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0073 U+E006C U+E007F DE-SL Saarland
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0073 U+E006E U+E007F DE-SN Saxony
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0073 U+E0074 U+E007F DE-ST Saxony-Anhalt
|
|
||||||
🏴 - U+1F3F4 U+E0064 U+E0065 U+E0074 U+E0068 U+E007F DE-TH Thuringia
|
|
||||||
🏴 - U+1F3F4 U+E0065 U+E0073 U+E0063 U+E0074 U+E007F ES-CT Catalonia
|
|
||||||
🏴 - U+1F3F4 U+E0065 U+E0073 U+E0070 U+E0076 U+E007F ES-PV Basque Country
|
|
||||||
🏴 - U+1F3F4 U+E0066 U+E0069 U+E0030 U+E0033 U+E007F FI-03 South Ostrobothnia
|
|
||||||
🏴 - U+1F3F4 U+E0066 U+E0069 U+E0030 U+E0034 U+E007F FI-04 South Savonia
|
|
||||||
🏴 - U+1F3F4 U+E0066 U+E0069 U+E0030 U+E0035 U+E007F FI-05 Kainuu
|
|
||||||
🏴 - U+1F3F4 U+E0066 U+E0069 U+E0030 U+E0036 U+E007F FI-06 Kanta-Häme (Tavastia Proper)
|
|
||||||
🏴 - U+1F3F4 U+E0066 U+E0069 U+E0030 U+E0037 U+E007F FI-07 Central Ostrobothnia
|
|
||||||
🏴 - U+1F3F4 U+E0066 U+E0069 U+E0030 U+E0038 U+E007F FI-08 Central Finland
|
|
||||||
🏴 - U+1F3F4 U+E0066 U+E0069 U+E0031 U+E0033 U+E007F FI-13 North Karelia
|
|
||||||
🏴 - U+1F3F4 U+E0066 U+E0069 U+E0031 U+E0035 U+E007F FI-15 Northern Savonia
|
|
||||||
🏴 - U+1F3F4 U+E0066 U+E0069 U+E0031 U+E0036 U+E007F FI-16 Päijänne Tavastia
|
|
||||||
🏴 - U+1F3F4 U+E0066 U+E0069 U+E0031 U+E0037 U+E007F FI-17 Satakunta
|
|
||||||
🏴 - U+1F3F4 U+E0066 U+E0069 U+E0031 U+E0038 U+E007F FI-18 Uusimaa
|
|
||||||
🏴 - U+1F3F4 U+E0069 U+E0065 U+E006C U+E007F IE-L Leinster
|
|
||||||
🏴 - U+1F3F4 U+E0069 U+E0065 U+E006D U+E007F IE-M Munster
|
|
||||||
🏴 - U+1F3F4 U+E0069 U+E0065 U+E0075 U+E007F IE-U Ulster
|
|
||||||
🏴 - U+1F3F4 U+E0073 U+E0065 U+E006D U+E007F SE-M Skåne
|
|
||||||
🏴 - U+1F3F4 U+E0073 U+E006B U+E0062 U+E0063 U+E007F SK-BC Banská Bystrica
|
|
||||||
🏴 - U+1F3F4 U+E0073 U+E006B U+E0062 U+E006C U+E007F SK-BL Bratislava
|
|
||||||
🏴 - U+1F3F4 U+E0073 U+E006B U+E006B U+E0069 U+E007F SK-KI Košice
|
|
||||||
🏴 - U+1F3F4 U+E0073 U+E006B U+E006E U+E0069 U+E007F SK-NI Nitra
|
|
||||||
🏴 - U+1F3F4 U+E0073 U+E006B U+E0070 U+E0076 U+E007F SK-PV Prešov
|
|
||||||
🏴 - U+1F3F4 U+E0073 U+E006B U+E0074 U+E0061 U+E007F SK-TA Trnava
|
|
||||||
🏴 - U+1F3F4 U+E0073 U+E006B U+E0074 U+E0063 U+E007F SK-TC Trenčín
|
|
||||||
🏴 - U+1F3F4 U+E0073 U+E006B U+E007A U+E0069 U+E007F SK-ZI Žilina
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0030 U+E0035 U+E007F UA-05 Vinnychchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0030 U+E0037 U+E007F UA-07 Volyn
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0030 U+E0039 U+E007F UA-09 Luhanshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0031 U+E0032 U+E007F UA-12 Dnipropetrovshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0031 U+E0034 U+E007F UA-14 Donechchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0031 U+E0038 U+E007F UA-18 Zhytomyrshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0032 U+E0031 U+E007F UA-21 Zakarpattia
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0032 U+E0033 U+E007F UA-23 Zaporizhzhya
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0032 U+E0036 U+E007F UA-26 Prykarpattia
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0033 U+E0030 U+E007F UA-30 Kiev
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0033 U+E0032 U+E007F UA-32 Kyivshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0033 U+E0035 U+E007F UA-35 Kirovohradschyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0034 U+E0030 U+E007F UA-40 Sevastopol
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0034 U+E0033 U+E007F UA-43 Crimea
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0034 U+E0036 U+E007F UA-46 Lvivshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0034 U+E0038 U+E007F UA-48 Mykolayivschyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0035 U+E0031 U+E007F UA-51 Odeshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0035 U+E0033 U+E007F UA-53 Poltavshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0035 U+E0036 U+E007F UA-56 Rivnenshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0035 U+E0039 U+E007F UA-59 Sumshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0036 U+E0031 U+E007F UA-61 Ternopilshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0036 U+E0033 U+E007F UA-63 Kharkivshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0036 U+E0035 U+E007F UA-65 Khersonshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0036 U+E0038 U+E007F UA-68 Khmelnychchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0037 U+E0031 U+E007F UA-71 Cherkashchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0037 U+E0034 U+E007F UA-74 Chernihivshchyna
|
|
||||||
🏴 - U+1F3F4 U+E0075 U+E0061 U+E0037 U+E0037 U+E007F UA-77 Chernivtsi Oblast
|
|
||||||
|
|
|
@ -206,6 +206,7 @@ option(BUILD_EVERYTHING "Build all optional components" ON)
|
||||||
|
|
||||||
include(utils)
|
include(utils)
|
||||||
include(wasm_spec_tests)
|
include(wasm_spec_tests)
|
||||||
|
include(emoji_txt)
|
||||||
|
|
||||||
serenity_component(
|
serenity_component(
|
||||||
Tests
|
Tests
|
||||||
|
|
23
Meta/CMake/emoji_txt.cmake
Normal file
23
Meta/CMake/emoji_txt.cmake
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
option(ENABLE_EMOJI_TXT_GENERATION "Enable download of emoji-test.txt and generation of emoji.txt at build time" ON)
|
||||||
|
|
||||||
|
set(EMOJI_TEST_TXT_PATH ${CMAKE_BINARY_DIR}/emoji-test.txt)
|
||||||
|
set(EMOJI_TEST_TXT_URL https://unicode.org/Public/emoji/14.0/emoji-test.txt)
|
||||||
|
|
||||||
|
if(ENABLE_EMOJI_TXT_GENERATION)
|
||||||
|
if(NOT EXISTS ${EMOJI_TEST_TXT_PATH})
|
||||||
|
file(DOWNLOAD ${EMOJI_TEST_TXT_URL} ${EMOJI_TEST_TXT_PATH})
|
||||||
|
endif()
|
||||||
|
set(EMOJI_RES_PATH "${SerenityOS_SOURCE_DIR}/Base/res/emoji")
|
||||||
|
set(EMOJI_TXT_INSTALL_PATH "${SerenityOS_SOURCE_DIR}/Base/home/anon/Documents/emoji.txt")
|
||||||
|
add_custom_command(
|
||||||
|
OUTPUT ${EMOJI_TXT_INSTALL_PATH}
|
||||||
|
COMMAND ${SerenityOS_SOURCE_DIR}/Meta/generate-emoji-txt.sh "${EMOJI_TEST_TXT_PATH}" "${EMOJI_RES_PATH}" "${EMOJI_TXT_INSTALL_PATH}"
|
||||||
|
# This will make this command only run when the modified time of the directory changes,
|
||||||
|
# which only happens if files within it are added or deleted, but not when a file is modified.
|
||||||
|
# This is fine for this use-case, because the contents of a file changing should not affect
|
||||||
|
# the generated emoji.txt file.
|
||||||
|
MAIN_DEPENDENCY ${EMOJI_RES_PATH}
|
||||||
|
USES_TERMINAL
|
||||||
|
)
|
||||||
|
add_custom_target(generate_emoji_txt ALL DEPENDS ${EMOJI_TXT_INSTALL_PATH})
|
||||||
|
endif()
|
61
Meta/generate-emoji-txt.sh
Executable file
61
Meta/generate-emoji-txt.sh
Executable file
|
@ -0,0 +1,61 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
if [ $# -ne 3 ]; then
|
||||||
|
echo "Usage: $0 <input emoji-test.txt file> <emoji image directory> <output path>"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
INPUT_FILE="$1"
|
||||||
|
EMOJI_DIR="$2"
|
||||||
|
OUTPUT_PATH="$3"
|
||||||
|
|
||||||
|
# empty the generated file first
|
||||||
|
:>| "$OUTPUT_PATH"
|
||||||
|
|
||||||
|
first_heading=true
|
||||||
|
while IFS= read -r line
|
||||||
|
do
|
||||||
|
if [[ $line == \#\ subgroup:\ * || $line == \#\ group:\ * ]]; then
|
||||||
|
if [ $first_heading = false ]; then
|
||||||
|
echo "" >> "$OUTPUT_PATH"
|
||||||
|
fi
|
||||||
|
echo "$line" >> "$OUTPUT_PATH"
|
||||||
|
first_heading=false
|
||||||
|
elif [[ ${#line} -ne 0 && $line != \#* ]]; then
|
||||||
|
codepoints_string=${line%%;*}
|
||||||
|
IFS=" " read -r -a codepoints <<< "$codepoints_string"
|
||||||
|
for i in "${!codepoints[@]}"; do
|
||||||
|
# strip leading zeros
|
||||||
|
codepoints[$i]="${codepoints[$i]#"${codepoints[$i]%%[!0]*}"}"
|
||||||
|
# add U+ prefix
|
||||||
|
codepoints[$i]="U+${codepoints[$i]}"
|
||||||
|
done
|
||||||
|
|
||||||
|
# when doing a lookup we want to remove all U+FE0F (emoji presentation specifier) codepoints
|
||||||
|
lookup_filename_parts=()
|
||||||
|
for codepoint in "${codepoints[@]}"; do
|
||||||
|
if [[ $codepoint != "U+FE0F" ]]; then
|
||||||
|
lookup_filename_parts+=("$codepoint")
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
IFS=_
|
||||||
|
lookup_filename="${lookup_filename_parts[*]}.png"
|
||||||
|
|
||||||
|
if [ -f "$EMOJI_DIR/$lookup_filename" ]; then
|
||||||
|
emoji_and_name=${line#*# }
|
||||||
|
emoji=${emoji_and_name%% E*}
|
||||||
|
name_with_version=${emoji_and_name#* }
|
||||||
|
name=${name_with_version#* }
|
||||||
|
qualification=${line#*; }
|
||||||
|
qualification=${qualification%%#*}
|
||||||
|
# remove trailing whitespace characters
|
||||||
|
qualification="${qualification%"${qualification##*[![:space:]]}"}"
|
||||||
|
|
||||||
|
IFS=" "
|
||||||
|
echo "$emoji - ${codepoints[*]} ${name^^} ($qualification)" >> "$OUTPUT_PATH"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done < "$INPUT_FILE"
|
Loading…
Add table
Add a link
Reference in a new issue