Capitolo 9. Estensioni delle modalità di visualizzazione

Konqueror fornisce ulteriori viste in VisualizzaModalità di visualizzazione in modalità gestore dei file e browser, se le corrispondenti applicazioni ed estensioni sono installate.

La modalità gestore dei file ha un'ulteriore vista Mappa radiale dall'applicazione Filelight e dall'estensione di Konqueror Visualizza dimensione file.

FSView - la vista file system

Josef Weidendorfer

Introduzione

L'estensione FSView per Konqueror è un'altra modalità di visualizzazione di oggetti di tipo MIME inode/directory per file locali. Si può vedere come un'alternativa alle varie viste a icone e a elenco per sfogliare il contenuto del tuo file system locale.

La proprietà unica di FSView è la sua capacità di mostrare intere gerarchie di cartelle annidate usando una cosiddetta mappa ad albero per la visualizzazione grafica. Le mappe ad albero permettono di mostrare la misura di oggetti nelle strutture annidate: ogni oggetto è rappresentato da un rettangolo la cui area è proporzionale alla sua misura. La somma delle misure dei figli deve essere minore o uguale alla metrica dell'oggetto madre.

Per FSView, è stata scelta come misura la dimensione di file e cartelle, dove la dimensione di una cartella è definita come la somma delle dimensioni dei suoi elementi. In questo modo, i file grandi anche in profondità nella gerarchia delle cartelle possono essere visti facilmente cercando grandi rettangoli. Quindi FSView si può vedere come una versione grafica e interattiva del comando UNIX® du.

L'integrazione di FSView come parte di Konqueror gli permette di usare le funzionalità standard come i menu file contestuali e azioni dipendenti dal tipo MIME. Si è però scelto di non implementare l'aggiornamento automatico attraverso la sorveglianza dei cambiamenti del filesystem: se cancelli un file mostrato in FSView, devi aggiornare manualmente, per esempio premendo F5, per vedere le modifiche. La ragione di questa decisione è il numero potenzialmente immenso di file i cui cambiamenti dovrebbero essere monitorati, e che quindi potrebbero richiedere una quantità irragionevole di risorse di sistema per una piccola funzionalità.

Funzionalità di visualizzazione

Questa sezione spiega in dettaglio la visualizzazione grafica di FSView.

Opzioni di disegno degli elementi

In FSView, un elemento della visualizzazione a mappa ad albero è un rettangolo rappresentante un file o una cartella del tuo file system. Per una navigazione più semplice, i rettangoli hanno una colorazione significativa e opzioni di etichettatura.

Il colore di un rettangolo, modificabile attraverso il menu VisualizzaModalità colore, può rappresentare la Profondità, per una facile rilevazione dell'annidamento, o una mappatura cromatica secondo diversi attributi del file come nome, proprietario, gruppo, o tipo MIME.

Un rettangolo può essere etichettato con i vari attributi del file o della cartella corrispondente. Per ogni attributo, puoi scegliere in primo luogo se debba essere mostrato, mostrato solo se c'è spazio disponibile, o se lo spazio debba essere sottratto ai figli (quindi introducendo errori ai vincoli di disegno di una mappa ad albero pura). Inoltre, puoi scegliere la posizione relativa dell'etichetta nel rettangolo.

Algoritmi di disegno delle mappe ad albero

Per gli algoritmi di disegno di mappe ad albero, la regola che l'area sia proporzionale alla misura di un elemento dovrebbe essere vera. Con la mappa ad albero di FSView, questo obiettivo non è sempre raggiunto: disegniamo bordi per mostrare l'annidamento degli elementi, e questo bordo toglie spazio agli altri elementi. Nota come meno spazio venga perso per i bordi se il rettangolo è un quadrato.

Similmente è meglio, per avere una buona panoramica, fare avere a ogni rettangolo almeno il proprio nome come etichetta. C'è l'opzione per costringere a riservare spazio per le etichette, o disegnare le etichette solo quando c'è spazio vuoto disponibile. In quest'ultimo caso i suggerimenti che appaiono quando il mouse è tenuto su un oggetto possono essere di grande aiuto. Essi mostrano informazioni sull'elemento sul quale il mouse si trova attualmente, insieme alle cartelle madri fino all'elemento radice della mappa ad albero.

È lasciato all'implementazione come lo spazio venga diviso tra sottoaree per i figli. È sempre meglio provare a dividere aree in modo che i rettangoli siano il più quadrati possibile, sia per l'etichettatura che per il minor spazio perso sui bordi. I migliori metodi a questo riguardo sono Righe, Colonne, o Bisezione ricorsiva.

Puoi scegliere l'area minima degli elementi da disegnare con l'elemento del menu VisualizzaFermati all'area. Invece, sarà disegnato un motivo ombreggiato nell'area dei genitori, per indicare che l'area è in realtà occupata da uno o più figli.

Interfaccia utente

FSView supporta la selezione multipla degli oggetti, in modo simile alle viste icone e a lista. Ciò permette di effettuare simultaneamente azioni su un insieme di file. Un semplice clic del mouse seleziona sempre un singolo elemento sotto il puntatore del mouse. Usa un clic del mouse mentre premi il tasto Shift per una selezione a intervallo, o il tasto Ctrl per una selezione elemento per elemento. Nota che, selezionando un elemento, i suoi sottoelementi non possono più essere selezionati. Quindi, selezionare un elemento ripulirà la selezione da tutti i suoi elementi genitori precedenti.

La navigazione da tastiera è disponibile nelle mappe ad albero: usa Freccia a sinistra e Freccia a destra per spostare l'elemento corrente tra i fratelli, e i tasti Freccia in alto e Freccia in basso per andare su e giù nella gerarchia di annidamento. Spazio seleziona l'elemento; insieme con Shift esegue una selezione a intervallo, e insieme con il tasto Ctrl mantenuto premuto allo stesso tempo, commuta la selezione dell'elemento corrente. Premi Invio per avviare l'azione aperta sull'elemento corrente.

Riconoscimenti e licenza

Originariamente, FSView era inteso essere una piccola applicazione di prova e un'introduzione all'uso dell'oggetto TreeMap sviluppato all'interno di KCacheGrind.

Copyright di Josef Weidendorfer, rilasciato sotto la GPL V2.