Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
tutoriel:encodage_caracteres [Le 18/04/2012, 17:16]
sogyam [Outils de migration]
tutoriel:encodage_caracteres [Le 11/09/2022, 12:18] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-{{tag>​encodage ​utf8 BROUILLON}}+{{tag>​encodage ​ BROUILLON}}
  
 ---- ----
Ligne 31: Ligne 31:
 **Un texte, suite de caractères,​ n'a de sens que si l'on connaît son encodage.** **Un texte, suite de caractères,​ n'a de sens que si l'on connaît son encodage.**
  
-  - L'​encodage par défaut sous Windows (interface graphique) est cp1252.+  - L'​encodage par défaut sous Windows (interface graphique) est [[wpfr>​Windows-1252|cp1252]].
   - L'​encodage par défaut d'une console DOS est cp850 pour les systèmes de l'​Europe de l'​Ouest (Western ​ Europe) ou cp437 pour les États-Unis.   - L'​encodage par défaut d'une console DOS est cp850 pour les systèmes de l'​Europe de l'​Ouest (Western ​ Europe) ou cp437 pour les États-Unis.
   - Aucun éditeur n'est capable — et ne le sera jamais — de déterminer l'​encodage d'un fichier texte.   - Aucun éditeur n'est capable — et ne le sera jamais — de déterminer l'​encodage d'un fichier texte.
-  - Les bonnes applications peuvent travailler indifféremment avec différents encodages (généralement,​ ce sont ASCII, cp1252, ISO-8859-1 et UTF-8, ISO-8859-15 est moins utilisé) pour les utilisateurs de langues latines et anglo-saxonnes.+  - Les bonnes applications peuvent travailler indifféremment avec différents encodages (généralement,​ ce sont ASCII, ​[[wpfr>​Windows-1252|cp1252]][[wpfr>​ISO_8859-1|ISO-8859-1]] et [[wpfr>​Unicode|UTF-8]], ISO-8859-15 est moins utilisé) pour les utilisateurs de langues latines et anglo-saxonnes.
   - Du point 4, il découle que les systèmes d'​exploitation sont cohérents, les problèmes qui se posent sont généralement dus à une méconnaissance du fonctionnement des encodages.   - Du point 4, il découle que les systèmes d'​exploitation sont cohérents, les problèmes qui se posent sont généralement dus à une méconnaissance du fonctionnement des encodages.
   - Il est faux de croire qu'il faille changer l'​encodage d'un fichier pour passer d'un système à un autre. Si l'​échange de fichiers est régulier, il est préférable de régler ses outils de travail (éditeurs, etc.) en conformité avec les-dits fichiers.   - Il est faux de croire qu'il faille changer l'​encodage d'un fichier pour passer d'un système à un autre. Si l'​échange de fichiers est régulier, il est préférable de régler ses outils de travail (éditeurs, etc.) en conformité avec les-dits fichiers.
