SelfLinux Internet E-Mail Clients Mutt Abschnitt 2 | SelfLinux-0.13.0

| Mutt | Autor Formatierung GFDL

#### 2 Grundkonfiguration

Startet man Mutt direkt nach der Installation, so wird eine Voreinstellungskonfiguration verwendet. Diese paßt vermutlich nicht zu den persönlichen Bedürfnissen, daher sind wahrscheinlich etliche Benutzer beim ersten Start von Mutt verwirrt oder gar abgeschreckt.

Dieser Abschnitt beschreibt einige elementare Konfigurationsoptionen. In diesem Abschnitt erstellen wir eine Grundkonfigurationsdatei mit den wichtigsten Einstellungen, um mit Mutt loslegen zu können.

#### 2.1 **Einleitung**

Mutt wird über eine Konfigurationsdatei konfiguriert. Zur Konfiguration passt man in der Regel die Datei ~/.muttrc an seine Bedürfnisse an. Auf Mehrbenutzersystemen kann es zusätzlich eine systemweite muttrc geben, die etliche lokale Grundeinstellungen vorgibt.

In der Konfigurationsdatei trägt man eine Reihe von sogenannten Kommandos ein. Meistens schreibt man eines je Zeile, mehrere kann man aber auch durch Semikolon trennen.

Kommandodefinitionen sind sehr mächtig, man kann sogar andere Programme aufrufen und so beliebige Dynamik in die Konfiguration stecken. Man kann auch andere Konfigurationsdateien je nach bestimmten Ereignissen "nachladen", beispielsweise, um spezial-Einstellungen für einzelne Folder (das sind meist Dateien, in denen die ganzen Mails liegen) zu aktivieren.

Es gibt das Kommando set, das eine Mutt-Variable auf einen Wert setzt. Das schreibt man dann so:

set variable=wert

Manche Variablen setzt man aber einfach nur (zum Beispile set fast_reply). Mit unset kann man diese ausschalten. Dies entspricht den Werten "ja" (gesetzt) und "nein" (nicht gesetzt).

Hier findet man viele Konzepte, die man von Shells her kennt. In den folgenden Abschnitten folgen noch viele Beispiele dazu. Kommentare stehen hinter dem Rautezeichen #.

#### 2.2 Einkommende Mail finden

In den meisten Fällen muß man einige Basisoptionen auf jeden Fall setzen. Zunächst muß Mutt natürlich die eingegangenen Mails finden. Oft werden einkommende Mails in einem sogenannten spoolfile nach $MAIL abgelegt, bei Verwendung von sendmail ist das üblicherweise eine Datei in /var/mail oder /var/spool/mail, die so heißt, wie der Benutzername. Dies ist bei Mutt Voreinstellung. Man kann diese Einstellung mit dem set Kommando ändern, indem man ein anderes spoolfile setzt. Das Kommando wäre beispielsweise:

~/.muttrc

    set spoolfile=/var/mail/steffen

Diese Zeile schreibt man einfach so in die Datei ~/.muttrc. Die Möglichkeiten der Konfiguration sind sehr mächtig. So kann man hier auch auf Shellvariablen zugreifen:

~/.muttrc

    set spoolfile=$MAIL

oder sogar Kommandosubsitution verwenden:

~/.muttrc

    set spoolfile=/var/mail/`whoami`

#### 2.3 E-Mail Informationen einstellen

Wenn man Mails verschickt, so sollten diese im Absender den richtigen Namen des Absenders (realname) enthalten, um nicht als unhöflich zu gelten. Mutt verwendet automatisch das GCOS Feld des Benutzers, was leider oft nicht korrekt eingestellt ist. Der Administrator root kann diese Informationen für beliebige Benutzer mit dem Dienstprogramm chfn einstellen, ein Benutzer darf meistens seine eigenen Einstellungen setzen. Mutt ist jedoch nicht zwingend auf diese Einstellungen angewiesen.

Den Namen kann man beispielsweise über die Variable realname einstellen:

~/.muttrc

    set realname="Steffen Dettmer"

Mutt baut nun aus dem Realnamen, dem Benutzernamen und Namen des Hosts die Absenderadresse zusammen. Heute ist das oft nicht mehr erwünscht, da viele Dailup-Systeme Hostnamen verwenden, die im Internet gar nicht bekannt sind - würde man an ein solches System eine Antwort-Mail schicken, so könnte diese nicht ausgeliefert werden. Daher kann man mit mutt auch die komplette Absenderadresse einstellen:

~/.muttrc

    set from="\"Steffen Dettmer\" <steffen@dett.de>"
    set envelope_from=yes

Das from sollte immer auf eine erreichbare Adresse zeigen. In diesem Beispiel sieht man auch gleich, dass man Sonderzeichen, wie Anführungszeichen, mit einem Backslash escapen kann. Dies funktioniert im Prinzip wie bei einer Shell. Die Option envelope_from stellt ein, dass die from Adresse an sendmail über -f weitergereicht wird. Ob diese Option funktioniert, hängt natürlich von dem verwendeten sendmail ab.

Möchte man weitere Felder im Header einer Mail einstellen, so kann man das Kommando my_hdr verwenden. Beispielsweise kann man folgende drei Kommandos eintragen:

~/.muttrc

    my_hdr Reply-To: "Steffen Dettmer" <steffen@dett.de>
    my_hdr X-Editor: Vim http://www.vim.org/
    my_hdr X-Mailer: Mutt http://www.mutt.org/

Die setzen dann eine Reply-To Adresse (sollte man natürlich nur machen, wenn diese vom "from" abweicht). Weiterhin verraten wir der Welt meinen Lieblingseditor und welch tolles E-Mail-Programm wir gerade verwenden.

#### 2.4 Weitere Optionen

Es folgen ein paar Optionen, die wichtige persönliche Vorlieben einstellen.

Mutt fragt, ob gelesene Mails in einen extra Folder gespeichert werden soll. Wenn man dies nicht möchte, schaltet man diese Funktion einfach mit dem Kommando set move=no ab.

Möchte man Mails speichern, legt mutt diese in Foldern ab. Per Voreinstellung werden diese im Verzeichnis ~/Mail/ erzeugt. Die verwendete Variable heißt folder und kann natürlich auf einen anderen Wert gesetzt werden. Diese Variable kann bei Dateinamen kurz als + oder = geschrieben werden. Dies ist nützlich, um beispielsweise die Datei einzustellen, in der versendete Mails gespeichert werden:

~/.muttrc

    set folder=~/Mail/
    set record=+sent-mail
    set postponed=+postponed-msgs

postponed ist englisch für "aufgeschoben" oder "vertagt": Hier werden Mailentwürfe gespeichert, die man später verschicken möchte (dazu später mehr).

Große Flexiblität gewinnt man, wenn man sich die Mailheader auch vom Editor anzeigen läßt: so kann man nach Belieben Felder hinzufügen oder ändern. Normalerweise fragt mutt beim Antworten beispielsweise nach Zieladresse und Subject (Betreff). Dabei werden passende Werte aus der alten Mail übernommen. Möchte man die Felder aber lieber im Editor ändern, kann man schreiben:

~/.muttrc

    set fast_reply
    set edit_headers
    set include

Die letzte Anweisung sorgt dafür, dass mutt nicht fragt, ob zitiert werden soll, sondern dies immer automatisch macht.

Viele finden es ungewöhnlich, beim Betrachten von Mails mit der Leertaste scrollen zu müssen. Per Voreinstellung wählt Cursor-Unten und Cursor-Hoch die nächste beziehungsweise vorherige Mail aus. Das finden viele sehr verwirrend, aber natürlich kann man das ändern:

~/.muttrc

    bind pager      <up>            previous-line
    bind pager      <down>          next-line

Das Kommando bind ändert eine Tastenbelegung, hier für den Pager. Der Pager ist die Anzeige einer Mail. Man sieht, dass die Cursor-Taste Hoch (<up>) ab jetzt eine Zeile zurück und die Taste Runter (<down>) eine Zeile weiterspringt. Zum Navigieren durch die einzelnen Mails stehen jetzt im Pager noch die Tasten Rechts und Links (nächste und vorherige Mail) zur Verfügung. Die Indexansicht, in der die Nachrichten zur Auswahl angezeigt wird, verwendet weiterhin diese Tasten wie vorher.

#### 2.5 Editor Einstellungen

Setzt man keine speiziellen Editoreinstellungen, so wird automatisch der $EDITOR verwendet, wie man das von anderen Unix-Programmen gewohnt ist.

Man kann aber die Variable editor setzen, und dabei auch Optionen angeben. In diesem Abschnitt wird erklärt, wie man den Editor vim verwenden kann. Benutzer anderer Editoren müssen hier natürlich die Einstellung anpassen.

Beispielsweise möchte man sicherlich eine farbige, syntaxabhängige Darstellung, die man mit dem vim-Kommandos "set t_Co=8" und syntax on erreichen kann. Stehen diese nicht in der ~/.vimrc, so kann man diese jetzt setzen. Verwendet man beispielsweise edit_headers, so ist es störend, dass man erst einige Zeilen nach unten gehen muss, um den Anfang der eigentlichen Nachricht zu erreichen. Man kann den vim aber auch anweisen, gleich auf die erste Leerzeile zu springen. So kann man schreiben:

~/.muttrc

    set editor='vim -c "set t_Co=8" -c "syntax on" -c "/^$"'

#### 2.6 Adressbuch

Mutt ermöglicht es, E-Mail-Adressen in einer sogenannten "Aliasdatei" zu speichern. Dies ist per Voreinstellung die normale Konfigurationsdatei ~/.muttrc. Übersichtlichkeit erhält man, speichert man die Adressdaten in einer eigenen Datei, beispielsweise ~/.mutt_alias. Dies erreicht man mit den folgenden Einstellungen:

~/.muttrc

    #eigene Aliasdatei verwenden:
    set alias_file=~/.mutt_alias

    #Aliasdatei einlesen, damit die Adressen gleich bekannt sind:
    source ~/.mutt_alias

    #Namen zu Adressen über die Aliasliste suchen und anzeigen
    set reverse_alias

Die letzte Option ist sehr interessant. Hat man eine E-Mail-Adresse mit vollständigem Namen in der Aliasdatei eingetragen, so wird dieser anzeigt, auch wenn er in der E-Mail selbst nicht enthalten war. Das ist hilfreich, wenn man E-Mail von Adressen ohne Realnamen erhält, die man sich nur schwer merken kann.

#### 2.7 PGP oder GnuPG verwenden

Es gibt sehr viele Einstellungen, die das Verhalten von PGP oder GnuPG steuern. Glücklicherweise werden mit mutt sinnvolle Voreinstellungspakete mitgeliefert. Diese Einstellungen muß man nur laden. Die Einstellungen für GnuPG sind in der Datei gpg.rc zusammengefasst. Um herauszufinden, wo die Distribution diese Datei abgelegt hat, kann man das Kommando locate verwenden:

user@linux $ locate gpg.rc /usr/share/doc/packages/mutt/gpg.rc

Hier wurde die Datei also in /usr/share/doc/packages/mutt/gpg.rc abgelegt (es handelt sich in diesem Fall um eine ältere SuSE-Version). Diese Datei lädt man nun in der .muttrc:

~/.muttrc

    source /usr/share/doc/packages/mutt/gpg.rc

Der genaue Pfad wird natürlich abweichen.

