Bei'm Einrichten von
enigmail für
Thunderbird bin ich auf die Idee gekommen, dass es nett wäre eventuell in Schlüsseln gespeicherte
PhotoIDs per
growl anzuzeigen, statt mit der MacOSX Vorschau.
Dazu muss man zunächst in der ~/.gnupg/gpg.conf den Abschnitt lokalisieren, in dem der photo-viewer konfiguriert wird. Die erste wichitge Option dazu ist:
verify-options show-photos
hier muss die Raute entfernt werden, um den Eintrag zu aktivieren. Anschließend fügt man in etwa folgendes ein:
photo-viewer "/Users//Documents/arbeitsablaeufe/enigmail.applescript %i %k"
Diese Zeile verweist auf das Programm, dass eigentlich die Photos anzeigen soll. Aber hier kann man natürlich auch ein Shell-Script angeben, so wie ich das gemacht habe. Die beiden Parameter %i und %k sind in der Datei erklärt; %i gibt den Pfad zum temporär generierten Bild an und %k die kurze ID, des Schlüssels. Eigentlich bräuchten wir nur den Parameter %i, um mit Hilfe von growl ein Bild anzuzeigen. Um aber auch einen sinnvollen Kommentar in die Benachrichtigung zu schreiben, benötigen wir auch die Schlüssel-ID.
Im referenzierten Script passiert nun folgendes. Zunächst wird der zum Schlüssel gehörende Name aus dem Listing extrahiert (Zeile 2). Anschließend verwende ich eine Möglichkeit mehrzeilige Aufrufe an externe Programme weiterzugeben (
hier gefunden):
osascript <<EOF
Hiermit rufe ich osascript auf, womit ich applescript Befehle ausführen kann. Der Aufruf an osascript endet, mit "EOF". Hierfür hätte auch jeder andere
Marker verwendet werden können. Es muss sich lediglich um eine Zeichenabfolge handeln, die innerhalb der Anweisung nicht vorkommt. Wie ich per Applescript eine Anwendung bei growl registriere und Nachrichten dorthin verschicke habe ich
hier gefunden.
Das dort gezeigte Beispielscript habe ich innerhalb von
osascript <<EOF
.
.
.
EOF
Eingefügt und etwas angepasst (hauptsächlich Bezeichnungen):
#!/bin/sh
NAME=`/usr/local/bin/gpg --list-keys \`echo $PARAM\`|awk 'NR == 2 END {print a[NR]}'|awk '{print $2" "$3}'`
osascript <<EOF
if not "$2" = "" then
tell application "GrowlHelperApp"
-- Make a list of all the notification types
-- that this script will ever send:
set the allNotificationsList to Â
{"EnigMail Notification"}
-- Make a list of the notifications
-- that will be enabled by default.
-- Those not enabled by default can be enabled later
-- in the 'Applications' tab of the growl prefpane.
set the enabledNotificationsList to Â
{"EnigMail Notification"}
-- Register our script with growl.
-- You can optionally (as here) set a default icon
-- for this script's notifications.
register as application Â
"Thunderbird EnigMail Picture" all notifications allNotificationsList Â
default notifications enabledNotificationsList Â
icon of application "Thunderbird"
-- Send a Notification...
notify with name Â
"EnigMail Notification" title Â
"$NAME" description Â
"OpenPGP Signature correct." application name Â
"Thunderbird EnigMail Picture" image from location Â
"file:///$1"
end tell
end if
EOF
Mit diesen Einstellungen wird mir eine growl-Benachrichtigung angezeigt, sobald ich eine Mail öffne, die eine Signatur mit PhotoID enthält. Das Photo wird natürlich zusammen mit dem Namen des Unterschreibenden in der Benachrichtigung angezeigt.
Labels: Freeware, Mac, OS X, thunderbird