Ligne 42: Ligne 42:
 [[http://​www.joelonsoftware.com/​articles/​Unicode.html]] [[http://​www.joelonsoftware.com/​articles/​Unicode.html]]
  
 +La version en français:​http://​french.joelonsoftware.com/​Articles/​Unicode.html
 ===== Un peu de théorie ===== ===== Un peu de théorie =====
  
Ligne 49: Ligne 50:
 Cela inclut les codes sources, les fichiers log, les noms de fichiers (système de fichiers), etc. Cela inclut les codes sources, les fichiers log, les noms de fichiers (système de fichiers), etc.
  
-Pour des fichiers binaires, il existe différents types d'​encodage,​ mais qui n'ont rien à voir avec le sujet de cette page. +Pour des fichiers binaires, il existe différents types d'​encodage,​ mais qui n'ont rien à voir avec le sujet de cette page.
  
 L'​objectif de l'​encodage est d'​**associer un numéro pour chaque caractère d'une langue**. L'​objectif de l'​encodage est d'​**associer un numéro pour chaque caractère d'une langue**.
  
 <​note>​ <​note>​
-En informatique,​ un codage de caractères est un code qui associe un jeu de caractères d'une langue naturelle (comme un alphabet) avec un jeu de quelque chose d'​autre,​ comme par exemple des nombres ou des signaux électriques. Par exemple, le code Morse (qui associe l'​alphabet latin à une série de pressions longues et de pressions courtes sur le manipulateur morse du télégraphe) et le code ASCII (qui code les lettres, les chiffres et d'​autres symboles comme des entiers codés sur 7 bits) sont des codages de caractères.</​note> ​+En informatique,​ un codage de caractères est un code qui associe un jeu de caractères d'une langue naturelle (comme un alphabet) avec un jeu de quelque chose d'​autre,​ comme par exemple des nombres ou des signaux électriques. Par exemple, le code Morse (qui associe l'​alphabet latin à une série de pressions longues et de pressions courtes sur le manipulateur morse du télégraphe) et le code ASCII (qui code les lettres, les chiffres et d'​autres symboles comme des entiers codés sur 7 bits) sont des codages de caractères.</​note>​
  
 Il est indispensable,​ pour l'​échange d'​informations de **préciser le codage utilisé**. Il est indispensable,​ pour l'​échange d'​informations de **préciser le codage utilisé**.
Ligne 89: Ligne 90:
   * Windows 98 (FAT32): cp1252   * Windows 98 (FAT32): cp1252
   * Windows XP (ntfs): cp1252. ??   * Windows XP (ntfs): cp1252. ??
 +  * Windows 7 : iso-8859-1
 +  * et pour Windows 10?
    
  
Ligne 94: Ligne 97:
  
   * Dans un fichier HTML correctement rédigé, l'​encodage est identifié par le rédacteur dans l'​en-tête de la page, il suffit donc de parcourir les premières lignes du code source de celle-ci (Ctrl+U pour y accéder).   * Dans un fichier HTML correctement rédigé, l'​encodage est identifié par le rédacteur dans l'​en-tête de la page, il suffit donc de parcourir les premières lignes du code source de celle-ci (Ctrl+U pour y accéder).
-  * Dans un fichier texte, //a priori// aucune reconnaissance automatique n'est possible. Néanmoins, il y a quelques possibilités de deviner le contenu lorsque certains caractères sont présents (commande file -i). +  * Dans un fichier texte, //a priori// aucune reconnaissance automatique n'est possible. Néanmoins, il y a quelques possibilités de deviner le contenu lorsque certains caractères sont présents (commande file -i) : 
-  ​* ​+
 <​code>​ <​code>​
       file -i *       file -i *
Ligne 103: Ligne 106:
 </​code>​ </​code>​
  
-> FIXME Explication du retour de la commande à clarifier+La commande ​retourne le type du fichier, par exemple //​text/​xml//​ s'il s'agit d'un fichier XML, puis il indique le type d'​encodage ​à la suite de "​charset="​ : par exemple, dans le cas de c.txt, l'​encodage de caractère détecté est //utf-8//.
  
 ==== Conversions ==== ==== Conversions ====
Ligne 119: Ligne 122:
 </​code>​ </​code>​
  
-Pour s'y retrouver dans les dénominations : une [[http://​docs.python.org/​lib/​standard-encodings.html|table]].+Pour s'y retrouver dans les dénominations : une <del>[[http://​docs.python.org/​lib/​standard-encodings.html|table]]</​del>​.
  
- +=== Outils de migration ===
-==== Réglage des éditeurs de textes ==== +
- +
-La plupart des [[:​editeur_de_texte|éditeurs de textes]] sont capables de lire ou écrire dans différents encodages. Il faut trouver l'​option d'​affichage adéquate (usuellement dans //Outils → Encodage//​). +
- +
-==== Cas des partitions de disques ==== +
- +
-Pour une [[:​partitions|partition]],​ il faut préciser un encodage pour décrire les **noms de fichiers** (chaque fichier pouvant utiliser des encodages différents). +
- +
-Sous GNU/Linux, il faut indiquer l'​encodage au montage de la partition (voir [[:​mount_fstab|/​etc/​fstab]]). +
- +
-==== Outils de migration====+
  
 <note important>​ <note important>​
Ligne 144: Ligne 136:
   * [[:​iconv|iconv]] (commande en ligne, dans le package **convmv** voir https://​wiki.ubuntu.com/​UTFEightMigrationTool)   * [[:​iconv|iconv]] (commande en ligne, dans le package **convmv** voir https://​wiki.ubuntu.com/​UTFEightMigrationTool)
   * l'​utilitaire recode : [[http://​pwet.fr/​man/​linux/​commandes/​recode]],​ très puissant.   * l'​utilitaire recode : [[http://​pwet.fr/​man/​linux/​commandes/​recode]],​ très puissant.
 +
 +
 +==== Réglage des éditeurs de textes ====
 +
 +La plupart des [[:​editeur_de_texte|éditeurs de textes]] sont capables de lire ou écrire dans différents encodages. Il faut trouver l'​option d'​affichage adéquate (usuellement dans //Outils → Encodage//​).
 +
 +==== Cas des partitions de disques ====
 +
 +Pour une [[:​partitions|partition]],​ il faut préciser un encodage pour décrire les **noms de fichiers** (chaque fichier pouvant utiliser des encodages différents).
 +
 +Sous GNU/Linux, il faut indiquer l'​encodage au montage de la partition (voir [[:​mount_fstab|/​etc/​fstab]]).
 +
 ===== Liens utiles ===== ===== Liens utiles =====
  
Ligne 149: Ligne 153:
  
   * [[http://​www.joelonsoftware.com/​articles/​Unicode.html|The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)]] **(en)**   * [[http://​www.joelonsoftware.com/​articles/​Unicode.html|The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)]] **(en)**
 +  * [[http://​french.joelonsoftware.com/​Articles/​Unicode.html|Le minimum absolu que tout développeur doit absolument, positivement savoir sur Unicode et les jeux de caractères (aucune excuse !)]] **(fr)**
   * [[https://​wiki.ubuntu.com/​UTFEightMigrationTool|UTFEightMigrationTool]] **(en)**   * [[https://​wiki.ubuntu.com/​UTFEightMigrationTool|UTFEightMigrationTool]] **(en)**
   * [[wp>​Character_encoding]] **(en)**   * [[wp>​Character_encoding]] **(en)**
   * [[wpfr>​Codage_de_caractères]] **(fr)**   * [[wpfr>​Codage_de_caractères]] **(fr)**
 +  * [[http://​www.windowslinux.net/​encodage| un article clair sur l'​encodage sur le site windowslinux.net]]
 +  * [[http://​www.pigné.be/​Thibaut/​cours/​LeWeb/​mini_cours_html/​codage.htm#​lettres26plus16| Les 84 caractères de l'​alphabet français]]
  
 ==== Description d'​encodages particuliers ==== ==== Description d'​encodages particuliers ====
Ligne 160: Ligne 167:
 ==== Sources d'​information les aspects Linux ==== ==== Sources d'​information les aspects Linux ====
  
-  * [[http://​forum.ubuntu-fr.org/​viewtopic.php?​id=100832]] **(fr)** +  * [[https://​forum.ubuntu-fr.org/​viewtopic.php?​id=100832]] **(fr)** 
-  * [[http://​forum.ubuntu-fr.org/​viewtopic.php?​id=231060]] **(fr)** +  * [[https://​forum.ubuntu-fr.org/​viewtopic.php?​id=231060]] **(fr)** 
-  * [[http://​forum.ubuntu-fr.org/​viewtopic.php?​id=266393]] **(fr)**+  * [[https://​forum.ubuntu-fr.org/​viewtopic.php?​id=266393]] **(fr)**
  
 ---- ----
  
-//​Contributeurs principaux :​ [[:​utilisateurs:​fnx]],​ [[:​utilisateurs:​Rom]],​ [[:​utilisateurs:​aleph]].//​+//​Contributeurs principaux :​ [[:​utilisateurs:​fnx]],​ [[:​utilisateurs:​Rom]],​ [[:​utilisateurs:​aleph]], [[:​utilisateurs:​bcag2]].//
  • tutoriel/encodage_caracteres.1334762204.txt.gz
  • Dernière modification: Le 18/04/2012, 17:16
  • par sogyam