Archive for the 'thunderbird' Category

Page 3 of 5

Thunderbird: usare l'ultimo post di Twitter come firma

Tempo fa su Lifehacker avevano presentato un programmino che inseriva nella firma di Outlook l’ultima entry di un feed RSS, il programma però non funzionava con Mozilla Thunderbird :-P . Prendendo spunto da questo e dalla firma random presentata su Mente Digitale (che fra l’altro è un SPB :-) ), mi è venuto in mente di creare un piccolo script Python per inserire come firma dei Messaggi di posta l’ultima entry di Twitter. Nel caso specifico lo script funziona solo con Mozilla Thunderbird ed è multi piattaforma. Teoricamente si potrebbe utilizzare un qualunque feed RSS e non limitarsi a quello di Twitter, però con un feed normale ci sarebbero dei problemi aggiuntivi che date le mie non eccelse doti di programmatore non sono al momento capace di risolvere, in un futuro si vedrà :-) .

I problemi riguardano la lunghezza delle entry nei normali feed, che sono troppo invadenti per potersi usare come firma in una mail, nonchè il problema di gestire la formattazione HTML della entry stessa; con il feed di Twitter questi due inconvenienti sono risolti direttamente alla fonte: una entry di Twitter è un breve messaggio che ha al massimo 160 caratteri e non contiene nessuna formattazione HTML. Tagliare il feed dopo 160 caratteri è semplice, più complicato sarebbe fare un taglio “intelligente”, e gestire la formattazione a seconda che si usi una firma HTML o una firma in puro testo. Per tagliare la testa al toro per ora lo script funziona solo con i feed di Twitter :-P .

Requisiti:

Non mi dilungo oltre su come installare Python, ne su come installare il modulo Feedparser, in caso qualcuno dimostri interesse posso provare a “compilare” (non è proprio una compilazione in realtà) lo script con py2exe in modo da farlo funzionare come file EXE, nel qualcaso cercherò di scrivere qualcosa a prova di gengiscan2005 (beh forse questo è difficile :-P ).

Qui di seguito il codice che va salvato nella stessa cartella in cui si trova il file usato come firma in Mozilla Thunderbird e che io ho chiamato twittersig.py:

File: twittersig.py

# File twittersig.py - autore: gialloporpora
# importa il modulo feedparser.py
import feedparser
# nella variabile twitter_feed va inserito il feed che volete sia usato per la firma delle vostre email
twitter_feed="http://twitter.com/statuses/user_timeline/1320531.atom"
# *nome_file_firma* deve contenere il percorso del file usato come firma in Thunderbird, se il file twittersig viene creato nella stessa cartella in cui si trova il file di firma
#  non e' necessario  specificare  il percorso, ma solamente il nome del file stesso, in ogni caso, per evitare  di dover fare l'escape dei backslash  (\\  al posto di \) viene definita come stringa grezza (r che precede la stringa stessa)
nome_file_firma=r"e:\firme\firma.txt"
# crea l'oggetto file
file_firma=open(nome_file_firma,"w")
# usa il metodo parse definito nel modulo feedparser per leggere il feed
x=feedparser.parse(twitter_feed)
# la prima entry del feed viene  usata come firma
firma=x['entries'][0]['title']
# scrittura del file di firma, e' necessario utilizzare la giusta codifica caratteri, se si utilizza una codifica diversa da utf-8 nella composizione
# dei messaggi e' necessario modificare utf-8 con la codifica in uso
file_firma.write(firma.encode("utf-8"))
# chiude il file
file_firma.close()

I parametri da modificare sono:

  • twitter_feed – l’indirizzo del feed di twitter;
  • nome_file_firma – il nome (eventualmente con il relativo percorso) del file utilizzato come firma in Mozilla Thunderbird;
  • opzionale – la codifica caratteri utilizzata per comporre i messaggi.

Per togliere eventuali problemi legati al PATH si può utilizzare un file BAT per lanciare lo script:

PATH=%PATH%;C:\Python24\
python twittersig.py

