[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico] [volume] [parte]
Una serie di programmi di servizio tradizionali facilita e rende confortevole l'utilizzo di X. La tabella 161.1 elenca i programmi a cui si accenna in questo capitolo.
Tabella 161.1. Alcuni programmi di servizio di X. |
Le scrivanie grafiche come Gnome e KDE offrono molti programmi di servizio armonizzati e più gradevoli da usare; tuttavia, è importante conoscere anche l'uso dei programmi tradizionali.
Il primo programma da dover conoscere quando si utilizza X è quello che consente di gestire un terminale a caratteri attraverso una finestra. Il programma utilizzato normalmente per questo scopo è xterm.(1) In alternativa si possono usare programmi simili, che possono avere più o meno funzionalità di quello tradizionale.
Il comportamento di un terminale a finestra non è esattamente uguale a quello di una console; ci si accorge subito che i soliti programmi non rispondono alla tastiera nello stesso modo cui si è abituati. Quando ciò accade, vale almeno la pena di provare tutti i programmi di terminale a finestra a disposizione, per determinare quale si comporta nel modo più confacente alle proprie esigenze. La sintassi semplificata per l'uso di xterm è la seguente:
xterm [opzioni] [-e programma [opzioni]] |
Quando il programma viene avviato senza l'opzione -e, viene eseguito quanto contenuto nella variabile SHELL e se manca viene utilizzato /bin/sh
.
Se invece si utilizza l'opzione -e, si può specificare il programma da eseguire nella finestra. Ciò può essere utile per preparare dei comandi già pronti all'interno di menù di altri programmi o del gestore di finestre stesso.
Una cosa importante da sottolineare è che le dimensioni della geometria di una finestra di terminale si esprimono in caratteri e non in punti come si fa di solito.
Infine, con l'opzione -ls, si ottiene una shell di login, mentre con -ls no.
Segue la descrizione di alcuni esempi.
$
xterm -font 5x8 -geometry =132x30+0+0
[Invio]
Avvia una finestra di terminale utilizzando caratteri molto piccoli con una dimensione di 30 righe per 132 colonne, posizionata a partire dall'angolo superiore sinistro dello schermo.
$
xterm -e top
[Invio]
Avvia una finestra di terminale di dimensioni predefinite (80×25) con il programma top. Quando l'esecuzione di top viene conclusa, la finestra del terminale si chiude.
$
xterm -ls
[Invio]
Avvia una finestra di terminale di dimensioni predefinite, con una shell di login.
$
xterm -en UTF-8
[Invio]
Avvia una finestra di terminale in cui si utilizza la codifica dei caratteri UTF-8.
Il servente X offre un supporto modesto alla gestione delle operazioni con cui si taglia, copia e incolla: si tratta esclusivamente delle stringhe (alfanumeriche), per cui tutto si limita alla possibilità di copiare una parte di testo da una finestra di terminale a un'altra.
L'operazione di copia avviene utilizzando il mouse, premendo il tasto sinistro e trascinando in modo da evidenziare il testo desiderato. Per incollare in un'altra applicazione occorre fare in modo che questa passi in primo piano (cioè che la sua finestra diventi quella attiva), poi basta premere il secondo tasto (normalmente è quello centrale) e il testo viene inserito come se venisse digitato, a partire dalla posizione del cursore.
Quando non si dispone di un mouse a tre tasti, oppure se il tasto centrale non funziona, si ottiene la funzione del tasto centrale con la pressione simultanea dei due tasti funzionanti. |
Ci sono anche altri modi per evidenziare un testo, ma quello che conta è che il testo selezionato per la copia deve rimanere evidenziato fino al momento in cui si intende incollare quel testo.
Molti programmi sono in grado di utilizzare questo servizio offerto da X, ma non tutti. Alcuni programmi hanno la necessità di gestire in proprio le funzionalità relative alle operazioni per tagliare, copiare e incollare, soprattutto quando si tratta di testo formattato, immagini e altro. In questi casi, vengono utilizzati dei meccanismi di comunicazione tra i processi indipendenti dal sistema grafico. Di conseguenza, possono comunicare tra loro solo i processi predisposti per quel particolare sistema di comunicazione. Questo dovrebbe chiarire il motivo per cui il trasferimento di informazioni tra un'applicazione e l'altra, attraverso operazioni per tagliare, copiare e incollare, funziona solo in alcune situazioni e tra particolari gruppi di programmi.
Il programma xclipboard(2) facilita l'utilizzo del servizio per tagliare, copiare e incollare, fornito dal servente X. Si tratta di una serie di pagine su cui è possibile scrivere e incollare del testo attraverso il meccanismo normale di X.
xclipboard [opzioni] |
Figura 161.2. Il programma xclipboard permette di utilizzare un'area transitoria per tagliare, copiare e incollare.
|
Sotto questo aspetto si tratta di niente di più che una specie di programma per la creazione e modifica di testo. Tuttavia, l'accorgimento della gestione di pagine separate lo rende più pratico per questo scopo.
Il programma mostra un menù molto semplice composto da alcune voci all'interno di pulsanti grafici:
|
Per incollare del testo in un'applicazione, utilizzando quanto conservato con questo programma, si deve selezionare la pagina che interessa e poi si deve evidenziare il testo desiderato. Quindi si incolla nel modo solito.
Nel capitolo introduttivo a X si accenna all'organizzazione dei nomi dei caratteri da stampa usati per la visualizzazione sullo schermo. In particolare, quando i programmi fanno riferimento a un carattere (un tipo di carattere), è consentito normalmente l'uso di simboli jolly (o metacaratteri): l'asterisco e il punto interrogativo. Questi simboli hanno lo stesso significato che gli si attribuisce quando vengono usati per i nomi dei file: l'asterisco corrisponde a qualunque sequenza di caratteri, mentre il punto interrogativo corrisponde a un solo carattere qualsiasi.
Quando attraverso la riga di comando si deve fare riferimento a un modello, cioè un nome che fa uso di simboli jolly, è bene ricordare che la shell interpreta questi simboli se non vengono protetti. Nel caso delle shell derivate da quella di Bourne, basta racchiudere il nome tra apici singoli.
La maggior parte dei programmi, quando deve fare riferimento a un carattere tipografico attraverso la riga di comando, riconosce l'opzione -font tipo_di_carattere (abbreviabile anche con -fn).
Il programma xlsfonts(3) elenca i caratteri tipografici a disposizione in base a quanto specificato attraverso le opzioni. L'opzione più importante è -font modello, con la quale è possibile indicare un gruppo di caratteri.
xlsfonts [opzioni] |
Segue la descrizione di alcuni esempi.
$
xlsfonts
[Invio]
Elenca tutti i caratteri tipografici a disposizione.
$
xlsfonts -font '*'
[Invio]
Esattamente come nell'esempio precedente, solo che viene indicato espressamente un modello che si riferisce a tutti i tipi di carattere.
$
xlsfonts -font '-courier-*'
[Invio]
Elenca tutti i tipi di carattere il cui nome inizia per -courier-.
Il programma xfontsel(4) consente di conoscere quali sono i tipi di carattere a disposizione. È comodo da usare, soprattutto perché fornisce la possibilità di selezionare il tipo di carattere attraverso la specificazione delle caratteristiche desiderate per mezzo di un sistema di menù.
xfontsel [opzioni] |
Figura 161.4. Attraverso xfontsel si possono visualizzare i tipi di carattere a disposizione.
|
Il programma xfd(5) visualizza l'aspetto e la codifica di carattere tipografico che deve essere determinato obbligatoriamente dalle opzioni. Di conseguenza, l'utilizzo dell'opzione -font è obbligatoria.
xfd [opzioni] -font tipo_di_carattere |
Figura 161.5. Attraverso xfd si può visualizzare l'insieme di caratteri corrispondente a un certo tipo di carattere.
|
Le informazioni sullo stato di una finestra possono essere utili sia a titolo diagnostico, sia per poter riprodurre le stesse condizioni attraverso la configurazione di opzioni o di risorse.
Le informazioni su un servente possono essere interessanti, in particolare quando vengono richieste a distanza.
Il programma xwininfo(6) permette di avere tutte le notizie possibili su una finestra determinata. Emette il risultato attraverso lo standard output, quindi conviene avviare questo programma da una finestra di terminale, se non si intende ridirigere l'output.
xwininfo [opzioni] |
Tabella 161.6. Alcune opzioni. |
Ecco come si comporta xwininfo:
$
xwininfo
[Invio]
xwininfo: Please select the window about which you would like information by clicking the mouse in that window. |
Il programma invita a utilizzare il mouse per indicare una finestra della quale si vogliono conoscere le informazioni.
|
Il programma xdpyinfo(7) permette di avere tutte le informazioni possibili su un servente X particolare, eventualmente anche remoto.
xdpyinfo [opzioni] |
Si osservi l'esempio seguente:
$
xdpyinfo dinkel.brot.dg:0
[Invio]
name of display: dinkel.brot.dg:0.0 version number: 11.0 vendor string: The XFree86 Project, Inc vendor release number: 3200 maximum request size: 4194300 bytes motion buffer size: 256 bitmap unit, bit order, padding: 32, LSBFirst, 32 image byte order: LSBFirst number of supported pixmap formats: 2 supported pixmap formats: depth 1, bits_per_pixel 1, scanline_pad 32 depth 8, bits_per_pixel 8, scanline_pad 32 keycode range: minimum 9, maximum 117 focus: window 0x1800002, revert to Parent number of extensions: 15 BIG-REQUESTS DOUBLE-BUFFER MIT-SCREEN-SAVER MIT-SHM MIT-SUNDRY-NONSTANDARD RECORD SHAPE SYNC XC-MISC XFree86-DGA XFree86-Misc XFree86-VidModeExtension XInputExtension XKEYBOARD XTEST default screen number: 0 number of screens: 1 screen #0: dimensions: 800x600 pixels (271x203 millimeters) resolution: 75x75 dots per inch depths (2): 1, 8 root window id: 0x2a depth of root window: 8 planes number of colormaps: minimum 1, maximum 1 default colormap: 0x26 default number of colormap cells: 256 preallocated pixels: black 0, white 1 options: backing-store YES, save-unders YES largest cursor: 64x64 current input event mask: 0x58003d KeyPressMask ButtonPressMask ButtonReleaseMask EnterWindowMask LeaveWindowMask SubstructureNotifyMask SubstructureRedirectMask PropertyChangeMask number of visuals: 6 default visual id: 0x20 visual: visual id: 0x20 class: PseudoColor depth: 8 planes available colormap entries: 256 red, green, blue masks: 0x0, 0x0, 0x0 significant bits in color specification: 6 bits visual: visual id: 0x21 class: DirectColor depth: 8 planes available colormap entries: 8 per subfield red, green, blue masks: 0x7, 0x38, 0xc0 significant bits in color specification: 6 bits ... |
Il listato che si ottiene è molto lungo, ma le informazioni più importanti possono essere ritrovate nella prima parte. In particolare si nota la dimensione (800×600), la risoluzione (75×75 dpi), la profondità di colori (8 bit) e di conseguenza il numero di colori a disposizione (256):
screen #0: dimensions: 800x600 pixels (271x203 millimeters) resolution: 75x75 dots per inch depths (2): 1, 8 root window id: 0x2a depth of root window: 8 planes number of colormaps: minimum 1, maximum 1 default colormap: 0x26 default number of colormap cells: 256 ... |
La configurazione del funzionamento dello schermo riguarda il tipo di interazione tra l'utente e i programmi (tastiera, mouse, salva-schermo), oltre al tipo di superficie grafica, ovvero la finestra principale.
Il programma xset(8) permette di definire e leggere una grande quantità di impostazioni che riguardano la stazione grafica (il servente X). Le opzioni particolari di questo programma non utilizzano il trattino tradizionale, o quantomeno non nel modo solito. Quando l'utente che ha impostato la configurazione termina la sua sessione di lavoro, tutto torna al suo valore precedente.
xset [opzioni] |
Tabella 161.12. Alcune opzioni. |
Segue la descrizione di alcuni esempi.
$
xset b 100 1000 100
[Invio]
Imposta un suono acuto e breve per l'avvisatore acustico.
$
xset m 10 5
[Invio]
Imposta un mouse veloce.
$
xset m 4 2
[Invio]
Imposta un mouse normale.
$
xset s 30 s blank
[Invio]
Fissa la durata di attesa per l'attivazione del salva-schermo a 30 secondi e stabilisce che deve trattarsi di uno schermo nero.
$
xset q
[Invio]
Keyboard Control: auto repeat: on key click percent: 0 LED mask: 00000000 auto repeat delay: 500 repeat rate: 5 auto repeating keys: 00feffffdffffbbf fa9fffffffdf3d00 0000000000000000 0000000000000000 bell percent: 100 bell pitch: 200 bell duration: 1000 Pointer Control: acceleration: 4/1 threshold: 4 Screen Saver: prefer blanking: yes allow exposures: yes timeout: 30 cycle: 1 suspend time: 900 off time: 1800 Colors: default colormap: 0x26 BlackPixel: 0 WhitePixel: 1 Font Path: /usr/lib/X11/fonts/misc/,/usr/lib/X11/fonts/75dpi/ Bug Mode: compatibility mode is disabled |
Visualizza la configurazione corrente.
Il programma xsetroot(9) permette di gestire le caratteristiche della finestra principale, ovvero la superficie grafica su cui si appoggiano le finestre normali.
xsetroot [opzioni] |
Tabella 161.14. Alcune opzioni. |
Segue la descrizione di alcuni esempi.
$
xsetroot -solid gold
[Invio]
Colora lo sfondo con la tinta gold.
$
xsetroot -cursor freccia.bitmap contorno.bitmap
[Invio]
Cambia l'aspetto del puntatore grafico, utilizzando il file freccia.bitmap
per il disegno nero, presumibilmente di una freccia, e il file contorno.bitmap
come maschera.
Attraverso il programma bitmap(10) è possibile disegnare l'immagine del puntatore grafico, secondo il formato previsto da xsetroot. Il programma si usa normalmente in modo interattivo, senza fornire argomenti:
bitmap [opzioni] [file] |
Il disegno che si può costruire è semplicemente un mosaico rettangolare di tessere nere o bianche; normalmente la superficie iniziale è di 16×16 punti, ma può essere modificata selezionando la voce {Resize
} del menù {File
}.
Figura 161.15. Il programma bitmap con un disegno di 33×33 punti.
|
L'immagine che si vede nella figura potrebbe essere usata per costruire un puntatore grafico. Per fare in modo che le linee appaiano nere, occorre utilizzare un'altra immagine, simile, da usare come maschera. Nella figura successiva si vede un'immagine che riproduce la stessa forma, con dei segni più spessi:
|
La seconda immagine viene usata come sfondo, di colore bianco, mentre la prima si posa sopra, con un tratto di colore nero:
$
xsetroot -cursor primo secondo
[Invio]
Come si intende, il comando mostrato serve a utilizzare effettivamente il disegno come puntatore grafico, dove i nomi primo
e secondo
rappresentano rispettivamente il primo e il secondo file, realizzati con bitmap.
Alcuni programmi, per quanto semplici, sono di grande utilità, pertanto è opportuno conoscerne almeno l'esistenza.
Il controllo dell'utilizzo delle risorse di sistema può essere fatto attraverso xidle, xload e xmem, che, rispettivamente, servono per visualizzare il grafico: dell'inattività del sistema, del carico di sistema; della memoria disponibile.
xidle [opzioni] |
xload [opzioni] |
xmem [opzioni] |
A volte si ha la necessità di concludere l'esecuzione di un'applicazione in modo più o meno violento perché questa è sfuggita al controllo. Di solito, per ottenere questo risultato si utilizza l'invio di un segnale attraverso una shell. Quando si tratta di applicazioni per X si può utilizzare una tecnica in più: si comunica al servente di terminare la connessione con l'applicazione che si desidera concludere. Ciò si può ottenere attraverso una funzione fornita dal gestore di finestre o da un programma apposito: xkill.(11)
xkill [opzioni] |
Il programma xkill permette di eliminare un programma funzionante in una finestra del sistema grafico X. Quando viene utilizzato senza argomenti, xkill trasforma il puntatore in un'immagine speciale (solitamente si tratta di un teschio nero) e permette di indicare direttamente la finestra da eliminare. Basta un clic e si ottiene il risultato.
Quando si utilizza prevalentemente il sistema grafico, si può avere la necessità di essere avvisati in presenza di posta elettronica nella propria casella. Alcuni gestori di finestre forniscono già questo tipo di informazione, ma in mancanza di altro può essere utile xbiff:(12)
xbiff [opzioni] |
Il programma xbiff è si limita ad avvisare quando il file utilizzato per ricevere la posta elettronica risulta contenere qualcosa. Il programma è altamente configurabile, sia attraverso le opzioni, sia attraverso le risorse. In particolare, vale la pena di considerare l'opzione -file file, con cui si può indicare a xbiff di controllare un file differente rispetto a quello predefinito.
Figura 161.17. Il programma xbiff quando il file della posta elettronica è vuoto e quando ci sono dei messaggi.
|
Nelle sezioni successive si descrivono altri programmi di servizio un po' più importanti.
Il programma xclock(13) si occupa di visualizzare l'ora. Dal momento che è possibile visualizzare l'ora in modo digitale (numerico), l'opzione -font ha significato e può essere utile per cambiare l'aspetto dei caratteri.
xclock [opzioni] |
Figura 161.18. xclock -digital -font '-adobe-times-bold-i-*--24-*'
|
Alcuni gestori di finestre forniscono già un orologio attraverso i loro componenti; in questi casi non serve utilizzare xclock.(14)
|
|
Il programma xcalc(15) è una calcolatrice semplice e potente. Il suo funzionamento è abbastanza intuitivo, se non si desidera utilizzare la notazione polacca inversa, ma si tratta di un programma altamente configurabile ed eventualmente vale la pena di consultare la documentazione originale: xcalc(1).
xcalc [opzioni] |
|
|
Appunti di informatica libera 2006.07.01 --- Copyright © 2000-2006 Daniele Giacomini -- <daniele (ad) swlibero·org>
1) X MIT più altre licenze per porzioni particolari di codice
2) X MIT più altre licenze per porzioni particolari di codice
3) X MIT più altre licenze per porzioni particolari di codice
4) X MIT più altre licenze per porzioni particolari di codice
5) X MIT più altre licenze per porzioni particolari di codice
6) X MIT più altre licenze per porzioni particolari di codice
7) X MIT più altre licenze per porzioni particolari di codice
8) X MIT più altre licenze per porzioni particolari di codice
9) X MIT più altre licenze per porzioni particolari di codice
10) X MIT più altre licenze per porzioni particolari di codice
11) X MIT più altre licenze per porzioni particolari di codice
12) X MIT più altre licenze per porzioni particolari di codice
13) X MIT più altre licenze per porzioni particolari di codice
14) Esistono almeno altri due programmi per visualizzare l'ora: oclock e rclock.
15) X MIT più altre licenze per porzioni particolari di codice
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome x_programmi_di_servizio_tradizionali.htm
[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico]