Introduction à MH

Matt Midboe

Version: 43184
v1.0, 16 Janvier 1996 par .
Résumé

Ce document est une introduction sur la façon d'utiliser MH sous FreeBSD.

Version française de Sébastien Gioria .

[ Multiples pages HTML / Page HTML unique ]

Table des matières
1. Introduction
2. Lire le courrier
3. Chercher parmi les messages et les dossiers
4. Envoyer des messages

1. Introduction

MH débuta en 1977 dans la société RAND Corporation, oû la philosophie MH fut développée. MH n'est pas seulement un programme monolithique de courrier électronique mais plutôt une philosophie sur la meilleure façon de développer des outils permettant de lire son courrier. Les développeurs de MH ont fourni un logiciel superbe tout en adhérent au concept KISS : “Keep It Simple Stupid” (Rester le plus simple possible).

Plutôt que de disposer d'un seul et complexe logiciel pour lire, envoyer et gérer ses courriers électroniques, ils ont écrit une multitude de petits programmes spécialisés. Certains aimeront MH pour cette spécificité, d'autres non. Chaque outil de MH effectue une action, et l'effectue très bien.

En plus de tous les outils de gestion des courriers électroniques, chaque outil MH comporte un mécanisme de configuration uniforme. En fait, si vous ne savez pas vraiment comment marche un outil, ou de quels arguments il dispose, vous vous en sortez généralement très facilement. Toutes les commandes de MH gèrent de façon identique les fichiers de configuration et les arguments de la ligne de commande. La chose la plus importante est de se souvenir que vous pouvez toujours passer l'option -help à une commande pour afficher toutes les options disponibles.

Pour commencer, assurez vous que vous avez installé les programmes de MH sur votre machine. Si vous disposez d'un CDROM vous devez pouvoir l'installer en exécutant la commande suivante :

#>pkg_add /cdrom/packages/mh-6.8.3.tgz

Vous verrez alors la création d'un répertoire /usr/local/lib/mh ainsi que l'ajout de différents binaires dans le répertoire /usr/local/bin. Si vous préférez le compiler vous même, vous pouvez télécharger les sources en ftp anonyme depuis ftp.ics.uci.edu ou louie.udel.edu.

Cette introduction n'est pas une explication détaillée de la façon de fonctionner de MH. Elle vous permettra juste démarrer sur la route de la façon la plus rapide de lire vos emails. Vous devrez surement consulter les pages de manuels des différentes commandes par la suite. De même il serait bon de lire le FAQ sur MH et de vous abonnez au forum de discussion comp.mail.mh. Cependant la meilleur ressource sur MH est le livre écrit par Jerry Peek aux éditions O'Reilly et Associates.

2. Lire le courrier

Ce chapitre explique les commandes inc, show, scan, next, prev, rmm, rmf, and msgchk. Le meilleur atout de MH est la consistence de l'interface entre les différents programmes. La chose la plus importante à retenir lorsque l'on utilise les différentes commandes, est la façon de spécifier une liste de messages. Dans le cas de la commande inc cela n'a aucun sens mais avec des commandes comme show c'est plus qu'utile.

Une liste de messages consiste en quelque chose comme 23 20 16, qui corresponds aux messages 23, 20 et 16. C'est vraiment très simple, mais vous pouvez avoir des choses plus utiles comme 23-30 correspondant à tous les messages entre le message 23 et le message 30. Vous pouvez aussi spécifier cur:10, qui correspond au message courant et aux 9 messages suivants. Les messages curlast, et first sont des messages spéciaux référant au message courant, dernier message, et premier message du dossier.

2.1. inc, msgchk—lire ou vérifier vos messages