Per eseguire lo script ogni TOT secondi io ricorrerei alle operazioni pianificate di Windows, su Mente Digitale invece viene spiegato come derogare questo compito al file BAT stesso. Il file Choice.com utilizzato per impostare l’attesa nell’esecuzione non è però disponibile su Windows XP, potete scaricarlo da qui, o scegliere un modo alternativo per settare l’attesa in un file BAT, che consiste nel fare “N” ping a localhost. Personalmente non è che mi piaccia molto, in ogni caso inserendo una riga del genere nel file BAT:

ping -n 60 127.0.0.1 >NULL

si blocca l’esecuzione dello script per circa un minuto. Ritengo comunque preferibile la scelta di utilizzare le Operazioni pianificate. Nel post su Mente Digitale viene spiegato come creare il file VBS per bloccare il pop-up della shell dei comandi e come ottenere la stessa cosa su sistemi Linux (dove la cosa è molto più semplice anche perché Python è incluso in molte distribuzioni).

Impostare una firma in Thunderbird

Questo post è per rispondere a coloro (e sembrano tanti) che approdano su questo blog cercando “come impostare una firma con Thunderbird”. Prima di spiegare come si fa però, dico a tutti coloro che hanno cercato la risposta con Google, che per questo tipo di domande esiste un motore di ricerca addirittura più utile di Big G, ed è questo. La risposta la trovate anche nei bannerini antipixel che si trovano in fondo alla sidebar.

Iniziamo col dire che ci sono due tipi di firme in Mozilla Thunderbird, e l’utilizzo di una piuttosto che l’altra dipende essenzialmente dal tipo di composizione che si sta usando, se si spediscono email in puro testo (consigliato) bisogna utilizzare una firma puramente testuale, se invece si mandano le mail in formato HTML bisognerà utilizzare una firma formattata usando il codice HTML.

Quindi prima di tutto è importante verificare il tipo di composizione con cui vengono spedite le nostre email, questa preferenza varia da account ad account, solitamente viene impostata una composizione in HTML per i normali account di posta e una composizione di email puramente testuale per i newsgroup. Questa preferenza si imposta in:

Strumenti -> Impostazioni account -> Nome account -> Composizione ed indirizzamento

togliendo o mettendo la spunta alla voce “Componi i messaggi in HTML” a seconda che si vogliano inviare email in plain text (puro testo) oppure in HTML.

Firma in puro testo

Nel caso si scelga di comporre i messaggi in puro testo, per impostare una firma è necessario creare un file TXT che contenga la firma desiderata. , utilizzando un editor testuale come Crimson Editor o NotePad++ (no Writer, no Word e nemmeno Wordpad). Una volta creato e salvato il file contenente la firma, andare in:
Strumenti -> Impostazioni account -> Nome account
e spuntare la voce “Allega questa firma”, quindi inserire il percorso del file TXT precedentemente creato.

NOTA: è importante che il file venga salvato con estensione TXT.

Firma in HTML

Se invece si decide di comporre i messaggi in HTML bisognerà creare un file (con estensione HTML) che contenga il codice necessario a riprodurre la firma stessa. Nella firma in HTML si possono utilizzare formattazioni del testo, immagini e tutto quello che vi passa per la testa di fare, bisogna però ricordare che la firma verrà allegata a tutti i messaggi quindi tenete sempre conto di questi criteri basilari durante la creazione di una firma HTML:

  • l’uso di immagini troppo pesanti crea problemi a chi deve poi scaricare la posta, nonchè ne rallenta la spedizione;
  • una firma non dovrebbe superare mai le quattro righe, e le immagini non devono essere quindi troppo grandi;
  • le GIF animate ad alcuni vostri contatti potrebbero dare fastidio, utilizzate onde possibile immagini in formato PNG.

Bene, ora per creare una firma in HTML bisognerebbe anche conoscere un minimo di HTML, se così non fosse procedere come segue:

  • aprire la composizione di un nuovo messaggio;
  • scrivere la propria firma usando il composer interno di Thunderbird, formattando a piacere il testo e inserendo opzionalmente un’immagine;
  • quando si è finito, selezionare il tutto e andare in Inserisci -> HTML;
  • selezionare il codice HTML che appare nella finestra e copiarlo in un editor di testo;
  • chiudere tutte le finestre di TB dicendogli di non inviare il messaggio;
  • nell’editor di testo in cui si è copiato il codice HTML della firma, salvare il file con estensione HTML.

Una volta che la firma è stata creata (mi raccomando il file della firma deve avere estensione .HTML) , procedere analogamente a quanto descritto per la firma in puro testo per impostare TB in modo da utilizzare il file appena creato come firma per i vostri messaggi.

Inserire la firma al volo

Si può inoltre avere l’esigenza di definire la firma manualmente a seconda che ci si trovi a mandare un messaggio ad un amico, piuttosto che ad un cliente o ad un collaboratore, in alcuni casi si potrebbe anche decidere di non inserire affatto la firma. In questo caso può tornare utile Signature Switch, un” estensione che permette di configurare una serie di firme da cui è possibile pescare di volta in volta semplicemente selezionando dal menu contestuale la firma che si desidera usare in quel determinato messaggio.

Firma casuale

Non conosco estensioni che permettano di utilizzare una firma “random” pescata da un archivio predefinito, però è possibile lo stesso raggiungere lo scopo. Thunderbird allega la firma leggendola da un file, e si può utilizzare un qualche programmino per fare in modo che questo cambi ogni TOT secondi, cambiando così la firma che Thunderbird inserirà nelle nostre email .

Un modo geniale per farlo, lo potete trovare su Mente digitale, l’unica cosa di cui avete bisogno è che sul vostro sistema sia installato Python :-) . Volendo si potrebbe persino compilare lo script con py2exe, e utilizzare lo stratagemma anche senza avere Python sul proprio sistema.

AGGIORNAMENTO: come suggerito da Francesco nei commenti a questo post, esiste un’estensione che permette di implementare la firma random in Thunderbird: TagZilla.

Evidenziare una discussione quando contiene messaggi non letti

In Thunderbird, quando le discussioni sono raggruppate, se in una di esse c'è un messaggio non letto non è così evidente; vediamo come evidenziare il capo thread di una discussione, se essa contiene al suo interno, un messaggio non letto.

Il codice da inserire nel file userChrome.css (o via Stylish) è il seguente:


/* Evidenziare una discussione quando al suo interno ci sono messaggi non letti */
treechildren::-moz-tree-cell-text(container, closed, hasUnread, read)
{
font-weight: bold !important;
text-decoration: underline;
font-style: oblique !important;
}

Discussione in evidenza quando contiene messaggi non letti

Si possono modificare anche i colori o altre proprietà usando opportunamente i CSS, ma questa mi sembra una buona scelta.

Altri post che potrebbero interessare:
Impedire a Thunderbird di modificare la visualizzazione ad albero delle discussioni quando si riordina,
Shortcut per passare velocemente dalla visualizzazione semplice a quella ad albero,
Come faccio a seguire un thread ? (esterno)

Nostalgy, aggiornamenti importanti

Io continuo a tenere aggiornato il relativo post, però le nuove funzionalità introdotte da Alain Frisch nella versione 0.2.11 di Nostalgy (in step successivi) meritano bene un approfondimento.

E’ stato rinnovato il look della finestra delle preferenze, ora sono disponibili tre linguette: Rules, Completion e Keys da cui si possono configurare rispettivamente:

  • le regole da applicare ai messaggi;
  • il funzionamento dell’autocompletamento;
  • la rimappatura delle scorciatoie da tastiera.

Nuove preferenze di Nostalgy

In questo modo è molto più semplice accedere alle impostazioni (nella prima versione che avevo presentato non c’era la possibilità di rimappare le scorciatoie da tastiera e autocompletamento e definizione delle regole erano raggruppate in una unica finestra). Ma fosse solo per questo di sicuro non avrei fatto un nuovo post :-P , vediamo quindi le novità davvero interessanti.

Integrazione con i tag di Mozilla Thunderbird 2.0

Come già detto la novità più interessante di Thunderbird 2.0 è il nuovo sistema di tagging dei messaggi e Nostalgy si è voluta adeguare dando la possibilità di gestire in modo semplicissimo le etichette.

