14. Images en ligne de commande : planche de contact

Une fois de plus, la ligne de commande permet de faire des choses extraordinaires.

Pendant longtemps, j’ai cherché des soft permettant de réaliser des planches de contact. Il s’agit de mettre des photos de petites tailles en lignes et colonnes sur une feuille. Pendant un certain temps, Photoprint fut le logiciel que j’ai utilisé pour cela. Il était bien construit et faisait bien ce qu’on lui demandait. Malheureusement, il a disparu des dépôt sous Debian. D’autres existent certainement. De plus, il est possible de réaliser cela directement au niveau de l’impression, même si la taille des vignettes ne peut être fixées si on veut en répartir plusieurs sur la même page.

Ainsi, je me suis tourné vers Image Magick, outils en ligne de commande extraordinairement complet.

Les exemples officiels
La page des montages

Je vais ici présenter un exemple très simple. Il s’agit de mettre quatre images de 2.2×2.2cm en carré sur au milieu d’une page.

Tout d’abord, il faut préparer les images en les réduisant à la bonne taille. On peut le faire avec Image Magick, mais ce n’est pas mon propos.

Ensuite, dans le répertoire contenant les images, il suffit de lancer :

montage image1.jpg image2.jpg image3.jpg image4.jpg -mode Concatenate -tile 2x2 planche.jpg

Le résultat est tout aussi parfait que la simplicité de l’expression ci-dessus.

Planche de vignettes

13. GNUpg en ligne de commande

Principe

Gnupg permet de chiffrer et de signer ses mails. Pour cela, il est nécessaire pour chaque correspondant de disposer de deux clés liées : une clé privée et une clé publique. Les clés publiques sont disponibles pour tout un chacun. Les clés privées ne sont à remettre à personne. Avec une clé publique, on peut chiffrer un message qui ne pourra être déchiffré que par le propriétaire de la clé privée correspondante. Avec la clé privée, on peut chiffrer un message qui ne pourra être déchiffré que par la clé publique.

Ainsi, pour vous envoyer un message chiffré, votre correspondant va le chiffrer avec votre clé publique. Comme vous êtes le seul à posséder la clé privée correspondante, vous êtes le seul à pouvoir le déchiffrer.

Dans l’autre sens, pour envoyer à votre correspondant un message chiffré, vous aller utiliser sa clé publique. Comme il est le seul à disposer de la clé privée correspondante, lui seul pourra déchiffrer votre message.

Simultanément, pour vous identifier, il vous suffit de chiffrer votre message avec votre clé privée. Comme seule la clé publique correspondant à votre clé privée pourra le déchiffrer, vous serez obligatoirement identifié.

Installation

Vous pouvez réaliser l’installation par la commande :

apt-get install gnupg

En ne spécifiant pas la version que vous désirez, vous installerez GnuPG 2.x, soit la dernière version de GnuPG.

Il est important de bien spécifier les droits sur le dossier de configuration :

~/.gnupg

à l’aide des commandes :

chown -R $(whoami) ~/.gnupg/
find ~/.gnupg -type f -exec chmod 600 {} \;
find ~/.gnupg -type d -exec chmod 700 {} \;

On spécifie ainsi que le répertoire et tous ses fichiers (-R) appartiennent à l’utilisateur ($(whoami)), puis que tout les fichiers ne sont accessibles en lecture et écriture qu’à l’utilisateur propriétaire (droits à 600 : rw) et que le répertoire lui-même est traversable (x) et accessible en lecture et écriture (rw) pour le propriétaire (droits à 700 : rwx).

Après son installation, vous disposerez d’un ensemble de commandes pour lesquelles vous pourrez trouver de l’aide avec :

man gpg

Création d’une paire de clés

La commande de création d’une paire de clé est :

gpg --full-generate-key

Vous devez ensuite choisir le type de clé, sa longueur, sa durée de validité, le nom associé (nom et prénom à mettre sur la même ligne), l’adresse mail correspondante, un commentaire (tout cela apparaîtra sous la forme : Nom Prenon (commentaire) <adressemail>) et donner une phrase de passe longue.

