Por que o caractere Unicode (U+2295) aparece como (U+2248)

Por que o caractere Unicode (U+2295) aparece como (U+2248)

Abro o Bloco de Notas e digito +2295mantendo pressionada a tecla Alt e, em seguida, solto a tecla Alt. Salvei o arquivo com codificação Unicode. No entanto, a saída não éhttp://www.fileformat.info/info/unicode/char/2295/index.htmcomo esperado, mas issohttp://www.fileformat.info/info/unicode/char/2248/index.htmem vez de. O que estou fazendo de errado? Procurando algumas dicas.

Para qualquer outra pessoa que esteja tropeçando nisso: observe EnableHexNumpadque precisa ser um novoTipo de sequência(Veja a página Wiki com link na resposta)

Responder1

OEntrada da Wikipédianos métodos de entrada Unicode lista um pré-requisito necessário para que isso funcione:

Um pré-requisito para este método de entrada é que a chave de registro HKEY_CURRENT_USER\Control Panel\Input Methodcontenha um valor de tipo string ( REG_SZ) chamado EnableHexNumpad, que contém os dados do valor 1. Os usuários precisam fazer logoff/login no Windows 8.1/8.0, Windows 7 e Vista ou reinicializar em sistemas anteriores após editar o registro para que esse método de entrada comece a funcionar.

Depois de adicionar essa chave de registro à minha máquina e reinicializá-la, a entrada funciona exatamente como anunciada.

Responder2

Para responder à questão de por que esse valor específico está presente:

Com o método de entrada padrão, os números decimais são obtidos mod 256 e depois interpretados como a página de código OEM* se não houver zero à esquerda, ou a página de código ANSI se houver um zero à esquerda. Então, as etapas são:

  • 2295 módulo 256 = 247
  • 247 [0xF7] é U+2295 na página de código OEM

Os conjuntos de caracteres que possuem U+2295 nesta poção são Codepages 437, 737, 770, 772, 774, 860, 861, 862, 863, 864, 865, CWI e MIK.

(O fato de "2295" e "2248" começarem com 22 é uma coincidência interessante, nada mais)

* Nota: "Página de código ANSI" tem pouco a ver com ANSI, exceto que a página de código 1252 foi baseada em um rascunho do que mais tarde se tornou ISO 8859-1 [e algumas das outras tiveram origens semelhantes]. É o conjunto de caracteres de 8 bits associado à localidade atual e "Página de código OEM" é outro conjunto de caracteres associado à localidade, normalmente aquele usado no MS-DOS naquele país.

informação relacionada