E’ ora possibile premendo il tasto G impostare la vista della cartella corrente per mostrare solo i messaggi con una determinata etichetta (quello che a me mancava in TB, leggi anche alla fine :-D ), naturalmente con l’autocompletamento sulle etichette. Per far riferimento ad una etichetta e non ad una cartella far precedere la digitazione nel form di autocompletamento dai : (due punti) Le scorciatoie S e C si comportano allo stesso modo con le etichette, permettendo di aggiungere o rimuovere un determinato tag dal messaggio. In caso di più messaggi selezionati Nostalgy decide il da farsi (aggiungere/rimuovere le etichette), basandosi sul primo messaggio, in pratica se il primo messaggio della selezione è sprovvisto di etichetta essa verrà aggiunta a tutti i messaggi, se invece ha l’etichetta essa verrà tolta a tutti i messaggi della selezione.

E’ inoltre possibile aggiungere direttamente una nuova etichetta senza andare nelle Opzioni di Thunderbird, se si digita ad esempio :nuovotag e si da invio si aprirà la finestra per la creazione della nuova etichetta, che verrà automaticamente aggiunta al messaggio.

Creazione nuovo tag

ALT-click alla Eudora

E’ possibile usare lo shortcut ` (backquote) per fare una ricerca per i messaggi dello stesso mittente. Faccio notare che non è il classico apostrofo presente nella tastiera italiana e anzi nella mia non è presente motivo per cui l’ho rimappato dalle preferenze di Nostalgy (la rimappatura ha effetto dopo il riavvio di Thunderbird). Questo shortcut è geniale e da solo varrebbe bene l’installazione dell’estensione :-) .
La prima volta che viene premuto verranno visualizzati tutti i messaggi dello stesso mittente (nella cartella “Posta inviata dello stesso destinatario), se viene premuto una seconda volta tutti i messaggi con lo stesso oggetto e infine se lo si preme una terza volta si ritorna alla visualizzazione normale. Fantastico :-) .

Impostazione di una scorciatoia per il quickmove del messaggio

E’ possibile configurare uno shortcut per spostare/copiare i messaggi in una determinata cartella, oppure anche per spostarsi in una determinata cartella (meno utile). Praticamente quello che si può fare con keyconfig seguendo queste istruzioni, che ormai non servono più :-P .

Configurare un tasto per il quickmove

Ah siccome avevo scritto una mail all’autore dell’estensione per chiedergli se era possibile impostare la vista delle cartelle per etichetta (salvo poi scoprire che era stata implementata nella release che stavo già usando :-P ) cliccate su italian :-) . , Gazie Alain :-D :-D .

X-Face: come usarla in Thunderbird

Cosa è una X-Face ? Da :

An X-Face is a small bitmap (48 × 48 pixels, black and white) image which is added to a Usenet posting or e-mail message, typically showing a picture of the author’s face. The image data is included in the posting as encoded text, and attached with an ‘X-Face’ header. It was devised by James Ashton.

Invece una Face è un’immagine PNG 48×48 di dimensione minore ai 726 bytes.

Thunderbird supporta X-Face o Face ?
No, Thunderbird non supporta nativamente questi due formati, può essere inviata l’immagine negli header ma non è possibile visualizzarla. Per farlo si possono installare Mneny (che supporta solo le X-Face) oppure Message Faces (che supporta molti più formati fra i quali Face e a cui dedicherò un post più avanti).

Quale dei bdue formati è preferibile scegliere ?
Per una questione di compatibilità con altri newsreader o programmi di posta abilitati alla loro visualizzazione, nonchè per la dimensione ridotta è consigliato usare una X-Face.

Vediamo quindi come creare una X-Face e successivamente come dire a TB di inserirla negli header. I link ai strumenti citati sono riportati alla fine di questo post.

Trasformare un’immagine in Face/X-Face

Inanzitutto per ottenere una buona X-Face è preferibile scegliere un’immagine con pochi colori e con contrasti abbastanza netti. Io sono partito dal logo di Foxkeh. che è una GIF 160×160 di 6024 bytes. Primo passo ridurla di dimensione e trasformarla in PNG. Per farlo ho usato IrfanView (Image -> Resize/Resample) e ridotta ad una 48×48. Dopo averla salvata in PNG la dimensione era di circa 3000 bytes, ancora troppo grande.

Bene sempre usando IrfanView ho ridotto la gamma di colori usata (Image -> Decrease color deepth): passando a 16 colori l’immagine diventava di circa 1400 bytes, riducendo a soli due colori la dimensione diventa di circa 200 bytes. Nel caso specifico per ottenere una Face (comunque sconsigliata) colorata da usare come avatar bisogna ridurre le dimensioni dell’immagine stessa a 20×20, riducendo la gamma dei colori al solo bianco e nero si perde il vantaggio di usare una Face.

Ora per ottenere la stringa di codifica della nostra immagine basta utilizzare: Online X-face Converter.

NOTA: togliere qualsiasi carattere di nuova riga dal codice della X-Face, la stringa in cui è codificata l’immagine non deve contenere new line.

bene ora vediamo come fare per dire a TB di inviare l’X-Face nelle intestazioni, per la Face si può fare direttamente dalle Opzioni dell’estensione Message Faces (però ho detto che le Face sono deprecate).

Inviare l’X-Face

Bene a questo punto si capisce l’utilità del post precedente :-) . Da editor di configurazione si possono inserire queste due nuove chiavi (ovviamente se state già usando qualche header personalizzato dovete modificare “mail.identity.<id>.headers” separando con la virgola il nuovo header “xface”):

Chiave: mail.identity.<id>.header.xface
Valore: la stringa restituita da Online X-face Converter privata dei new line

Chiave: mail.identity.<id>.headers
Valore: xface

dove per capire cosa mettere al posto di <id> si legga il post appena più sotto (l’ho detto che sarebbe tornato utile :-) ).

Se invece si vuole fare la stessa cosa con l’user.js bisogna inanzitutto modificare la stringa restituitaci da Online X-face Converter assicurandosi di codificare correttamente i caratteri \ e (si veda post precedente). Consiglio l’uso di Crimson Editor o Notepad++ per creare il file user.js che permettono di sostituire rapidamente i caratteri “\ e “.

Ora a titolo di esempio vi metto cosa ho inserito nell’user.js per abilitare l’X-Face sul mio indirizzo email principale, potete provarlo se siete curiosi, ma vi invito a crearvi un vostro X-Face personalizzato :-P . Ah per vederlo dovete avere installata una fra Mneny o Message Faces (o fare CTRL-U e vedrete solo il testo puro e semplice :-P ).

user_pref("mail.identity.id1.header.xface", "X-Face: lWUnh|5;vAuUvxM.P+'QM2fiA%}#&_/y{:\\-]5y=yrjA6,X9[jrUm*L/4AEU.gn%m&]qw:aS1Ic%\\{y6t2)n/");
user_pref("mail.identity.id1.headers", "xface");

Ed ecco come appare l’X-Face usando Message Faces (con Mneny è leggermente spostata più in basso):

Come Thunderbird +Message Faces visualizza l'X-Face

Strumenti utilizzati:
Irfanview,
mnenhy,
Message Faces,
Online X-Face Converter,
Crimson Editor / Notepad++.

Ringraziamenti questo post è un riassunto di questa discussione tenuta su it-alt.comp.software.mozilla e ci tengo a ringraziare tutti coloro che vi hanno partecipato: Slartibartfast, Macchia, Bubba Bryant e Willy.

Inviare un header personalizzato con Mozilla Thunderbird

Questo post mi serve per uno successivo che farò e che chiarirà l’utilità di usare degli header personalizzati nelle mail, per il momento potrebbe sembrare un’inutile masturbazione mentale , nell’esempio fatto in questo post, solo X-No-Archive è sensato, gli altri sono completamente inventati. Prima una premessa su cosa si trova cercando con Google a riguardo.

Per quanto riguarda l’invio di header personalizzati con Tb/Seamonkey Mail, dalla home page di Mnenhy si viene rimandati al bug 61520, commento #16, il codice proposto però non funziona con l’ultima versione di Thunderbird, dopo qualche tentativo sono riuscito a capirne la causa, la riga che in Bugzilla viene messa all’inizio va spostata come ultima :-S. Il codice (funzionante) è il seguente:

user_pref("mail.identity.<id>.header.header1", "X-No-Archive: true");
user_pref("mail.identity.<id>.header.header2", "James-Was-Here: maybe");
user_pref("mail.identity.<id>.header.header3", "X-Taming-The-Lizard-Since:1995");
user_pref("mail.identity.<id>.headers", "header1,header2,header3");

dove: al posto di header1, header2, header3 si può scegliere qualunque altro nome significativo per l’header che andremo ad inserire, e <id> è l’identificativo del nostro account: id1, id2, id5 e così via. Come fare per capire qual’è l’identificativo che TB associa ad un determinato account ?

In teoria se non sono stati creati e cancellati troppi account l’identificativo dovrebbe coincidere con l’ordine di apparizione dell’account in Strumenti -> Impostazioni account, (id1 per il primo account, id2 per il secondo e così via) nel caso però siano stati cancellati account potrebbe anche essere leggermente diverso.

Per assicurarsi di usare l’ID giusto, accedere all’editor di configurazione avanzata e inserire nel campo di filtraggio: useremai, sotto la colonna “Valore” saranno visibili gli indirizzi email dei nostri account e nella colonna “Nome Preferenza” è possibile risalire all’ID ad essi associato. Perfetto, ora che abbiamo trovato l’ID associato al nostro account possiamo modificare il codice in modo che abbia senso e si spera funzioni .

Vediamo come inserire i tre header proposti nell’esempio su bugzilla, sia sfruttando l’editor di configurazione avanzata, sia utilizzando il file user.js. Visto che l’header X-No-Archive ha un suo significato utilizzo “xnoarchive” al posto del generico “header1″ per identificarlo.

Usare l’editor di configurazione avanzata

Accediamo all’editor di configurazione avanzata: Strumenti -> Opzioni -> Avanzate -> Editor di configurazione, e creiamo le seguenti nuove chiavi, associando i giusti valori, cliccando col tasto destro del mouse e scegliendo Nuova -> Stringa:

Chiave: mail.identity.id1.header.xnoarchive
Valore: X-No-Archive: true

Chiave: mail.identity.id1.header.header2
Valore: James-Was-Here: maybe

Chiave: mail.identity.id1.header.header3
Valore: X-Taming-The-Lizard-Since:1995

Chiave: mail.identity.id1.headers
Valore: xnoarchive,header2,header3

e abbiamo finito.
Usare il file user.js

Il file user.js è un semplice file di testo che sovvrascrive le preferenze del file prefs.js e che va creato nella cartella del Profilo. Per ottenere lo stesso risultato spiegato al passo precedente, inserire le seguenti righe di codice nel file user.js:

user_pref("mail.identity.id1.header.xnoarchive", "X-No-Archive[/url]: true");
user_pref("mail.identity.id1.header.header2", "James-Was-Here: maybe");
user_pref("mail.identity.id1.header.header3", "X-Taming-The-Lizard-Since:1995");
user_pref("mail.identity.id1.headers", "xnoarchive,header2,header3");

NOTA: se TB è aperto mentre si modifica il file user.js si potrebbero avere danni irreparabili .

Quando si va ad inserire qualcosa nel file user.js, bisogna tenere conto delle seguenti regole sintattiche:

  • il carattere ” all’interno di una stringa va sostituito con il carattere \”
  • il carattere \ all’interno di una stringa va sostituito con \\
  • il new line diventa \n

Stasera o domani spiego come fare ad inserire un X-Face (un avatar per i messaggi di posta o per i newsgroup) e forse quanto scritto qui avrà un senso .

NOTA: non è necessaria nessuna estensione per inviare un header personalizzato, se però si vuole migliorare la loro visualizzazione è consigliata l’installazione dell’ottima Mneny by Karsten “Mnyromyr” Düsterloh

Impedire a Thunderbird di modificare la visualizzazione ad albero delle discussioni quando si riordina

Questo trucchetto postato su Lifehacker è veramente degno di nota :-) . Thunderbird ha un fastidioso comportamento quando si clicca nella linguettina per cambiare l'ordine con cui visualizzare i messaggi, difatti se si clicca sulla linguettina oltre a cambiare l'ordine dei messaggi si scombina la visualizzazione ad albero delle discussioni.

Per risolvere questo inconveniente, andare nell'editor di configurazione avanzata: Strumenti -> Opzioni -> Avanzate -> Editor di configurazione, e cercare questa preferenza:

mailnews.thread_pane_column_unthreads

quindi cliccarci sopra due volte per portarla a false. Riavviare e il problema non dovrebbe più ripresentarsi.

Ora mi piacerebbe sapere quante persone preferiscono che questa preferenza sia a true; può al limite lasciare indifferenti, ma credo che la maggioranza preferisca disabilitarla :-P .

Fonte: Lifehacker

Altri post che potrebbero interessare:
Shortcut per passare dalla visualizzazione semplice a quella ad albero,
Shortcut per accedere velocemente all'editor di configurazione avanzata

Shortcut indispensabili mancanti in Thunderbird

AGGIORNAMENTO: aggiornato l’articolo per adeguarsi alle – troppe – modifiche fatte in Thunderbird 3.0. L’unico shortcut non verificato e che potrebbe non funzionare è quello per spostare un messaggio in una determinata cartella, consiglio l’utilizzo di Nostalgy che permette di configurare questi shortcut in maniera molto semplice. Consiglio inoltre di installare l’ultima versione di Nostalgy disponibile sul sito dell’autore e non quella che trovate su AMO.
Raccolgo in un unico post i codici necessari per implementare alcune scorciatoie da tastiera (via keyconfig) in Mozilla Thunderbird, lo faccio perché oggi ho creato un nuovo profilo per la gestione di un account hotmail che prima gestivo solo con Seamonkey, e mi sono accorto che mi fa comodo avere tutti i codici in un unico post. Per capire meglio come funzionano lascio il link ai post originali.

Visualizzazione semplice/ad albero delle discussioni

Per Thunderbird 3.0, utilizzare:

if (gFolderDisplay.view.showThreaded) MsgSortUnthreaded();
else MsgSortThreaded();

per le versioni precedenti (e probabilmente anche Seamonkey), utilizzare:

var viewFlags = GetDBView().viewFlags;
if(viewFlags & nsMsgViewFlagsType.kThreadedDisplay
&& !(viewFlags & nsMsgViewFlagsType.kGroupBySort))
MsgSortUnthreaded();
else
MsgSortThreaded();

Ottenere il folderURI di una cartella

prompt("", gMsgFolderSelected.Value);

Scorciatoia per spostare un messaggio in una cartella predefinita

MsgMoveMessage ('folderURI');

Scorciatoia per accedere all’editor di configurazione avanzata

openDialog('chrome://global/content/config.xul', '_blank', 'resizable');

Compatta cartelle

goDoCommand('cmd_compactFolder');

Esegui filtri su cartelle locali

goDoCommand('cmd_applyFilters');

Visualizzazione come testo semplice/HTML

if(pref.getBoolPref('mailnews.display.prefer_plaintext')) MsgBodyAllowHTML();
else
MsgBodyAsPlaintext();

Thunderbird e le etichette (seconda parte)

Avevo già parlato delle etichette di Thunderbird e di come creare un filtro per i messaggi con una determinata etichetta, vediamo ora come salvare le nuove etichette create e come personalizzare la colorazione dei messaggi con una determinata etichetta.

Backup delle etichette

Le informazioni relative alle nuove etichette, o le modifiche a quelle di default, vengono salvate nel file prefs.js, che non può essere trasportato su altri profili, sarà dunque necessario trovare le riche al suo interno che definiscono le nuove etichhette e ricopiarle nel file user.js, che può invece essere trasportato senza problemi su qualunque Profilo.

Le preferenze relative alle etichette sono simili a queste:


user_pref("mailnews.tags.blog.color", "#000000");
user_pref("mailnews.tags.blog.tag", "blog");

basterà quindi trovarle e riportarle dal file prefs.js al file user.js (che va creato nella cartella del Profilo). La preferenza relativa al colore può non essere presente, ma sarebbe buona cosa (si veda poi) associare ad ogni nuova etichetta un colore diverso da tutte le altre. L'ordine con cui vengono ricopiate le linee di codice che definiscono le etichette influenzerà il loro ordine (e quindi anche l'accesskey numerico per taggare i messaggi).

NOTA: se mentre si fanno le modifiche ai file TB è attivo si potrebbero causare danni irreparabili, ergo, chiudetelo !
NOTA 2: non salvate in nessun caso il file prefs.js, le modifiche a questo file sono delicate e largamente sconsigliate.

Colorare i messaggi taggati

Per colorare i messaggi taggati in modo più esplicito iniziamo a pensare al colore definito sopra come ad un codice di riferimento all'etichetta, ad esempio questi sono i codici assegnati alle etichette di default:

  • lc-FF0000 -> Importante;
  • lc-FF9900 -> Lavoro;
  • lc-009900 -> Personale;
  • lc-3333FF -> Da fare;
  • lc-99339 -> Più tardi.

Quindi supponiamo ora di avere creato una nuova etichetta di nome "blog" e di avergli assegnato il colore nero (#000000), per modificare i colori di questa etichetta dovremmo usare lc-000000. Per modificare la visualizzazione dei messaggi taggati con etichetta "blog" inserire il seguente codice nel file userChrome.css che si trova (e se non c'è lo si crea) nella sottocartella chrome del Profilo:

/* Colore dello sfondo di un messaggio taggato quando non è selezionato */
treechildren::-moz-tree-cell(lc-000000)
{
	background-color: orange!important;
}
/* Definisce il colore del testo di un messaggio taggato quando non è selezionato */
treechildren::-moz-tree-cell-text(lc-000000) {
	 color: white !important;
}
/* Definisce il colore del testo quando il messaggio taggato è selezionato */
treechildren::-moz-tree-cell(lc-000000, selected) {
	background-color: yellow !important;
}
/* Definisce il colore dello sfondo quando un messaggio taggato viene selezionato */
treechildren::-moz-tree-cell-text(lc-000000, selected) {
	color: black !important;
}

Messaggi taggati con colori diversi

I colori sono stati scelti appositamente per far capire il funzionamento ma non sono probabilmente una buona scelta, se volete uno stile già pronto all'uso per le etichette di default usate questo, e comunque tenete presente che il tema in uso potrebbe influenzare la bontà del codice.

Se non si vuole ricorrere all'editing manuale del file userChrome.css si può utilizzare Stylish e fare tutto dall'interfaccia grafica di TB (bisogna riavviare perché le modifiche abbiano effetto), come suggerito qui.

Questo codice va ripetuto per tutte le etichette per cui si vuole cambiare il tipo di visualizzazione, ad esempio per i messaggi "Importanti" ripetere il codice sostituendo lc-000000 con lc-FF0000. Sinceramente non ho capito come si comporta quando un messaggio è taggato con più etichette, ma credo utilizzi la rappresentazione usata per l'etichetta di livello superiore.

Per non perdere le estensioni….

Per chi volesse provare la versione 2.0 di Thunderbird senza perdere le preziose estensioni installate (non è come per Firefox che se ne può fare anche a meno) provare nel seguente modo (prima di fare l'aggiornamento e previo backup della cartella del Profilo).
Andare nella cartella del Profilo e nel caso non esista creare un file di testo di nome user.js con la seguente linea di codice:

user_pref("extensions.checkCompatibility",false);

Quindi procedere all'aggiornamento. Mi raccomando usate un editor di testo, no Word, no Writer, no Wordpad, se non avete di meglio Notepad fa schifo ma in questo caso può andar bene. Se poi volete un buon editor di testo potete scaricare Crimson Editor (in inglese) o Notepad++ (disponibile anche in italiano).

NOTA: questo non è un modo per far funzionare l'estensione ma soltanto un trucco per impedire che TB la disattivi quando esegue il controllo compatibilità, ergo, potreste avere malfunzionamenti, nel qualcaso dovrete disattivare l'estensione manualmente e aspettare pazientemente l'aggiornamento da parte dello sviluppatore.

NOTA 2: controllate che il tema in uso sia veramente compatibile con la 2.0 perché la forzatura dei temi non compatibili causa parecchi problemi.

AGGIORNAMENTO: queste sono quelle che uso io (senza riscontrare particolari problemi, alcune sono compatibili con TB2.0 altre le ho forzate col trucco descritto sopra: