Como posso obter a fonte de varredura do Terminal para exibir códigos alternativos em um editor de texto?

0

Estou trabalhando em um projeto que inclui a criação de arte ASCII, exceto que não é uma arte ASCII verdadeira, pois estou usando uma grande quantidade de códigos Alt do Windows para fazê-lo. De qualquer forma, eu queria ter certeza de que, enquanto eu estou trabalhando nisso, ele pareça exatamente como será em uma sessão de terminal de prompt de comando do windows. Portanto, como o prompt de comando é padronizado para a fonte de varredura Terminal, imaginei que usaria isso. Mas eu rapidamente percebi que quando eu uso o tipo de letra Terminal em um editor de texto, ele não renderiza códigos ASCII, seja de forma alguma (como é o caso na maioria das vezes) ou incorretamente. Agora, eu entendo se uma fonte simplesmente não suporta caracteres não-ASCII, mas o que eu não entendo é como os caracteres aparecem corretamente no prompt de comando quando eles não aparecem em um editor de texto. Eu verifiquei a saída do 'chcp' e ele foi configurado para 437 por padrão, que é o que eu preciso. Bem, ou isso ou 850, mas de preferência 437, uma vez que eles se livraram de alguns dos gráficos em 437 e os substituíram por outros caracteres latinos. As configurações do terminal prompt de comando mostram que estou usando a fonte de varredura Terminal com um tamanho de glifo 8x12. Portanto, tento usar o tamanho 12 no editor de texto, mas não é bom, mesmo depois de alternar a codificação de texto para MS-DOS OEM-US (supostamente um nome alternativo para CP437) ou UTF-8. Eu simplesmente não entendo como não estou conseguindo que os personagens apareçam.

Além disso, se isso ajudar, a arte que estou fazendo é basicamente capturas de tela modificadas de um jogo que eu interpreto chamado Anão Fortaleza que usa caracteres do conjunto Terminal / Maldições, ou pelo menos é assim que é relatado nos fóruns por aqueles que fazem conjuntos gráficos para substituir o conjunto de caracteres padrão. No entanto, o jogo não usa a fonte Terminal do sistema. Os arquivos de dados do jogo incluem uma imagem de bitmap que é uma grade de todos os personagens que o jogo usa. Portanto, ele usa esse bitmap para renderizar gráficos em vez do arquivo de fonte real:

Eu basicamente quero que um editor de texto faça com que, se eu digitar alguma arte ASCII parecida com uma imagem da Dwarf Fortress, ela realmente se pareça com a Dwarf Fortress, além da falta de cor. Alguma ajuda?

    
por grg-n-sox 27.05.2010 / 07:17

1 resposta

0

Soluções possíveis

Se você não precisa da página de código 437 caracteres 0 a 31, tente usar o Bloco de Notas com a fonte Terminal e use Alt + 032 para Alt + 0255 (com zeros à esquerda).

Se você quiser usar a página de códigos 437 caracteres de 0 a 31, tente abrir este arquivo no Bloco de Notas com a fonte e a cópia do Terminal e cole os caracteres que você precisa. O Notepad interpretará o caractere 9 como uma guia e os caracteres sequenciam 13 10 e 13 13 10 como uma entrada. Os outros caracteres de 0 a 31 e os caracteres 13 e 10 por si só mostrarão símbolos da fonte do Terminal.

Se você estiver disposto a renunciar à aparência simplificada da fonte Terminal, poderá usar o Bloco de Notas com a fonte Lucida Console e usar Alt + 1 como Alt + 255 para inserir os equivalentes Unicode dos símbolos da página de códigos 437. Ao salvar o arquivo de texto, certifique-se de escolher uma codificação Unicode como UTF-8.

Mais informações

No Windows, há uma diferença entre Alt + 1 a Alt + 255 e Alt + 01 a Alt + 0255 (com zeros à esquerda).

  • Quando você pressiona Alt + 1 com Alt + 255, o Windows tenta inserir um caractere com o mesmo símbolo que o símbolo da página de códigos 437, de 1 a 255.
  • Ao pressionar Alt + 032 para Alt + 0255, o Windows inserirá o número do símbolo 32 a 255 de qualquer fonte em uso.
  • Quando você pressiona Alt + 01 para Alt + 031, a maioria dos programas não faz nada, mas alguns programas podem interpretar alguns desses códigos Alt como códigos de controle. Por exemplo, no Notepad, Alt + 08 é backspace, Alt + 09 é tab e Alt + 013 é inserido.

A fonte Terminal funciona como uma fonte de símbolo: não está vinculada a um conjunto de caracteres específico ou mapeada para caracteres Unicode. Por causa disso, os códigos Alt fornecem resultados visuais diferentes com a fonte Terminal e depois com outras fontes.

Página de códigos 437 é um conjunto de símbolos de tela que contém símbolos válidos para caracteres de 0 a 31. Arquivos de texto e texto os editores usarão alguns ou todos os caracteres de 0 a 31 como códigos de controle, dificultando o armazenamento desses símbolos de tela em um arquivo de texto.

A codificação é usada ao abrir ou salvar um arquivo. A codificação determina como traduzir entre os bytes armazenados no arquivo e os caracteres Unicode armazenados na janela do editor. A codificação provavelmente não afetará a maneira como os códigos Alt se comportam.

    
por 01.06.2010 / 00:19