Weiter Zurück Inhalt

3. Konfiguration

Die Standardkonfiguration ermöglicht es, Mutt sofort (``out-of-the-box'') zu benutzen. Dennoch ist es oft wünschenswert, Mutt an die eigenen Bedürfnisse anzupassen. Beim ersten Aufruf von Mutt versucht das Programm, die systemweite Konfigurationsdatei (Einstellungen, die durch deinen lokalen Systemadministrator vorgenommen wurden) zu lesen, es sei denn, es wurde die ``-n'' Kommandozeilen- Option angegeben. Diese Datei heißt üblicherweise /usr/local/share/mutt/Muttrc oder /etc/Muttrc. Als nächstes sucht Mutt in deinem Heimatverzeichnis nach einer Datei mit dem Namen .muttrc. Wenn diese Datei nicht existiert und es in deinem Heimatverzeichnis ein Unterverzeichnis mit dem Namen .mutt gibt, dann versucht Mutt eine Datei mit dem Namen .mutt/muttrc zu laden.

.muttrc ist die Datei, in der du normalerweise deine Befehle einträgst, um Mutt zu konfigurieren.

Zusätzlich unterstützt Mutt versionsabhängige Konfigurationsdateien, die anstelle der oben genannten Standarddateien ausgewertet werden. Wenn es zum Beispiel auf deinem System eine Datei Muttrc-0.88 im Verzeichnis für die systemweiten Konfigurationsdateien gibt und du Mutt in der Version 0.88 aufrufst, dann wird Mutt diese Datei anstelle der Datei Muttrc verwenden. Dasselbe gilt für die benutzerspezifische Konfigurationsdatei: Wenn du eine Datei .muttrc-0.88.6 in deinem Heimatverzeichnis hast und Mutt-Version 0.88.6 benutzt, wird diese Datei anstelle der Standarddatei .muttrc eingelesen. Die Versionsnummer ist genau die, die angezeigt wird, wenn Mutt mit der ``-v'' Kommandozeilen- Option aufgerufen oder im Menü index die show-version Taste (Voreinstellung: V) benutzt wird.

3.1 Syntax der Konfigurationsdateien

Eine Konfigurationsdatei besteht aus einer Folge von Befehlen. Jede Zeile in der Datei darf einen oder mehrere Befehle enthalten. Wenn mehrere Befehle in einer Zeile angegeben werden, dann müssen sie durch ein Semikolon (;) voneinander getrennt werden.

set realname='Mutt user' ; ignore x-
Das ``Hash'' oder ``Lattenzaun'' (``#'') wird als Kommentarzeichen verwendet. Du kannst es benutzen, um Anmerkungen in deine Konfigurationsdatei zu schreiben. Alles, was in einer Zeile hinter diesem Kommentarzeichen angegeben wird, wird ignoriert. Beispiel:

my_hdr X-Disclaimer: Warum hörst du mir zu? # Dies ist ein Kommentar

Mit einfachen (') und doppelten (") Anführungszeichen können Zeichenketten festgelegt werden, die Leer- oder Sonderzeichen enthalten. Der Unterschied zwischen den Anführungszeichen ist der gleiche wie in vielen populären Shell-Programmen: Das einfache Anführungszeichen dient dazu eine Zeichenkette festzulegen, in der keine Shellvariablen ersetzt oder mit dem ``Backslash'' (\) maskierte Zeichen interpretiert werden [vergleiche nächster Abschnitt], während dies bei Zeichenketten in doppelten Anführungszeichen geschieht. Zum Beispiel werden ``backtics'' (`) innerhalb doppelter Anführungszeichen ausgewertet, innerhalb von einfachen Anführungszeichen jedoch nicht.

\ maskiert das nächste Zeichen, genauso wie in Shells wie bash und zsh. Wenn du zum Beispiel doppelte Anführungszeichen ``"'' innerhalb einer Zeichenkette verwenden möchtest, dann kannst du ``\'' benutzen, um zu verhindern, daß das folgende Zeichen als Ende des Strings interpretiert wird.

set realname="Michael \"MuttDude\" Elkins"

Mit ``\\'' kann das Zeichen ``\'' in die Zeile eingefügt werden. ``\n'' und ``\r'' haben die in C üblichen Bedeutungen von Zeilenumbruch (linefeed) und Wagenrücklauf (carriage-return).

Ein \ am Ende einer Zeile dient dazu, Befehle auf mehrere Zeilen aufzuteilen. Dabei darf aber nicht in der Mitte von Befehlsnamen getrennt werden.

Desweiteren ist es möglich, die Ausgabe eines Unix-Befehls in die Konfigurationsdatei einzubinden. Das erfolgt dadurch, daß das Kommando in ``backquotes'' (`) eingeschlossen wird. Zum Beispiel:

my_hdr X-Operating-System: `uname -a`
Die Ausgabe des Unix-Befehls ``uname -a'' wird eingefügt, bevor die Zeile ausgewertet wird. Zu beachten ist, daß die Konfigurationsdatei zeilenorientiert ist. Daher wird auch nur die erste Zeile der Ausgabe eines Unix-Befehls übernommen.

Auf eine UNIX Umgebung kann genauso wie aus einer Shell wie sh oder bash zugegriffen werden, indem vor den Namen der Umgebungsvariablen ein ``$dollar;'' gesetzt wird. Zum Beispiel:

set record=+sent_on_$HOSTNAME

In den folgenden Abschnitten werden die Befehle erklärt, die Mutt versteht. Eine vollständige Liste ist in der Befehlsreferenz enthalten.

3.2 Definieren und Benutzen von Aliasnamen

Benutzung: alias Schlüssel Adresse [ , Adresse, ... ]

Es ist für gewöhnlich etwas lästig, sich an die komplette Mailadresse eines Gesprächspartners zu erinnern oder sie komplett einzutippen. Mutt erlaubt es ``Aliasnamen'' zu erzeugen, die einen kurzen Schlüssel für eine komplette Mailadresse definieren.

Anmerkung: Wenn du einen Aliasnamen für eine Gruppe definierst (indem du mehr als eine Adresse angibst), dann müssen die einzelnen Adressen durch ein Komma (``,'') voneinander getrennt werden.

Entfernen eines oder mehrerer Aliasnamen:

unalias Adresse [ Adresse ... ]

alias muttdude me@cs.hmc.edu (Michael Elkins)
alias theguys manny, moe, jack

Im Gegensatz zu anderen Mailreadern ist es bei Mutt nicht notwendig, daß die Aliasnamen in einer besonderen Datei gespeichert werden. Der alias Befehl darf in irgend einer Konfigurationsdatei auftauchen, solange diese Datei auch eingelesen wird. Daher kann es also auch mehrere Alias-Dateien geben, oder es können alle Aliasnamen in der .muttrc definiert sein.

Auf der anderen Seite kann die create-alias Funktion nur eine einzige Datei benutzen, nämlich genau die, die durch die Variable $alias_file (die standardmäßig den Wert ~/.muttrc hat) festgelegt wurde. Diese Datei ist ebenfalls nichts ``besonderes'' in dem Sinne, daß Mutt Aliasnamen an jede beliebige Datei anhängen kann. Damit sie wirksam werden, ist es aber erforderlich, auch diese Datei explizit einzulesen.

Zum Beispiel:

source /usr/local/share/Mutt.aliases
source ~/.mail_aliases
set alias_file=~/.mail_aliases

Die Benutzung der Aliasnamen erfolgt einfach dadurch, daß der Aliasname überall dort eingegeben werden kann, wo Mutt nach einer Adresse fragt, so zum Beispiel am To: oder Cc: Prompt. Wenn die Variable $edit_headers gesetzt ist, kannst Du die Aliasnamen auch mit Deinem Editor in die entsprechenden Kopfzeilen eintragen.

Zusätzlich kannst du an den verschiedenen Stellen, wo nach einer Adresse gefragt wird, die TAB-Taste benutzen, um einen teilweise eingegebenen Aliasnamen zu vervollständigen. Wenn es mehrere Möglichkeiten gibt, geht Mutt in ein Menü, in dem (wie in einem Adreßbuch) eine Liste aller passenden Aliasnamen angezeigt wird. Wenn du die komplette Liste aller Aliasnamen sehen möchtest, drückst du die TAB-Taste einfach ohne vorher etwas einzugeben, etwa am leeren Prompt oder nach einem Komma für mehrere Adressen.

Im Alias Menü kannst du mit der select-entry Taste (Voreinstellung: Return) so viele Aliasnamen auswählen, wie du möchtest. Mit der exit Taste (Voreinstellung: q) kehrst du zur Adresseingabe zurück.

3.3 Ändern der Standard Tastenbelegung

Benutzung: bind Menü Taste Funktion

Dieser Befehl erlaubt es, die voreingestellte Tastenbelegung (welche Funktion auf einen Tastendruck hin aufgerufen wird) zu ändern.

Menü legt fest, in welches Menü die Tastenbelegung gehört. Die momentan gültigen Werte sind:

Taste ist die Taste (oder Tastenkombination), die Du zuordnen möchtest. Um ein Kontrollzeichen anzugeben, wird die Sequenz \Cx verwendet, wobei x der Buchstabe für das Kontrollzeichen ist (``\Ca'' steht zum Beispiel für Control-A (bzw. Strg-A auf deutschen Tastaturen, A.d.Ü.)). Beachte, daß die Groß-/Kleinschreibung sowohl bei x alsauch bei \C ignoriert wird. Die Definitionen \CA, \Ca, \cA und \ca bedeuten daher alle das gleiche. Alternative ist es möglich, die Taste als 3-stellige Oktalzahl mit führendem ``\'' anzugeben (zum Beispiel ist \177 äquivalent zu \c?).

Desweiteren darf Taste folgende Strings enthalten:

\t              Tab
<Tab>           Tab
\r              Wagenrücklauf (carriage return)
\n              Zeilenvorschub (newline)
\e              Escape
<esc>           Escape
<up>            Cursor hoch
<down>          Cursor runter
<left>          Cursor links
<right>         Cursor rechts
<pageup>        Bild hoch
<pagedown>      Bild runter
<backspace>     Backspace
<delete>        Entf
<insert>        Einfg
<enter>         Enter
<home>          Pos1
<end>           Ende
<Space>         Leertaste
<f1>            Funktionstaste F1
<f10>           Funktionstaste F10

Taste muß nicht in Anführungszeichen eingeschlossen werden, außer wenn Leerzeichen (`` '') enthalten sind.

Funktion legt fest, welche Aktion ausgeführt wird, wenn die Taste gedrückt wird. Eine komplette Liste aller Funktionen ist in der Referenz aufgeführt. Die Sonderfunktion noop hebt die Definition einer Tastenbelegung auf.

3.4 Aliasnamen für Zeichensätze definieren

Benutzung: charset-hook Alias Zeichensatz

Dieser Befehl definiert einen Alias-Namen für einen Zeichensatz. Das ist nützlich, um Nachrichten korrekt anzuzeigen, in denen ein Zeichensatz deklariert ist, den Mutt nur unter anderem Namen kennt.

3.5 Von einer Mailbox abhängig Variablen setzen

Benutzung: folder-hook [!]Muster Befehl

Oft ist es wünschenswert, Einstellungen in Abhängigkeit von der gerade benutzten Mailbox zu verändern. Der folder-hook Befehl liefert eine Möglichkeit, einen beliebigen Konfigurationsbefehl auszuführen. Muster ist ein regulärer Ausdruck, der angibt, für welche Mailboxen Befehl ausgeführt werden soll, bevor sie geladen werden. Wenn für eine Mailbox mehrere folder-hook's zutreffen, dann werden sie in der Reihenfolge ausgeführt, in der sie in der muttrc stehen.

Anmerkung: Wenn du am Anfang des Musters ``!'' als Abkürzung für die $Spooldatei verwendest, dann muß es in einfachen oder doppelten Anführungsstrichen stehen, damit es vom logischen Nicht Operator des Musters unterschieden werden kann.

Beachte, daß die alten Einstellungen nicht wieder hergestellt werden, wenn die Mailbox verlassen wird. Zum Beispiel ist ein möglicher Befehl, die Art der Sortierung der Nachrichten abhängig von der gelesenen Mailbox zu ändern:

folder-hook mutt set sort=threads

Die Art der Sortierung wird hierbei nicht auf den alten Wert zurückgesetzt, wenn eine andere Mailbox geladen wird. Mit dem Muster ``.'' kann ein Standard Befehl festgelegt werden.

folder-hook . set sort=date-sent

3.6 Tastatur Makros

Benutzung: macro Menü Taste Sequenz [ Beschreibung ]

Makros sind nützlich, wenn du möchtest, daß auf einen Tastendruck hin eine ganze Folge von Aktionen ausgeführt wird. Wenn du im Menü Menü die Taste Taste drückst, verhält sich Mutt so, als wenn du Sequenz eingegeben hättest. Wenn du also eine Folge von Befehlen hast, die du häufiger eingibst, dann kannst du ein Makro erzeugen, um diese Befehlsfolge mit einem Tastendruck auszuführen.

Taste und Sequenz sind nach denselben Regeln aufgebaut, wie die Tastenbelegungen, mit der zusätzlichen Möglichkeit, daß Kontrollzeichen in einer Sequenz auch als ^x geschrieben werden können. Um das Caret (``^'') selbst zu erzeugen, muß daher ^^ eingegeben werden.

Optional kannst du eine Beschreibung angeben, die dann in den Hilfebildschirmen angezeigt wird.

Anmerkung: Makrodefinitionen (so vorhanden), die in den Hilfebildschirmen angezeigt werden, werden bei der Anzeige auf Bildschirmbreite abgeschnitten und nicht umgebrochen.

3.7 Verwendung von Farb und Mono Video Attributen

Benutzung: color Objekt Vordergrund Hintergrund [ Muster ]
Benutzung: color index Vordergrund Hintergrund [ Muster ]
Benutzung: uncolor index Vordergrund Hintergrund [ Muster ]

Wenn dein Terminal farbfähig ist, dann kannst du Mutt durch ein selbst definiertes Farbschema verschönern. Um die Farbe für ein Objekt (eine bestimmte Art von Information) festzulegen, mußt du eine Vordergrundfarbe und eine Hintergrundfarbe festlegen (es ist nicht möglich nur eins von beiden anzugeben).

Objekt darf eines der folgenden sein:

Vordergrund und Hintergrund kann eine der folgenden Farben sein:

Beim Vordergrund kann der jeweiligen Farbe das Schlüsselwort bright vorangestellt werden, um die Vordergrundfarbe fett gedruckt zu bekommen (zum Beispiel brightred).

Wenn es dein Terminal unterstützt, dann kann das besondere Schlüsselwort default als transparente Farbe benutzt werden. Der Wert brightdefault ist ebenfalls gültig. Wenn Mutt gegen die S-Lang Bibliothek gebunden wurde, dann mußt du noch die Umgebungsvariable COLORFGBG auf die Standardfarben deines Terminals setzen, damit das funktioniert; zum Beispiel (für Bourne-artige Shells):

set COLORFGBG="green;black"
export COLORFGBG

Anmerkung: Die S-Lang Bibliothek verlangt, daß anstelle von white und yellow die Schlüsselworte lightgray und brown benutzt werden, wenn diese Variable gesetzt wird.

Anmerkung: Der uncolor Befehl kann nur auf das Objekt index angewendet werden. Es entfernt Einträge aus der Liste. Du mußt dasselbe Muster wie beim entsprechenden color Befehl angeben, damit der Eintrag entfernt wird. Das Muster ``*'' ist ein besonderes Zeichen mit der Bedeutung, daß die komplette Liste gelöscht werden soll.

Mutt erkennt auch die Schlüsselworte color0, color1, ..., colorN-1 (wobei N die Anzahl der von deinem Terminal unterstützten Farben ist). Das ist nützlich, wenn du die Farben für deine Anzeige umdefinierst (zum Beispiel, indem du im xterm die Farbe änderst, die mit color2 verknüpft ist), weil dann die Farbnamen ihre normale Bedeutung verlieren.

Wenn dein Terminal keine Farben unterstützt, ist es mit dem ``mono'' Befehl dennoch möglich, Videoattribute zu verändern.

Benutzung: mono <Objekt> <Attribut> [ Muster ]

wobei Attribut eines der folgenden ist:

3.8 Ignorieren (weeding) von nicht gewünschten Kopfzeilen

Benutzung: [un]ignore Muster [ Muster ... ]

Nachrichten haben oft viele Kopfzeilen, die automatisch eingefügt werden oder solche, bei denen es nicht sinnvoll erscheint, sie am Bildschirm anzuzeigen. Dieser Befehl erlaubt es, Kopfzeilen festzulegen, die Du normalerweise nicht sehen willst.

Es ist dabei nicht nötig, den kompletten Namen des Headers anzugeben. Zum Beispiel ignoriert der Eintrag ``ignore content-'' alle Kopfzeilen, die mit ``content-'' anfangen.

Um ein zuvor eingetragenes Muster aus der Liste auszutragen, wird der ``unignore'' Befehl benutzt. ``unignore *'' entfernt alle Muster aus der ignore-Liste.

Zum Beispiel:

 # Sven's drakonische Auswahl von Kopfzeilen
 ignore *
 unignore from date subject to cc
 unignore organization organisation x-mailer: x-newsreader: x-mailing-list:
 unignore posted-to:

3.9 Mailinglisten

Benutzung: [un]lists Adresse [ Adresse ... ]
Benutzung: [un]subscribe Adresse [ Adresse ... ]

Mutt verfügt über einige schöne Funktionen zur Behandlung von Mailinglisten. Um von diesen Funktionen zu profitieren, mußt Du angeben, welche Adressen zu Mailinglisten gehören und welche davon Du gerade abonniert hast.

Um genauer zu sein, verwaltet Mutt Listen der ihm bekannten und der abonnierten Mailinglisten. Jede abonnierte Mailingliste zählt natürlich auch als ``bekannt''. Um eine Mailingliste als bekannt zu markieren, steht der Befehl ``lists'' zur Verfügung. Um sie als abonniert zu kennzeichnen, verwendet man ``subscribe''.

Du solltest nur so viel von der Adresse angeben, wie nötig ist, um Mehrdeutigkeiten zu vermeiden. Wenn Du zum Beispiel die Mutt Mailing-Liste abonniert hast, erhältst Du an mutt-users@mutt.org adressierte Mail. Um Mutt mitzuteilen, daß es sich dabei um eine Mailingliste handelt, kannst Du ``lists mutt-users'' in Deine .muttrc schreiben; mit dem Befehl ``subscribe mutt-users'' kann man Mutt beibringen, daß man diese Liste abonniert hat. Wenn Du zufälligerweise auch Mail von jemandem mit der Adresse mutt-users@example.com bekommst, würdest Du ``lists mutt-users@mutt.org'' verwenden, um nur Mail zu erfassen, die tatsächlich von der Liste stammt.

Der Befehl ``unlists'' wird verwendet, um einen Eintrag aus den Listen der bekannten und abonnierten Mailing-Listen zu entfernen. Mit ``unlists *'' lassen sich die Listen auch vollständig leeren.

Um einen Eintrag zwar aus der Liste der abonnierten Mailinglisten zu entfernen, ihn aber in der Liste der bekannten Mailinglisten zu belassen, existiert der Befehl ``unsubscribe''.

3.10 Mehrere Spool-Mailboxen verwenden

Benutzung: mbox-hook [!]Muster Mailbox

Dieser Befehl wird verwendet, um gelesene Nachrichten automatisch aus den sogenannten ``Spool-Mailboxen'' (die nicht zur Archivierung von Mail bestimmt sind) in eine andere zu verschieben, wenn du Mutt verläßt oder in eine andere Mailbox wechselst.

Muster ist ein regulärer Ausdruck, der angibt, welche Mailbox als Spool-Mailbox angesehen werden soll. Mailbox gibt an, in welcher Mailbox die Nachrichten daraus gespeichert werden sollen, wenn sie gelesen wurden.

Anders als bei anderen hook Befehlen wird hier nur der erste Eintrag benutzt, auf den das Muster zutrifft (es ist nicht möglich, gelesene Mail in mehr als einer Mailbox zu speichern).

3.11 Mailboxen angeben, die Nachrichten empfangen

Benutzung: mailboxes [!]Dateiname [ Dateiname ... ]

Mit diesem Befehl werden die Mailboxen definiert, in denen das System empfangene Nachrichten ablegt und die deshalb auf neue Nachrichten überprüft werden sollen. Standardmäßig wird in der Hauptstatuszeile angezeigt, wie viele dieser Mailboxen neue Nachrichten enthalten.

Beim Wechsel der Mailbox kann man mit der Leertaste durch die Mailboxen blättern, die neue Nachrichten enthalten.

Wenn man in einer Datei-Liste die Tabulator-Taste drückt, erscheint ein Menü, in dem die Dateien aufgeführt sind, die mit dem mailboxes Befehl angegeben wurden und in dem angezeigt wird, welche davon neue Nachrichten enthalten. Mutt startet automatisch in diesem Modus, wenn es von der Kommandozeile aus mit der -y Option aufgerufen wurde.

Anmerkung: Neue Mail wird erkannt, indem für die Mailbox-Datei das letzte Zugriffsdatum mit dem Datum der letzten Änderung verglichen wird. Hilfsprogramme wie biff, frm und andere, die auf die Mailbox zugreifen, können (wenn sie die Zugriffszeit nicht zurücksetzen) daher dafür verantwortlich sein, daß Mutt nie neue Mail meldet.

Anmerkung: Die Dateinamen im mailboxes Befehl werden bereits aufgelöst, wenn der Befehl ausgeführt wird. Wenn diese Namen also Kürzel (wie etwa ``='' and ``!'') enthalten, dann sollte jede Variablendefinition, die auf die Bedeutung dieser Zeichen Einfluß hat (etwa $folder und $spoolfile) vor dem mailboxes Befehl stehen.

3.12 Benutzerdefinierte Kopfzeilen

Benutzung:
my_hdr Zeichenkette
unmy_hdr Feld [ Feld ... ]

Der ``my_hdr'' Befehl erlaubt es, eigene Kopfzeilen zu definieren, die in jede Nachricht, die man verschickt, eingefügt werden.

Wenn du zum Beispiel eine ``Organization:'' Zeile in jede ausgehende Nachricht einfügen möchtest, dann kannst du dafür den Befehl

 my_hdr Organization: Eine Wirklich Große Firma, Irgendwo, Deutschland

in deine .muttrc aufnehmen.

Anmerkung: Leerzeichen zwischen dem Schlüsselwort und dem Doppelpunkt (``:'') sind nicht erlaubt. Der Standard für E-Mail (RFC822) untersagt Leerzeichen an dieser Stelle, daher erzwingt Mutt die Einhaltung dieser Regel.

Wenn Du eine Kopfzeile nur in eine einzelne Nachricht einfügen möchtest, dann kannst Du entweder die Variable edit_headers setzen, oder Du verwendest die Funktion edit-headers (in der Voreinstellung: ``E'') im Nachricht erstellen Menü, um die Kopfzeilen zusammen mit der Nachricht editieren zu können.

Zum Entfernen von benutzerdefinierten Kopfzeilen dient der ``unmy_hdr'' Befehl. Du kannst dabei entweder einen Stern (``*'') angeben, um alle Kopfzeilen zu entfernen, oder den Namen der zu löschenden Zeile. Um zum Beispiel alle ``To'' und ``Cc'' Kopfzeilen zu entfernen, kannst Du folgendes angeben:

unmy_hdr to cc

3.13 Sortierung der Kopfzeilen in der Nachrichtenanzeige festlegen

Benutzung: hdr_order Kopfzeile1 Kopfzeile2 Kopfzeile3

Mit diesem Befehl wird die Reihenfolge festgelegt, in der die Kopfzeilen ausgegeben werden sollen, wenn eine Nachricht angezeigt wird.

``unhdr_order *'' entfernt alle zuvor definierten Kopfzeilen aus der Sortierreihenfolge und schaltet somit die in der systemweiten Konfigurationsdatei definierte Sortierung ab.

hdr_order From Date: From: To: Cc: Subject:

3.14 Standard-Datei zum Speichern festlegen

Benutzung: save-hook [!]Muster Dateiname

Mit diesem Befehl wird die Standard-Datei geändert, in der Nachrichten gespeichert werden. Die Datei Dateiname wird als Standard-Datei benutzt, wenn im From: Header der Nachricht eine Adresse steht, die auf das Muster paßt, oder wenn Du die Nachricht geschrieben hast und die Adresse im To: auf das Muster paßt.

Im Kapitel Auswählen von Nachrichten können Informationen über das genaue Format von Muster nachgelesen werden.

Beispiele:

save-hook me@(turing\\.)?cs\\.hmc\\.edu$ +elkins
save-hook aol\\.com$ +spam

Siehe auch den Befehl fcc-save-hook.

3.15 Standard Fcc: Mailbox beim Verfassen festlegen

Benutzung: fcc-hook [!]Muster Mailbox

Mit diesem Befehl können Kopien gesendeter Nachrichten in einer anderen Mailbox als $record gespeichert werden. Mutt sucht in der Liste der Empfänger nach der ersten Übereinstimmung mit Muster und benutzt dann die Mailbox als Voreinstellung für die Fcc: Mailbox. Wenn keine Übereinstimmung gefunden wurde, dann wird die Nachricht in der $record Mailbox gespeichert.

Im Kapitel Auswählen von Nachrichten können Informationen über das genaue Format von Muster nachgelesen werden.

Beispiel: fcc-hook aol.com$ +spammers

Das obige speichert eine Kopie von allen Nachrichten, die an die aol.com Domain gesendet werden, in der Mailbox `+spammers'. Siehe auch den fcc-save-hook Befehl.

3.16 Standard Dateiname zum Speichern und Fcc: Mailbox zusammen festlegen

Benutzung: fcc-save-hook [!]Muster Mailbox

Dieser Befehl ist lediglich eine Abkürzung, er ist äquivalent zur gleichzeitigen Ausführung der beiden Befehle fcc-hook und save-hook mit seinen Argumenten.

3.17 Einstellungen abhängig vom Empfänger ändern

Benutzung: send-hook [!]Muster Befehl

Mit diesem Befehl können beliebige Konfigurationsbefehle in Abhängigkeit vom Empfänger der Nachricht ausgeführt werden. Muster ist ein regulärer Ausdruck für die gewünschte Empfängeradresse. Befehl wird ausgeführt, wenn Muster auf einen der Empfänger der Nachricht zutrifft. Wenn es mehrere Übereinstimmungen gibt, dann werden sie in der Reihenfolge ausgeführt, in der sie in der .muttrc stehen.

Im Kapitel Auswählen von Nachrichten können Informationen über das genaue Format von Muster nachgelesen werden.

Beispiel: send-hook mutt "set mime_forward signature=''"

Eine andere typische Anwendung für diesen Befehl ist das Ändern der Werte der $attribution, $signature und $locale Variablen, um die Sprache der Anrede und Signatur abhängig vom Empfänger zu setzen.

Anmerkung: Die send-hooks werden nur EINMAL ausgeführt, nachdem die ursprüngliche Liste der Empfänger eingelesen wurde. Wenn man einen Empfänger hinzufügt, während die Nachricht editiert wird, dann führt das NICHT dazu, daß irgendein send-hook ausgeführt wird. Ebenso haben my_hdr Befehle, die Empfänger- oder Betreffzeilen in den Headern ändern, keinen Einfluss auf die vorliegende Nachricht, wenn sie in einem send-hook aufgerufen werden.

3.18 Auswahl des PGP Schlüssels für einen Empfänger

Benutzung: pgp-hook Muster keyid

Wenn eine Nachricht mit PGP verschlüsselt werden soll, dann kann es wünschenswert sein, einen bestimmten PGP Schlüssel mit einem Empfänger zu verknüpfen. Das ist zum Beispiel sinnvoll, wenn der Schlüssel nicht direkt aus der Empfängeradresse ermittelt werden kann oder wenn man einen anderen Schlüssel verwenden möchte als den, den Mutt normalerweise auswählt. Der pgp-hook Befehl bietet die Möglichkeit, die Benutzer-ID des öffentlichen Schlüssels anzugeben, der für die Verschlüsselung von Mails an einen bestimmten Empfänger benutzt werden soll.

3.19 Befehlssequenzen in den Tastaturpuffer schreiben

Benutzung: push Befehlssequenz

Dieser Befehl fügt die angegebene Befehlssequenz in den Tastaturpuffer ein. Er kann benutzt werden, um beim Start von Mutt oder beim Betreten einer neuen Mailbox eine bestimmte Folge von Befehlen auszuführen.

3.20 Nachrichten bewerten (Scoring)

Benutzung: score Muster Wert
Benutzung: unscore Muster [ Muster ... ]

Der score Befehl addiert Wert zur Punktzahl (Score) einer Nachricht, wenn es eine Übereinstimmung mit Muster gibt. Muster ist eine Zeichenkette, deren Format im Abschnitt Suchmuster beschrieben wird. Wert ist eine positive oder negative ganze Zahl. Die endgültige Punktzahl einer Nachricht ist die Gesamtsumme aus allen passenden score Einträgen. Es ist möglich, dem Wert ein Gleichheitszeichen (``='') voranzustellen, um die Berechnung des Score an dieser Stelle zu stoppen, wenn eine Übereinstimmung vorliegt. Ein negatives Endergebnis wird auf 0 aufgerundet.

Der unscore Befehl entfernt Score-Einträge aus der Liste. Du mußt dasselbe Muster wie beim entsprechenden score Befehl angeben, damit der Eintrag entfernt wird. Das Muster ``*'' ist ein besonderes Zeichen mit der Bedeutung, daß die komplette Liste der Score-Einträge gelöscht werden soll.

3.21 Der Umgang mit Konfigurations-Variablen

Benutzung: set [no|inv]Variable[=Wert] [ Variable ... ]
Benutzung: toggle Variable [Variable ... ]
Benutzung: unset Variable [Variable ... ]
Benutzung: reset Variable [Variable ... ]

Dieses Kommando dient dem Setzen (set) und Entfernen (unset) von Variablen. Es gibt vier grundlegende Typen von Variablen: boolean (Wahrheitswert), number (positive Ganzzahl), string (Zeichenkette) und Quad-Option. boolean-Variablen können mit set auf wahr (true) und mit unset auf unwahr (false) geschaltet werden. number-Variablen können positive ganzzahlige Werte aufnehmen.

string-Variablen bestehen aus einer beliebigen Anzahl von druckbaren Zeichen. Sie müssen von Anführungszeichen umschlossen werden, wenn Leerzeichen oder Tabulatoren enthalten sind. Die Escape-Sequenzen \n für den Zeilenvorschub und \t für den Tabulator können wie in der Programmiersprache ``C'' benutzt werden.

quadoption-Variablen legen fest, ob Mutt bei einer bestimmten Aktion den Benutzer fragen oder eine Standard-Aktion ausführen soll. Der Wert yes sorgt für eine sofortige Ausführung der Aktion, genau so, als wenn der Benutzer auf die vom Programm gestellte Frage mit ``ja'' geantwortet hätte. no funktioniert ähnlich, nur daß die Aktion so ausgeführt wird, als wenn der Benutzer mit ``nein'' geantwortet hätte. Der Wert ask-yes führt zu einer Benutzerabfrage, wobei die voreingestelle Antwort ``ja'' ist, die nur noch mit Return bestätigt werden muß. Bei ask-no ist die voreingestellte Antwort ``nein''.

Eine Variable mit vorangestelltem ``no'' schaltet die betreffende Option ab. Beispiel: set noaskbcc.

boolean-Variablen kann inv vorangestellt werden, um den Wert auf den jeweils anderen Zustand umzuschalten. Das ist besonders beim Schreiben von Makros sinnvoll. Beispiel: set invsmart_wrap.

Das toggle-Kommando setzt automatisch inv vor die angegebenen Variablennamen.

Das unset-Kommando setzt automatisch no vor die angegebenen Variablennamen.

Mit der enter-command-Funktion aus dem Menü index kann der Wert einer Variable abgefragt werden. Dazu muß dem Variablennamen ein Fragezeichen vorangestellt werden:

set ?allow_8bit

Benötigt wird das Fragezeichen nur bei Variablen der Typen boolean und Quad-Option.

Das reset-Kommando setzt alle angegebenen Variablen auf die einkompilierten Standardwerte, die in diesem Handbuch aufgeführt sind. Das set-Kommando und ein ``&'' vor dem Variablennamen führen zum selben Ergebnis.

Für reset gibt es die spezielle Variable ``all'', die sämtliche Variablen auf Standardwerte zurücksetzt.

3.22 Lesen von Konfigurations-Kommandos aus einer anderen Datei

Benutzung: source dateiname

Mit diesem Kommando können Konfigurations-Kommandos aus anderen Dateien eingebunden werden. Ich speichere beispielsweise meine Alias-Namen (eine Art Adreßbuch) in der Datei ~/.mail_aliases. Auf diese Weise kann ich ~/.muttrc für alle lesbar machen und gleichzeitig meine Alias-Namen privat halten.

Wenn der Dateiname mit einer Tilde (``~'') beginnt, wird er durch den Pfad des Home-Verzeichnisses ersetzt.

Wenn der Dateiname mit einem Balken (``|'') endet, interpretiert mutt diesen Dateinamen als ausführbares Programm und liest dessen Ausgabe ein. Beispiel: source ~/bin/myscript|


Weiter Zurück Inhalt