[jdecked/twemoji-parser#12](https://redirect.github.com/jdecked/twemoji-parser/pull/12) で `Emoji_Presentation=No` な絵文字に正規表現がマッチしなくなりました コードポイント長が1の(VS16がついていない)絵文字の一部がこれに該当するようです ref: https://www.unicode.org/Public/17.0.0/ucd/emoji/emoji-data.txt emojilist.jsonには該当する絵文字が複数含まれています <details> <summary>一覧</summary> - `☹` (`U+2639`) - `✌` (`U+270C`) - `☝` (`U+261D`) - `🖐` (`U+1F590`) - `✍` (`U+270D`) - `👁` (`U+1F441`) - `🗣` (`U+1F5E3`) - `🕵` (`U+1F575`) - `⛑` (`U+26D1`) - `🕶` (`U+1F576`) - `🕷` (`U+1F577`) - `🕊` (`U+1F54A`) - `🐿` (`U+1F43F`) - `☘` (`U+2618`) - `🕸` (`U+1F578`) - `☄` (`U+2604`) - `🌤` (`U+1F324`) - `🌥` (`U+1F325`) - `🌦` (`U+1F326`) - `🌧` (`U+1F327`) - `⛈` (`U+26C8`) - `🌩` (`U+1F329`) - `🌨` (`U+1F328`) - `☃` (`U+2603`) - `🌬` (`U+1F32C`) - `🌪` (`U+1F32A`) - `🌫` (`U+1F32B`) - `☂` (`U+2602`) - `🌶` (`U+1F336`) - `🍽` (`U+1F37D`) - `🏌` (`U+1F3CC`) - `⛷` (`U+26F7`) - `⛸` (`U+26F8`) - `⛹` (`U+26F9`) - `🏋` (`U+1F3CB`) - `🕴` (`U+1F574`) - `🎖` (`U+1F396`) - `🎗` (`U+1F397`) - `🏵` (`U+1F3F5`) - `🎟` (`U+1F39F`) - `🏎` (`U+1F3CE`) - `🏍` (`U+1F3CD`) - `🛩` (`U+1F6E9`) - `🛥` (`U+1F6E5`) - `⛴` (`U+26F4`) - `🛳` (`U+1F6F3`) - `🛰` (`U+1F6F0`) - `🏗` (`U+1F3D7`) - `⛰` (`U+26F0`) - `🏔` (`U+1F3D4`) - `🏕` (`U+1F3D5`) - `🏞` (`U+1F3DE`) - `🛣` (`U+1F6E3`) - `🛤` (`U+1F6E4`) - `🏜` (`U+1F3DC`) - `🏖` (`U+1F3D6`) - `🏝` (`U+1F3DD`) - `🏙` (`U+1F3D9`) - `🏘` (`U+1F3D8`) - `🏟` (`U+1F3DF`) - `🏚` (`U+1F3DA`) - `🏛` (`U+1F3DB`) - `⛩` (`U+26E9`) - `⌨` (`U+2328`) - `🖥` (`U+1F5A5`) - `🖨` (`U+1F5A8`) - `🖱` (`U+1F5B1`) - `🖲` (`U+1F5B2`) - `🕹` (`U+1F579`) - `🗜` (`U+1F5DC`) - `📽` (`U+1F4FD`) - `🎞` (`U+1F39E`) - `🎙` (`U+1F399`) - `🎚` (`U+1F39A`) - `🎛` (`U+1F39B`) - `⏱` (`U+23F1`) - `⏲` (`U+23F2`) - `🕰` (`U+1F570`) - `🕯` (`U+1F56F`) - `🗑` (`U+1F5D1`) - `🛢` (`U+1F6E2`) - `⚖` (`U+2696`) - `⚒` (`U+2692`) - `🛠` (`U+1F6E0`) - `⛏` (`U+26CF`) - `⚙` (`U+2699`) - `⛓` (`U+26D3`) - `🗡` (`U+1F5E1`) - `⚔` (`U+2694`) - `🛡` (`U+1F6E1`) - `☠` (`U+2620`) - `⚰` (`U+26B0`) - `⚱` (`U+26B1`) - `⚗` (`U+2697`) - `🕳` (`U+1F573`) - `🌡` (`U+1F321`) - `🏷` (`U+1F3F7`) - `🗝` (`U+1F5DD`) - `🛋` (`U+1F6CB`) - `🛏` (`U+1F6CF`) - `🛎` (`U+1F6CE`) - `🖼` (`U+1F5BC`) - `🗺` (`U+1F5FA`) - `⛱` (`U+26F1`) - `🛍` (`U+1F6CD`) - `🗓` (`U+1F5D3`) - `🗃` (`U+1F5C3`) - `🗳` (`U+1F5F3`) - `🗄` (`U+1F5C4`) - `🗒` (`U+1F5D2`) - `🗂` (`U+1F5C2`) - `🗞` (`U+1F5DE`) - `🖇` (`U+1F587`) - `🏳` (`U+1F3F3`) - `🖊` (`U+1F58A`) - `🖋` (`U+1F58B`) - `🖍` (`U+1F58D`) - `🖌` (`U+1F58C`) - `❣` (`U+2763`) - `☮` (`U+262E`) - `✝` (`U+271D`) - `☪` (`U+262A`) - `🕉` (`U+1F549`) - `☸` (`U+2638`) - `✡` (`U+2721`) - `☯` (`U+262F`) - `☦` (`U+2626`) - `⚛` (`U+269B`) - `☢` (`U+2622`) - `☣` (`U+2623`) - `⚜` (`U+269C`) - `⏸` (`U+23F8`) - `⏭` (`U+23ED`) - `⏹` (`U+23F9`) - `⏺` (`U+23FA`) - `⏯` (`U+23EF`) - `⏮` (`U+23EE`) - `♾` (`U+267E`) - `🗯` (`U+1F5EF`) - `🗨` (`U+1F5E8`) </details> Misskeyのフロントエンドでは、 `mfm.js` で正規表現が使われているので `mfm.js` の `@misskey-dev/emoji-data` を 17.0.4 に上げるとMFMの中にある該当する絵文字が正しく Twemoji や Fluent Emoji で表示されなくなります バックエンドでは、リアクションの作成に正規表現が使われているため、該当する絵文字をリアクションするとハートにフォールバックするようになります https://github.com/user-attachments/assets/feb0e8cd-034b-4fbe-8632-faa363333b71
jdecked/twemoji-parser#12 で
Emoji_Presentation=Noな絵文字に正規表現がマッチしなくなりましたコードポイント長が1の(VS16がついていない)絵文字の一部がこれに該当するようです
ref: https://www.unicode.org/Public/17.0.0/ucd/emoji/emoji-data.txt
emojilist.jsonには該当する絵文字が複数含まれています
一覧
☹(U+2639)✌(U+270C)☝(U+261D)🖐(U+1F590)✍(U+270D)👁(U+1F441)🗣(U+1F5E3)🕵(U+1F575)⛑(U+26D1)🕶(U+1F576)🕷(U+1F577)🕊(U+1F54A)🐿(U+1F43F)☘(U+2618)🕸(U+1F578)☄(U+2604)🌤(U+1F324)🌥(U+1F325)🌦(U+1F326)🌧(U+1F327)⛈(U+26C8)🌩(U+1F329)🌨(U+1F328)☃(U+2603)🌬(U+1F32C)🌪(U+1F32A)🌫(U+1F32B)☂(U+2602)🌶(U+1F336)🍽(U+1F37D)🏌(U+1F3CC)⛷(U+26F7)⛸(U+26F8)⛹(U+26F9)🏋(U+1F3CB)🕴(U+1F574)🎖(U+1F396)🎗(U+1F397)🏵(U+1F3F5)🎟(U+1F39F)🏎(U+1F3CE)🏍(U+1F3CD)🛩(U+1F6E9)🛥(U+1F6E5)⛴(U+26F4)🛳(U+1F6F3)🛰(U+1F6F0)🏗(U+1F3D7)⛰(U+26F0)🏔(U+1F3D4)🏕(U+1F3D5)🏞(U+1F3DE)🛣(U+1F6E3)🛤(U+1F6E4)🏜(U+1F3DC)🏖(U+1F3D6)🏝(U+1F3DD)🏙(U+1F3D9)🏘(U+1F3D8)🏟(U+1F3DF)🏚(U+1F3DA)🏛(U+1F3DB)⛩(U+26E9)⌨(U+2328)🖥(U+1F5A5)🖨(U+1F5A8)🖱(U+1F5B1)🖲(U+1F5B2)🕹(U+1F579)🗜(U+1F5DC)📽(U+1F4FD)🎞(U+1F39E)🎙(U+1F399)🎚(U+1F39A)🎛(U+1F39B)⏱(U+23F1)⏲(U+23F2)🕰(U+1F570)🕯(U+1F56F)🗑(U+1F5D1)🛢(U+1F6E2)⚖(U+2696)⚒(U+2692)🛠(U+1F6E0)⛏(U+26CF)⚙(U+2699)⛓(U+26D3)🗡(U+1F5E1)⚔(U+2694)🛡(U+1F6E1)☠(U+2620)⚰(U+26B0)⚱(U+26B1)⚗(U+2697)🕳(U+1F573)🌡(U+1F321)🏷(U+1F3F7)🗝(U+1F5DD)🛋(U+1F6CB)🛏(U+1F6CF)🛎(U+1F6CE)🖼(U+1F5BC)🗺(U+1F5FA)⛱(U+26F1)🛍(U+1F6CD)🗓(U+1F5D3)🗃(U+1F5C3)🗳(U+1F5F3)🗄(U+1F5C4)🗒(U+1F5D2)🗂(U+1F5C2)🗞(U+1F5DE)🖇(U+1F587)🏳(U+1F3F3)🖊(U+1F58A)🖋(U+1F58B)🖍(U+1F58D)🖌(U+1F58C)❣(U+2763)☮(U+262E)✝(U+271D)☪(U+262A)🕉(U+1F549)☸(U+2638)✡(U+2721)☯(U+262F)☦(U+2626)⚛(U+269B)☢(U+2622)☣(U+2623)⚜(U+269C)⏸(U+23F8)⏭(U+23ED)⏹(U+23F9)⏺(U+23FA)⏯(U+23EF)⏮(U+23EE)♾(U+267E)🗯(U+1F5EF)🗨(U+1F5E8)Misskeyのフロントエンドでは、
mfm.jsで正規表現が使われているのでmfm.jsの@misskey-dev/emoji-dataを 17.0.4 に上げるとMFMの中にある該当する絵文字が正しく Twemoji や Fluent Emoji で表示されなくなりますバックエンドでは、リアクションの作成に正規表現が使われているため、該当する絵文字をリアクションするとハートにフォールバックするようになります
video.mov