Emoji da bandeira da Côte d'Ivoire não está sendo renderizado

Olá!

O emoji da bandeira da Côte d’Ivoire (Costa do Marfim) (por exemplo, 🇨🇮 [pré-formatado], :côte_d_ivoire: [normal]) não está aparecendo corretamente no meu site de fórum Discourse hospedado.

Estou em um Mac e inseri o emoji através do seletor de emojis do Mac (pressiono fn para abri-lo).

Ele é renderizado corretamente quando está no editor antes de postar:

Mas, uma vez postado, ele é renderizado como texto que se parece com a sintaxe correta do shortcode do emoji:

Tentei mexer no shortcode do emoji (:ivory_coast: e usando diferentes opções Unicode para o circunflexo no “o” de “côte_d_ivoire”), mas isso não resolveu o problema.

Estou curioso se este problema aparecerá aqui no meta quando eu postar isso…

ATUALIZAÇÃO: Vejo que o problema não ocorre aqui no Meta. Tentei digitar o :côte_d_ivoire: em outro lugar do meu texto para que não ficasse ao lado de outro shortcode de emoji e ainda assim obtenho o mesmo problema. Observe que eu mesmo não digitei o shortcode do emoji. Ele é convertido automaticamente pela minha instalação do Discourse assim que insiro o emoji. Isso não ocorre aqui no Meta.

2 curtidas

Acho que consigo reproduzir aqui adicionando o selecionado do meu seletor de iPhone após outro emoji. Vamos ver se funciona…

:slight_smile: :côte_d_ivoire:

E uma captura de tela do compositor:

Não tenho certeza se consigo ver o emoji :côte_d_ivoire: no seletor de emojis do Discourse, então talvez seja um problema de mudança do conjunto de emojis da Apple para uma das novas alternativas? Emojis update

2 curtidas

:côte_d_ivoire:
:cote_divoire:
:côte_d_ivoire:
:cote_d_ivoire:


🇨🇮
:cote_divoire:
:côte_d_ivoire:
:cote_d_ivoire:

@j.jaffeux parece que após d38acc5df120e6f3a89d04cf746d2fe03534be29 isso quebrou, parece haver alguma inconsistência em relação à diacrítica no gem emoji?

dist/emoji_to_name.json:
  "🇨🇮":": "cote_d_ivoire",

dist/groups.json:
      {
        "name": "cote_d_ivoire",
        "tonable": false
      },

dist/aliases.json:
  "cote_d_ivoire": [
    "cote_divoire"
  ],

dist/emojis.json:
  {
    "name": "côte_d_ivoire",
    "code": "1f1e8-1f1ee"
  },

lib/discourse_emojis/constants.rb:
   "cote_d_ivoire" => ["cote_divoire"],

devemos adicionar um alias côte_d_ivoirecote_d_ivoire?
(ou talvez a versão com o ô deva ser a primária? Não sei qual é a primária “correta” aqui)

ou talvez simplesmente não lidamos com diacríticas em emojis corretamente

:tonga:: :tonga:
:türkiye:: :türkiye:
:trinidad_tobago:: :trinidad_tobago:

🇹🇴: :tonga:
🇹🇷: :türkiye:
🇹🇹: :trinidad_tobago:

5 curtidas

e a :piñata: coitada também está quebrada, e presumivelmente alguém comeu todo o doce. :confused:

7 curtidas

Obrigado por investigarem isso, pessoal. Os detalhes são muito complexos para mim, como alguém que não é engenheiro de software, mas duas coisas caso seja útil:

  • Encontrei este tópico relacionado com este ponto compartilhado aqui:

    Parece que o cooker está traduzindo o emoji bruto para seu nome, mas depois não o processa, a menos que enable inline emoji translation esteja ativado.

    Tentei ativar isso e ainda tive o mesmo problema usando o seletor de emoji do iOS.

  • Para uma correção futura em relação aos diacríticos, talvez vocês também precisem ficar atentos a caracteres Unicode pré-compostos (por exemplo, um único glifo com ‘o’ e o diacrítico embutidos) e decompostos (por exemplo, ‘o’ + ‘^’ combinados separadamente) :thinking:

1 curtida

Sim, existe todo tipo de história em torno disso. Vou analisar onde a conversão deu errado.

4 curtidas

A situação deve melhorar bastante com este commit:

Obrigado pelo relato

7 curtidas