Notizie: scarica ora l'ultima versione disponibile di SeaMonkey!

Autore Topic: Estensione PrefBar: una panoramica delle sue potenzialità  (Letto 5567 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline Iceberg

  • Moderatore
  • Post: 6976
PrefBar 

Una introduzione alle potenzialità dell'estensione PrefBar.
Non la solita toolbar!

Questa estensione permette di avere a portata di clic, nell'interfaccia principale di Firefox, una moltitudine di funzioni generalmente raggiungibili dopo svariati clic oppure disponibili solo tramite modifiche in about:config o addirittura non previste da Firefox e neanche dall'autore dell'estensione.

Per farsi un'idea ecco un elenco, parziale, dei pulsanti o checkbox che è possibile aggiungere all'interfaccia di Firefox.
- Checkbox per abilitare e disabilitare al volo: cookie; java; javascript (globalmente o solo per una scheda); flash; immagini (globalmente o solo per una scheda); popup; proxy; animazioni; colori... e altro.
- Pulsanti per: riaprire l'ultima scheda chiusa; cancellare cache, cookie, cronologia oppure un unico pulsante che cancella tutto in un colpo solo; aumentare o diminuire lo zoom; replica di pulsanti già esistenti, tipo: home, avanti, indietro, stop, apri nuova scheda... e altro.
- Funzioni più avanzate come cambiare il proxy, non come visto prima proxy sì proxy no, ma scegliere fra un elenco di proxy. Cambiare l'user agent... e altro ancora.

Comincia ad essere interessante? Siamo solo all'inizio.

Se un pulsante non lo trovate fra quelli presenti all'installazione, sul sito dell'estensione è possibile cercarne ed installarne molti altri. E se non c'è neanche lì potete crearvelo da voi!
Se considerate che una delle possibilità è creare pulsanti per avviare programmi presenti sul PC (avere in Firefox un pulsantino che avvia il lettore multimediale VLC, oppure la calcolatrice, il blocco note o quello che vi pare... ) oppure avviare uno script sul Pc, a questo punto solo la fantasia limita ciò che potete fare (mettere dentro Firefox un pulsante che chiude Firefox - fa un backup del profilo - lo invia per e-mail a chi vi pare - e dopo disinstalla Firefox rimuovendo anche il profilo è una delle possibilità!).

Gli elementi che sceglierete di inserire come attivi in PrefBar prendono il nome di PrefBar Toolbar Items e per impostazione predefinita si trovano sulla PrefBar Toolbar. Toolbar che può essere fissa, richiamabile tramite scorciatoia da tastiera (tasto F8 di default), oppure essere del tutto assente.

Difatti i PrefBar Toolbar Items li potete mettere dove vi pare:
- nella barra dei menu,
- nella barra di navigazione,
- nella barra delle schede,
- nella barra dei segnalibri
- o nella barra dei componenti aggiuntivi.
Se messi in altra barra la PrefBar Toolbar, oramai vuota, la potete rimuovere.
Non basta, c'è anche il PrefBar Menu: si tratta di un pulsante che racchiude in forma compatta (premendolo si apre un menu a tendina) i PrefBar Toolbar Items.
Si possono avere quindi tutti i controlli di cui sopra presenti in forma estesa, compatta o in tutte e due le forme contemporaneamente.

Per spostare dove vi pare i PrefBar Toolbar Items o il PrefBar Menu si opera dal menu "Visualizza → Barre degli strumenti → Personalizza" di Firefox.

I vari pulsanti che compongono i PrefBar Toolbar Items non si possono dividere, potete metterli dove vi pare ma tutti in una barra uno accanto all'altro.
Ad ognuna di queste funzioni potete assegnare una scorciatoia da tastiera, in questo caso si potrebbe anche:
- eliminare la PrefBar Toolbar,
- non avere l'icona PrefBar Menu,
- non avere nessuno dei PrefBar Toolbar Items visibili,
ma avere lo stesso tutte le funzionalità dell'estensione raggiungibili tramite le suddette scorciatoie da tastiera.

Alcune immagini per chiarire alcuni aspetti.
Così è come appare l'estensione appena installata, sembra la solita toolbar.



Questo è il suo aspetto, dopo aver spostato i PrefBar Toolbar Items nella barra dei menu ed aver eliminato la PrefBar Toolbar, molto più carino e non ruba alcuno spazio occupando dello spazio altrimenti vuoto.



Altra buona scelta è spostare questi elementi sulla barra dei componenti aggiuntivi, sempre eliminando la toolbar originale.



Ulteriore possibilità è usare l'icona per il menu compatto che apparirà in questo modo.



Le etichette delle varie funzioni sono personalizzabili, nelle immagini si nota Riapri scelto da me in sostituzione dell'originale Restore Tab.

Link alla pagina dell'estensione:
https://addons.mozilla.org/it/firefox/addon/prefbar/

Ed ecco PrefBar Help , dove trovare ulteriori informazioni, in particolare cosa fanno tutti i singoli pulsanti disponibili:
http://prefbar.tuxfamily.org/help/buttons.html

Elenco di pulsanti supplementari per ulteriori funzioni:
http://prefbar.tuxfamily.org/buttons.html

Per concludere questa introduzione all'estensione PrefBar faccio notare che tutto quanto visto è valido sia per Firefox che per Seamonkey.
« Ultima modifica: 05 Ottobre 2016 22:33:50 da Iceberg »

Offline Iceberg

  • Moderatore
  • Post: 6976
Re: Estensione PrefBar: una panoramica delle sue potenzialità
« Risposta #1 il: 09 Febbraio 2012 15:58:31 »
Qualche appendice a quanto scritto sopra per illustrare altri aspetti di questa estensione.

Appendice 1.
Se un pulsante non esiste e non è presente neanche fra quelli supplementari possiamo crearcelo da soli. In alcuni casi ciò sarà al di là delle capacità di quasi tutti gli utenti, esperti o non esperti. In altri casi sarà molto semplice crearsi il proprio pulsante personalizzato. Il caso più facile si ha quando si vuole portare nell'interfaccia di Firefox un tasto per modificare una preferenza da true a false o viceversa (cioè una qualsiasi preferenza presente in about:config che sia di tipo booleano).

Prendiamo ad esempio questa opzione:

browser.zoom.full

con valore true facendo lo zoom di una pagina vedremo ingrandirsi immagini e testo, con valore false solo il testo.
Questa scelta è già presente fra le opzioni di Firefox, ma bisogna andarsela a cercare con qualche clic.
Immaginiamo di volerla attivare e disattivare spesso e con un solo clic.

1) Aprire la pagina delle preferenze di PrefBar,
2) fare clic con il tasto destro su una parte vuota della zona Enabled Items,
3) fra le opzioni scegliamo New → PrefCheck, si aprirà un popup dove inserire i dati.
4) Ecco come impostare il checkbox che modifica la preferenza di esempio.