Vous pouvez ensuite vérifier si votre clé a bien été créée en listant l’ensemble des clés dont vous disposez avec :

gpg --list-keys

La liste des clés retournées devrait contenir l’adresse e-mail choisie et présenter une empreinte dont les huit dernier chiffres constituent l’identifiant.

Celui-ci est utilisé pour envoyer la partie publique de la clé sur un serveur de clé public de la manière suivante :

gpg --keyserver keys.openpgp.org --send-keys identifiant

Pour trouver les clés publiques de vos correspondants, pour autant qu’ils les aient publiées sur un serveur de clés, on utilise :

gpg --search-key identifiant

ou

gpg –auto-key-locate keyserver –locate-keys adresse_mail

en ayant préalablement défini le serveur dans votre fichier de configuration gpg.conf :

keyserver hkps://keys.openpgp.org

Pour récupérer ensuite cette clé publique sur le serveur de clés, on utilise :

gpg --keyserver keys.openpgp.org --recv-keys son_id_clef

en adaptant le nom du serveur en fonction de celui qu’on choisit, sachant que les clés publiques sont répliquées sur tous les serveurs au bout de quelques heures.

Vous pouvez aussi demander à votre correspondant de vous envoyer sa clé publique par mail et tenter de la récupérer directement (Ctrl-K sous mutt) ou récupérer le fichier joint, au format .asc par exemple. Ensuite pour l’importer dans votre trousseau de clés :

gpg --import ~/dossier/lefichier.asc/

Vérifiez ensuite sa présence par gpg –list-keys.

Pour effacer une clé publique :

gpg --delete-key adresse@mail

Et pour effacer une clé privée :

gpg --delete-secret-keys adresse@mail

Finalement, si vous voulez afficher l’empreinte d’une clé du trousseau :

gpg --fingerprint adresse@mail

Chiffrer un fichier

Pour chiffrer un fichier de manière asymétrique, c’est-à-dire avec la clé publique d’un destinataire en vue de le lui envoyer, il faut utiliser la commande :

gpg -e --recipient sonID monFichier

-e signifie « encrypt ». Pour signer (-s) avec l’une de mes clé publique et chiffrer avec la sienne :

gpg -s --local-user monID -e --recipient sonID monFichier

On peut aussi utiliser la syntaxe suivante :

gpg --encrypt --sign --armor --recipient emailDestinataire monFichier

On sign ainsi avec la clé par défaut (sinon, il faut utiliser –local-user pour préciser la clé qu’il faut utiliser pour signer) et on chiffre avec celle du destinataire donné par son email. Le fichier chiffré monFichier devient monFichier.asc et est signé et crypté. L’option armor précise qu’on veut un fichier chiffré en ASCII, du texte au lieu d’un fichier binaire par défaut. Ainsi, par exemple, il faut écrire :

gpg --encrypt --sign --local-user truc@machin.org --armor --recipient chose@autre.org monFichier

pour crypter le fichier monFichier en monFichier.asc avec la clé publique de chose@autre.org et le signer avec la clé privée de truc@machin.org.


Pour déchiffrer le fichier chiffré comme décrit ci-dessus, il faut utiliser la syntaxe :

gpg --decrypt monFichier.asc > monFichier

Évidemment, monFichier peut être pourvu d’une extension. Par exemple : monFichier.png deviendra monFichier.png.asc par chiffement et sera déchiffré en monFichier.png.

Utilisation avec mutt

L’utilisation de pgp avec mutt est immédiate. Si un message vous est remis chiffré, en l’ouvrant votre phrase de chiffrement vous sera demandée pour pouvoir le lire. De plus, s’il est signé, cela sera mentionné au bas du mail.

Pour récupérer la clé publique de votre correspondant, il suffit de presser sur : Ctrl-K. Mutt, va alors chercher celle-ci et l’importer dans votre trousseau de clés.

