Linux

Programmi e siti web tascabili

Marco Fioretti | 10 Settembre 2009

Linux

Tutto su una chiave Usb per lavorare anche quando non si è connessi.

.
File che riscrivono sé stessi
.
Molte pagine Web possono cambiare aspetto o interagire direttamente con chi le ha caricate in un browser. Questa flessibilità  è possibile grazie a tecnologie come Html dinamico, fogli di stile Css e JavaScript. Quello che fanno le prime due, in prima approssimazione, è dividere una pagina Web in elementi distinti, che possono essere resi temporaneamente visibili o invisibili in base ai comandi dell’utente. JavaScript è un linguaggio di programmazione generico, concepito per essere eseguito dentro un browser. Oltre a modificare l’aspetto della pagina Web, JavaScript ha anche la capacità  di leggere e scrivere file sul disco locale. Diversi programmatori hanno sfruttato queste tecnologie per creare pagine Html che modificano permanentemente sè stesse in base a comandi e azioni dell’utente. Sono nati così wiki, blog e altri tipi di portali Web dinamici interamente contenuti in un solo file Html, usabile e modificabile in locale con qualsiasi browser moderno. Le prestazioni potrebbero non essere superiori a quelle di un sito Web remoto, proprio perché qualsiasi elaborazione avviene in JavaScript che non è un linguaggio particolarmente veloce. La praticità  d’uso è però tale da compensare senz’altro questo svantaggio. L’unica accortezza da non dimenticare è impostare correttamente, proprio per permettere la auto-modifica dei file in questione, i permessi di accesso in lettura e scrittura, sia su Windows sia su Linux: devono essere tali da consentire all’utente che legge le pagine tramite browser di modificarle.

03_woas_salvato.jpg
Il risultato finale delle operazioni mostrate in Figura 2: il testo inserito nell’interfaccia JavaScript ha sostituito quello originariamente presente nel file di Woas scaricato da Internet, ma è ancora interamente contenuto nello stesso file, insieme a codice e fogli di stile Css!
.
L’esempio più interessante di questa categoria di applicazioni è WoaS (Wiki on a Stick).
Si tratta di un wiki composto appunto da un solo file Html dinamico, contenente al suo interno anche il foglio di stile e tutto il codice JavaScript necessario per l’applicazione. Il risultato è un wiki personale adattissimo per dimostrazioni, usi didattici o anche, appunto, come sistema di gestione dei propri appunti. Woas supporta infatti, oltre a link ipertestuali fra i vari “documenti” che contiene, anche immagini, link remoti, menu e addirittura la cifratura con algoritmo Aes di tutti i contenuti. Per cifrare il contenuto di una pagina si deve fare clic sull’icona con il lucchetto e inserire una password. Immagini o altri allegati vengono gestiti come gli allegati nei normali messaggi email: i rispettivi file vengono infatti trasformati in testo con l’algoritmo di codifica base-64. Proprio perché Woas è contenuto in un unico file, lo si può usare per conservare sulla stessa chiave o disco locale quanti wiki indipendenti si vuole: basta fare altrettante copie di Woas, ognuna con un nome diverso.
In generale, le capacità  di Woas si possono aumentare aggiungendo altro codice JavaScript (che verrà  eseguito durante l’avvio di Woas) alla sezione “WoaS::Bootscript”, seguendo le istruzioni pubblicate sul sito. I wiki Woas sono scrivibili quando nella pagina iniziale è visibile l’icona di una matita. Se questo non avviene, occorre modificare i permessi di accesso al file, o alla chiave Usb che lo contiene. In caso contrario, per iniziare a creare nuove pagine del “wiki” o modificare quelle esistenti basta un clic su quell’icona. Per modificare una sezione di testo già  esistente occorre invece un doppio clic direttamente su di essa. Il linguaggio di marcatura di Woas è simile a quello di tutti gli altri Wiki, anche se supporta direttamente anche alcuni marcatori Html. La descrizione completa della sintassi Woas è accessibile dall’interno del Wiki. Altri Wiki scritti nello stesso modo sono Tiddly Wiki, Monkey GTD  e GtdTiddlyWikiPlus. Più che normali Wiki, gli ultimi due programmi sono versioni digitali del sistema di produttività  individuale chiamato Gtd (Getting Things Done).

< Indietro Successivo >