Resumo

  • A RFC 1345 atribuiu nomes mnemônicos a caracteres para que uma faixa estreita de símbolos de transporte pudesse preservar sua identidade.
  • Com intro=0, a marca inicial e os sublinhados de nomes longos saíam do texto. O documento dizia expressamente que a leitura ficava melhor e a conversão perdia informação e reversibilidade.

Um nome cruza um sistema de correio que não comporta todos os seus caracteres. O programa poderia trocar o caractere difícil por uma aproximação e seguir adiante. Keld Simonsen ofereceu outra saída na RFC 1345, de junho de 1992: escrever um nome mnemônico feito de sinais comuns, para que o destinatário pudesse identificar o caractere mesmo sem vê-lo desenhado na tela.

A volta dependia de pequenas marcas. Como separar duas letras normais de duas letras que representam outro caractere? A RFC recomendava o valor decimal 38, o ampersand ASCII, como sequência introdutória. Se o texto original contivesse esse mesmo sinal, a sequência deveria aparecer duas vezes. Nomes com mais de dois caracteres recebiam sublinhados ao redor. A linha ficava mais carregada, mas seus limites permaneciam explícitos.

O repertório básico vinha de 83 símbolos gráficos invariáveis nas variantes de ISO 646. Nomes de dois caracteres serviam sobretudo a escritas alfabéticas, como latim, grego, cirílico, hebraico e árabe. Nomes de comprimento variável atendiam também escritas não alfabéticas, inclusive japonês e chinês. A intenção era permitir que um transporte pobre em caracteres levasse uma distinção que a tela local talvez não conseguisse mostrar.

Na seção 4.3.2 surgiu a escolha cara: definir a sequência introdutória como 0. Nesse caso, ela deixava de viajar; os sublinhados dos nomes longos também desapareciam. Para o leitor, menos interrupções no meio da frase. Para quem tentasse reconstruir o original, uma dúvida sem solução segura: aquele trecho era texto comum ou um nome que substituiu outro caractere? A RFC afirmou que a opção eliminava a reversibilidade e introduzia perda de informação. Declarou mnemonic+ascii+0 equivalente ao ascii comum.

É uma perda escolhida, não um acidente de transmissão. A forma marcada conserva a identidade do caractere ao custo de uma leitura menos elegante. A forma sem marcas favorece a aparência imediata e entrega menos dados ao próximo sistema. Se a única cópia guardada for essa segunda, nenhuma etiqueta posterior de charset dirá onde estavam os limites que nunca chegaram.

O documento ainda fez uma ressalva para caracteres chineses de origem chinesa, japonesa ou coreana. Desaconselhava os mnemônicos nesse caso: o equipamento previsto para o destinatário provavelmente conseguiria usar a codificação original, e os nomes alternativos seriam longos e ruins de ler. A possibilidade de escrever qualquer sinal num alfabeto pequeno não basta para fazer dele uma boa interface para pessoas.

A RFC era informativa. Ela não obrigou a Internet inteira a adotar esse modo de escrita. Deixou, porém, a conta da escolha à vista: preservar as marcas dá trabalho ao olho e protege a volta; apagá-las poupa o olho e apaga parte da prova. Um zero era suficiente para mudar o que um arquivo futuro poderia saber.

Fonte: RFC 1345, Character Mnemonics & Character Sets, seções 2 e 4.3; registro do RFC Editor.