Unicode 5.0 en pratique :
codage des caractères et internationalisation des logiciels et des documents
Patrick Andries
Paris, Dunod, 2008, 399 p., 25 cm
Coll. Infopro/Études et développement
ISBN 978-2-1005-1140-2 : 42 €
On pourra se demander quel est l’intérêt, dans une revue telle que le Bulletin des bibliothèques de France, de publier la recension d’un ouvrage que son contenu destine essentiellement à des informaticiens chevronnés ou à des amateurs éclairés. C’est que, comme le souligne justement Patrick Andries dans son avant-propos, Unicode, dont il est question, intéresse aussi des « personnes qui travaillent sur des textes multilingues ou des textes spécialisés », et « parmi des utilisateurs typiques, on retrouvera […] des bibliothécaires ». Il a en cela parfaitement raison. À l’heure où il n’est plus question que de la constitution de vastes bibliothèques numériques, essentiellement textuelles, comment ne pas se soucier de la meilleure prise en compte, tant au niveau intellectuel que typographique, des écritures ?
Qu’est-ce qu’Unicode ?
Mais qu’est-ce qu’Unicode ? Même si l’auteur n’utilise le terme qu’avec réticence, définissons Unicode comme un jeu de caractères universel qui permet aux machines et aux logiciels qui l’utilisent de pouvoir gérer ensemble des informations textuelles issues de diverses écritures. Au premier rang d’entre elles, d’un point de vue informatique s’entend, l’alphabet latin, mais aussi tous les autres alphabets (arabe, hébreu, cyrillique…), mais aussi d’autres écritures et notamment les redoutables (en nombre de caractères) écritures utilisées pour le chinois, le japonais…
« Accolé » à une norme ISO, l’ISO/CEI 10646, Unicode, géré par le consortium Unicode qui comprend l’essentiel des grands constructeurs informatiques et des grands concepteurs de logiciels, propose donc, pour faire simple, une codification unifiée de l’ensemble des caractères du monde. Près de 100 000 caractères sont désormais disponibles dans la version 5.0, disponible gratuitement sur le site (un peu spartiate) d’Unicode (http://www.unicode.org). Signalons pour être précis que, depuis, une version « mineure » (c’est-à-dire uniquement disponible sur le site) d’Unicode, la version 5.1, a été publiée.
L’ouvrage propose, en douze chapitres, une explicitation des principaux concepts nécessaires à la compréhension et à l’utilisation d’Unicode : ce qu’est une langue, ce qu’est une écriture, ce qu’est un codage informatique, ce qu’est un caractère, etc. À l’aide de schémas et de copies d’écran, l’auteur permet de mieux comprendre ce qu’est exactement Unicode, et ce qu’il n’est pas : il ne suffit pas à un logiciel d’être « compatible Unicode » (les règles de compatibilité sont strictement définies) pour que chacun puisse pour autant saisir, afficher, imprimer, gérer, n’importe quelle écriture sur son poste de micro-informatique ou dans sa base de données. D’autres outils, d’autres informations, sont indispensables, et l’un des mérites du livre est de les présenter en détail.
Unicode 5.0 en pratique
Unicode 5.0 en pratique s’articule autour de quatre parties : la première propose un historique d’Unicode, articulé avec une présentation succincte des jeux de caractères qui l’ont précédé (et notamment le toujours indispensable ASCII) ; la deuxième partie présente Unicode proprement dit, insistant sur le fait que le standard n’est pas uniquement un ensemble de caractères, mais aussi de propriétés associées à ces caractères ; la troisième partie présente des familles de caractères particulières, avant que la quatrième ne détaille la prise en compte d’Unicode par différents outils, notamment les navigateurs, les langages de programmation comme Java, etc.
Chacun des douze chapitres indique ses objectifs, et comprend un résumé. L’ensemble, c’est l’évidence, suppose un certain nombre de connaissances en informatique pour être correctement lu et compris, et certaines parties, notamment concernant l’utilisation d’Unicode dans l’élaboration de programmes, sont réservées aux programmeurs – l’auteur de ces lignes les a d’ailleurs soigneusement omises dans sa lecture, se permettant, comme Patrick Andries y invite intelligemment dans son avant-propos, un parcours spécifique dans l’ouvrage.
On n’insistera que sur un aspect, mais fondamental, celui de l’internationalisation : sous ce vocable bizarre, se cachent les efforts des concepteurs de logiciels et de sites pour rendre compréhensibles leurs outils et sites par des locuteurs et, si le mot peut s’utiliser dans ce sens, des scripteurs différents. L’internationalisation suppose le respect de certaines procédures et méthodes qui, inévitablement, conduisent à des compromis et à des harmonisations pas toujours bien comprises. Mais elles sont un moindre mal pour l’objectif de large diffusion, sans compliquer la programmation, et cet objectif ne pourra qu’être approuvé par les professionnels des bibliothèques et de la documentation.
Dans sa préface, Mark Davis, président et cofondateur du consortium Unicode, souligne qu’il ne connaît pas « d’autre ressource moderne, ni en anglais ni en français, regroupant une telle gamme de sujets utiles, et les expliquant de façon si claire et si accessible à un large public ». On ne pourra que partager ce point de vue – tout en réservant la lecture d’Unicode 5.0 en pratique à, comme l’on dit, un public averti.