Intégration FireFox - Thunderbird
Lorsque l'on utilise ces deux outils sous Linux, il est très intéressant de pouvoir les coupler, pour que les url de type mailto: lance Thunderbird à partir de FireFox, et que les url de type http:// lance Firefox à partir de Thunderbird.
Ce genre d'intégration est immédiate dans le cas d'utilisation de
Mozilla puisque les deux outils (navigation internet et messagerie)
sont intégrés dans le même logiciel.
De Firefox vers thunderbird
Pour que l'on puisse appeler un programme sur une url de type mailto: (appelée aussi protocole), il faut utiliser une extension.
Dans notre cas, mozex est celle qu'il nous fait. On peut la trouver sur http://extensionroom.mozdev.org/more-info/mozex.
Le téléchargement permet de réaliser l'installatio automatiquement, dans le répertoire de configuration de l'utilisateur ou dans le répertoire d'installation de FireFox s'il est lancé sous l'utilisateur root.
Configuration
Pour que l'extension soit prise en compte, il faut relancer FireFox.
- Ensuite, allez dans Tools/Options, et sélectionnez Extensions.
- Là une liste des différentes extensions installées apparaient. Sélectionner mozex et cliquez sur option.
- Une fenêtre sur la configuration de l'extension s'ouvre.
- Sélectionner "Intercept mailto: clicks", et saisir le nom d'un script dans Mailer (ex: /usr/local/bin/firefox2thunderbird %a %s).
- Valider la configuration.
Le script firefox2thunderbird
Grâce à l'extension, à chaque clic sur une url mailto: le script firefox2thunderbird sera appelé.
Ne reste plus qu'à écrire ce script pour lancer Thunderbird.
Comme toutes les applications depuis Netscape, Thunderbird peut être gérée à distance grâce à la commande remote.
C'est ce que l'on va utiliser dans le script pour ouvrir la fenêtre de composition d'un message.
#!/bin/bash
Vous devez modifier la valeur de la variable MOZILLA_FIVE_HOME en fonction de votre installation.
export MOZILLA_FIVE_HOME=/usr/local/thunderbird
$MOZILLA_FIVE_HOME/thunderbird -remote "mailto($1?subject=$2)" > /dev/null 2>&1
if [ "$?" -ne "0" ]; then
$MOZILLA_FIVE_HOME/thunderbird -P default -compose "mailto:$1?subject=$2"
fi
Dans le cas où thunderbird est lancé, on lui dit de prendre en compte la commande mailto() qui va ouvrir la fenêtre de composition.
Dasn l'autre cas, on lance thunderbird avec uniquement la fenêtre de composition de message grâce à l'option -compose.
De Thunderbird vers FireFox
Dans le cas de Thunderbird, on n'a pas besoin d'utiliser d'extension pour prendre en compte les url de type http:, il sait le faire directement. Par contre, rien n'est prévu dans l'interface de configuration pour le prendre en compte (du moins dans la version 0.5 que j'utilise).
Configuration
On va donc modifier directement le fichier de configuration de Thunderbird.
Celui se trouve dans $HOME/.thunderbird/default/xxxxx.slt (xxxx étant le numéro généré) et se nomme prefs.js.
On va ajouter les lignes suivantes :
user_pref("network.protocol-handler.app.http","/path/thunderbird2firefox");
user_pref("network.protocol-handler.app.https","/path/thunderbird2firefox");
Le script
Comme dans le cas inverse, on va utiliser un script pour gérer directement l'appel de Firefox : lancement de l'application si elle n'est pas lancée, ou chargement de la nouvelle URL dans un onglet sinon.
#!/bin/sh
La première ligne permet d'ouvrir une nouvelle URL dans un onglet.
firefox -remote "openurl($1, new-tab)" > /dev/null 2>&1
if [ "$?" -ne "0" ]; then
firefox "$1"
fi
On teste ensuite si cela a fonctionné, si ce n'est pas le cas (FireFox non lancé), on le lance avec en paramètre l'URL.
On aurait pu utiliser la commande ping()
pour tester la présence de Firefox, mais la méthode proposée ci-dessus
est plus rapide car s'il est lancé, on ne fait pas le ping...
Conclusion
Grâce à ces quelques manipulations, on arrive à avoir quelques choses de très utilisables sans passer par la case Mozilla
On peut aussi interfacer d'autre outil, comme Firefox et mutt (dans les 2 sens) : tout peut être envisager
Commentaires
Afficher les commentaires en Vue non groupée | Vue groupée