Id è il nome di questa nostra opzione, nome interno, univoco e non modificabile in seguito.
Label è l'etichetta che si vuole dare a questa opzione, ciò che apparirà nell'interfaccia di Firefox.
Prefstring il nome dell'opzione che vogliamo modificare.
toPref è il valore della preferenza al momento di fare clic sul checkbox.
fromPref sarà il valore che la preferenza assumerà dopo il clic.

Per modificare un valore da true a false (e viceversa) si opera sempre come in questa immagine, per modifiche più avanzate le cose - come detto  - si complicano.
Dall'immagine si nota che è anche possibile assegnare una scorciatoia da tastiera, "hotkey", a questa funzione.


Appendice 2.
Le funzioni fornite dall'estensione sono modificabili dall'utente.
In teoria possiamo prendere il tasto che disattiva Java e fare in modo che disattivi Flash. L'esempio riconosco che è balordo, ma in altri casi dare un ritocchino ad una funzione potrà sembrare una buona idea. Non lo è. Non perché non funzioni, ma perché ad ogni aggiornamento dell'estensione le nostre modifiche ai tasti standard verrebbero azzerate.
La soluzione è semplice: si crea una copia del tasto che ci interessa (facendo un copia-e-incolla di tutte le impostazioni), poi si effettua la nostra modifica su questa copia. I tasti creati dall'utente non vengono modificati aggiornando l'estensione.

Un esempio.
Il tasto di default cookie abilita e disabilita i cookie, abilita sia i cookie dei siti che i cookie di terze parti.
Noi vogliamo un tasto cookie che non abiliti i cookie di terze parti.
Creare una copia del checkbox cookie e modificarlo come in questa immagine.



Appendice 3.
Una volta che abbiamo scelto e personalizzato tutti i nostri PrefBar Toolbar Items, se vogliamo importare tutto questo in un altro profilo od in un altro PC senza ripetere tutti i passi è possibile?
Quasi.
Copiando il file prefbar.json, che si trova nella cartella del profilo, importeremo tutti gli elementi da un profilo all'altro, tutti i nostri PrefBar Toolbar Items con le loro eventuali personalizzazioni in un colpo solo.
Però per spostarli sulla nostra barra preferita dovremo farlo in un secondo tempo manualmente.
Se si importano le preferenze portandosi dietro il file prefbar.json da un PC all'altro, va tenuto conto di eventuali pulsanti che fanno riferimento al sistema operativo.
Se abbiamo un tasto per avviare la calcolatrice di un PC Linux andrà modificato per avviare la calcolatrice su di un PC Windows.


Appendice 4.
Precedentemente ho scritto che se spostate i PrefBar Toolbar Items su di una barra diversa dalla PrefBar Toolbar quest'ultima rimasta vuota si può rimuovere.
Vero, ma può tornare utile per altri usi.

Sulla PrefBar Toolbar rimasta vuota potete mettere qualsiasi elemento presente nella finestra "Visualizza → Barre degli strumenti → Personalizza" di Firefox.

Primo esempio.
Spostare gli Oggetti della barra dei segnalibri dalla barra dei segnalibri alla PrefBar Toolbar.
Eliminare ora la visualizzazione della barra dei segnalibri.
Il risultato sarà che la PrefBar Toolbar ora è diventata tale e quale la vecchia barra dei segnalibri. Il vantaggio è che diversamente da quest'ultima potrete nasconderla o mostrarla tramite una scorciatoia da tastiera (F8 di default, ma potete scegliere qualsiasi combinazione di tasti libera).

Secondo esempio.
Spostare tutti gli elementi presenti nella barra dei componenti aggiuntivi sulla PrefBar Toolbar.
Eliminare la visualizzazione della barra dei componenti aggiuntivi.
Si sarà ottenuta una barra dei componenti aggiuntivi che anziché in basso si troverà in alto e sarà possibile nasconderla o mostrarla tramite una qualsiasi scorciatoia da tastiera libera.

In definitiva sulla PrefBar Toolbar, se non la usate per i PrefBar Toolbar Items, potete metterci qualsiasi elemento dell'interfaccia di Firefox che supporti il drag-and-drop.


Appendice 5.
Fra le varie tipologie di tasti che possiamo creare con PrefBar una si chiama Link.
Un modo alternativo per creare segnalibri.
Basta inserire il nome del segnalibro ("label"), l'indirizzo del sito ed è fatto.
Facendo clic sulla label si aprirà il sito. Tutto qui.
Potreste avere i vostri 5 siti super-favoriti chiamati A B C D E che invece di aprirli banalmente dal menu segnalibri o dalla barra dei segnalibri li aprirete facendo clic sulla lettera corrispondente.
Ovviamente invece di A B C D E potrete scriverci tutto ciò che vi pare.
Questi segnalibri potranno avere ognuno la loro scorciatoia da tastiera (interessante), ma non potranno avere una favicon.


Appendice 6.
Fra le varie tipologie di tasti che possiamo creare con PrefBar una si chiama Text Label.
Aprire il popup per creare l'elemento Text Label, scrivere nello spazio apposito quello che più aggrada e questo apparirà nell'interfaccia di Firefox.
Che cosa succede facendoci clic sopra? Nulla è solo una scritta inattiva.

L'ennesimo colpo di genio di Manuel Reimer, l'autore di PrefBar.
« Ultima modifica: 05 Ottobre 2016 22:36:57 da Iceberg »

Offline Iceberg

  • Moderatore
  • Post: 6976
Re: Estensione PrefBar: una panoramica delle sue potenzialità
« Risposta #2 il: 17 Febbraio 2012 12:47:28 »
Appendice 7.
Come avviare tramite un pulsante presente nell'interfaccia di Firefox qualsiasi programma presente sul PC.
Oppure, se si è programmatori, come crearsi pulsanti per eseguire funzioni scritte da noi.
Nel seguito illustrerò solo il primo caso (anche perché non sono programmatore).

Creiamo un nuovo elemento, in questo caso di tipo Button, seguendo la stessa procedura vista nell'appendice 1 facciamo "New → Button". L'elemento Button presenta tre pannelli, come si vede in questa immagine che li mostra in sequenza.



-Common, è l'identificazione del tasto, Id (nome interno); Label (etichetta che apparirà nell'interfaccia); Hotkey (opzionale scorciatoia da tastiera).
-onClick, conterrà l'istruzione che vogliamo far eseguire cliccando sul tasto che stiamo creando (potrà contenere una unica istruzione oppure decine di righe di codice).
-Init-function, conterrà eventuali istruzioni da eseguire all'avvio di Firefox per inizializzare la funzione che abbiamo creato (non spaventatevi è opzionale e ci basta sapere che esiste).

Avviare un programma presente sul PC è molto semplice, in quanto la relativa funzione è già presente all'interno di PrefBar.
Questa funzione si chiama goPrefBar.RunApplication, va scritta nel campo onClick e la sua sintassi è questa:

goPrefBar.RunApplication("  ");

nello spazio fra le due virgolette basterà scrivere il percorso dell'eseguibile del programma che si vuole avviare ed il gioco è fatto.



A sinistra si vede l'istruzione per avviare il blocco note di Windows con un tasto all'interno di Firefox, a destra l'istruzione per avviare un tipico editor di testi per Linux.

Con questo sistema si può  avviare qualsiasi programma.
Si può avviare anche uno script eseguibile (file batch per Windows) nel quale scrivere tutte le istruzioni che si vuole, istruzioni dipendenti dal sistema operativo, che potranno compiere azioni completamente estranee a Firefox e all'estensione (premere un tasto dentro Firefox per ottenere una tazzina di caffè è una delle possibilità... tazzina di caffè reale non virtuale...).


Appendice 8.
L'elemento Submenu.
Se abbiamo molti elementi di PrefBar visibili, e altri vorremmo aggiungerne, potremmo ritrovarci con tutti questi elementi che appariranno in un modo esteticamente poco gradevole. Inoltre potremmo non individuare subito il pulsante che cerchiamo (quando la barra è piena gli elementi che non trovano spazio, come succede con le schede di Firefox, si "arrotolano").
Una soluzione è utilizzare i submenu, raggruppare tasti poco usati oppure tasti con simili funzioni in un unico tasto. Ottenendo per esempio un tasto che apre un menu a tendina dove poter selezionare se attivare Java, Flash, Javascript, animazioni, immagini... un tasto che fa per cinque.
Unica controindicazione: i due clic necessari, invece di uno, per attivare e/o disattivare una funzione.

Come esempio pratico di usare la funzione Submenu, vediamo come creare un menu segnalibri (un menu segnalibri supplementare ed indipendente da quello di Firefox).

Creare un nuovo elemento, in questo caso di tipo Submenu, seguendo la stessa procedura vista nell'appendice 1, facciamo "New → Submenu".
Primo passo: scrivere un Id ed una Etichetta per questo elemento (etichetta che potrebbe essere "Segnalibri").
Fatto, il submenu è pronto.
Secondo passo: seguendo le istruzioni presenti nell'appendice 5 creare tanti elementi link quanti sono i segnalibri che si vuole mettere in questo supplementare menu segnalibri.
Per mettere in ordine i segnalibri e per metterli nel submenu utilizzare, se necessario, il drag-and-drop.
Una immagine per illustrare un possibile aspetto finale.


In questa maniera si hanno due menu segnalibri!
(Si può assegnare il nome che più piace a questo secondo menu segnalibri; io ho utilizzato lo stesso nome per fare scena).
I segnalibri di PrefBar non fanno parte dei segnalibri di Firefox, sono completamente indipendenti, è un po' come avere dei segnalibri salvati in un file di testo. Con il vantaggio che sono a portata di clic dentro Firefox ed ognuno di essi può avere la sua scorciatoia da tastiera.
Questi segnalibri saranno senza la loro specifica favicon, avranno una favicon generica.
Dove vengono salvati questi segnalibri? Nel file prefbar.json che si trova nella cartella del profilo di Firefox.

E' possibile creare un submenu all'interno di un submenu? Purtroppo no.


Appendice 9.
L'elemento Menulist.
Nell'appendice 1 si è visto come creare un pulsante per modificare il valore di un parametro da true a false (e viceversa). Nell'appendice 2 nel caso di parametri che possono assumere più di due valori come passare fra due di essi.
Vogliamo di più, vogliamo poter scegliere al volo fra tutti i valori che un parametro può assumere.
Utilizzando l'elemento Menulist (che si crea con l'opzione "New → Menulist") è fattibile ed in maniera piuttosto semplice.

Tornando all'esempio dei cookie dell'appendice 2, volendo poter scegliere fra:
-Vietare del tutto i cookie
-Permettere solo i cookie dei siti, vietando quelli di terze parti
-Permettere tutti i cookie, anche quelli di terze parti.

L'elemento Menulist relativo andrà impostato come in questa immagine (vi ricordo che nelle caselle "label" potete scriverci ciò che per voi meglio descrive quella azione):

I simboli "+" e "-" servono per aggiungere e togliere opzioni, le due frecce per ordinarle.

Nell'interfaccia di Firefox apparirà in questo modo:


A dire il vero è un po' invadente e non molto elegante, in particolare se messo nella barra dei menu.
Per ovviare possiamo ricorrere all'elemento Submenu (vedi appendice 8) e crearci un nostro menu che potremmo chiamare "Preferenze", nel quale mettere questa preferenza, magari insieme ad altre di questo genere.
Ottenendo un risultato come quello illustrato da questa immagine.


Oltre alla preferenza per gestire i cookie ho aggiunto la preferenza che gestisce la "X" per chiudere le schede, se trovate noioso avere la "X" sempre visualizzata allo stesso modo (si tratta della preferenza browser.tabs.closeButtons).
Meno invadente, più elegante e più completo.
« Ultima modifica: 05 Ottobre 2016 22:41:47 da Iceberg »

Offline Iceberg

  • Moderatore
  • Post: 6976
Re: Estensione PrefBar: una panoramica delle sue potenzialità
« Risposta #3 il: 17 Maggio 2012 21:33:16 »
Appendice 10.
Si tratta di una estensione dell'appendice 7 che va letta prima per poter mettere in pratica quanto segue.
Nel campo onClick dell'elemento Button oltre a quanto già visto è possibile inserire i comandi di Firefox. Vale a dire le istruzioni che avviano le varie funzioni.

Esempio.
Inserendo questa istruzione nel campo onClick di un Button si avrà un tasto che apre la finestra Personalizza barra degli strumenti.
Codice: [Seleziona]
BrowserCustomizeToolbar();
Un solo clic nell'interfaccia principale di Firefox che fa da scorciatoia a: Visualizza -> Barre degli strumenti -> Personalizza.

Ad ogni funzione di Firefox corrisponde un comando.
Come trovarli? Tramite l'estensione DOM Inspector che trovate descritta in questo messaggio.
Qui riporto una immagine che illustra, meglio di tante parole, dove e cosa cercare tramite questa estensione.



Nel campo onClick si possono inserire più di una istruzione, in modo da ottenere un tasto che effettua una serie di operazioni e non una sola operazione.
Esempio.
Con queste istruzioni si otterrà con un solo clic l'apertura della funzione analisi pagina a schermo intero dopo aver resettato lo zoom della pagina da analizzare.
Codice: [Seleziona]
FullZoom.reset();
InspectorUI.toggleInspectorUI();
BrowserFullScreen();

Come ulteriore esempio un tastino che trovo molto comodo se usate l'estensione DOM Inspector:
Codice: [Seleziona]
inspectDOMDocument("chrome://browser/content/browser.xul");
Come potete vedere fra le due parentesi tonde si può passare un parametro alla funzione. In questo caso l'estensione DOM Inspector non si aprirà vuota, ma direttamente, mostrando l'analisi dell'interfaccia principale di Firefox. Comodo, no?

Ricordo che a queste funzioni potete anche associare vostre scorciatoie da tastiera.
Lascio alla vostra fantasia pensare alle varie funzioni che si possono ottenere.
Raccomando di fare esperimenti utilizzando un apposito profilo di test.


Appendice 11.
Modificare l'aspetto degli elementi della PrefBar, in particolare come cambiare il colore di sfondo dei tasti.
In questo caso si utilizza il file userChrome.css il cui uso è spiegato in questa discussione.

Per cambiare il colore di sfondo di tutti gli elementi il codice è questo:
Codice: [Seleziona]
/* Cambia il colore di sfondo degli elementi della PrefBar */

#prefbar-buttons {
  -moz-appearance: none !important;
  background: #FFD700 !important; }
In questo esempio tutti gli elementi della PrefBbar avranno uno sfondo giallo oro.

Per cambiare il colore di sfondo di uno specifico elemento il codice è:
Codice: [Seleziona]
/* Cambia il colore di sfondo del tasto Riapri l'ultima scheda chiusa */

#prefbar-buttons [id$="prefbarrestoretab"] {
  -moz-appearance: none !important;
  background: #FFD700 !important; }
In questo caso giallo oro sarà solo il tasto che riapre l'ultima scheda chiusa.

Come potete vedere il nome di questa funzione (il suo Id) è prefbarrestoretab.
Come trovare il nome dei vari tasti, vale a dire il loro Id?
Aprite la finestra delle impostazioni dell'estensione, clic con il tasto destro sulla voce che vi interessa,  scegliete l'opzione Edit e nel primo campo di tutti gli elementi troverete il suo Id. Lo potete vedere in molte delle precedenti immagini.
Volendo ad ogni tasto potreste assegnare un diverso colore.

Vediamo un uso un po' meno giocherellone di questa possibilità di cambiare i colori.
In quasi tutti i PC si trova installato Java, plugin che molti utenti usano raramente, mentre molto meno rari sono i casi in cui si legge di vulnerabilità di Java. L'utente accorto terrà il plugin Java disattivato e lo attiverà solo quando necessario.
Scomodo andare ad attivarlo e disattivarlo? Ci si può dimenticare di disattivarlo dopo averlo attivato?

Soluzione.
Mettiamo sulla PrefBar il checkbox per attivare e disattivare Java, checkbox che fa parte dei tasti standard dell'estensione. Poi tramite il file userChrome.css facciamo in modo che il tasto Java non abbia nulla di particolare quando Java è disattivato mentre quando Java è attivato diventi di colore rosso.
Codice: [Seleziona]
/* Mostra in rosso il tasto Java se il plugin è attivo  */

#prefbar-buttons [id$="java"][checked="true"] {
  -moz-appearance: none !important;
  background: #FF0000 !important; }

Il risultato sarà come in questa immagine, abbiamo attivato sia Java che i cookie ma solo Java attivo sarà evidenziato in rosso.


Questo è solo uno spunto dal quale partire per le proprie personalizzazioni.
Quali tasti colorare e con quale colore è, ovviamente, a vostra discrezione.
Scrivendo false al posto di true il tasto verrà evidenziato quando la relativa funzione è disattivata e non quando è attivata.
True e false si possono utilizzare solo per i tasti con la casellina da spuntare: i checkbox.
Leggendo i vari esempi riportati nella discussione sull'userChrome.css citata all'inizio potrete trovare come modificare altri aspetti oltre al colore di sfondo.


Credo che chi avrà avuto la pazienza di leggere tutte queste righe concorderà con la mia frase introduttiva, non si tratta della solita toolbar.
« Ultima modifica: 05 Ottobre 2016 22:44:08 da Iceberg »

Offline Iceberg

  • Moderatore
  • Post: 6976
Re:Estensione PrefBar: una panoramica delle sue potenzialità
« Risposta #4 il: 11 Dicembre 2012 23:07:47 »
Appendice 12.
Vi presento due interessanti funzioni: goPrefBar.GetPref e goPrefBar.SetPref
Si usano in particolare con l'elemento button (vedi appendice 7).

goPrefBar.GetPref(" ");
Cattura il valore di qualsiasi parametro presente in about:config, il nome del parametro va scritto fra le due virgolette. Il valore catturato può essere usato subito oppure salvato in una variabile per essere usato in seguito.

goPrefBar.SetPref(" ", );
Imposta il valore specificato nell'istruzione a qualsiasi parametro presente in about:config. Il parametro va scritto fra le due virgolette, invece il valore da assegnargli va scritto dopo la virgola.

Queste due funzioni diventano molto potenti in abbinamento con l'istruzione "if".
Suona difficile? Non lo è.
Un primo esempio.

Codice: [Seleziona]
if (goPrefBar.GetPref("javascript.enabled")==true)
    goPrefBar.SetPref("javascript.enabled", false);
else
    goPrefBar.SetPref("javascript.enabled", true);