Si vous tapez la commande inc sans arguments, vous débutez sur la bonne voie pour lire votre courrier avec MH. La première fois ou vous utilisez inc, il configurera votre compte pour utilisez toutes les valeurs par défaut de MH et vous demandera la création d'un répertoire Mail. Si vous avez des messages et attente de téléchargement, vous verrez quelque chose qui peut ressembler à ceci:

  29  01/15 Doug White         Re: Another Failed to boot problem<<On Mon, 15 J
  30  01/16 "Jordan K. Hubbar  Re: FBSD 2.1<<> Do you want a library instead of
  31  01/16 Bruce Evans        Re: location of bad144 table<<>> >It would appea
  32  01/16 "Jordan K. Hubbar  Re: video is up<<> Anyway, mrouted won't run, ev
  33  01/16 Michael Smith      Re: FBSD 2.1<<Nate Williams stands accused of sa

Vous obtenez la même vue que si vous utilisiez la commande scan (voir Section 2.3, « scan—Afficher un résumé de vos messages »). Si vous lancez inc sans arguments , cela vous affiche juste le courrier qui vous est destiné.

Enormément de personnes utilisent le protocole POP pour lire leur mail. MH sait utiliser le protocole POP pour rapatrier les emails sur votre poste. Vous devez passer plusieurs arguments à inc pour cela.

tempest% inc -host mail.pop.org -user NomUtilisateur -norpop

Cela invoque la commande inc en lui disant d'aller télécharger le courrier sur le serveur mail.pop.org, avec comme nom d'utilisateur NomUtilisateur. L'option -norpop demande à la commande inc de télécharger le courrier en clair suivant le protocole POP3. MH supporte plusieurs variantes du protocole POP3. Vous n'utiliserez pas dans la plupart des cas les autres variantes. Vous pouvez effectuer des taches plus complexes avec inc comme, auditer des fichiers ou parcourir des fichiers formattés

La commande msgchk vous permet de savoir si vous avez ou non de nouveaux messages dans votre boite.msgchk accepte les mêmes options ,-host et -user, que la commande inc.

2.2. show, next et prev—afficher un message et se déplacer dans une boite.

show vous permet de visualiser un courrier de votre boite. Comme inc,show est une commande assez franche.Si vous tapez show sans paramètres elle affiche le message courant. Vous pouvez aussi demander l'affichage de messages particuliers en donnant son numéro à show:

tempest% show 32 45 56

Cela affichera les fichiers numéros 32 45 56 à la suite l'un de l'autre. Si vous changez rien à la configuration par défaut, show ne fera rien d'autre qu'un more sur le fichier contenant votre message.

next s'utilise pour se déplacer au message suivant et prev pour revenir au message précédent. Ces deux commandes exécutent automatiquement un show ce qui vous permet de lire automatiquement le message suivant ou précédant.

2.3. scan—Afficher un résumé de vos messages

scan affiche un bref descriptif de tous les messages de votre répertoire courant. Voici un exemple d'affichage de la commande show:

  30+ 01/16 "Jordan K. Hubbar  Re: FBSD 2.1<<> Do you want a library instead of
  31  01/16 Bruce Evans        Re: location of bad144 table<<>> >It would appea
  32  01/16 "Jordan K. Hubbar  Re: video is up<<> Anyway, mrouted won't run, ev
  33  01/16 Michael Smith      Re: FBSD 2.1<<Nate Williams stands accused of sa

Comme tout dans MH, l'affichage est complètement configurable. Ce qui est fournit dans l'exemple ci-dessus est l'affichage par défaut. Il vous permet de visualiser le numéro du message, la date d'envoi, l'envoyeur, le sujet et une partie du début du message. Le caractère + vous indique le message courant donc si vous tapez la commande show vous visualiserez ce message.

Une option très utile de scan est l'option -reverse. Cette option permet de lister l'ensemble de vos messages en affichant en premier le message ayant le numéro le plus élevé. Une autre option très interessante de scan lui permet de lire les données depuis un fichier. Si vous désirez parcourir votre boite aux lettres de courrier entrant sans avoir à lancer la commande inc, il vous suffit de faire scan -file /var/mail/nom_d_utilisateur. Cela peut etre fait sur n'importe quel fichier au format mbox.

