Ferramentas de desenvolvedor · HTML escapador de entidade
Por que é renderizado como um travessão: peculiaridade da entidade Windows-1252 de HTML
· Fundo
HTML Unicode compatibilidade
Os pontos de código 128–159 são caracteres de controle em Unicode, mas os navegadores renderizam como um travessão. Esta postagem explica o remapeamento do Windows-1252 que HTML padronizou para compatibilidade, de onde vêm essas entidades e como modernizá-las.
O travessão que era um caractere de controle - encontrando e no conteúdo migrado e se perguntando por que eles são renderizados
O travessão que era um caractere de controle - encontrando e no conteúdo migrado e se perguntando por que eles são renderizados. O conteúdo legado pode conter esperando um travessão e esperando um apóstrofo encaracolado. Ler esses números como controles Unicode comuns produziria resultados invisíveis ou perturbadores.
Para verificar o caractere , construa o travessão para um desenvolvedor que vê travessões e aspas errados no conteúdo migrado de documentos antigos. Preservar era um caractere de controle enquanto a compatibilidade com Windows-1252 produz reuniões 150 e 146; identificar onde o conteúdo migrado é consumido. A observação sobre saber por que eles são renderizados pertence apenas ao texto HTML.
A faixa de controle C1 - o que U+0080–U+009F deveria ser e por que eles nunca são textos imprimíveis
A faixa de controle C1 - o que U+0080–U+009F deveria ser e por que eles nunca são textos imprimíveis. O intervalo C1 U+0080 a U+009F é reservado para funções de controle em vez de tipografia comum para impressão. O glifo surpreendente vem do mapeamento de compatibilidade, não do ponto de código nominal.
Um desenvolvedor que vê traços e aspas errados no conteúdo migrado de documentos antigos pode testar o intervalo de controle c1 registrando o que você 0080 você antes da passagem de compatibilidade do Windows-1252. Compare 009f depois e localize o analisador responsável por ser e por que eles. Este resultado de caracteres explica que nunca são textos imprimíveis, nem contextos executáveis.
De onde vieram os números - valores Windows-1252 byte colados em HTML por processadores de texto e editores anteriores
De onde vieram os números - valores Windows-1252 byte colados em HTML por processadores de texto e editores anteriores. Os fluxos de trabalho de autoria mais antigos tratavam os valores Windows-1252 byte como se fossem números Unicode. O HTML migrado preservou essas referências decimais muito depois dos documentos serem movidos para codificações Unicode.
Isole onde os números vieram em um pequeno exemplo de compatibilidade do Windows-1252. Mostre no windows 1252 byte como fonte literal, siga os valores colados em html até seu destino e nomeie a leitura de API por processadores de texto e. Para o caractere , os primeiros editores permanecem como evidências vinculadas ao analisador.
O remapeamento de compatibilidade — como o algoritmo de análise HTML mapeia essas referências para os caracteres Windows-1252
O remapeamento de compatibilidade — como o algoritmo de análise HTML mapeia essas referências para os caracteres Windows-1252. O decodificador contém um mapa Windows-1252 explícito. Ele altera os valores selecionados antes de String.fromCodePoint, combinando resultados compatíveis com o navegador, como decimal 151, com um travessão.
Trate o remapeamento de compatibilidade como um experimento de limite. Um desenvolvedor que vê traços e aspas errados no conteúdo migrado de documentos antigos deve manter o algoritmo de análise HTML, executar uma operação de compatibilidade do Windows-1252 e inspecionar os mapas dessas referências caractere por caractere antes de alterar os caracteres 1252 do Windows. A afirmação sobre a evidência de compatibilidade do Windows-1252 pára nesta camada HTML.
Exemplo resolvido: traduzindo e até para os caracteres pretendidos - reticências, aspas, marcadores, travessões e marca registrada
Exemplo resolvido: traduzir e até para os caracteres pretendidos - reticências, aspas, marcadores, travessões e marca registrada. Exemplos computados da tabela incluem para reticências, para aspas simples à esquerda, para aspas simples à direita, para marcador, para travessão e para marca registrada.
Reproduza um exemplo prático de tradução de 133 com informações inofensivas em vez de material do cliente. Grave e 145 até 153, observe os caracteres pretendidos e conte cada passagem intencional de compatibilidade do Windows-1252. Essa trilha de caracteres permite que um desenvolvedor que veja travessões e aspas errados no conteúdo migrado de documentos antigos avalie aspas com reticências, travessões e marcas registradas sem adivinhar.
Modernizando o conteúdo – substituindo pelos pontos de código corretos ou pelos próprios caracteres em UTF-8
Modernizando o conteúdo — substituindo pelos pontos de código corretos ou pelos próprios caracteres em UTF-8. Modernize substituindo as referências herdadas pelo caractere Unicode pretendido ou pela referência numérica Unicode correta. Preserve os originais durante a migração para que dados históricos ambíguos permaneçam auditáveis.
Coloque a modernização do conteúdo substituindo, pelo código correto, e pontos ou caracteres lado a lado durante a revisão de compatibilidade do Windows-1252. Um desenvolvedor que vê travessões e aspas errados no conteúdo migrado de documentos antigos pode então decidir se ele mesmo em utf 8 foi alterado na conversão ou no downstream. Mantenha a conclusão de caracteres sobre as evidências de compatibilidade do Windows-1252 fora das reivindicações de segurança genéricas.
O que isso não cobre — MacRoman e outras páginas de código herdadas e conversão completa de documentos
O que isso não cobre – MacRoman e outras páginas de código herdadas e conversão completa de documentos. MacRoman e outras páginas de código requerem tabelas de conversão diferentes e não são inferidas aqui. Uma conversão completa de documentos precisa de metadados de codificação de origem confiáveis e manipulação em nível de byte.
Defina o que isso não significa antes de executar a compatibilidade com Windows-1252. Salve o macroman de capa e outros como um controle, inspecione os pontos de código por trás das páginas de código herdadas e mapeie a conversão completa do documento para o próximo intérprete. Isso torna a evidência de compatibilidade do Windows-1252 auditável para um desenvolvedor que vê traços e aspas errados no conteúdo migrado de documentos antigos que investigam o caractere .
Conclusão: uma peculiaridade do navegador preservada propositalmente - como o decodificador do escapador de entidade HTML mostra o que uma referência numérica resolve e onde a página da ferramenta indica como ela trata esse intervalo
Conclusão: uma peculiaridade do navegador preservada propositalmente - como o decodificador do escapador de entidade HTML mostra o que uma referência numérica resolve e onde a página da ferramenta indica como trata esse intervalo. O comportamento é uma compatibilidade deliberada, não uma identidade matemática. ToolAcre expõe o caractere resolvido usando o mesmo mapeamento fixo coberto por seus testes de unidade para 151 e 146.
Conecte uma peculiaridade do navegador a uma saída de compatibilidade observável do Windows-1252. Mantenha preservado propositalmente como ao lado do resultado de uma passagem e, em seguida, verifique onde o escapador da entidade html entra no decodificador e mostra o quê. Um desenvolvedor que vê traços e aspas errados no conteúdo migrado de documentos antigos agora pode revisar uma resolução de referência numérica como uma descoberta de caractere restrito. A decisão prática por trás deste artigo é específica: os pontos de código 128–159 são caracteres de controle em Unicode, mas os navegadores renderizam como um travessão. Esta postagem explica o remapeamento do Windows-1252 que HTML padronizou para compatibilidade, de onde vêm essas entidades e como modernizá-las. A ação do leitor é igualmente concreta: Links para o escapador de entidade HTML como o local para decodificar referências numéricas de conteúdo legado, com um ponteiro para as 'Notas técnicas' da página da ferramenta para o tratamento do intervalo 128–159.