[successivo] [precedente] [inizio] [fine] [indice generale] [violazione licenza] [translators] [docinfo] [indice analitico] [volume] [parte]
Durante la fase di transizione alla codifica universale è importante la possibilità di convertire file di testo con codifiche differenti; inoltre è importante poter utilizzare programmi di creazione e modifica di questi file, potendo leggere e salvare con codifiche alternative.
Recode (1) è un programma per la conversione di file da un insieme di caratteri a un altro. Recode non si limita semplicemente a questo; spesso è in grado di intervenire su codifiche composte da sequenze di caratteri, anche se in queste situazioni il suo utilizzo si complica e i risultati non sono sempre garantiti.
|
|
Osservando lo schema sintattico mostrato, si può vedere che è necessario indicare il tipo di conversione attraverso due parole chiave: la prima serve a stabilire il modo in cui sono codificati i dati in ingresso, la seconda stabilisce in che modo li si vuole trasformare in uscita.
Uno o più file in ingresso possono essere indicati alla fine della riga di comando, facendo sì che Recode tenti di sovrascriverli; in alternativa, un file in ingresso può essere fornito attraverso lo standard input, ottenendo come il risultato della conversione dallo standard output.
|
Bisogna essere prudenti con Recode quando si indicano i file nella riga di comando, perché la conversione potrebbe essere irreversibile. |
Nel suo piccolo, Recode è un programma complesso. Questa sezione mostra solo alcuni aspetti banali, mentre per sfruttare bene tutte le sue potenzialità è necessario leggere la documentazione originale: info recode.
Tabella 256.1. Alcune opzioni.
Le codifiche da utilizzare nelle conversioni sono indicate attraverso la notazione codifica_prima..codifica_dopo, come si vede nello schema sintattico introduttivo. Le parole chiave utilizzate per questo possono essere indicate indifferentemente utilizzando le lettere minuscole o maiuscole. L'elenco delle codifiche (e quindi delle trasformazioni possibili) è molto lungo e potrebbe essere ottenuto un riepilogo attraverso l'opzione -a. Tuttavia, sarebbe meglio leggere prima ciò che è stato annotato nel documento info recode al riguardo, per non rischiare di trovarsi poi nei pasticci.
Tabella 256.2. Alcune parole chiave che si possono usare per individuare le codifiche.
Segue la descrizione di alcuni esempi.
$ recode -a IBM437[Invio]
Mostra tutte le possibilità di abbinamento con la codifica IBM437.
$ recode -a IBM-PC[Invio]
Mostra tutte le possibilità di abbinamento con la codifica IBM-PC.
$ recode IBM-PC..ISO_8859-1 lettera[Invio]
Converte il file lettera dalla codifica IBM-PC, con codice di interruzione di riga pari a <CR><LF> a ISO 8859-1, con codice di interruzione di riga pari a <LF> soltanto, sovrascrivendo il file.
$ recode IBM-PC..ISO_8859-1 < lettera > lettera2 [Invio]
Converte il file lettera dalla codifica ISO 8859-1, con codice di interruzione di riga pari a <LF>, a IBM-PC, con codice di interruzione di riga pari a <CR><LF>, generando il file lettera2.
$ recode -g IBM-PC..ISO_8859-1 < schema1 > schema2 [Invio]
Converte il file schema1 dalla codifica IBM-PC a ISO 8859-1, generando il file schema2, tentando di convertire anche i simboli grafici. Anche in questo caso ha luogo la conversione del codice di interruzione di riga.
Iconv (2) è un programma che fa parte del pacchetto delle librerie GNU C e serve a convertire un file da un insieme di caratteri a un altro. Lo schema sintattico seguente mostra l'utilizzo normale del programma:
|
|
La codifica viene indicata attraverso una parola chiave e l'elenco completo degli insiemi di caratteri conosciuti si ottiene con l'opzione ---list, usata da sola:
|
|
Il file da convertire viene indicato normalmente alla fine della riga di comando, ma in sua mancanza viene usato lo standard input; generalmente il risultato della conversione viene emesso attraverso lo standard output, a meno che sia usata espressamente l'opzione -o, con la quale si indica il nome di un file da creare per questo scopo.
Tabella 256.3. Alcune opzioni.
Le parole chiave utilizzate per individuare la codifica possono essere indicate indifferentemente utilizzando le lettere minuscole o maiuscole. Si deve osservare che non tutte le trasformazioni sono possibili; pertanto, di fronte a richieste impossibili, il programma si rifiuta di procedere, così come si rifiuta di farlo se il file in ingresso non è conforme alla codifica dichiarata per questo.
Tabella 256.4. Alcune parole chiave che si possono usare per individuare le codifiche.
| Codifica | Descrizione |
|
| Rappresenta la codifica IBM usata normalmente nel Dos. |
|
| Rappresenta la codifica IBM usata normalmente nel Dos per la localizzazione europea. |
|
| Si riferisce alla codifica ISO 8859-1. |
|
| Si riferisce alla codifica UTF-8. |
Segue la descrizione di alcuni esempi.
$ iconv --list[Invio]
Mostra i nomi di tutte le codifiche gestibili.
$ iconv -f LATIN1 -t UTF-8 lettera > lettera2[Invio]
Converte il file lettera, scritto con la codifica ISO 8859-1, a UTF-8, generando il file lettera2.
$ cat lettera | iconv -f LATIN1 -t UTF-8 > lettera2[Invio]
Esattamente come nell'esempio precedente, con la differenza che il file lettera viene fornito attraverso lo standard input.
Gedit (3) è un programma per la creazione e la modifica di file di testo, associato allo sviluppo di Gnome; il suo eseguibile è gedit, che in generale non richiede l'uso di opzioni o argomenti particolari. Il vantaggio di usare Gedit rispetto ad altri programmi analoghi sta nella facilità con cui è possibile gestire file che utilizzano la codifica UTF-8, anche se la configurazione locale non è ancora predisposta per questo.
|
Figura 256.1. L'aspetto generale di Gedit durante il funzionamento, secondo la localizzazione inglese.
|
La configurazione predefinita di Gedit prevede di salvare utilizzando la codifica UTF-8; tuttavia, quando si salva attribuendo un nome, è possibile specificare il formato; oppure, se la versione di Gedit lo prevede, è possibile modificare questo comportamento tra le preferenze, come si vede nella figura 256.3.
|
Figura 256.2. Configurazione delle preferenze sul formato da usare quando si salva un file con Gedit.
|
Yudit (4) è un programma per la creazione e la modifica di file di testo secondo varie codifiche Unicode o ISO 10646. Yudit è comunque un programma più complesso di quello che si può pensare a prima vista, che si avvale di diverse componenti, di cui yudit è comunque l'eseguibile principale.
|
|
Come si vede dal modello sintattico che riguarda l'uso dell'eseguibile yudit, oltre che indicare i nomi dei file che si vogliono aprire per la modifica, è possibile specificare la codifica di questi. Successivamente, durante il funzionamento, è poi possibile salvare secondo una codifica differente, oppure rimanere su quella iniziale; inoltre è possibile cambiare il tipo di codice di interruzione di riga. La sigla da usare per identificare la codifica dipende dal programma uniconv, che fa sempre parte di Yudit; tuttavia, per sapere esattamente quali sono i nomi validi, è necessario avviare proprio uniconv con un'opzione qualunque, purché non valida, perché la documentazione delle pagine di manuale potrebbe essere errata:
$ uniconv -h[Invio]
uniconv version 2.6 GNU(c) Gaspar Sinai USAGE: uniconv [-out file] [-in file] [-decode name] [-encode name] \ |
Dagli esempi visti, volendo aprire il file prova.txt che inizialmente risulta scritto secondo la codifica ISO 8859-1, si potrebbe usare il comando seguente:
$ yudit -e iso-8859-1 prova.txt[Invio]
|
Figura 256.3. Yudit avviato per modificare un file secondo la codifica ISO 8859-1.
|
Durante il funzionamento dell'eseguibile yudit è possibile controllare l'inserimento dei caratteri da tastiera attraverso la selezione del pulsante <Input>, dal menù di bottoni che appare sulla parte superiore del riquadro, che però non si mostra con il suo nome:
|
Selezionando il pulsante grafico che si vede evidenziato nella figura, si ottiene una finestra, come nella figura 256.5.
|
Figura 256.5. La finestra che si ottiene selezionando il pulsante <
|
Il significato di questo riquadro può risultare oscuro al primo momento; in particolare, nella colonna centrale appare un elenco di nomi, che rappresentano un modo di inserire codici da tastiera, associati ai tasti funzionali, da [F1] a [F12]. Cambiando la modalità di inserimento, cambia il modo in cui si può usare la tastiera: nella colonna di destra si vede in che modo si possono indicare i caratteri più comuni. Per esempio, se si seleziona l'inserimento unicode, per scrivere la lettera «È», si può scrivere u00C8 (si noti che però quanto suggerito sulla colonna di destra potrebbe anche essere errato, ma basta fare qualche tentativo per capire cosa serve veramente).
La colonna a sinistra del riquadro che consente di intervenire nella modalità di inserimento dei caratteri contiene un elenco numeroso di possibilità, che però vanno associate a uno dei 12 tasti, da [F1] a [F12], della colonna centrale. Per esempio, volendo utilizzare la modalità di inserimento denominata SGML, associandola al tasto [F12], si seleziona il nome SGML nella colonna sinistra; si seleziona la voce utilizzata attualmente per il tasto [F12], quindi si seleziona il pulsante grafico che si trova tra la prima e la seconda colonna, in modo da rimpiazzare il nome SGML in quella voce del tasto [F12].
L'ultimo pulsante grafico del menù di Yudit serve a modificare il tipo di codice di interruzione di riga. In generale è possibile scegliere tra:
| Nome | Corrispondenza | Utilizzo |
| Unix | <LF> | Usato nella maggior parte dei sistemi Unix, compresi i sistemi GNU. |
| DOS | <CR><LF> | Usato nei sistemi Dos e MS-Windows. |
| MAC | <CR> |
Il secondo pulsante grafico, a partire da sinistra, che appare sulla riga del menù serve a salvare il file:
|
Usando Yudit si può osservare che il colore del pulsante cambia quando si modifica il file ed è così richiesto di salvare. Selezionando questo pulsante si ottiene un riquadro, con il quale è possibile cambiare il tipo di codifica; lo si vede nella figura 256.7.
|
Figura 256.7. La finestra che si ottiene selezionando il pulsante <
|
Eventualmente, Yudit consente di impartire dei comandi verbali, agendo nel riquadro inferiore. Per esempio, si può usare il comando help per caricare un file contenente le istruzioni generali sul suo funzionamento.
Dei programmi che compongono Yudit è interessante uniprint, che consente di generare un file PostScript da un file di testo, se però sono disponibili i caratteri necessari.
|
|
Quello che si vede è una riduzione del modello sintattico complessivo, che prevede anche altre opzioni; in particolare, si può osservare il fatto che la conversione in PostScript richiede l'utilizzo di caratteri TrueType. Per questa ragione, è possibile specificare il file contenente le informazioni sul carattere da usare per la conversione, assieme alla dimensione preferita. L'esempio seguente serve a convertire il file prova.txt nel file prova.ps:
$ uniprint -out prova.ps -in prova.txt[Invio]
In questo caso, non avendo specificato l'opzione -decode, si intende che il file prova.txt utilizzi la codifica UTF-8; diversamente, si possono utilizzare le codifiche riconosciute da uniconv, come già descritto in precedenza.
Appunti di informatica libera 2004.10.10 --- Copyright © 2000-2004 Daniele Giacomini -- <daniele (ad) swlibero·org>, <daniele·giacomini (ad) poste·it>
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome applicativi_utili_durante_la_fase_di_transizione_alla_codifi.html
[successivo] [precedente] [inizio] [fine] [indice generale] [violazione licenza] [translators] [docinfo] [indice analitico]