2.4. rmm et rmf— Effacer le message courant ou le dossier

rmm est utilisé pour effacer un message. Par défaut le message n'est pas vraiment détruit mais renommé en un fichier dont le nom est ignoré par les commandes de MH. Vous devrez effacer physiquement de façon périodique les messages “effacés”.

La commande rmf permet d'effacer un dossier. Cela ne renomme pas les fichiers mais les efface du disque dur, vous devez donc faire extrêmement attention lorsque vous l'utilisez.

2.5. Un session typique de lecture avec MH

La première chose que vous ferez sera de lancer la commande inc. Donc sous l'interpréteur de commandes tapez inc et la touche entrée.

tempest% inc
Incorporating new mail into inbox...

  36+ 01/19 "Stephen L. Lange  Request...<<Please remove me as contact for pind
  37  01/19 Matt Thomas        Re: kern/950: Two PCI bridge chips fail (multipl
  38  01/19 "Amancio Hasty Jr  Re: FreeBSD and VAT<<>>> Bill Fenner said: > In
tempest%

Cela vous permet de visualiser les nouveaux messages rapatriés dans votre boite aux lettres. La commande suivante a exécuter est show pour vous permettre de les visualiser et de vous déplacer dans votre liste de messages.

tempest% show
Received: by sashimi.wwa.com (Smail3.1.29.1 #2)
        id m0tdMZ2-001W2UC; Fri, 19 Jan 96 13:33 CST
Date: Fri, 19 Jan 1996 13:33:31 -0600 (CST)
From: "Stephen L. Lange" <stvlange@wwa.com>
To: matt@garply.com
Subject: Request...
Message-Id: <Pine.BSD.3.91.960119133211.824A-100000@sashimi.wwa.com>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII


Please remove me as contact for pindat.com

tempest% rmm
tempest% next
Received: from localhost (localhost [127.0.0.1]) by whydos.lkg.dec.com (8.6.11/8
.6.9) with SMTP id RAA24416; Fri, 19 Jan 1996 17:56:48 GMT
Message-Id: <199601191756.RAA24416@whydos.lkg.dec.com>
X-Authentication-Warning: whydos.lkg.dec.com: Host localhost didn't use HELO pro
tocol
To: hsu@clinet.fi
Cc: hackers@FreeBSD.org
Subject: Re: kern/950: Two PCI bridge chips fail (multiple multiport ethernet
 boards)
In-Reply-To: Your message of "Fri, 19 Jan 1996 00:18:36 +0100."
             <199601182318.AA11772@Sysiphos>
X-Mailer: exmh version 1.5omega 10/6/94
Date: Fri, 19 Jan 1996 17:56:40 +0000
From: Matt Thomas <matt@lkg.dec.com>
Sender: owner-hackers@FreeBSD.org
Precedence: bulk


This is due to a typo in pcireg.h (to
which I am probably the guilty party).

La commande rmm efface le message courant et la commande next permet de déplacer le numéro du message courant au message suivant. Maintenant vous désirez visualiser les dix courriers les plus récents, pour choisir lequel vous désirez lire:

tempest% scan last:10
  26  01/16 maddy              Re: Testing some stuff<<yeah, well, Trinity has
  27  01/17 Automatic digest   NET-HAPPENINGS Digest - 16 Jan 1996 to 17 Jan 19
  28  01/17 Evans A Criswell   Re: Hey dude<<>From matt@tempest.garply.com Tue
  29  01/16 Karl Heuer         need configure/make volunteers<<The FSF is looki
  30  01/18 Paul Stephanouk    Re: [alt.religion.scientology] Raw Meat (humor)<
  31  01/18 Bill Lenherr       Re: Linux NIS Solaris<<--- On Thu, 18 Jan 1996 1
  34  01/19 John Fieber        Re: Stuff for the email section?<<On Fri, 19 Jan
  35  01/19 support@foo.garpl  [garply.com #1138] parlor<<Hello. This is the Ne
  37+ 01/19 Matt Thomas        Re: kern/950: Two PCI bridge chips fail (multipl
  38  01/19 "Amancio Hasty Jr  Re: FreeBSD and VAT<<>>> Bill Fenner said: > In
tempest%

Maintenant vous voulez lire le message numéro 27, donc vous tapezshow 27 et il s'affiche. Comme vous pouvez le voir après ce court exemple MH est très simple à utiliser pour visualiser et lire votre courrier et est de plus très intuitif.

3. Chercher parmi les messages et les dossiers

Toute personne qui a beaucoup de mails aime à pouvoir mettre des priorités, marquer les messages, les numéroter de différentes façons. MH permet de faire toutes ces taches de façons très simple comme d'habitude. Une chose dont nous n'avons pas encore parlé est le concept de dossier. Vous avez sûrement utilisé le concept de dossier avec d'autres programmes de lecture de courrier électronique. MH a aussi des dossiers. MH peut aussi avoir des sous-dossiers de dossiers. Un chose que vous devez avoir à l'esprit quand vous utilisez la commande inc, pour la première fois, est qu'elle demande si vous voulez créer le répertoire Mail, et qu'elle enregistre tout dans ce répertoire. Si vous regardez ce qu'il se trouve dans ce répertoire, vous verrez un répertoire inbox. Ce répertoire comporte tous vos nouveaux messages qui n'ont pas encore été déplacés dans un autre dossier.

Lorsque vous créez un nouveau dossier, un répertoire est crée sous votre répertoire Mail et les messages à destination de se dossier sont stockés dans ce répertoire. Lorsque un nouveau message arrive, il est déposé dans votre répertoire inbox avec comme nom le numéro du message. Donc même si vous n'avez pas les outils MH pour lire votre courrier, vous pouvez utiliser les commandes standards UNIX pour vous déplacer parmis les dossiers et visualiser vos messages. C'est cette simplicité qui vous donne autant de puissance dans le traitement de vos messages.

De la meme façon ou vous pouvez utiliser une liste de messages, comme 23 16 42, avec la plupart des commandes MH; il y a une option utilisable avec toutes les commandes MH vous permettant de travailler dans le dossier spécifié. Si vous essayer scan +freebsd, vous allez parcourir le dossier freebsd. Si vous faites un show +freebsd 23 16 42, la commande show affichera les messages 23, 26 et 42 du dossier freebsd. Donc souvenez vous que la syntaxe +dossier. Vous en aurez besoin pour lancer les commandes dans les différents dossiers. Souvenez vous aussi que votre dossier de courrier entrant par défaut est inbox, donc en faisant un folder +inbox vous aurez la liste de vos nouveaux messages. Bien sur grace à la flexibilité de MH, vous pourriez changer ce dossier, mais il y a peu d'intêret à le faire.

3.1. pick— recherche par critères dans les messages

pick est une des commandes les plus compliquées de MH. Je ne saurais pas mieux vous conseiller que d'aller voir la page de manuel de pick(1) pour bien la comprendre. La plus simple façon de s'en servir est la suivante:

tempest% pick -search pci
15
42
55
56
57

Cela vous permet de trouver les numéros de tous les messages comprenant le mot pci dans une des lignes du message. Vous pouvez ensuite lancer la commande show sur ces messages pour les lire ou rmm pour les effacer. Vous devrez bien sur lancer la commande suivante show 15 42 55-57 pour les voir tous. Une façon un peu plus compliquée d'utiliser pick serait la suivante:

tempest% pick -search pci -seq pick
5 hits
tempest% show pick

Cela vous permet de voir les memes messages que précédemment sans vous fatiguer. L'option -seq n'est rien de plus qu'une abréviation de l'option-sequence et la commande pick n'est rien de plus qu'une sequence comportant les numéros des messages vérifiant le critère. Vous pouvez aussi utiliser la commande rmm pick pour effacer tous les messages qui répondent au critère. Le nom de la sequence n'est pas signifiant. Si vous relancez la commande pick de nouveau, l'ancienne séquence sera effacée si vous utilisez le même nom.

Si vous n'utilisiez que la commande pick -search, cela peut prendre plus de temps que de chercher un message entre un destinataire et un envoyeur. La commande pick dispose donc de certains critères prédéfinis:

-to

recherche sur le destinataire

-cc

recherche dans le champ cc du message

-from

recherche sur l'expéditeur du message

-subject

recherche dans le sujet du message

-date

recherche par rapport à la date du message

--component

recherche sur un quelconque autre entête. (ex: --reply-to pour rechercher dans les entêtes reply-to des messages)

Cela permet d'avoir des requetes de ce type:

tempest% pick -to freebsd-hackers@freebsd.org -seq hackers

pour avoir tous les messages envoyés à la liste de diffusion hackers de FreeBSD. pick vous permet de grouper de différentes façon en fonction du critère.

  • -and

  • -or

  • -not

  • -lbrace-rbrace

Ces options permettent de faire des choses comme ceci:

tempest% pick -to freebsd-hackers -and -cc freebsd-hackers

Cela vous permet de retrouver tous les messages envoyés à la liste freebsd-hackers ou mis en copie à cette liste. Les options lbrace et rbrace vous permettent de grouper les critères ensemble. Cela peut etre util dans certaines situations, comme dans l'exemple suivant:

tempest% pick -lbrace -to freebsd-hackers -and
  -not -cc freebsd-questions -rbrace -and -subject pci

Cet exemple vous permet d'extraire tous les mails destinés à « la liste freebsd-hackers (mais qui ne sont pas mis en copie pour la liste freebsd-questions) et dont le sujet est pci ». Normalement vous vous poseriez la question; mais quelle est la précédence des opérateurs ? Vous vous rappelez qu'en mathématiques les expressions sont évaluées de gauche à droite et que la multiplication et la division ont plus de poids que les additions et les soustractions. MH utilise les mêmes règles pour la commande pick. Les combinaisons peuvent être très complexes, donc lisez la page de manuel pour plus d'informations. Ce document est juste la pour vous aider à découvrir MH.

3.2. folder, folders, refile— trois programmes utiles pour gérer vos dossiers.

Il y a trois programmes vous permettant de gérer de façon primitive vos dossiers. Le programme folder est utilisé pour changer de dossiers, lister leur contenu. Vous pouvez lancer la commande folder +dossier2 et automatiquement, vous vous retrouverez dans le dossier dossier2. Alors toutes les commandes MH, telles que comp,repl,scan, et show utiliserons le dossier dossier2.

Quelques fois lorsque vous lisez et effacez dans messages vous avez des « discontinuitées » dans vos dossiers. Si vous faites un scan vous pouvez voir les messages 34, 35, 36, 43, 55, 56, 57, 80. Si vous faites un folder -pack, cela vous permet de renuméroter tous vos messages, et vous n'aurez plus de discontinuitées. Cela n'efface aucun message. Vous devez donc périodiquement faire des rmm sur vos messages.

Si vous désirez des statistiques sur vos dossiers, vous pouvez faire des folders ou des folder -all pour obtenir la liste de vos dossiers, combien de messages comporte chaque dossier et quel est le message courant dans chacun. La ligne de statistique affichée est la même que celle que vous avez lorsque vous changez de dossier avec la commande folder +dossier2. Un exemple de la commande folders pourrait être:

                Folder      # of messages (  range  ); cur  msg  (other files)
              announce  has    1 message  (   1-   1).
                drafts  has   no messages.
             f-hackers  has   43 messages (   1-  43).
           f-questions  has   16 messages (   1-  16).
                 inbox+ has   35 messages (   1-  38); cur=  37.
                 lists  has    8 messages (   1-   8).
             netfuture  has    1 message  (   1-   1).
                   out  has   31 messages (   1-  31).
              personal  has    6 messages (   1-   6).
                  todo  has   58 messages (   1-  58); cur=   1.

                     TOTAL=  199 messages in 13 folders.

La commande refile vous permet de déplacer les messages entre les dossiers. Si vous faites un refile 23 +nouveaudossier, le message 23 sera déplacer dans le dossier nouveaudossier. Vous pouvez tout aussi bien faire un refile 23 +nouveaudossier/sousdossier1 qui déplacera le message 23 dans le un sous dossier,sousdossier1, du dossier nouveaudossier. Si vous voulez garder un message dans le dossier courant tout en le mettant dans un autre, vous devez lancer la commande refile -link 23 +nouveaudossier, qui gardera le message dans le dossier inbox tout en le listant dans le dossier nouveaudossier. Cela vous permet de réaliser toutes les choses merveilleuses que vous pouvez faire avec MH.

4. Envoyer des messages

L'email est pour beaucoup de gens, comme une rue a double sens, vous voudrez donc répondre a certains messages. La façon qu'emploie MH pour envoyer des messages peut être difficile a comprendre au début, mais il permet une énorme flexibilitée.La première chose que fait MH, est de copier un "composant" dans votre file de messages sortant. Un "composant" est en fait un squelette de message comportant les entêtes To: et Subject:. Le système lance ensuite votre éditeur favori ou vous pouvez remplir les entêtes et composer le corps du message sous les pointillés dans le message. Ensuite vous lancez la commande whatnow. Et lorsque vous avez le prompt What now?, vous pouvez répondre par une des commandes suivante send, list, edit, edit, push, and quit. La plupart des commandes précédentes s'expliquent d'elles même. Donc le processus d'envoi de message est le suivant; copie du fichier "composant", édition de votre message, et lancement de la commande whatnow en lui indiquant quoi faire de votre message.

4.1. comp, forw, reply—composer, faire suivre ou répondre à un message

La commande comp comporte quelques options de la ligne de commande intéressantes. La plus importante est -editor.Lorsque vous installez MH, un programme appelé prompter est utiliser comme éditeur de texte par défaut. Ce n'est pas un éditeur très intéressant. Donc lorsque vous composez un message, vous utiliserez sûrement comp -editor /usr/bin/vi ou comp -editor /usr/local/bin/pico a la place. Après avoir lancer comp, vous vous trouvez dans votre éditeur de texte favori et vous voyez quelque chose qui ressemble à ceci:

To:
cc:
Subject:
--------

Vous devez ajoutez l'adresse de votre destinataire après le mot To:. Vous devez remplir de la même manière les autres entêtes, donc vous devez mettre le sujet après le mot Subject:. Vous pouvez ensuite ajouter le corps de votre message après les lignes pointillées. Cela peut vous sembler un peu simpliste par rapport a d'autres programmes de messagerie qui vous pose des questions et remplissent automatiquement les différents entête, mais cela vous apporte une excellente flexibilité.

To:freebsd-rave@freebsd.org
cc:
Subject:Et le 8ème jour, Dieu créa le bureau des directeurs de FreeBSD
--------
Ouah, c'est un super système d'exploitation. Merci !

Vous pouvez ensuite, sauvegarder le message et quitter votre éditeur. Vous aurez alors le prompt What now? et vous pourrez taper send ou s et appuyer sur la touche entrée. Alors l'équipe principal de développement de FreeBSD recevra votre gratitude. Comme mentionné précédemment vous pouvez utiliser une des autres réponse, par exemple quit si vous ne voulez pas envoyer ce message.

La commande forw s'utilise de façon similaire. La principal différence est que le message que vous envoyez comprends dans son corps le message courant. Lorsque vous utilisez la commande forw, vous faites suivre le message courant a un autre destinataire. Vous pouvez faire suivre un autre message en utilisant de la façon suivante forw 23 la commande forw, ainsi le message 23 sera ajoute dans le corps du message composé. A part ces simples différences, la commande forw, fonctionne de la même façon que la commande comp.

La commande repl vous permet de répondre au message courant, sauf si vous lui indiquez un autre numéro de message. La commande repl essaye de remplir au mieux les différents champs de l'entête en fonction de ce qui se trouve dans le message de base. Vous noterez donc que le champ To: de l'entête comporte deja l'adresse du destinataire et que la ligne Subject: est deja remplie. Ensuite vous composez de la façon habituelle votre message. Un option intéressante de cette commande est -cc. Vous pouvez utiliser comme paramètre all, to, cc,me avec cette option; cela vous permet d'ajouter de façon simple, les adresses en copie du message original. Vous noterez que le message original n'est pas inclus par défaut. C'est le comportement par défaut de la plupart des configuration de MH.

4.2. components, et replcomps—les fichiers de composition pour comp and repl

Le fichier components se trouve la plupart du temps dans le répertoire /usr/local/lib/mh. Vous pouvez copier ce fichier dans votre répertoire de MH et l'éditer pour ajouter ce que vous voulez. Vous avez certaines lignes d'entête de mail par défaut au début, une ligne pointillée et puis plus rien. La commande comp ne fait que copier ce fichier et vous permet ensuite de l'éditer. Vous pouvez ajouter n'importe quel entête valide (RFC822). Par exemple, vous pourriez avoir le fichier components suivant:

To:
Fcc: out
Subject:
X-Mailer: MH 6.8.3
X-Comment: FreeBSD the power to serve
X-Home-Page: http://www.freebsd-fr.org/
-------

MH copiera donc ce fichier et vous enverra dans votre éditeur favori. Le fichier components est très simple. Si vous désirez inclure une signature, il vous suffit de l'ajouter dans ce fichier.

Le fichier replcomps est un peu plus complexe. Son contenu par défaut ressemble à ceci:

%(lit)%(formataddr %<{reply-to}%?{from}%?{sender}%?{return-path}%>)\
%<(nonnull)%(void(width))%(putaddr To: )\n%>\
%(lit)%(formataddr{to})%(formataddr{cc})%(formataddr(me))\
%<(nonnull)%(void(width))%(putaddr cc: )\n%>\
%<{fcc}Fcc: %{fcc}\n%>\
%<{subject}Subject: Re: %{subject}\n%>\
%<{date}In-reply-to: Your message of "\
%<(nodate{date})%{date}%|%(pretty{date})%>."%<{message-id}
             %{message-id}%>\n%>\
--------

Ce fichier a le même format de base que le fichier components mais il comporte un peu plus de codes de mise en forme. La commande %(lit) crée l'espace nécessaire pour l'adresse. La commande %(formataddr est une fonction qui retourne une adresse e-mail cohérente. Le morceau suivant %< permet de remplir le champ de l'adresse avec l'adresse correspondante dans le cas ou elle se trouve dans le champ {reply-to} du message de l'émetteur. Cela sera donc transformé de la manière suivante:

%<si {reply-to}  dans le message original ou trouve un champ reply-to
alors la mettre dans le champ formataddr, %? sinon
prendre le contenu du champ  {from} , %? sinon prendre
le champ {sender} , %?
et en dernier lieu prendre le champ  {return-path} , %> endif.

Comme vous pouvez le voir, le formattage des champs de MH peut être largement étendu. Vous pourrez sûrement décrypter le maximum des autres fonctions et des noms de variables. Toutes les autres informations sur le façon d'écrire ces chaînes de formattage se trouve dans la page de manuel de MH. Donc lorsque vous aurez finit de créer votre fichier replcomps vous n'aurez plus besoin d'y toucher. Aucun autre programme ne vous donne autant de flexibilité et de pouvoir que MH.