Manuale dell'utente del CDE Solaris

Appendice D Note sulle versioni locali

Questa appendice descrive la visualizzazione, la modifica e la stampa dei testi nelle versioni locali tailandese ed ebraica con il CDE.

Versione locale tailandese

L'ambiente operativo Solaris 7 comprende l'ambiente TLE (Thai Language Environment), che permette di inserire, visualizzare e stampare file in lingua tailandese. Inoltre, il TLE offre una piattaforma per la creazione di applicazioni, comandi e altre funzioni in lingua tailandese per l'utilizzo e la manutenzione di Solaris 7 e del CDE 1.3.

Qui di seguito sono descritte le funzionalità del TLE:

Funzionalità della libreria CDE 1.3

Il TLE contiene la libreria CDE 1.3, che include funzionalità per la modifica del testo tailandese (inserimento, cancellazione, selezione, operazioni di “taglia e incolla” e di trascinamento e rilascio) basate sugli standard WTT 2.0. Per informazioni sull'uso della libreria per lo sviluppo di programmi, vedere il manuale Solaris Common Desktop Environment: Programmer's Guide.

Operazioni sul testo in lingua tailandese

Questa sezione spiega la meccanica delle operazioni che è possibile eseguire sui caratteri tailandesi.

Inserimento di testo tailandese

In alcuni casi può essere necessario inserire parti di testo tailandese insieme a parti di testo inglese in uno stesso file. Per passare dall'inglese al tailandese o viceversa, premere Ctrl+barra spaziatrice. La finestra di messaggi alla base di ogni tool visualizza la lingua di input corrente.

Modifica di un testo tailandese

Questa sezione spiega come operare con il testo tailandese. In particolare, viene spiegato come:

Inserimento e cancellazione di caratteri

L'inserimento e la cancellazione di caratteri tailandesi possono modificare la visualizzazione del testo, a seconda delle possibilità di combinazione delle classi di caratteri.

Le figure seguenti si riferiscono all'inserimento di MAIHUNAKAT (vocale AV2) tra SARA_II (vocale AV3) e YOYAK (consonante).

Figura D–1 Buffer logico e visualizzazione prima dell'inserimento del testo

Graphic

Figura D–2 Buffer logico e visualizzazione dopo l'inserimento del testo

Graphic

L'elemento MAIHUNAKAT non può essere combinato con SARA_II, perciò deve essere visualizzato in una propria cella.

L'esempio seguente si riferisce alla cancellazione di SARA_II (vocale AV3).

Figura D–3 Buffer logico e visualizzazione prima della cancellazione del testo

Graphic

Figura D–4 Buffer logico e visualizzazione dopo la cancellazione del testo

Graphic

L'elemento MAIHUNAKAT può essere combinato con NONU (classe di consonanti CONS). Di conseguenza, viene visualizzato nella cella precedente.

Formattazione dei caratteri

In lingua tailandese, non vi sono delimitatori (spazi) tra le parole. Questo rende difficile la formattazione del testo, date le complesse combinazioni tra i caratteri che accettano la spaziatura e quelli che non l'accettano.

Nel TLE 2.7, la formattazione viene effettuata nella cella di visualizzazione, e il software TLE esegue una compensazione per i caratteri che non accettano la spaziatura alla fine di ogni riga. Ad esempio, quando si inserisce un carattere che accetta la spaziatura nell'ultima colonna di una riga, il cursore passa direttamente alla riga successiva. Se nello stesso punto si inserisce un carattere che non accetta la spaziatura, il cursore non passa alla riga successiva. Il carattere viene visualizzato nell'ultima cella della riga precedente e la posizione del cursore non cambia.

Selezione di un testo, operazioni “taglia e incolla” e operazioni di trascinamento e rilascio

Quando si seleziona una cella di visualizzazione, vengono selezionati tutti i caratteri all'interno della cella (indipendentemente dal fatto che accettino la spaziatura o meno).

Spostamento del cursore nella finestra dell'editor (dtpad)

