Moinmoin,
* Dieter Kluenter
mir fällt auf, dass in E-Mails und News-Beiträgen immer häufiger X-Face: Einträge mit thumpnails der Absender auftreten. Weiß jemand, wie diese X-Face: Einträge bei den unterschiedlichen MUA's und News-Clients hergestellt werden?
Fuer mutt und slrn brauchte ich dafuer das Tool compface/uncompface
(compress and expand 48x48x1 face image files), und weil compface nicht
richtig lief ausserdem das Perlskript xbm2xface. Auf xbm2xface bin ich
allerdings erst durch die XEmacs-FAQ gekommen.
Zunaechst stellt man eine Grafik her, die als Basis des Xface dient.
Diese Grafik verkleinert man auf 48x48 Pixel und konvertiert sie in das
XBM-Format. Mit Gimp hat das bei mir nie funktioniert, und deshalb habe
ich die Datei mit ImageMagick ins gewuenschte Format uebertragen
(einfach als .xbm abgespeichert)
Im naechsten Schritt verwandelt das Script xbm2xface die XBM-Datei in
den bekannten ASCII-String samt eines "X-Face: " davor. Dieser String
landet in der gewaehlten Ausgabedatei:
$ xbm2xface datei.xbm > .xface
Meistens erstreckt sich der ASCII-String ueber zwei bis vier Zeilen, die
man mit dem Editor zu einer Zeile macht. Fertig ist der X-Face-Header,
er muss jetzt nur noch in den Kopf der Mail oder des Postings eingefuegt
werden. Mit gnus soll es (ungetestet) so funktionieren:
,----[ .gnus ]
| ;:* X-face einfuegen
| (defun xface-insert ()
| (with-temp-buffer nil
| (insert-file-contents "~/.xface")
| (buffer-string)))
|
| (require 'message)
| (setq message-required-news-headers
| (nconc message-required-news-headers
| ...
| (list '(X-Face . xface-insert))
| ))
|
| (setq message-required-mail-headers
| (nconc message-required-mail-headers
| (list '(X-Face . xface-insert))
| ))
`----
In der muttrc kann man den X-Face-Header mit "my-hdr" definieren und bei
slrn hat sich bei mir ein Eintrag in die ~.vimrc angeboten, weil ich
keine Lust hatte, in der .slrnrc alle moeglichen Zeichen des
X-Face-Headers zu maskieren, damit slrn die Zeile richtig auswertet:
,----[ .vimrc ]-
|
| map ,mt 1G}-1:r .xface<CR>
| if has("autocmd")
| autocmd BufRead *article*,*letter*,*followup* :normal ,mt
| endif
|
`----
Etwas schwieriger ist das Auswerten des X-Face-Headers. Auch hier ist
zumeist compface oder ein aehnliches Tool von Noeten. Beim Newsreader
slrn traegt diese Aufgabe ausserdem das Programm slrnface samt einer
Makrodatei slrmface.sl, dass die xbm-Dateien im xterm anzeigt.
Fuer mutt habe ich mir ein kleines Script gebosselt, dass den
X-Face-Header auswertert und als xbm anzeigt:
,----[ grabxface ]-
| #!/bin/sh
| #
| ##### ~/.mutt/grabxface #####
| #---------------------------------------------------------------------
| # A little script to view X-Face-Header with mutt
| #---------------------------------------------------------------------
| # At first you need the tools compface (to compress and expand 48x48x1 face
| # image files) an xv (image display for the X Window System). In the next
| # step edit your muttrc an write a new keymap:
| #
| # macro pager \ex "|~/.mutt/grabxface\n"
| #
| # Than move this file to the right place. ;-)
| # Now its working when you press the keys