Mail und News mit (X)Emacs
Postkasten
Gnus, das Standardwerkzeug für Mails und News im Emacs, bietet allen Komfort der Welt. Wer es jedoch effektiv nutzen will, muss es konfigurieren können.
Gnus, das Standardwerkzeug für Mails und News im Emacs, bietet allen Komfort der Welt. Wer es jedoch effektiv nutzen will, muss es konfigurieren können.
Wer den Editor Emacs täglich benutzt, hat die Möglichkeit, beinahe alle am Computer anfallende Arbeit damit zu erledigen. Auch der elektronische Schriftverkehr ist damit überaus komfortabel zu bewältigen, vorausgesetzt das Gnus-Paket ist richtig konfiguriert. Allerdings verlässt, wer sich auf die Emacs-Familie (damit sind sowohl Emacs als auch XEmacs gemeint) einlässt, in gewisser Weise die Unix-Welt. Statt vieler kleiner Tools begibt man sich in ein Framework mit dem Basiselement Emacs Lisp.
Gnus 5.8.8 besteht aus etwa 1600 Funktionen und Makros sowie rund 800 Emacs-Lisp-Variablen, womit sich auch die ausgefallensten Anwendungswünsche für die Behandlung von Mail und News befriedigen lassen. Doch auch mit der Kenntnis nur einiger wichtiger Elemente kommt man schon sehr weit.
Bei den Emacs- und XEmacs-Paketen der gebräuchlichen Linux-Distributionen ist Gnus fast immer dabei und wird einfach mitinstalliert. Die neueste Version findet man in Form eines komprimierten Tar-Balls auf [http://www.gnus.org/]. XEmacs-Benutzer können auch das eingebaute Paket-Verwaltungssystem des Editors benutzen, um das Paket zu aktualisieren.
Das Auspacken erledigt man mit »tar xzf act-gnus-version.tar.gz«; danach ist es vernünftig, einen Blick ins »README« zu werfen. Wechseln Sie dann ins ausgepackte Gnus-Verzeichnis und geben »./configure; make« für Emacs oder »./configure --with-xemacs; make EMACS =xemacs« für den XEmacs ein.
Damit die neuen ».el«- und ».elc«-Dateien gefunden werden, muss die Variable »load-path« korrekt gesetzt sein. Der beste Weg, neue Pfade aufzunehmen, führt über den Eintrag
(add-to-list 'load-path "pfad-zum-gnus-U subdirectory/lisp")
in der Datei »~/.emacs« oder einem darin inkludierten File: Die Funktion »add-to-list« nimmt ein neues Element in eine Liste namens »load-path« auf. Dabei wird sichergestellt, dass dieses neue Element nur einmal vorkommt.
Alternativ lassen sich diese wie auch andere Variablen über die Option »customize-variable« anpassen. Die in diesem Beitrag benutzte Schreibweise für Tastenkombinationen orientiert sich aus Gründen der besseren Wiedererkennung an der Emacs-eigenen Notation.
Geben Sie im (X)Emacs »M-x customize-variable [Return]« ein (M steht für Meta und entspricht normalerweise der linken [Alt]-Taste, alternativ [Esc]). Die [Tab]-Taste liefert eine Liste aller möglichen Variablen und vervollständigt Auswahlen wie etwa »load-p« zum gewünschten Variablennamen oder zeigt bei nicht eindeutigen Angaben Alternativen auf. Im passenden Emacs-Buffer kann der Inhalt der Variablen nun um weitere Pfadangaben ergänzt werden (Abbildung 1).
Emacs-Pakete sind in Info-Dateien dokumentiert. Damit diese Dateien zu finden sind, ist die Umgebungsvariable »INFOPATH« oder die Emacs-Lisp-Variable »Info-directory-list« anzupassen. Für Letzteres ist der »~/.emacs«-Eintrag
(add-to-list 'Info-directory-list "pfad- U zum-gnus-subdirectory/texi")
zuständig.
Im »texi«-Unterverzeichnis befindet sich auch die Referenzkarte »gnusref.text« für die Gnus-Befehle. Sie lässt sich mit »texi2dvi« oder »texi2html« in ein mit »dvips« beziehungsweise einem Web-Browser leichter druckbares Format konvertieren.
Gnus, das Mail und News transparent behandelt, auch wenn sie aus verschiedenen Quellen kommen, passen Sie in »~/.gnus« an. Bevor Sie das erste Mal Nachrichten herunterladen, sollten Sie darin die für Sie beste Speicherungsmethode aussuchen. Denkbar sind folgende Alternativen:
Sie müssen sich nicht auf eine Methode beschränken. Für die dritte Alternative sorgt folgender Eintrag in »~/.gnus«:
(add-to-list 'gnus-secondary-select-methods
'((nnml "")))
Die Beschreibung der »gnus-secondary-select-methods«-Variablen erhalten Sie, indem Sie »C-h v gnus-secondary-select-methods« (C steht in der Emacs-Schreibweise für [Strg]) eingeben.
Nun braucht Gnus noch die Information, woher er Newsgruppen bezieht und auf welche Weise der Transport erfolgen soll. Passen Sie dazu die Variable »gnus-select-method« in »~/.gnus« an; bei einem lokalen Newsserver (etwa Leafnode) folgendermaßen:
(setq gnus-select-method (list 'nnspool ""))
Besteht stattdessen eine direkte Verbindung zu einem Newsserver, lautet der Eintrag:
(setq gnus-select-method (list 'nntp "ip- adresse.des.newsservers"))
Mehrere Newsfeeds konfigurieren Sie so:
(setq gnus-select-method '((nntp "erster. newsfeed")
(nntp "zweiter.newsfeed)))
Listing 1 zeigt, wie Sie festlegen, dass Mails sowohl lokal per SMTP ausgeliefert als auch per POP von einem Provider geholt werden.
»mail-sources« ist dabei als eine Liste von Listen angelegt, wobei jede Teilliste in Klammern eine Mail-Quelle (hier »file« und »pop«) mit zugehörigen Optionen beschreibt. Für die POP-Auslieferung kommt eine Emacs-Lisp-Lösung (»pop3.el«) zum Einsatz.
Beachten Sie, dass das Login-Passwort im Klartext in der ».gnus«-Datei steht. Sollten Sie nicht Herr über Ihre Maschine sein, geben Sie besser kein Passwort an. Emacs wird es dann bei jedem Mail-Download abfragen.
Eine Mail-Software ohne die Möglichkeit, Mails zu filtern und in verschiede-ne Ordner einzuordnen, dürfte wenig brauchbar sein. In Gnus wird der Ordnungsmechanismus mit der Variablen »nnmail-split-methods« angepasst. Das jeweils erste Element einer Subliste gibt an, welcher Gruppe eine Mail zugeschlagen wird, auf die das zweite Element der Subliste, ein regulärer Ausdruck, zutrifft.
Alle Rezensionen aus dem Linux-Magazin
Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...