Se javascript è abilitato disabilitalo, altrimenti (se è disabilitato) abilitalo.

Non è complicato, in quanto la sintassi è sempre quella, basta solo mettere i parametri e i valori desiderati.
Chiaramente i valori dovranno essere compatibili con il tipo di parametro, che potrà essere booleano, intero o stringa. Informazione specificata in about:config.

Non era più semplice fare come visto nell'appendice 2?
- Sì, se volete cambiare il valore di un solo parametro con un solo clic.
- No, se volete un tasto che cambia con un solo clic il valore di quanti parametri desiderate.

Di più. Questo tasto potrà modificare il valore di un parametro in base al valore di un altro parametro.

Codice: [Seleziona]
if (goPrefBar.GetPref("javascript.enabled")==true)
    goPrefBar.SetPref("network.cookie.cookieBehavior", 0);
else
    goPrefBar.SetPref("network.cookie.cookieBehavior", 2);
Se javascript è abilitato abilita tutti i cookie, altrimenti (se è disabilitato) disabilita i cookie.
La parte else se non serve si può omettere.

In un singolo tasto di queste istruzione ne potete mettere quante vi pare.

Oltre a cambiare le impostazioni dei parametri presenti in about:config potete anche invocare l'esecuzione di funzioni di Firefox, gli oncommand. Queste funzioni le trovate con l'estensione DOM Inspector come spiegato nell'appendice 10.

Un esempio di cosa si può ottenere combinando queste istruzioni:

Codice: [Seleziona]
if (goPrefBar.GetPref("permissions.default.image")==1)
    goPrefBar.SetPref("permissions.default.image", 2);
else
    goPrefBar.SetPref("permissions.default.image", 1);

if (goPrefBar.GetPref("plugins.click_to_play")==true)
    goPrefBar.SetPref("plugins.click_to_play", false);
else
    goPrefBar.SetPref("plugins.click_to_play", true);

if (event.shiftKey) BrowserReloadSkipCache(); else BrowserReload();
Un pulsante che premuto disattiva il caricamento delle immagini, disattiva l'esecuzione automatica dei plugin e ricarica la pagina attiva.
Finita la navigazione senza immagini e senza plugin, premendo nuovamente il tasto verrà riattivato il caricamento delle immagini, riattivata l'esecuzione automatica dei plugin e ricaricata la pagina attiva.

Un ultimo esempio, una funzione che serve a poco o a nulla, ma utile per illustrare meglio alcune possibilità.

Codice: [Seleziona]
MiaVariabile = goPrefBar.GetPref("browser.startup.page");

if (MiaVariabile==0) {
    goPrefBar.SetPref("browser.newtab.url", "about:newtab");
    goPrefBar.SetPref("browser.tabs.closeButtons", 3); }
if (MiaVariabile==1) {
    goPrefBar.SetPref("browser.newtab.url", "http://www.mozilla.org/it/firefox/fx/");
    goPrefBar.SetPref("browser.tabs.closeButtons", 1); }
if (MiaVariabile==3) {
    goPrefBar.SetPref("browser.newtab.url", "http://www.google.it/");
    goPrefBar.SetPref("browser.tabs.closeButtons", 2); }

delete MiaVariabile;

Si legge in questo modo.
Abbiamo creato una variabile MiaVariabile nella quale salviamo come è impostato Firefox all'avvio (browser.startup.page).
Se è impostato per mostrare una pagina vuota (0), allora la pagina nuova scheda sarà about:newtab e verrà mostrato un solo pulsante sulla destra per chiudere le schede.
Se è impostato per mostrare la pagina iniziale (1), allora la pagina nuova scheda sarà http://www.mozilla.org/it/firefox/fx/ e verrà mostrato in tutte le schede il pulsante per chiuderle.
Se è impostato per mostrare le finestre e le schede dell'ultima sessione (3), allora la pagina nuova scheda sarà http://www.google.it/ e non verrà mostrato nessun pulsante per chiudere le schede.
Infine per lasciare pulito cancelliamo la variabile che abbiamo usato.

Si notano due cose.
- Se dopo un "if" (o qualsiasi altro controllo) vanno eseguite più istruzioni queste debbono essere racchiuse fra parentesi graffe.
- Se un parametro è una stringa (e non un true/false o un numero) questa va scritta fra virgolette: "http://www.mozilla.org/it/firefox/fx/".

