[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico] [volume] [parte]
Un gestore di file (file manager) grafico può essere uno strumento molto utile se è configurato correttamente; diversamente, è meglio usare la finestra di terminale tradizionale.
Il gestore di file è un programma che nella sua evoluzione, parte dalla gestione pura e semplice dei file contenuti nel file system locale, per arrivare a includere tutti i protocolli di comunicazione che in qualche modo consentono il trasferimento di file. Eventualmente, il punto massimo di evoluzione di un gestore di file consiste nell'integrazione delle funzionalità tipiche di un navigatore di Internet
XFE, (1) ovvero X file explorer, è un gestore di file molto semplice e intuitivo, che incorpora anche un programma di visualizzazione per i file di testo. Quando si avvia l'eseguibile xfe, appare generalmente come nella figura 162.2.
|
Nautilus, (2) come suggerisce il nome, intende divenire un «navigatore» generico, sia per il file system locale, sia per i protocolli di rete che consentono la gestione dei file in qualche modo.
nautilus [opzioni] |
Nautilus è realizzato per integrarsi con l'ambiente di Gnome. All'avvio dell'eseguibile nautilus senza argomenti, si ottiene normalmente una finestra con l'elenco del contenuto della propria directory personale, assieme a una finestra che dovrebbe sostituirsi alla finestra principale, ovvero alla superficie grafica di fondo, nella quale appaiono delle icone associate a delle funzioni particolari. In generale, quando si usa Nautilus al di fuori del contesto di Gnome, conviene usare l'opzione --no-desktop, per non avviare la finestra con le icone che molto probabilmente è del tutto inutile.
|
|
Konqueror, (3) è un navigatore generico, completo, in grado di accedere al file system locale e ad altri protocolli di rete, compresa la capacità di visualizzare documenti HTML.
konqueror [opzioni] [uri] |
Konqueror è inteso come il navigatore generico per l'ambiente KDE. All'avvio dell'eseguibile konqueror senza argomenti, si ottiene normalmente una finestra con l'elenco del contenuto della propria directory personale, altrimenti è possibile indicare un indirizzo URI o anche solo un percorso del file system locale.
|
|
XFM (4) è il gestore di file tradizionale nei sistemi Unix. Se configurato correttamente è di grande aiuto. Oltre a svolgere le funzioni tipiche di un programma del genere (copiare, spostare e cancellare file e directory) permette di gestire delle applicazioni attraverso icone. In generale, i gestori di finestre offrono già la possibilità di configurare un menù grafico di comandi, attraverso il quale l'avvio dei programmi può essere più elegante. Sotto questo aspetto, l'abilità di XFM di gestire un menù di applicazioni passa un po' in secondo piano.
Prima di avviare XFM la prima volta, a meno che qualcun altro abbia già provveduto a configurare correttamente il suo funzionamento, conviene utilizzare il programma xfm.install. Si tratta in realtà di uno script che si occupa di creare una serie di file di configurazione collocati nella directory ~/.xfm/
.
Il contenuto di questi file vale solo come esempio. Probabilmente, si tratta già di una buona configurazione di partenza, ma questo non basta. Più avanti viene mostrato il loro significato.
XFM è contemporaneamente un gestore di file e un gestore di applicazioni attraverso un sistema di icone. Quando l'eseguibile xfm viene avviato senza argomenti mostra due finestre: una a sinistra che consente di accedere alle funzionalità tipiche di un gestore di file e una a destra (di solito) che permette di utilizzare alcune applicazioni semplicemente facendo riferimento alle icone corrispondenti.
xfm [opzioni] |
La figura 162.7 dovrebbe dare l'idea di come possa apparire XFM quando viene avviato senza opzioni.
|
XFM si compone di una finestra per la gestione di applicazioni, che può essere nascosta se si utilizza l'opzione -filemgr da sola, e da un numero indeterminato di finestre per la gestione di file e directory.
Per compiere un'azione su un oggetto determinato, è possibile selezionarlo e quindi richiamare una funzione del menù, oppure si possono effettuare operazioni di trascinamento.
Un clic singolo, con il primo tasto del mouse, seleziona qualcosa annullando una selezione eventuale, già fatta in precedenza su qualcosa d'altro. Un clic singolo con il secondo tasto permette di selezionare o deselezionare qualcosa senza modificare le selezioni precedenti. Gli oggetti selezionati potrebbero essere gestiti attraverso una funzione del menù.
La pressione del terzo tasto del mouse in corrispondenza di un oggetto, provoca l'apparizione di un menù a scomparsa.
Il trascinamento di qualcosa si ottiene di norma puntando il mouse, premendo il primo tasto e, mentre lo si tiene premuto, spostando il puntatore verso la destinazione desiderata. L'operazione termina quando si rilascia il tasto del mouse.
Il clic doppio con il primo tasto del mouse viene anche definito azione di push nella documentazione originale; qui si fa riferimento a un'«azione di spinta». Se si tratta di una directory si ottiene lo spostamento in quella nuova posizione; se si tratta di un file con il permesso di esecuzione, questo viene avviato. Altrimenti il risultato di questa azione è definito dai file di configurazione.
La pressione del terzo tasto del mouse nella finestra delle applicazioni, in una zona libera da icone, fa apparire il menù delle applicazioni.
Gli oggetti possono essere trascinati e rilasciati in finestre differenti. Se si trascina un file o una directory in un'altra finestra di gestione dei file, si ottiene lo spostamento di questi oggetti. File e directory possono anche essere trascinati nella finestra delle applicazioni ottenendo così un riferimento fisso a questi, indipendentemente dalle finestre che mostrano il contenuto di una directory particolare.
È possibile trascinare l'icona di una directory e rilasciarla sulla finestra principale, cioè sulla superficie grafica (desktop), per ottenere l'apertura di una nuova finestra di gestione dei file, posizionata in corrispondenza di quella directory.
Se si trascina utilizzando il secondo tasto, si ottiene la copia dell'oggetto.
Gli oggetti trascinati possono essere rilasciati sopra un'icona. Questa operazione viene definita «rilascio» (drop) e l'effetto è stabilito dai file di configurazione.
La configurazione è la parte delicata di XFM: tutto dipende da questa. Come accennato in precedenza, attraverso l'esecuzione di xfm.install viene creata la directory ~/.xfm/
, all'interno della quale vengono collocati alcuni file con una configurazione di esempio. Segue una breve descrizione per ognuno di questi file.
|
Le azioni (configurabili) tipiche che si possono ottenere attraverso l'uso del gestore di file sono la visualizzazione e la modifica del contenuto di un file di testo (o presunto tale). Per questo si utilizzano programmi esterni ed è importante definirli attraverso le risorse defaultViewer e defaultEditor.
Il simbolo # viene utilizzato per iniziare un commento che termina alla fine della riga.
Il file ~/.xfm/magic
serve per stabilire un metodo di riconoscimento dei file. La documentazione originale parla di magic header, attraverso le quali si definiscono dei nomi utilizzabili all'interno di ~/.xfm/xfmrc
. L'esempio del listato 162.11 rappresenta il contenuto normale di questo file.
|
I nomi dell'ultima colonna sono quelli che servono per fare riferimento ai tipi di file. Oltre a questi nomi ne esistono altri, predefiniti, che non devono apparire all'interno di questo file:
|
Quando si utilizzano questi nomi, sia quelli elencati all'interno del file ~/.xfm/magic
, sia quelli predefiniti, si utilizzano le parentesi angolari per delimitarli.
Il file ~/.xfm/xfmrc
serve per stabilire le icone da utilizzare per ogni tipo di file, oltre al risultato delle azioni di spinta (clic doppio) e di rilascio (di un oggetto trascinato).
Il file contiene una serie di record, corrispondenti a righe normali, contenenti campi separati attraverso il simbolo due punti (:). La sintassi del contenuto dei record è la seguente:
tipo_di_file:icona:azione_di_spinta:azione_di_rilascio |
Se c'è la necessità di utilizzare il simbolo :, lo si può proteggere con la barra obliqua inversa, per cui si deve scrivere \:. Nello stesso modo, se si ha la necessità di indicare la barra obliqua inversa, si deve utilizzare la forma \\.
Il primo campo serve a definire il tipo di file. Si può utilizzare un nome di tipo stabilito attraverso le magic header, compresi i nomi predefiniti, ricordando di utilizzare le parentesi angolari per delimitarlo. È possibile utilizzare un modello di tre tipi: letterale, con il quale si indica precisamente il nome del file; suffisso, che si ottiene mettendo un asterisco seguito dal suffisso desiderato; prefisso, che si ottiene mettendo un asterisco alla fine di un prefisso. È possibile indicare contemporaneamente sia un nome di tipo che un modello. In tal caso si intende fare riferimento a un file che assolve entrambi i requisiti.
Il secondo campo definisce il nome del file dell'icona da utilizzare per quel file. Se non è stato definito diversamente, questi file dovrebbero trovarsi nella directory /usr/lib/X11/xfm/pixmaps/
e possono essere indicati in questo campo utilizzando il nome senza il percorso.
Il terzo campo contiene una riga di comando da eseguire quando si fa un clic doppio con il primo tasto del mouse sull'icona corrispondente. Il comando viene eseguito utilizzando come directory corrente quella in cui si trova. È disponibile il primo parametro posizionale (che si espande con $1) contenente il nome del file.
Al posto di una riga di comando è possibile indicare un nome di un'azione predefinita. Si tratta di EDIT, VIEW e LOAD. La prima avvia il programma predefinito per la modifica dei file di testo, la seconda avvia il programma predefinito per la visualizzazione, la terza carica un file di menù per la finestra delle applicazioni.
L'ultimo campo contiene un comando da eseguire quando si scarica un file (o una directory) sull'icona corrispondente. Il primo parametro posizionale (che si espande con $1) corrisponde al nome del file, mentre i seguenti servono a rappresentare i nomi dei file e delle directory scaricati. Il parametro * (a cui si accede con la stringa $*) li rappresenta tutti, dal primo all'ultimo.
Uno, o entrambi i campi delle azioni possono essere vuoti. In tal caso si intende che non debba essere compiuta alcuna azione per l'evento corrispondente.
L'esempio seguente mostra un file ~/.xfm/xfmrc
, volutamente molto semplice:
|
Le definizioni che servono a includere i tipi di file non riconoscibili diversamente, devono essere poste alla fine, perché altrimenti non permetterebbero l'utilizzo delle altre definizioni. Vale la pena di analizzare dettagliatamente alcuni record di questo file di esempio.
|
Se si tratta di file riconosciuti come immagini GIF o JPG, in caso di clic doppio, si avvia il programma xloadimage seguito dal nome del file stesso. In pratica, si ottiene la visualizzazione del file. Nessun comando è previsto nel caso si scarichi qualcosa sull'icona di questi tipi di file.
|
Si tratta dei file di archiviazione più comuni. Nel caso di un clic doppio, si avvia il programma tar in modo da estrarre il contenuto dell'archivio, mentre nel caso di uno scarico si ottiene la sostituzione del contenuto dell'archivio con questi file.
I comandi indicati nei campi delle azioni da compiere iniziano tutti con exec. Ciò non è strettamente necessario, ma così facendo si ottiene che la shell, utilizzata per avviare il programma, sia subito sostituita dal programma stesso. Questo fa risparmiare memoria, considerato che è perfettamente inutile che la shell resti attiva durante l'esecuzione del programma desiderato. |
Il file ~/.xfm/xfmdev
serve a definire le directory che si vogliono gestire automaticamente come punti di innesto. In pratica, in base alle indicazioni di questo file, XFM è in grado di innestare e staccare automaticamente i dischi quando si entra e si esce da una directory utilizzata come punto di innesto.
Il file contiene una serie di record, corrispondenti a righe normali, contenenti campi separati attraverso due punti verticali (:). La sintassi del contenuto dei record è la seguente:
directory:comando_per_innestare:comando_per_staccare |
Il significato dovrebbe essere abbastanza chiaro così. L'esempio seguente dovrebbe chiarirlo ulteriormente.
Supponendo che il file /etc/fstab
contenga, tra gli altri, i record seguenti,
|
il file ~/.xfm/xfmdev
potrebbe essere preparato nel modo seguente:
|
Il file ~/.xfm/Apps
e altri eventuali, servono per costruire una sorta di menù di applicazioni a icone, in cui siano stati stabiliti comportamenti diversi a seconda che si utilizzi un clic doppio del mouse, oppure venga scaricato qualcosa. Il contenuto di questi file, una volta selezionati, appare nella finestra delle applicazioni.
Un file di questo tipo inizia con l'indicazione #XFM, in modo da poter essere riconosciuto dallo stesso XFM. Contiene una serie di record, corrispondenti a righe normali, contenenti campi separati attraverso il simbolo : (due punti). La sintassi del contenuto dei record è quella seguente:
nome:directory:file:icona:azione_di_spinta:azione_di_rilascio |
Il primo campo serve a definire il nome (o la descrizione) del programma o della funzione gestita.
Il secondo campo specifica una directory utilizzata a vario titolo.
Il terzo campo rappresenta il nome di un file eventuale da passare come argomento ai comandi da eseguire in funzione delle azioni da compiere.
Il quarto campo rappresenta il nome di un file contenente un'icona con la quale si desidera rappresentare la funzione da eseguire.
Il quinto campo rappresenta un comando da eseguire nel caso in cui venga eseguito un clic doppio con il mouse sull'icona corrispondente. Questo comando riceve come argomento il nome del file indicato nel terzo campo, sempre che sia stato indicato. La directory di lavoro corrisponde a quanto indicato nel secondo campo, oppure, in sua mancanza, alla directory personale dell'utente.
Il sesto campo rappresenta un comando da eseguire nel caso in cui vengano scaricati dei file sull'icona corrispondente. Questo comando riceve come argomenti il nome del file indicato nel terzo campo, sempre che sia stato indicato, seguito dai nomi dei file scaricati. La directory di lavoro corrisponde a quella dei file scaricati.
In questo tipo di file, XFM riconosce quattro tipi di azioni predefinite:
|
XFM è in grado da solo di generare un nuovo record all'interno del file di menù aperto nella finestra delle applicazioni, quando si trascina e si scarica l'icona di un file o di una directory in una zona libera. Se per esempio si scarica il file /home/tizio/lettera.doc
che viene rappresentato con l'icona xfm_data.xpm
e per il quale è prevista l'azione EDIT in caso di clic doppio, si ottiene il record seguente:
|
Se invece si tratta della directory /home/tizio/prove/
, si dovrebbe ottenere il record seguente:
|
In pratica, la generazione automatica dei record di nuove applicazioni dipende molto da come i file che vengono scaricati sono riconosciuti per mezzo del file ~/.xfm/xfmrc
.
Sempre per mezzo di XFM è possibile aggiungere un record nel file corrente delle applicazioni. Si utilizza il terzo tasto del mouse per fare apparire un menù a scomparsa e si seleziona la voce {Install
}.
Si ottiene una maschera simile a quella della figura 162.21 che permette in pratica di compilare i vari campi del record.
|
Anche in corrispondenza delle icone della finestra delle applicazioni è disponibile un menù a scomparsa ottenibile attraverso il terzo tasto del mouse. Le funzioni che appaiono permettono di accedere alla modifica del record del file di applicazioni corrispondente, di cancellare l'applicazione (cioè il record), di copiarla o spostarla in un altro file del genere.
All'interno del file di configurazione ~/.xfm/xfmrc
e in quelli delle applicazioni, nei campi delle azioni, possono essere indicati dei parametri corrispondenti a nomi delimitati dal simbolo di percentuale (%). La sintassi precisa di questi parametri è la seguente:
%nome_parametro[--valore_predefinito]% |
In pratica, si tratta di indicare qualcosa tra due segni di percentuale. Se appare un trattino doppio, quello che c'è dopo è il valore predefinito di questo parametro.
Per esempio, il record seguente, di un file di applicazioni, permette di avviare il programma xterm con l'indicazione libera delle opzioni.
|
|
Come già indicato in precedenza, se c'è l'esigenza di utilizzare i due punti verticali (:), questi si possono proteggere con la barra obliqua inversa.
Utilizzando un programma del genere per avviare i programmi, si ha l'inconveniente di perdere un'eventuale emissione di dati attraverso lo standard output o lo standard error. Se XFM venisse avviato attraverso una finestra di terminale, questi flussi di dati apparirebbero in quella finestra, ma se ciò non è possibile o non è conveniente, si può ridirigere altrove questo flusso.
Se è disponibile una finestra di console, allora si può avviare XFM nel modo seguente:
#
xfm >/dev/console 2>&1
[Invio]
In generale, si potrebbe ridirigere il flusso direttamente su una console virtuale inutilizzata, come nell'esempio seguente:
#
xfm >/dev/tty8 2>&1
[Invio]
Come si vede dagli esempi, normalmente, per poter compiere una ridirezione del genere, è necessario operare come utente root.
Attraverso un esempio semplificato, è possibile riassumere l'utilizzo di XFM.
File /etc/fstab
.
Si suppone che il file /etc/fstab
contenga le righe seguenti di definizione dei punti di innesto di uso comune.
|
Si tratta di:
un CD-ROM innestabile nella directory /mnt/cdrom/
da un utente qualunque (user) e solo a richiesta (noauto);
di un dischetto Dos-FAT (con i nomi lunghi) innestabile nella directory /mnt/dosfloppy/
da un utente qualunque e solo a richiesta;
di un dischetto Ext2 innestabile nella directory /mnt/ext2floppy/
da un utente qualunque e solo a richiesta.
I dischetti vanno utilizzati sempre con la stessa unità hardware, ma a seconda del tipo di file system presente vengono innestati in posizioni differenti. Questo permette di innestarli senza dover specificare altrimenti il tipo.
File ~/.xfm/xfmdev
.
Il file ~/.xfm/xfmdev
necessario ad automatizzare l'innesto e la separazione dei file system, in base alla configurazione del file /etc/fstab
visto prima, potrebbe essere fatto nel modo seguente:
|
File ~/.xfm/xfmrc
.
Un file ~/.xfm/xfmrc
molto semplice potrebbe essere il seguente:
|
Quasi in tutti si è evitato di specificare un comando corrispondente a un'operazione di rilascio (scarico di file). È importante tenere presente che le definizioni generali vanno messe alla fine, come un modo per catturare i tipi di file che non sono stati presi in considerazione da definizioni più dettagliate. Se non si facesse così, le definizioni generali prenderebbero il sopravvento su tutte le altre.
Nella prima parte viene definito il tipo di file <XFM>, cioè quello usato per definire le icone di applicazioni da utilizzare nella finestra apposita. L'azione LOAD in caso di clic doppio, carica questo fine nella finestra delle applicazioni (non potendo esistere più di una finestra di questo tipo, quello che poteva esserci prima viene sostituito).
Il gruppo di record che definisce i formati grafici è piuttosto semplice. Per ogni tipo viene abbinato un comando in grado di visualizzare il file di immagine, in corrispondeza di un'azione di spinta (il solito clic doppio).
La gestione degli archivi, normali o compressi che siano, è più complicata. In questo esempio, si utilizza sempre il programma TkZip in grado di accedere al contenuto di questi file e di permettere una decisione sul da farsi (visualizzarne semplicemente l'elenco, leggere il contenuto di un file, estrarre parte o tutti i file, ecc.). TkZip non è particolarmente pratico nel suo utilizzo, ma è almeno un esempio di come si potrebbe fare in questi casi. Solitamente, la configurazione predefinita di ~/.xfm/xfmrc
associa direttamente l'estrazione del contenuto dell'archivio, ma forse questa non è la scelta migliore.
File ~/.xfm/Apps
.
Il file ~/.xfm/Apps
, come primo file di applicazioni, potrebbe essere configurato utilmente per la gestione di un cestino e dei punti di innesto, utili per accedere immediatamente al contenuto di un dischetto senza dover pensare alla directory di innesto.
|
Nell'esempio proposto, il primo record definisce proprio il cestino (Riciclaggio). Questo sistema di eliminazione controllata dei file si rifà a uno script descritto nella sezione 125.2.3 e non al tipo proposto dalle impostazioni predefinite di XFM. Per comprendere il senso di questo record bisognerebbe almeno vedere come si comporta questo script ricicla. In ogni caso, un'azione di spinta apre semplicemente la directory dalla quale si diramano altre sottodirectory di file cestinati, mentre un'azione di rilascio cestina i file scaricati sull'icona.
I tre record successivi sono solo riferimenti a directory utilizzate per l'innesto di CD-ROM e dischetti. Viene prevista solo l'azione di spinta con la quale si vuole aprire una finestra del gestore di file per accedere al loro contenuto. Il fatto di accedere a tali directory, ne attiva automaticamente la gestione dell'innesto e della separazione perché queste posizioni sono state definite preventivamente nel file ~/.xfm/xfmdev
.
File-roller (5) è un programma che ha lo scopo di facilitare l'accesso ad archivi compressi e la loro realizzazione, quando non si vogliono usare gli strumenti tradizionali (a riga di comando).
|
L'utilità maggiore nell'uso di File-roller sta nell'abbinamento con programmi come Nautilus, che lo avviano automaticamente quando il contesto lo suggerisce.
Appunti di informatica libera 2006.07.01 --- Copyright © 2000-2006 Daniele Giacomini -- <daniele (ad) swlibero·org>
4) XFM GNU GPL con l'aggiunta di una libreria che ha una licenza speciale
5) File-roller GNU GPL
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome x_gestori_di_file.htm
[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico]