Che tipo di codifica usano queste opere ANSI?


12

Ho trovato questo sito Web ; ha file zip (collegamenti nella pagina principale ) con tutte le opere d'arte. Alcuni hanno .ansun'estensione e sembrano codici di escape ANSI usati su Linux / Unix, ma quando ne apro uno usando catil terminale XFce produce spazzatura (ma a colori). Non sembrano la galleria di immagini.

La prima riga del disegno principale del collegamento è simile al seguente (copiata da Emacs):

[0;1m[30mthere is no substitute [0;33mÜܲ[1;43m°±²²[40mÛ[43mÛ²±[0;33mÝ ßÜ[1;43m²²²[40mÛÛ²[40m[K

Il tipo di file è DOS, ma possono essere appena creati su Windows.

Durante la ricerca di ANSI art ho anche trovato questo sito Web che ha file zip contenenti solo file con .ansestensione e inoltre non vengono visualizzati correttamente su Linux (galleria a pagina 2).

Le mie domande sono:

  • che tipo di codifica è questo, per quale computer?
  • ho bisogno di un visualizzatore speciale per vederlo sul terminale Linux?
  • sai se questo tipo di grafica è stata creata per terminali Linux / Unix? Ho trovato solo arte ASCII.
  • è possibile convertirlo per essere visualizzato su terminali Linux?

1
La parte di dati non è UTF-8: se sapessi quale codifica ha usato, potresti usarlo recodeo iconvtradurlo. Oppure (conoscendo la codifica), è possibile utilizzarla luitper tradurla, usando catsul display. Conoscere la codifica è probabilmente qualcosa per il forum dei superutente , non di attualità qui.
Thomas Dickey,

Risposte:


30

Questi sono codici di escape ANSI, ma stai riscontrando tre problemi:

  • la codifica dei caratteri, come sospetti - la maggior parte di questi file si trova in CP437, quindi è necessario convertirli:

    iconv -f CP437
    

    (utilizzare l' -topzione se è necessario specificare la codifica di destinazione; per impostazione predefinita iconvcorrisponderà alla codifica dei caratteri della locale corrente);

  • la combinazione di colori - questi file in genere assumono qualcosa di simile alla combinazione di colori CGA / EGA / VGA utilizzata sui PC; gli emulatori di terminali generalmente consentono di scegliere una combinazione di colori (o ridefinire i colori manualmente), ad esempio GNOME Terminal ha uno schema incorporato "console Linux" che funziona bene per l'arte ANSI;

  • le dimensioni dello schermo - la maggior parte delle opere d'arte ANSI presuppone una larghezza dello schermo di 80 colonne e prevede di avvolgerle intorno.

Una volta risolto tutto ciò, non è necessario un visualizzatore speciale; ecco uno screenshot che mostra l'output di aa-neurodancer.ansin GNOME Terminal, dopo aver convertito la codifica dei caratteri:

Arte ANSI che mostra una testa umana con gli occhiali

La parte inferiore dello screenshot mostra il record SAUCE del file :

  • SALSA versione 00
  • titolo: "Neurodancer"
  • autore: “Antsy Atheist”
  • data: 13 agosto 2018
  • dimensione del file: 0x1A65, 6757 byte
  • tipo di dati: carattere
  • tipo di file: ANSi
  • larghezza: 80
  • altezza: 23
  • carattere: IBM VGA

( Ansilove può decodificare i record SAUCE per te.)


Ho appena scoperto che gli ultimi 128 byte del file ANSI possono contenere metadati come il numero di caratteri per riga. Vedi le specifiche SAUSE per i dettagli.
jcubic,

Ah bello, questo spiega il fondo dello screenshot!
Stephen Kitt,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.