Pour chiffrer un mail, il faut presser la touche p, puis plusieurs choix sont possibles :

  • c : chiffre avec la clé du destinataire ou demande avec quelle clé cela doit être fait,
  • s : signe avec la clé par défaut,
  • e : permet de spécifier avec quelle clé il faut signer (on spécifie une adresse mail),
  • d : chiffre et signe avec la clé par défaut,
  • m : s/Mime ?
  • r : ne fait rien.

On choisit les clé nécessaires et enfin on l’envoie avec y. Cela signifie aussi que pour répondre à un message signé et chiffré sans que la réponse soit chiffrée ou sans qu’elle ne soit chiffrée et signée, voir sans rien du tout, il suffit d’utiliser la touche p et de choisir l’une ou l’autre des solutions.

Remarquez que si vous vous retrouvez bloqué parce que mutt vous demande quelque chose que vous n’avez pas, comme le numéro de la clé d’un correspondant, vous pouvez ressortir de l’invite à la demande avec Ctrl-G.

Pour diffuser sa clé publique en même temps qu’on envoie un message, il suffit de presser sur ESC k pour l’attacher au message. Une demande du numéro d’ID de la clé qu’on veut attacher sera faite. Un gpg –list-keys permettra de trouver les 8 dernier caractères de l’ID.

On peut voir si un message contient une clé publique par l’intermédiaire du drapeau K. S’il est présent, une clé l’est aussi. Pour la récupérer, il suffit d’utiliser CTRL K.

Un problème qui peut apparaître vient du fait qu’en chiffrant uniquement les messages envoyés avec la clé publique de leur destinataires, on s’empêche de les relire. Ainsi, par défaut, si on ne précise pas à mutt qu’il est nécessaire de réaliser une copie chiffrée avec notre propre clé des réponses chiffrées qu’on envoie, on ne peut ensuite les relire. Pour le spéficier, il faut mettre dans ./mutt_files/gpg.rc :

set pgp_check_gpg_decrypt_status_fd

Un autre problème qui peut apparaître si on dispose de plusieurs clé est que la clé utilisée pour signer ne soit pas la bonne. En effet, mutt utilise par défaut la clé privée du compte principal pour signer les messages envoyés. Or, si le destinataire s’attend à une signature faite avec une autre clé, il recevra l’avertissement d’une signature invalide. Pour résoudre ce problème, il faut spécifier quelle clé privée utiliser pour signer. Par exemple, on peut utiliser un hook sur la boite aux lettres du compte disposant de la seconde clé :

folder-hook boiteauxlettres set pgp_sign_as="idclé"

Ainsi, tous les mails envoyés depuis cette boite aux lettres seront signés par la clé d’identifiant idclé. Pour autant qu’on ait aussi mis un hook pour l’adresse mail :

folder-hook boiteauxlettres set from="adressemail"

le destinataire verra non seulement une bonne signature, mais pourra répondre à la bonne seconde adresse.

Pour finir, quelques références, dont la première est très claire :

https://linuxfr.org/news/bien-demarrer-avec-gnupg#toc-autres-m%C3%A9thodes-de-distribution

https://gnupg.org/howtos/fr/GPGMiniHowto-3.html

https://ungeek.fr/gpg-et-le-chiffrement-pour-tous/#communiqueravecunkeyserver

10. Manipuler un pdf en ligne de commande

Préalable

Tout d’abord, il est possible que les manipulations sur des PDF réalisées à partir d’Image Magick mènes à une erreur du type :

