- Latin-1
-
ISO 8859-1
Unicode Jeux de caractères - UCS (ISO/CEI 10646)
- ISO 646, ASCII
- ISO 8859-1
- WGL4
- UniHan
Équivalences normalisées Propriétés et algorithmes - ISO 15924
- Casse
- Ordonnancement UCA
- Texte bi-directionnel
Codage Autres transformations Applications d'échanges de données La norme ISO 8859-1, dont le nom complet est ISO/CEI 8859-1, et qui est souvent appelée Latin-1 ou Europe occidentale, forme la première partie de la norme internationale ISO/CEI 8859, qui est une norme de l'Organisation internationale de normalisation pour le codage des caractères en informatique.
Elle définit ce qu'elle appelle l'alphabet latin numéro 1, qui consiste en 191 caractères de l'alphabet latin, chacun d'entre eux étant codé par un octet (soit 8 bits). ISO 8859-1 reprend le codage des caractères imprimables d'US-ASCII.Dans les pays occidentaux, cette norme est utilisée par de nombreux systèmes d’exploitation, dont UNIX, Windows ou AmigaOS. Elle a donné lieu à quelques extensions et adaptations, dont Windows-1252 et ISO 8859-15. La distinction entre ASCII, ISO 8859-1, ISO 8859-15, Windows-1252 et MacRoman est une source de confusion parmi les développeurs de programmes informatiques. Le Multinational Character Set créé par Digital Equipment Corporation pour le terminal informatique VT220 est considéré comme à la fois l'ancêtre de l'ISO 8859-1 et de l'Unicode[1].
Sommaire
Principe
En première approximation, ISO 8859-1 étend US-ASCII en ajoutant de nombreux caractères accentués occidentaux.
L'ISO 8859-1 recouvre les caractères utilisés par les langues européennes suivantes : albanais, allemand, anglais, basque, catalan, danois, gaélique écossais, espagnol, féringien, finnois (sauf caractères Š et š), français (sauf caractères Ÿ, œ et Œ), islandais (sauf caractères „ et “), gaélique irlandais, italien, néerlandais, norvégien, portugais, romanche et suédois. L'afrikaans et le swahili sont également couverts. Cette norme est donc utilisée en Europe de l'Ouest, en Amérique, en Australie et dans une grande partie de l'Afrique.
Les caractères œ et Œ n'ont pas été inclus dans ISO 8859-1 car les principaux représentants francophones dans le groupe de travail (GT) n'ont pas estimé cela nécessaire ; l'un estimait qu'il s'agissait d'une simple ligature typographique, et l'autre était employé par un grand fabricant d'imprimantes qui ne les avait pas inclus dans ses imprimantes[2]
Les 191 caractères de ISO 8859-1 sont représentés sous forme de glyphes (œil) dans le tableau suivant. Les titres des lignes et des colonnes indiquent les codes hexadécimaux correspondant à chaque caractère, par exemple, le code hexadécimal de « L » est 4C, soit 01001100 en binaire ou 76 en décimal.
ISO/CEI 8859-1 x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF 0x caractères de contrôle et divers non imprimables 1x 2x ! " # $ % & ' ( ) * + , - . / 3x 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 4x @ A B C D E F G H I J K L M N O 5x P Q R S T U V W X Y Z [ \ ] ^ _ 6x ` a b c d e f g h i j k l m n o 7x p q r s t u v w x y z { | } ~ 8x caractères de contrôle et divers non imprimables 9x Ax ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ® ¯ Bx ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ Cx À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Dx Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß Ex à á â ã ä å æ ç è é ê ë ì í î ï Fx ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ Dans cette table, 20 en hexadécimal (32 en décimal) est le code correspondant au caractère « espace » (souvent représenté par SP, de space en anglais), et A0 (160) est le code de l'espace insécable (souvent représenté par NBSP, de no-break space en anglais). AD (173) est un petit tiret, qui n'apparaît pas du tout dans certains navigateurs (souvent représenté par SHY, de soft hyphen en anglais). Les codes 00 (0) à 1F (31) et 7F (127) à 9F (159) ne sont pas assignés en ISO 8859-1.
ISO 8859-1 par rapport à ISO-8859-1
L'IANA (en anglais Internet Assigned Numbers Authority) a validé, pour une utilisation sur Internet, l’ISO-8859-1 (remarquez le tiret supplémentaire), un sur-ensemble de l'ISO/CEI 8859-1.
Cette carte de caractères, ou jeu de caractères, ou page de codes, supplée l'ISO/CEI 8859-1 en attribuant des caractères de contrôle aux valeurs 00 à 1F, 7F, et 80 à 9F. On obtient de cette manière 256 caractères recouvrant toutes les valeurs 8 bits possibles.
L'IANA autorise l'utilisation des alias suivants pour l'ISO-8859-1 (à utiliser indépendamment de toute capitalisation) :
- ISO_8859-1:1987
- ISO_8859-1
- ISO-8859-1
- iso-ir-100
- csISOLatin1
- latin1
- l1
- IBM819
- CP819
Le nom Latin-1 est une appellation informelle non reconnue par l'organisation ISO ou IANA, mais utilisée par certains logiciels.
Le tableau suivant montre l'ISO-8859-1, avec en texte souligné les abréviations représentant les caractères de contrôle et les espaces.
ISO-8859-1 x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF 0x NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI 1x DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 2x SP ! " # $ % & ' ( ) * + , - . / 3x 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 4x @ A B C D E F G H I J K L M N O 5x P Q R S T U V W X Y Z [ \ ] ^ _ 6x ` a b c d e f g h i j k l m n o 7x p q r s t u v w x y z { | } ~ DEL 8x PAD HOP BPH NBH IND NEL SSA ESA HTS HTJ VTS PLD PLU RI SS2 SS3 9x DCS PU1 PU2 STS CCH MW SPA EPA SOS SGCI SCI CSI ST OSC PM APC Ax NBSP ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ® ¯ Bx ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ Cx À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Dx Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß Ex à á â ã ä å æ ç è é ê ë ì í î ï Fx ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ Il existe d'autres parties de la norme ISO/CEI 8859 à laquelle correspond un jeu de caractères validé par l'IANA, par exemple l'ISO/CEI 8859-10 (alphabet latin no 6) ressemble fortement au jeu de caractères ISO-8859-10.
Chacune des normes ISO/CEI 8859-x codifie les caractères de la même manière : elle couvre la plage ASCII (20-7E) plus 96 caractères supplémentaires dans la plage A0-FF, pour un total de 191 caractères. Les ensembles ISO-8859-x ajoutent tous les caractères de contrôle ISO 646 C0 dans la plage de 00 à 1F, et des caractères de contrôle supplémentaires dans la plage 7F-9F, offrant ainsi un ensemble de 256 caractères. L'ISO-8859-1 est le seul, parmi tous ces ensembles, dont la codification des caractères soit équivalente aux 256 premiers codes de l'Unicode.
ISO-8859-1 est le codage standard utilisé par le système X Window sur la plupart des machines UNIX.
Codages de caractères apparentés
MacRoman
Les ordinateurs Apple Macintosh les plus anciens utilisent un codage nommé MacRoman, qui diffère de l'ISO 8859-1 de par les 32 premiers et 127 derniers caractères, mais inclut tout de même tous les caractères présents dans l'ISO 8859-1, à l'exception du tiret invisible. En revanche, le MacRoman inclut de nombreux caractères qui ne sont pas dans l'ISO 8859-1. Le glyphe Euro a remplacé le symbole monétaire générique précédent.
Windows-1252
Sur Microsoft Windows, quelques glyphes ont été ajoutés entre 0x80 et 0x9F. Cette extension (qui remplace ou annule tous les caractères de contrôle G1 qui sont assignés à ces positions dans le codage ISO-8859-1 et réservés dans la norme ISO/CEI 8859-1) est connue sur Internet en tant que Windows-1252.
ISO 8859-15
L'ISO 8859-15, notamment introduite pour prendre en charge le caractère € de l'euro, gère également mieux le français car les caractères ¤, ¦, ¨, ´, ¸, ¼, ½ et ¾ ont été remplacés par €, Š, š, Ž, ž, Œ, œ et Ÿ. En français, l'ISO 8859-1 reste cependant nettement plus utilisée, avec OE et oe au lieu de Œ et œ, alors que le Ÿ n'est utilisé que par quelques noms propres. Le standard Unicode est généralement utilisé lorsqu'il est nécessaire de dépasser les limites de ISO 8859-1, notamment, symboles mathématiques, phonétiques et caractères non-latins.
Limitations
La limitation principale de ce codage de caractères sur un octet est la nécessité d'utiliser plusieurs tables pour couvrir plusieurs alphabets. Certains documents sont typés à l'aide par exemple de méta-données, dans ce cas une table de caractère et une seule est associée à chaque document. Par exemple pour un document HTML la balise
<meta http-equiv="content-Type" content="text/html; charset=iso-8859-1" />
indique que le document utilise la table des caractères ISO-8859-1. Autre exemple avec un document XML et la balise<?xml version="1.0" encoding="iso-8859-1"?>
indiquant l'encodage des caractères utilisé.Quand cela n'est pas le cas, c'est la table de caractère du système d'exploitation qui est utilisée. Si elle ne correspond pas à celle du document l'affichage est incohérent, cette problématique est appelée Mojibake par les japonais. Le problème est alors l'impossibilité de mélanger dans un même document des alphabets qui ne sont pas définis par la même table. Par exemple le français et l'hébreu.
La solution est de passer à Unicode.
Notes et références
- ↑ Roman Czyborra, « ISO 8859-1 and MCS, from ISO 8859 Alphabet Soup », 1998
- ↑ Jacques André, « Cahiers GUTenberg no 25—novembre 1996 ISO Latin-1, norme de codage des caractères européens ? trois caractères français en sont absents ! » sur http://www.gutenberg.eu.org, 1996, Cahiers GUTenberg. Consulté le 19 juin 2008
Voir aussi
Articles connexes
- ASCII
- MacRoman
- Windows-1252
- ISO 8859-15
- Blocs de caractères Unicode contenant des caractères codés dans au moins une des 16 parties d’ISO 8859 :
- pour ISO 8859-1 :
- pour les autres parties :
- UTF-8
Liens externes
- (en) Version finale du standard ISO/IEC 8859-1:1998 [pdf]
- (en) Différences entre les caractères ANSI, ISO-8859-1 et MacRoman
- (en) The Letter Database
- La série de normes ISO 8859
- Portail de l’informatique
- Portail de l’écriture
Catégories : Norme ISO | Codage du texte
Wikimedia Foundation. 2010.