Com base nos comentários que recebi, examinei isso um pouco mais. Parece que atualmente a melhor prática é renunciar ao uso de entidades HTML e usar o caractere UTF-8 real . Os motivos listados são os seguintes:
- As codificações UTF-8 são mais fáceis de ler e editar para aqueles que entendem o que o caractere significa e sabe como digitá-lo.
- As codificações UTF-8 são tão ininteligíveis quanto as codificações de entidade HTML para aqueles que não as entendem, mas têm a vantagem de renderizar como caracteres especiais em vez de codificações decimais ou hexadecimais difíceis de entender.
Contanto que a codificação da sua página esteja configurada corretamente para UTF-8, você deve usar o caractere real em vez de uma entidade HTML. Eu li vários documentos sobre este assunto, mas os mais úteis foram:
Do artigo UTF-8: O segredo da codificação de caracteres :
A Wikipedia é um ótimo estudo de caso para um aplicativo que originalmente usava ISO-8859-1, mas mudou para UTF-8 quando se tornou muito complicado suportar idiomas estrangeiros. Os bots agora irão de fato passar por artigos e converter entidades de personagem em seus personagens reais correspondentes para facilitar o uso e pesquisar .
Esse artigo também fornece um bom exemplo envolvendo a codificação chinesa. Aqui está o exemplo abreviado por uma questão de preguiça:
UTF-8:
這兩個字是甚麼意思
Entidades HTML :
這兩個字是甚麼意思
As codificações de entidade UTF-8 e HTML não têm sentido para mim, mas pelo menos a codificação UTF-8 é reconhecível como um idioma estrangeiro e será renderizada corretamente em uma caixa de edição. O artigo prossegue dizendo o seguinte sobre a versão codificada por entidade HTML:
Extremamente inconveniente para aqueles de nós que realmente sabem o que são entidades de caráter, totalmente ininteligível para usuários pobres que não sabem! Mesmo as entidades de caráter "inteligíveis", um pouco mais amigáveis ao usuário, como o & theta; vai deixar os usuários que não estão interessados em aprender HTML coçando a cabeça. Por outro lado, se virem θ em uma caixa de edição, eles saberão que é um caractere especial e o tratarão de acordo, mesmo que não saibam como escrever esse caractere eles próprios.
Como outros notaram, você ainda precisa usar entidades HTML para caracteres XML reservados (e comercial, menor que, maior que).