I diversi livelli di visualizzazione della lingua tailandese possono apparentemente causare movimenti insoliti del cursore nelle finestre di dtpad (l'editor di testo). Il cursore si sposta fisicamente solo tra le celle di visualizzazione. Tuttavia, poiché ogni cella comprende spesso più caratteri, il cursore non si sposta fisicamente all'interno di questi caratteri.

Spostamento del cursore nella finestra di terminale (dtterm)

Lo spostamento del cursore nella finestra del Terminale è leggermente diverso rispetto alla modifica del testo nei tool del CDE che utilizzano widget di testo (come dtpad). Quando si sposta il cursore nella finestra del Terminale, se in una cella di visualizzazione vi è un solo carattere, all'interno della cella verrà evidenziato il cursore. Se la cella è condivisa da più caratteri, verrà evidenziata l'intera cella.

Usando i quattro font tailandesi inclusi in questa release è possibile visualizzare combinazioni di caratteri tailandesi e inglesi. I font sono elencati nella Tabella D–1 e nella Tabella D–2.

Font tailandesi

Usando i quattro font tailandesi inclusi in questa release è possibile di visualizzare combinazioni di caratteri tailandesi e inglesi. I font sono elencati nella Tabella D–1.

Tabella D–1 Font del TLE 2.7 (scalabili)

Tipo di carattere 

Stile 

Nome del font 

Angsana 

Normale 

-monotype-angsa-medium-r-normal--*-*-*-*-m-*-tis620.2533-0

 

Grassetto 

-monotype-angsab-bold-r-normal--*-*-*-*-m-*-tis620.2533-0

 

Corsivo 

-monotype-angsai-medium-i-normal--*-*-*-*-m-*-tis620.2533-0

 

Grassetto-Corsivo  

-monotype-angsaz-bold-i-normal--*-*-*-*-m-*-tis620.2533-0

Browalia 

Normale 

-monotype-browa-medium-r-normal--*-*-*-*-m-*-tis620.2533-0

 

Grassetto 

-monotype-browab-bold-r-normal--*-*-*-*-m-*-tis620.2533-0

 

Corsivo 

-monotype-browai-medium-i-normal--*-*-*-*-m-*-tis620.2533-0

 

Grassetto-Corsivo  

-monotype-browaz-bold-i-normal--*-*-*-*-m-*-tis620.2533-0

Cordia 

Normale 

-monotype-cordia-medium-r-normal--*-*-*-*-m-*-tis620.2533-0

 

Grassetto 

-monotype-cordiab-bold-r-normal--*-*-*-*-m-*-tis620.2533-0

 

Corsivo 

-monotype-cordiai-medium-i-normal--*-*-*-*-m-*-tis620.2533-0

 

Grassetto-Corsivo  

-monotype-cordiaz-bold-i-normal--*-*-*-*-m-*-tis620.2533-0

   

Tabella D–2 Font del TLE 2.7 (larghezza fissa)

Tipo di carattere 

Stile 

Nome del font 

Gothic Normal 

12pt 

-logic-gothic-medium-r-normal--12-120-75-75-c-80-tis620.2533-0

 

14pt 

-logic-gothic-medium-r-normal--14-140-75-75-c-90-tis620.2533-0

 

16pt 

-logic-gothic-medium-r-nor mal--16-160-75-75-c-80-tis620.2533-0

 

20pt 

-logic-gothic-medium-r-normal--20-200-75-75-c-100-tis620.2533-0

 

24pt 

-logic-gothic-medium-r-normal--24-240-75-75-c-100-tis620.2533-0

Gothic Bold 

12pt 

-logic-gothic-bold-r-normal--12-120-75-75-c-100-tis620.2533-0

 

14pt 

-logic-gothic-bold-r-normal--14-140-75-75-c-110-tis620.2533-0

 

16pt 

-logic-gothic-bold-r-normal--16-160-75-75-c-80-tis620.2533-0

 

20pt 

-logic-gothic-bold-r-normal--20-200-75-75-c-120-tis620.2533-0

 

24pt 

-logic-gothic-bold-r-normal--24-240-75-75-c-120-tis620.2533-0

Gothic Italic 

16pt 

-logic-gothic-medium-i-normal--16-160-75-75-c-80-tis620.2533-0

   

Stampa

In questa sezione viene descritto come stampare un testo tailandese dal CDE 1.3 usando una stampante a matrice di punti. Per un elenco delle stampanti supportate, vedere l'Appendice C del manuale Thai Language Supplement for Solaris 2.6: Release Overview .

Stampa dalle applicazioni del CDE

Se sulla stampante è installato il font UPC Angsana, sarà possibile stampare da qualsiasi strumento del CDE 1.3 (i font non sono inclusi nel TLE 2.7).

Configurazione della stampa di caratteri tailandesi su una stampante a matrice di punti

Le informazioni contenute in questa sezione presuppongono che la stampante sia registrata nello standard WTT 2.0 descritto nell'Appendice C, “Printer Brand, Model, and Code IDs”, del manuale Thai Language Supplement for Solaris 2.6: Release Overview.

Se il sistema da configurare utilizza una stampante registrata nello standard WTT 2.0, per configurare la stampante seguire le istruzioni del manuale Setting Up User Accounts, Printers, and Mail, incluso nella documentazione di SunOS 5.6.

Una volta configurata la stampante, procedere in questo modo per abilitare la stampa dei caratteri tailandesi:

  1. Digitare cd /usr/lp/interfaces

  2. Aprire con un editor il file con il nome della stampante appena configurata.

    Cambiare lp.cat in lp.filter nella riga seguente:

    if [! -x "${LPCAT:=${LOCALPATH}/lp.cat}"]
  3. Creare uno script di nome lp.filter in /usr/lib/lp/bin che faccia passare i lavori di stampa attraverso lp.cat.

    Il programma lp.filter dovrebbe avere la sintassi indicata qui sotto. Per informazioni sulla sintassi dei comandi di filtro per il tailandese, vedere la pagina man thaifilter(1) nell'Appendice D, “Manual Pages”, del manuale Thai Language Supplement for Solaris 2.6: Release Overview.

    comando_thaifilter | lp.cat

Stampa di un testo tailandese

In questa sezione viene descritto come usare l'utility di stampa thaifilter(1) e le tabelle di conversione della stampante per stampare un testo in lingua tailandese.

Uso dell'utility thaifilter(1)

Il programma thaifilter(1) è un filtro che converte il testo tailandese a tre livelli:

Questo sistema è denominato classificazione a 3 livelli. I file convertiti con la classificazione a 3 livelli vengono usati per due scopi principali:


Nota –

In alcune stampanti di recente produzione, il software per la classificazione a 3 livelli è già installato. Per questa ragione, il programma thaifilter(1) dispone dell'opzione -x che permette di disattivare la classificazione a 3 livelli.


La pagina man di thaifilter(1) è inclusa nel software TLE 2.6 ed è disponibile in forma stampata nell'Appendice D, “Manual Pages”, del manuale Thai Language Supplement for Solaris 2.6: Release Overview.

Configurazione del software per la stampante

Lo standard WTT 2.0 identifica i seguenti termini e condizioni per la stampa del testo tailandese:

Queste 17 tabelle di conversione dei codici sono incluse nel TLE 2.7 per consentire la conversione dei codici in dotazione con le diverse stampanti nello standard TAC11x11.COD. Le tabelle, elencate nella Tabella D–3, sono memorizzate nella directory /usr/lib/lp/files.

Tabella D–3 Tabelle di conversione dei codici

Tabella di conversione dei codici 

Codice da usare con l'ID della stampante 

TAC11x10.COD 

10 

TAC11x12.COD 

12 

TAC11x13.COD  

13 

TAC11x14.COD 

14 

TAC11x15.COD  

15  

TAC11x16.COD  

16  

TAC11x17.COD 

17  

TAC11x18.COD  

18 

TAC11x19.COD  

19 

TAC11x20.COD  

20 

TAC11x21.COD  

21  

TAC11x22.COD  

22 

TAC11x40.COD  

40 

TAC11x41.COD  

41 

TAC11x42.COD  

42 

TAC11x43.COD  

43  

TAC11xAA.COD  

AA 

Se la stampante da utilizzare non è dotata di una delle tabelle sopra definite, creare una tabella specifica seguendo le istruzioni della prossima sezione.

Creazione di una nuova tabella di conversione dei codici per la stampante

Le tabelle di conversione delle stampanti vengono usate per convertire le istruzioni di stampa nel formato TIS 988-2553, che è il formato predefinito del WTT 2.0. Le tabelle di conversione dei codici elencate nello standard WTT 2.0 sono incluse nel TLE 2.7.

Se la propria stampante non utilizza il formato TIS 988-2553, e non è possibile usare le tabelle di conversione sopra elencate, sarà necessario creare una tabella di conversione personalizzata. Questa sezione spiega come creare una nuova tabella di conversione dei codici per la stampante.

Sintassi della tabella di conversione

Qui di seguito è fornito un esempio di un file di conversione dei codici:

-- -- -- -- TN -- !  TAC11x10.COD     16 AUG 1991 

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F  

10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F  

20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F  

30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F  

40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F  

50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F  

60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F  

70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F  

3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F  

3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F  

3F A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF  

B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF  

C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF  

D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA 3F 3F 3F 3F DF  

E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF  

F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB 3F 3F 3F FF 

! End of TAC11x10.COD

La prima riga della tabella di conversione dei codici utilizza la seguente sintassi:

CC LG UM EX TN SP     !  comment

Se uno dei campi di due caratteri non viene utilizzato, è necessario riempirlo con due trattini (--). I campi della prima riga sono descritti nella Tabella D–4.

Tabella D–4 Tabelle di conversione dei codici

Campo 

Descrizione 

CC 

Codice combinato nel TIS 988-2553, ad esempio SaraI e MaiEk  

LG 

Grafica delle righe 

UM 

Codice combinato formato da SaraAm e Nikhahit  

EX 

Estensione Ascender  

TN 

Numerici tailandesi 

SP 

Codice speciale non definito nel TIS 988-2553 

Commenti ! 

Commenti dell'utente. Nello standard WTT 2.0, questo campo contiene il nome e la data del file. Il commento deve essere preceduto dal simbolo “!”.  

La parte centrale del file di conversione contiene 16 righe di 16 codici, per un totale di 256 codici. Questi codici sostituiscono il TIS 988-2553. Il codice TIS988-2553 è illustrato qui sotto:

-- -- -- -- TN -- !  TAC11x11.COD     16 AUG 1991 

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F  

10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F  

20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F  

30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F  

40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F  

50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F  

60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F  

70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F  

80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F  

90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E 9F  

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF  

B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF  

C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF  

D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF  

E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF  

F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF 

! End of TAC11x10.COD  Note: There is no conversion in this table

L'ultima riga della tabella di conversione è un altro commento, preceduto dal simbolo “!”. Le tabelle di conversione del WTT 2.0 terminano con la riga:

! END OF nomefile

Versione locale ebraica

L'ambiente operativo Solaris 7 comprende un ambiente in lingua ebraica (Hebrew Language Environment). In questa sezione sono descritte le caratteristiche principali di questo ambiente.

Inserimento di testi in lingua ebraica

In alcuni casi, può essere necessario inserire parti in lingua ebraica e parti in lingua inglese in uno stesso file. Per passare dall'ebraico all'inglese e viceversa, usare Ctrl+t. Il messaggio alla base di ogni finestra indica la modalità di inserimento corrente.

Modifica di un testo in lingua ebraica

Questa sezione spiega come eseguire le operazioni di modifica disponibili per i testi ebraici. In particolare viene descritto come operare con il cursore nella modalità di modifica logica.


Nota –

Dopo avere inserito un testo, è possibile che all'inizio di una riga appaia un'immagine residua del cursore. Questa immagine non ha alcun effetto sulle funzionalità dell'applicazione, ed è possibile ignorarla e continuare con il normale inserimento dei dati.


Inserimento di caratteri

Quando il punto di inserimento si trova al confine tra un testo ebraico e uno inglese, si crea una situazione di ambiguità. Per risolvere questa ambiguità, è stato implementato un cursore doppio per riflettere le due posizioni. La visualizzazione risultante ha la forma ab|DC|, dove ogni “|” rappresenta uno dei cursori.


Nota –

Il cursore doppio non viene sempre visualizzato correttamente quando si premono i tasti Home e End.


Stampa di un testo in lingua ebraica

La stampa dei testi in lingua ebraica viene implementata per mezzo di una serie di filtri. Il package della versione locale ebraica, SUNWheu, dovrebbe essere installato sia sul server a cui è collegata la stampante, sia sul sistema client.

Filtri installati per la lingua ebraica

Qui di seguito sono elencati i filtri inclusi nel package della versione locale ebraica.

heb2ps

Il filtro heb2ps converte il testo in formato Postscript e invia il font ebraico alla stampante.

hebl2r

Quando si stampa con il filtro hebl2r, il testo inserito non viene riordinato in alcun modo. Il testo viene formattato per un foglio di 80 colonne. Questa impostazione può essere utile per stampare un documento inglese con alcune parole ebraiche.

hebr21

Quando si stampa con il filtro hebr21, tutto il testo viene invertito, e l'output risultante è allineato sulla destra.

hebtxt

Quando si stampa con il filtro hebtxt, il testo viene ordinato sia nella direzione dell'ebraico che in quella dell'inglese, e l'output risultante è allineato sulla destra.

Uso del filtro per la lingua ebraica dalla riga di comando

Per stampare dalla riga di comando, usare il filtro hebtxt. Il comando di stampa lp è lp -T hebtxt -d nome_stampante.

Stampa dalle applicazioni dt

Il campo dell'azione di stampa nei file di configurazione dt dovrebbe essere modificato con l'aggiunta del filtro per il testo ebraico. Ad esempio, nell'applicazione dtmail, l'azione di stampa del file /usr/dt/appconfig/types/he/dtmail.dt dovrebbe essere modificata come segue:

ACTION Print  
{
LABEL           Print 
ARG_TYPE        DTMAIL_FILE   
TYPE            COMMAND
WINDOW_TYPE     NO_STDIO
EXEC_STRING     sh -c ' \                                 
                dtmailpr -p -f %(File)Arg_1% | 
                /usr/lib/lp/postscript/convert_text -inputTextMode 
                -text_mode_implicit -outputTextMode text_mode_visual 
                -lineWidth 80 -inputLayoutDirection left_down
                -outputLayoutDirection right_down| mp -A4 -L he| dtlp 
                -u %(File)Arg_1%;'}

I parametri convert_text produrranno la stampa dei testi allineati a destra in direzione destra-sinistra. Per stampare un testo allineato a sinistra, da sinistra a destra, sostituire i parametri precedenti con -lineWidth 80.