luit - luit
|
luit rendering ISO 8859-1 caratteri accentati su un emulatore di terminale UTF-8.
| |
| Autori originali | Juliusz Chroboczek |
|---|---|
| Versione iniziale | 2001 |
| Rilascio stabile | 2.0 / 8 maggio 2016
|
| Repository | |
| Sistema operativo | Unix e Unix-like |
| Tipo | Software di utilità |
| Licenza | Licenza Consortium MIT /X |
| Sito web |
isola-invisibile |
luit è un programma di utilità utilizzato per tradurre il set di caratteri di un programma per computer in modo che il suo output possa essere visualizzato correttamente su un emulatore di terminale che utilizza un set di caratteri diverso. Mentre iconv converte il set di caratteri di stringhe o file di testo a riposo , luit converte l'input e l'output dei programmi in esecuzione in modo interattivo.
Panoramica
Lo scopo principale di luit è consentire alle applicazioni "legacy" che utilizzano set di caratteri diversi da UTF-8 di funzionare con emulatori di terminale contemporanei.
luit potrebbe essere richiesto oggi quando ci si connette a un host "legacy" che supporta solo una codifica precedente, come ISO 8859-1 . Ad esempio, invece di eseguire " ssh legacy-machine", un utente potrebbe dover eseguire " " per riprodurre correttamente i caratteri accentati francesi su un terminale UTF-8 .
LC_ALL=fr_FR luit ssh legacy-machine
luit viene anche utilizzato per eseguire correttamente il rendering dell'output delle applicazioni che utilizzano la commutazione del set di caratteri ISO 2022 . ISO 2022 è uno standard precedente che consentiva a un'applicazione di "passare" tra diversi tipi di carattere, ad esempio per combinare caratteri di disegno di linea con testo o per visualizzare testo in più lingue e set di caratteri. Lo stesso UTF-8 non supporta il cambio di font; la codifica è senza stato e assegna a ciascun carattere univoco (inclusi i caratteri di disegno a righe) la propria codifica numerica. Può essere usato per tradurre tra queste due codifiche.
Esempi di programmi che richiedono la traduzione per funzionare correttamente su un terminale UTF-8 includono versioni precedenti di emacs / MULE e programmi che utilizzano sequenze di spostamento ISO 2022 in codici di escape ANSI che passano a un set di caratteri alternativo per disegnare caratteri di disegno di linea .
luit viene invocato automaticamente da xterm quando necessario per tradurre l'output del programma in UTF-8, per i programmi in esecuzione su un computer locale. Quando ci si connette in remoto a un altro computer, l'utente deve eseguire luit direttamente.
luit interpreta l'output dell'applicazione in base al set di caratteri della locale con i turni ISO 2022 e le sequenze di escape ECMA-48 . Se un'applicazione parla una lingua diversa dal set di caratteri della locale (una che potrebbe aver soddisfatto le aspettative dell'emulatore di terminale in assenza di luit), luit può interpretare erroneamente l'output dell'applicazione e produrre un output danneggiato sul terminale.
Storia
luit è stato scritto nel 2001 da Juliusz Chroboczek, quando le principali distribuzioni Linux hanno iniziato a migrare al set di caratteri Unicode da codifiche "legacy" come ISO 8859-1 . Da allora è diventata un'utilità di base ampiamente installata, presente su più della metà di tutti i sistemi di computer Linux secondo alcune stime. Fa anche parte di AIX di IBM .
implementazioni
Esistono due versioni di luit: una mantenuta da Thomas Dickey come parte di xterm e un'altra precedentemente aggiornata da Freedesktop.org . Alcune distribuzioni Linux spediscono quest'ultima versione come parte del loro pacchetto di utilità X11 . Tuttavia, durante la migrazione a GitLab, quest'ultimo fork è stato interrotto perché non mantenuto.