A prima vista tutto ciò può sembrare complesso da mettere in pratica.
E' una cosa da programmatori! Verrebbe da pensare.
Io, che non sono programmatore, non la penso così.

Partite dagli esempi e cambiate i parametri, aggiungetene altri, cambiate cosa fare in un caso e cosa fare in un altro caso. Partendo da un esempio arriverete a quello che volete ottenere.
Avete a disposizione tutti i parametri presenti in about:config e tutti gli oncommand presenti in Firefox.
Per esperimenti che vadano al di là del cambiare un true con un false usare un profilo apposito è d'obbligo.

Potrete creare tasti che cliccati cambiano completamente le impostazioni di Firefox.
Qualcosa del genere del manettino al volante delle Ferrari. La mattina quando andate al lavoro se piove non impostate la vostra Ferrari su rain, se c'è il sole su sport, se siete in ritardo su race? La stessa cosa potrete fare con Firefox.
« Ultima modifica: 13 Dicembre 2012 00:00:44 da miki64 »

Offline Iceberg

  • Moderatore
  • Post: 6976
Re: Estensione PrefBar: una panoramica delle sue potenzialità
« Risposta #5 il: 14 Aprile 2013 17:10:43 »
Appendice 13.
Questo paragrafo è dedicato agli amanti dei file userChrome.css e userContent.css.
Un barbatrucco (!) in grado di rendere più facile la creazione, i test e l'uso di questi file.
Come primo passo va aggiunto il tasto opzionale User Style Checkbox, che non fa parte di quelli standard, si importa da questo link (<-clic).

Ora nella cartella chrome possiamo creare un file chiamato userstyle.css.
Lo possiamo creare in tre modi diversi.
Rinominando in userstyle.css il file userChrome.css
Rinominando in userstyle.css il file userContent.css
Creando un file userstyle.css

Nel terzo caso si potranno avere tre file nella cartella chrome. Il file userstyle.css si potrà usare come unico o come secondo file userChrome.css, oppure come unico o secondo file userContent.css

I vantaggi di questa apparente complicazione?
Poter dividere fra due file il codice del file userChrome.css o del file userContent.css.
Ma soprattutto.
Un tasto che con un clic abilita/disabilita il codice presente nel file userstyle.css, senza chiudere e riavviare Firefox, senza aprire nessuna cartella e spostare o modificare file. Solo un clic e le modifiche presenti nel file userstyle.css vengono azzerate, altro clic e vengono ripristinate.

Si apprezza la sua utilità mentre si crea o modifica una parte di codice.
Immaginate di voler cambiare l'aspetto delle schede, cambia font, cambia colore, cambia gli angoli, i bordi, i margini... cento prove per arrivare al risultato desiderato. Cento prove senza dover mai chiudere Firefox. Potete modificare il file userstyle.css con Firefox aperto, per vedere l'effetto delle modifiche non sarà più necessario chiudere e riaprire Firefox, basterà un clic. Vantaggio ancor più grande se oltre a Firefox è aperta la finestra di Dom Inspector, potrà rimanere aperta anch'essa mentre cercate cosa modificare e come modificarla.

Riassumendo.
Nel caso più comune e semplice userstyle.css uguale userChrome.css, vantaggio principale poter lavorare su questo file a caldo (con Firefox aperto).


Appendice 14.
Altro pulsante opzionale che non fa parte dei tasti standard di PrefBar.
Creato dal sottoscritto, lo potete scaricare da questo link (<-clic).
Una volta scaricato, è un file .btn, inseritelo in PrefBar tramite l'opzione import dell'estensione.
Aggiunge un menu "Opzioni" che potrete mettere dove vi pare.
Cosa contiene questo menu è chiaramente illustrato da queste tre immagini:

In questo esempio si trova sulla destra della barra dei componenti aggiuntivi.
Nell'immagine 1 si vede come appare normalmente. Nell'immagine 2 è visibile il menu principale. Nell'immagine 3 si vede aperto il submenu delle opzioni avanzate di JavaScript.
Mette a disposizione dell'utente in modo chiaro e immediato alcune interessanti opzioni, alcune cadute in disgrazia.
« Ultima modifica: 05 Ottobre 2016 22:46:10 da Iceberg »

0 Utenti e 1 Visitatore stanno visualizzando questo topic.