Les langues bizarres.

This commit is contained in:
george 2003-06-16 13:35:49 +00:00
parent 54a54e5ea1
commit 7df37a4eb0

View file

@ -0,0 +1,273 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html
PUBLIC "-//ENS/Tuteurs//DTD TML 1//EN"
"tuteurs://DTD/tml.dtd">
<html>
<head>
<title>International</title>
</head>
<body>
<h1>Courriers internationaux</h1>
<div class="resume">
<p>
Envoyer un courrier en anglais ? Pas de problème. En français ? Ça va à
peu près. En allemand ? En espagnol ? Pareil, on se débrouille. En
polonais, en danois ? C'est déjà plus difficile. En russe ou en grec ? Là
ça devient vraiment compliqué. En chinois ou en japonais ? Le cauchemar !
</p>
</div>
<h2>Se préparer</h2>
<h3>Prérequis</h3>
<p>
Pour pouvoir envoyer des courriers dans des langues bizarres, il faut avant
tout savoir taper les messages. Pour ça, vous pouvez vous référer à notre
page sur <a href="&url.tuteurs;unix/editeurs/unicode.html">comment taper de
l'Unicode</a>. Il est également utile d'avoir lu la page sur les
<a href="&url.tuteurs;theorie/encodages.html">problèmes théoriques liés aux
langues</a>.
</p>
<h3>Choisir un logiciel de courrier</h3>
<p>
Peu de logiciels de courrier gèrent correctement Unicode. En particulier, il
n'est <em>pas question d'utiliser Pine</em>. Heureusement, le meilleur
logiciel de courrier que nous ayons ici, <em>Mutt</em>, s'en tire
parfaitement. Le seul autre logiciel de courrier gérant Unicode ici est le
module courrier de Mozilla. C'est de <a href="mail-mutt.html">Mutt</a> que
nous parlerons ici.
</p>
<p>
Vous devez donc utiliser Mutt, avec comme éditeur un éditeur gérant Unicode.
Ça ne vous laisse pas énormément de choix, mais c'est le choix parmi le
meilleur. <strong>Attention</strong> : tout ceci ne marche qu'avec les
versions de <strong>Mutt à partir de 1.3</strong>.
</p>
<h2>Quand ça marche bien</h2>
<h3>Lire du courrier dans une langue bizarre</h3>
<p>
Avant toutes choses, il vous faut obtenir un
<a href="&url.tuteurs;unix/editeurs/unicode.html#s2_1">terminal en
Unicode</a> pour pouvoir lancer Mutt dedans.
</p>
<p>
<strong>Attension, sous FreeBSD</strong>, il faut prévenir Mutt qu'il est en
Unicode. Pour ça, tapez la commande suivante, puis ré-ouvrez la boîte aux
lettres :
</p>
<pre>:set charset=utf-8</pre>
<p>
Dès que vous avez ainsi lancé Mutt, tous vos courriers devraient s'afficher,
quelle que soit leur langue. Il n'y a rien de plus à faire.
</p>
<h3>Envoyer du courrier dans une langue étrange</h3>
<p>
Pour envoyer un courrier à quelqu'un disposant d'un logiciel de courrier
moderne, il n'y a rien de spécial à faire : composez le message comme
d'habitude (on a expliqué dans
<a href="&url.tuteurs;unix/editeurs/unicode.html">une autre page</a> comment
taper dans des langues exotiques), et envoyez-le.
</p>
<p>
Une petite subtilité qui peut se produire : quand vous répondez à un
courrier, vous le citez, avec en chapeau un texte d'« attribution » du
style « Le 29 février 2000, Untel Tartampion a écrit : ». Le problème
vient du é dans « écrit » : il vient directement de votre fichier
<code>.muttrc</code>, et est codé en <code>iso-8859-1</code>. Ceci peut
faire échouer la détection automatique du codage par votre éditeur. Pour
corriger ça, avant de répondre, tapez <kbd>:set attribution=</kbd>, puis
<kbd>Tab</kbd>, et corrigez.
</p>
<h2>Si ça ne marche pas</h2>
<p>
Ne lisez ça que si ça ne marche pas. Si ça marche, pas la peine de vous
compliquer la vie.
</p>
<h3>Problèmes pour lire</h3>
<p>
Il peut y avoir plusieurs causes. Si les caractères s'affichent comme des
carrés en pointillés, c'est que la police utilisée n'a pas les caractères
nécessaires, il n'y a pas grand chose à faire, à part essayer de trouver une
police plus riche.
</p>
<p>
Si le texte s'affiche rempli de points d'interrogation, le problème vient du
logiciel de courrier de votre correspondant, qui n'a pas correctement
étiqueté le courrier avec le codage utilisé. La situation n'est pas
désespérée. Appuyez sur <kbd>v</kbd>, et Mutt affichera les parties du
message (une seule en général). Sur la droite, vous verrez une mention du
genre :
</p>
<pre>
[<strong>text/plain</strong>, 8bit, <strong>iso-8859-1</strong>, 0.5K]
</pre>
<p class="continue">
Le <code>text/plain</code> permet de reconnaître le courrier lui-même dans
le cas où il y a des attachements. Ce qui nous intéresse alors est le
troisième champ, qui est ici <code>iso-8859-1</code> : ça indique que Mutt
a détecté le codage ISO-8859-1, soit le codage pour les langues
occidentales. Le plus probable est que votre courrier indique
<code>us-ascii</code>, ce qui veut dire qu'aucun codage n'est explicitement
indiqué. Ou bien il y en a un autre, qui n'est pas le bon.
</p>
<p>
Dans tous les cas, vous pouvez demander à Mutt d'essayer un autre codage de
votre choix en tapant par exemple :
</p>
<pre>:charset-hook iso-8859-1 koi8-r</pre>
<p class="continue">
où <code>iso-8859-1</code> est le codage détecté par Mutt, et
<code>koi8-r</code> celui que vous voulez lui faire essayer. Pour que ce
soit pris en compte, il faut revenir à l'index et ré-ouvrir le message.
</p>
<p>
Pour savoir quel codage essayer, il faut avoir une vague idée de la langue
dans laquelle est le message. Vous pouvez essayer les
<a name="liste_encodages">suivants</a> (les majuscules n'ont pas
d'importance) :
</p>
<ul>
<li><code>ISO-8859-1</code>, <code>ISO-8859-15</code>,
<code>Windows-1252</code>, <code>MacRoman</code> pour les <strong>langues
occidentales</strong> ;</li>
<li><code>ISO-8859-2</code>, <code>Windows-1250</code>,
<code>MacCentralEurope</code> pour les <strong>langues d'Europe
centrale</strong> ;</li>
<li><code>ISO-8859-3</code> pour les <strong>langues d'Europe du
sud</strong> ;</li>
<li><code>ISO-8859-4</code> <code>ISO-8859-13</code>,
<code>Windows-1257</code> pour les <strong>langues baltes</strong> ;</li>
<li><code>ISO-8859-5</code>, <code>KOI8-R</code>, <code>KOI8-U</code>,
<code>Windows-1251</code>, <code>CP866</code>, <code>MacCyrillic</code>,
<code>MacUkraine</code> pour le <strong>cyrillique</strong> ;</li>
<li><code>ISO-8859-6</code>, <code>Windows-1256</code> pour
l'<strong>arabe</strong> ;</li>
<li><code>ISO-8859-7</code>, <code>Windows-1253</code>,
<code>MacGreek</code> pour le <strong>grec</strong> ;</li>
<li><code>ISO-8859-8</code>, <code>Windows-1255</code> pour
l'<strong>hébreu</strong> ;</li>
<li><code>ISO-8859-9</code>, <code>Windows-1254</code>,
<code>MacTurkish</code> pour le <strong>turc</strong> ;</li>
<li><code>ISO-8859-10</code> pour les <strong>langues
nordiques</strong> ;</li>
<li><code>ISO-8859-14</code> pour le <strong>celte</strong> ;</li>
<li><code>Chinese</code>, <code>Big5</code>, <code>EUC-TW</code>,
<code>GBK</code>, <code>GB18030</code> pour le
<strong>chinois</strong> ;</li>
<li><code>EUC-JP</code>, <code>ISO-2022-JP</code>, <code>Shift_JIS</code>
pour le <strong>japonais</strong> ;</li>
<li><code>Windows-1258</code>, <code>VISCII</code>, <code>TCVN-5712</code>
pour le <strong>vietnamien</strong> ;</li>
<li><code>EUC-KR</code> pour le <strong>coréen</strong> ;</li>
<li><code>MacCroatian</code> pour le <strong>croate</strong> ;</li>
<li><code>MacIceland</code> pour l'<strong>islandais</strong> ;</li>
<li><code>MacRomania</code> pour le <strong>roumain</strong> ;</li>
<li><code>TIS-620</code> pour le <strong>thai</strong> ;</li>
<li><code>ARMSCII-8</code> pour l'<strong>arménien</strong> ;</li>
<li><code>UTF-8</code>, <code>UTF-7</code> pour toutes les langues.</li>
</ul>
<p>
Quand vous avez trouvé quel était le bon codage, vous pouvez configurer Mutt
pour que le changement se fasse automatiquement. Pour ça, ajoutez dans votre
fichier <code>.muttrc</code> des lignes de la forme :
</p>
<pre>
message-hook . "charset-hook iso-8859-1 iso-8859-1"
message-hook ~f"<i>untel</i>" "charset-hook iso-8859-1 koi8-r"
</pre>
<p class="continue">
La première ligne indique à mutt que pour tous les messages, il doit
convertir <code>iso-8859-1</code> en lui-même ; elle sert à effacer les
effets de la suivante. La seconde ligne dit que pour les messages
d'<em>Untel</em>, il faut prendre l'<code>iso-8859-1</code> pour du
<code>koi8-r</code>.
</p>
<p>
L'idéal est quand même de convaincre votre correspondant de configurer
correctement son logiciel de courrier.
</p>
<h3>Problèmes pour écrire</h3>
<p>
Le problème qui peut vous arriver, c'est que votre correspondant n'arrive
pas à vous lire, parce que son logiciel de courrier ne connaît pas Unicode.
Si vous n'arrivez pas à le convaincre d'en adopter un moins rudimentaire,
voilà comment vous adapter à lui.
</p>
<p>
La première méthode est de trouver quel codage il accepte. En général c'est
facile : c'est le même que celui des courriers qu'il envoie, et nous avons
vu plus haut comment le déterminer. Au pire, il vous reste à tester les
différents codages de la liste jusqu'à en trouver un qu'il arrive à lire.
Mettons pour la suite que le codage qui convient est <code>koi8-r</code>.
</p>
<p>
Mutt possède une option <code>send_charset</code>, dont la valeur par défaut
est <code>us-ascii:iso-8859-1:utf-8</code>. Ça veut dire qu'au moment
d'envoyer un courrier, Mutt essaiera successivement les codages
<code>us-ascii</code>, puis <code>iso-8859-1</code> et enfin
<code>utf-8</code>, jusqu'à en trouver un assez riche pour coder votre
courrier (<code>utf-8</code> est toujours assez riche). Il s'agit donc
d'ajouter le codage de votre correspondant à la liste, en mettant la ligne
suivante dans votre fichier <code>.muttrc</code> :
</p>
<pre>set send_charset="us-ascii:iso-8859-1:koi8-r:utf-8"</pre>
<p class="continue">
Ceci se lit : si le courrier ne contient que des caractères anglo-saxons,
utiliser le codage <code>us-ascii</code>, sinon, si le courrier contient
aussi des caractères accentués occidentaux, utiliser le codage
<code>iso-8859-1</code>, sinon, si le courrier contient des caractères
cyrilliques, utiliser le codage <code>koi8-r</code>, et sinon enfin utiliser
le codage <code>utf-8</code> (entre autres si le courrier contient des
accents occidentaux <em>et</em> du cyrillique, par exemple pour un courrier
bilingue en français et russe).
</p>
<p>
Au moment de l'envoi, Mutt indique le codage qu'il a choisi :
</p>
<pre>
- I 1 ~/tmp/mutt-clipper-25879-1 [text/plain, 8bit, <strong>koi8-r</strong>, 0.1K]
</pre>
<p class="continue">
Vous pouvez le modifier avec <kbd>Ctrl-T</kbd> si vous n'êtes pas satisfait,
ou pour changer au cas par cas. Il ne reste plus qu'à envoyer.
</p>
<div class="metainformation">
Auteur : Nicolas George.
Dernière modification le <date value="$Date: 2003-06-16 13:35:49 $"/>.
</div>
</body>
</html>