#### 2.8 Farben einstellen

Für etwas Übersicht sorgen Farben. Hier gibt es vielfältige Einstellungsmöglichkeiten.

Farben stellt man mit dem Kommando color ein. Dahinter stehen mindestens drei Angaben. Die erste zusätzliche Angabe zeigt, was gefärbt werden soll (beispielsweise die Nachricht, englisch: message). Es folgt die Vorder- und dann die Hintergrundfarbe. Beispiele sind white (weiss), black (schwarz) und default (Voreinstellung). Verwendet man ein Terminalfenster mit transparentem Hintergrund oder einem Hintergrundbild, so bedeutet die Voreinstellung "durchsichtig".

Alle bisher genannten Optionen zusammen mit ein paar Farbeinstellungen bilden eine Grundkonfiguration. Der Übersichtlichkeit halber hier ein vollständiges Beispiel einer Konfiguration gegeben, um mit Mutt beginnen zu können. Kurze Erklärungen sind als Kommentare vorhanden.

~/.muttrc

    #Das spoolfile /var/mail/$USER bzw. $MAIL ist Voreinstellung:
    set spoolfile=/var/mail/$USER

    #Realnamen und Absenderadresse einstellen
    set from="\"Steffen Dettmer\" <steffen@dett.de>"
    set envelope_from=yes

    #Editor und Mailer im Header einstellen:
    my_hdr X-Editor: Vim http://www.vim.org/
    my_hdr X-Mailer: Mutt http://www.mutt.org/

    #Dorthin mit gespeicherter Mail
    set folder=~/Mail/
    #Dorthin mit verschickter Mail
    set record=+sent-mail
    #Dorthin angefangenen Nachrichten
    set postponed=+postponed-msgs

    #Gelesene Mail nicht in einen Extrafolder verschieben
    set move=no

    #Nicht fragen, antworten :-)
    set fast_reply
    #Header mit Editor bearbeiten können
    set edit_headers
    #immer zitieren
    set include

    #Editor vim, bunt, und gleich auf erste Leerzeile springen:
    set editor='vim -c "set t_Co=8" -c "syntax on" -c "/^$"'

    #GnuPG verwenden. Achtung: Pfad anpassen!
    #source /usr/share/doc/packages/mutt/gpg.rc

    #eigene Aliasdatei verwenen:
    set alias_file=~/.mutt_alias
    #Aliasdatei einlesen, damit die Adressen gleich bekannt sind:
    source ~/.mutt_alias
    #Namen/Adressen über die Aliasliste suchen und anzeigen
    set reverse_alias

    #Im Pager auch einen Teil Index anzeigen:
    set pager_index_lines=5

    #Im Pager mit Cursortasten scrollen können
    bind pager      <up>            previous-line
    bind pager      <down>          next-line

    #Attachments lila
    color   attachment      magenta         default
    #Fehler rot
    color   error           red             default

    #Der Header Gelb, Subject (Betreff) leuchtend, das To in weiß
    color   header          brightyellow    default   "^Subject: "
    color   header          white           default   "^To:"
    color   hdrdefault      yellow          default

    #Der "Leuchtbalken"
    color   indicator       black           white
    color   markers         brightblue      default

    #Die Nachricht selbst auch bunt machen; dabei je Quotingebene
    #eine andere Farbe --> bringt Übersicht
    color   message         white           default
    color   normal          white           default
    color   quoted          yellow          default
    color   quoted1         green           default
    color   quoted2         cyan            default
    color   quoted3         red             default

    #die Signatur nicht so hell anzeigen
    color   signature       brightblack     default
    #Statuszeile in blau-gelb
    color   status          brightyellow    blue

Diese Datei kann man nun seinen Bedürfnissen anpassen und hat eine Anfangskonfiguration. Mit der Zeit kann man diese dann weiterentwickeln und Mutt mehr und mehr auf seine Bedürfnisse anpassen.