convert-im6.q16: attempt to perform an operation not allowed by the security policy `PDF'

Ce n’est pas une erreur importante. Image Magick (IM) refuse simplement d’effectuer des opérations sur des PDF pour des raisons de sécurité. Pour lui demander de pourvoir le faire, il faut changer un élément d’une ligne d’un ficher d’IM. Pour cela, on peut utiliser vi, par exemple :

sudo vi /etc/ImageMagick-6/policy.xml

La ligne à changer est la suivante :

<policy domain="coder" rights="none" pattern="PDF" />

et mettre à la place :

<policy domain="coder" rights="read | write" pattern="PDF" />

Sans oublier finalement d’enregistrer.

Redimentionner

Pour redimensionner un lot d’images en ligne de commande, on peut utiliser Image Magick (IM). Ce paquet (à installer sur votre système) dispose d’une commande nommée :

mogrify

Cette commande est identique à « convert » mais elle remplace les fichiers sources par les fichiers modifiée, à moins qu’on lui spécifie un chemin particulier à l’aide de l’option path :

mogrify -resize 50% -quality 80 -path mon_dossier *.jpg

Cette commande diminue la taille des images du répertoire courant par deux, les compresse à 80% et les place dans le répertoire mon_dossier.

Il faut relever qu’on peut spécifier la taille en pixels : -resize 800×600 par exemple.

On peut aussi modifier la résolution

convert -units PixelsPerInch -density 300 image.jpg

Finalement, on peut utiliser une autre commande Image Magick pour obtenir des informations sur l’image :

identify -verbose image.jpg | grep Quality

Sans le -verbose, on obtient moins d’informations et le pipe (|) sur grep permet la recherche sur le mot Quality.

On peut aussi obtenir des information sur les images qui se trouvent dans le pdf avec la commande suivante :

pdfimages -list nom_du_fichier.pdf

Elle vous permettra d’obtenir le nombre d’images dans le pdf, leur résolution, leur taille, etc.

Voilà, évidemment un man sur mogrify ou convert vous en dira plus. La documentation d’Image Magick est disponible là : https://imagemagick.org/.

Optimiser (redimensionner la taille) d’un PDF

Pour optimiser la taille d’un pdf, on peut utiliser Imagemagick avec sa commande « convert » de la manière suivante :

convert -density 200x200 -quality 60 -compress jpeg perso.pdf output.pdf

où les arguments passés à convert définissent la résolution des images, leur qualité et le type de compression qu’on leur applique. Les choix ci-dessus permettent de réduire la taille d’un pdf de 50 Mo à 5 Mo, par exemple, soit d’un facteur 10.

Créer un pdf à partir de plusieurs fichiers jpg

Pour cela, trois commandes sont nécessaires :

cd ~/lerepertoire/contenant/lesficiers
ls *.jpg | xargs -I% convert % %.pdf
pdftk *.pdf cat output merged.pdf && rm *.jpg.pdf

En enchaînant celles-ci, on obtient un fichier « merged.pdf » qui contient toutes les pages.

Comparer deux pdfs

Si vous utilisez vim, comparer deux pdfs en ligne de commande se fait en une seule ligne :

vimdiff <(pdftotext /chemin/vers/premier.pdf -) <(pdftotext /chemin/vers/second.pdf -)

Commande tirée de l’article PDF compare on linux command line.

PDF et changement de formats

On vante souvent les formats vectoriels comme permettant de redimensionner facilement les images sans perte de qualité.

Sous Gimp, avec un format bitmap, l’agrandissement d’une image initialement prévue pour être imprimée sur une feuille A4 pour une impression sur une feuille A3 est simple. On peut passer par « Taille de l’impression » ou agrandir l’image directement dans la boite d’impression. Évidemment, la résolution diminuera.

Comment procéder au même agrandissement, de A4 en A3, pour un fichier vectoriel de type PDF ?

Sans entrer dans la compréhension des éléments qui composent un fichier PDF, le but de cet article est simplement de présenter un outil permettant un tel changement de format simplement.

Cet outil se nomme :

page-crunch
L’interface graphique de page-crunch

Tout fonctionne avec des réglages minimaux comme ceux qu’on peut voir sur la figure ci-dessus.

Différentes options sont disponibles au surplus de ce changement de format comme la réalisation d’un livre A5 par une impression de pages correctement placées pour être imprimées en recto-verso sur des feuilles A4, puis assemblées et agrafées sur la pliure centrale.

Mais ceci est une autre histoire.

9. Gestion du temps et des tâches en ligne de commande

Les deux softs remarquables pour ce type d’utilisation sont Timewarrior et Taskwarrior. Leur installation est très simple :

apt-get install timewarrior taskwarrior

Préalable

Avant toute chose, il faut bien comprendre la différence entre un gestionnaire de tâches et un gestionnaire de temps. Le plus simple est de considérer que le premier se concentre sur l’avenir et le second sur le passé.

Ainsi, quand on a une tâche à réaliser, elle peut être en cours ou finie. Un gestionnaire de tâche va donc comporter essentiellement la possibilité d’ajouter une tâche, d’en faire la liste et de la marquer comme finie. Par ailleurs, il doit pouvoir gérer des regroupements. Ainsi, il faut pouvoir considérer des projets qui regroupent plusieurs tâches.

Le gestionnaire de temps est simplement là pour enregistrer le temps passé sur chaque tâche. On doit pouvoir l’utiliser pour faire des rapports permettant de filtrer le temps passé sur les différentes tâches.

Ainsi, en utilisant simultanément les deux gestionnaires, on peut conserver l’histoire du temps passé et visualiser ce qu’il reste à faire.

Taskwarrior

Une bonne idée pour bien gérer ses tâches est de suivre la liste des bonnes pratiques décrites à l’adresse : https://taskwarrior.org/docs/best-practices.html

Timewarrior et taskwarrior

Notez que taskwarrior ne permet pas de visualiser le temps passé sur une tâche pendant son activité. Ce n’est pas son rôle. Pour pouvoir le faire il s’agit d’utiliser timewarrior. Or, il faut aussi lier ces deux programmes. Ce qui est relativement simple. Les deux liens suivants vous permettrons de le faire :

https://timewarrior.net/docs/taskwarrior.html

https://lazybear.io/posts/2019-12-26-using-timewarrior-with-taskwarrior/

Cela se fait par l’ajout d’un « hook », c’est-à-dire d’un petit programme fourni par timewarrior à mettre dans le répertoire de taskwarrior. Sous Debian, ce programme se trouve dans la documentation de timewarrior et pour le mettre dans le bon répertoire de taskwarrior il faut utiliser la première commande ci-dessous. La seconde permet simplement de le rendre exécutable.

cp /usr/share/doc/timewarrior/ext/on-modify.timewarrior ~/.task/hooks
chmod +x ~/.task/hooks/on-modify.timewarrior

Ensuite, on vérifie que tout est bien en ordre avec la commande :

task diagnostics

qui devrait retourner une ligne comme :

Active: on-modify.timewarrior (executable)

On peut maintenant travailler avec les deux logiciels simultanément. En démarrant une tâche, taskwarrior va utiliser timewarrior pour lancer le décompte du temps passé sur celle-ci en lui affectant plusieurs tags. Ainsi, démarrer la tâche truc du projet machin démarrera un décompte auquel seront affectés les tags machin et truc. Retrouver celui-ci sera alors aisé en utilisant timewarrior.

Timewarrior

La référence pour la documentation sur timewarrior est la suivante :

https://timewarrior.net/docs

Sommaires

Essentiellement, deux manières de représenter l’information temporelle sont disponibles. Il s’agit du « rapport de synthèse » ou « summary report » et des « cartes » ou « charts ». On y accède par les commandes suivantes (exemples repris du site ci-dessus) :

timew summary
timew summary today
timew summary today - tomorrow
timew summary today to tomorrow
timew summary 2016-06-18T00:00
timew summary 2016-06-18T00:00 - 2016-06-19T00:00:00
timew summary 18th
timew summary saturday
timew summary :week
timew summary :month

Ce qui permet d’obtenir :

Pour filtrer le rapport en fonction d’un tag précis, il faut écrire :

timew summary :year leTagPrecis

Cela permettra de voir l’ensemble des tâches réalisées pendant une année pour le projet ou sous le tag « leTagPrecis ».

La seconde représentation comporte trois possibilités : day, week et month. La commande se décline ainsi :

timew day Test
timew week
timew month

Les arguments de ces commandes sont nombreux, notamment il existe la possibilité de limiter l’affichage automatiquement aux jours nécessaires.

Pour l’affichage suivant ici sur deux lignes en raison de la taille d’affichage de la console :

Timewarrior repose donc sur les tags. Indépendamment de taskwarrior, il est possible de lancer l’enregistrement d’une activité en utilisant la commande :

timew machin start

De cette manière, en lançant l’enregistrement, on lui affecte un tag. On peut en prendre conscience par le fait qu’il est possible de lancer l’enregistrement uniquement par :

timew start

pour ensuite affecter à cet enregistrement un tag particulier par :

timew @1 tag 'Un ptit essai'

où @1 est le numéro de la tâche qui vient de finir ou celui donné dans la liste des enregistrements obtenue par :

timew summary :month :ids

En séparant les tags par des espaces, on peut en mettre plusieurs. Ainsi, en utilisant taskwarrior pour démarrer une tâche par :

task machin start

on va démarrer son enregistrement par timewarrior avec les tags machin et truc, si machin fait partie du projet truc.

Séparation des tags

Du point de vue de timew, lancer la commande :

timew start tag1 tag2

lance un compteur de temps pour chacun des tags tag1 et tag2. Ainsi, si on stoppe le compteur tag1 par :

timew stop tag1

celui associé au tag2 n’est pas stoppé. Pour stopper l’ensemble des compteurs, il faut faire :

timew stop

Arrêt et reprise

Une séquence de travail peut commencer par l’activation de timewarrior par l’intermédiaire de taskwarrior :

task 1 start

Cela va lancer timewarrior avec le tag associé à la tâche 1. Pour voir que la gestion du temps est active, il suffit d’évoquer timewarrior sans arguments :

timew

On peut ensuite soit stopper la tâche avec :

task 1 stop

soit stopper le décompte du temps sans stopper la tâche :

timew stop

Si on alors poursuivre le décompte pour la même tâche, il suffit de continuer :

timew continue

Le tag associé à la tâche démarrée précédemment sera repris pour démarrer un nouveau décompte.

Pour stopper et le décompte (timew) et la tâche (taskw), il suffit de stopper la tâche :

task 1 stop

Gestion des enregistrements

Évidemment, on peut agir sur les enregistrements s’ils n’ont pas été correctement faits. Plusieurs commandes sont disponibles :

  • timew split : coupe en deux parties égales un enregistrement en conservant ses tags.
  • timew shorten : avance la fin de l’enregistrement d’un intervalle de temps donné.
  • timew lengthen : repousse la fin de l’enregistrement d’un intervalle de temps donné.
  • timew move : repositionne un enregistrement à un moment donné par son début.
  • timew resize : redimensionne un enregistrement à un intervalle de temps donné.
  • timew untag : supprime un tag d’un enregistrement donné.

La structure précise de ces commandes est très bien décrite dans la page de manuel de timew.

Pour ajouter une tâche réalisée mais oubliée, il suffit d’utiliser :

timew track 2021-11-05T08:50:00 - 2021-11-05T09:35:00 Montag

Puis de trouver son numéro de référence par :

timew summary 2021-07-01 - now :ids

et d’ajouter des informations supplémentaires avec :

timew @1 tag 'Commentaires'

ou @1 est le numéro de la tâche.

3. Comment relever ses mails en ligne de commande

Dans la première partie, on a vu comment installer et configurer les outils nécessaires pour relever ses mails en ligne de commande. Essentiellement, il s’agit de fetchmail et Mutt.

Ainsi, pour relever ses mails, on utilise la suite de commandes suivantes :

fetchmail -kv -m "/usr/bin/procmail -d %T" & mutt -y

Pour rappel, succinctement, fetchmail/procmail va relever les mails et les distribuer dans les boites aux lettres (k laisse les messages sur le serveur, v rend fetchmail verbeux et m les envoie à procmail pour le tri). Puis, on lance mutt (y pour avoir les boites aux lettres).

Il faut maintenant apprendre à utiliser mutt.

De manière générale, si à la ligne de commande correspond un réel gain de temps, il est évident qu’il faut en apprendre la philosophie. Avec elle, lire attentivement, posément, est un impératif. Mémoriser des équivalents claviers est nécessaire, même s’il ne faut pas en exagérer la difficulté. Avec des interfaces graphiques la mauvaise réactivité permet de trouver normal de devoir parcourir les menus presque au ralenti. En ligne de commande , comme tout va plus vite, on a parfois l’impression d’exigences plus élevées. Ce n’est pas le cas évidemment et si comme avec tout logiciel il faut un certain temps pour être à l’aise, il n’est pas nécessaire de le faire rapidement et d’envisager de tout connaître.

On va donc ici donner quelques manipulations simples pour s’en sortir au mieux. Ensuite, à chacun de rechercher les fonctions que son usage réclame. La maxime RTFM (read the fucking manuel) sera donc de mise.

Lorsque mutt est lancé avec l’option -y, on arrive directement sur les différentes boites aux lettres.

Relevons cependant quelques éléments pratiques qui pourraient poser des problèmes :

  • Pour effacer des messages, il suffit de les marquer de la lettre « D » en pressant la touche <d> sur le message sélectionné. C’est simple. Mais, il faut relever que quand le message est marqué « D », il n’est plus possible de le sélectionner. Annuler l’effacement semble donc problématique. La solution est de se positionner dans la liste des messages sur le message suivant en date qui n’a pas été effacé et de presser la touche <u>. Ainsi, le message effacé ne le sera plus.
  • Quand on lance mutt par la commande <mutt -y>, on obtient la liste des boîtes aux lettres. Quand on a choisi d’en consulter une et qu’on est sur la liste des messages qu’elle contient, pour revenir aux boîtes aux lettres, il suffit de presser la touche y.

Voici enfin une liste des équivalents claviers qui permettent de gérer au mieux vos mails :


? pour obtenir de l’aide

t pour modifier la liste des destinataires,
c pour modifier la liste des personnes en Cc,
b pour modifier la liste des personnes en Bcc,
s pour modifier le sujet,
e pour rééditer le message,
a pour attacher des fichiers au mail,
p pour accéder aux fonctions de cryptage et de signature de GnuPG (voir ci-dessous),
q pour annuler l’envoi du mail,
y pour envoyer le mail.
r pour répondre à l’expéditeur du mail sélectionné,
g pour répondre à l’expéditeur et aux autres destinataires du mail sélectionné,
Tab pour aller au mail non lu suivant,
v pour faire la liste des fichiers attachés d’un mail puis s pour les détacher et les enregistrer sur le disque dur,
h pour afficher/cacher le message avec tous ses headers,
f pour transférer le mail sélectionné à quelqu’un,
d pour marquer le mail comme devant être effacé,
u pour annuler le marquage d’effacement,
F pour marquer/démarquer le message comme important, i.e. afficher un point d’exclamation au niveau du message,

a pour ajouter ou éditer l’entrée de l’expéditeur du message dans le carnet d’adresse,

$ pour réactualiser la boîte mail (effacer les messages marqués comme devant être effacés et afficher les messages qui viennent d’arriver),
G pour aller directement à la liste des boites mails,
o pour trier les messages de la boîte mail : il propose alors le choix entre un tri par date, par expéditeur, par destinataire, par sujet, par discussion (tri normal), etc…
w pour mettre un flag sur un message : il propose alors une liste des flags (cela permet notamment de remettre un message comme non-lu en remettant le flag N),
W pour enlever un flag ; par exemple W suivi de N marque comme lu le message,

q pour quitter Mutt.

Pour ajourner un message, il faut l’enregistrer, soit :wq dans vi et ensuite utiliser la touche P. Attention, pas p minuscule, qui chiffre le message, mais sa majuscule. Pour le rééditer composez simplement un message avec la touche m et il vous sera demandé si vous voulez reprendre le message, voir vous seront présentés les messages ajournés à choisir.