Betel Linux
Betel Linux
Betel Linux
LINUX en français!
Décembre 2001
BILAN ............................................................................................................................................................5
INTRODUCTION .........................................................................................................................................7
SOURCES ....................................................................................................................................................95
En particulier :
• Elle vérifie si la langue française y est soutenue dans son intégralité
(saisie, affichage, impression, correspondance, tri, recherche);
• Elle précise l'interopérabilité de la version française avec la version
anglaise;
• Elle s'attache à comparer la version française avec la version anglaise
dans le but d’établir le degré d’équivalence.
Le bilan de cette étude technolinguistique est très positif malgré des résultats
dans les grilles d’évaluation plutôt faibles.
Toutefois, il faut tenir compte du fait que Linux, issu du monde des serveurs
Unix, est un système client depuis peu. La plupart des logiciels utilisateurs
sont encore dans leur première version. Dans ce contexte, l’effort
d’internationalisation reste souvent à faire. Néanmoins, il faut noter, élément
extrêmement positif, que l’architecture du système, et donc des logiciels qui
y sont développés, est déjà par essence multilingue : l’internationalisation ne
Évaluation technolinguistique Linux 5
Bétel, OLF, 2001
défait pas les développements déjà effectués, comme cela peut être le cas
dans d’autres environnements, et ne demande en fait souvent qu’un travail
de traduction.
À ce titre, Linux suit depuis son origine les normes qui définissent le soutien
multilingue pour le noyau du système : la norme POSIX (Portable Operating
System for Computer Environment), aussi référencée IEEE 1003.1 et son
successeur, la norme Spec1170.
Il peut être utile au lecteur de noter que, sauf exception, les fichiers de
configuration sont en mode texte. C’est-à-dire directement compréhensible
et modifiable avec n’importe quel éditeur de texte.
La configuration d’un utilisateur est mise en place par les scripts exécutés
automatiquement lors de l'ouverture de session de l’utilisateur (login).
Cette étude couvre les trois environnements les plus utilisés sous Linux :
• Le mode console, appelé aussi mode texte,
• L’environnement graphique KDE sous X-Windows,
10 Évaluation technolinguistique Linux
Bétel, OLF, 2001
• L’environnement graphique GNOME sous X-Windows.
Le mode console
Le mode console est l’environnement d’administration de la machine. Il est
utilisé par les techniciens et les administrateurs qui apprécient sa rapidité et
sa légèreté. Ce mode consomme très peu de ressources du système. Il est
également très pratique lors d’une connexion à distance via une ligne
téléphonique ou le réseau Internet.
Le mode console est basé sur les mêmes normes que le noyau, à savoir la
norme POSIX (Portable Operating System for Computer Environment),
aussi référencée IEEE 1003.1 et son successeur, la norme Spec1170.
loadkeys fr-latin9.map
setfont /usr/lib/kbd/consolefonts/lat9-16u.psf.gz
Ainsi vint l'octet [= 8 bits] qui étendit le nombre de caractères à 255 et les
normes ISO 8859, alphabet latin et cp, pour les plus connues, qui vinrent
pallier à cette déficience du fait des 128 positions supplémentaires
disponibles en encodant les caractères sur 8 bits.
Son but est voisin de l'Unicode, mais elle a l'avantage d'être plus légère que
celui-ci et d'être applicable tout de suite.
• œ et Œ : pour le français, par exemple pour les mots œuf, cœur, bœuf,
œil...
• « s chapeau inversé » en majuscule et minuscule pour le finlandais
• « z chapeau inversé » en majuscule et minuscule pour le finlandais
• € (symbole de l'EURO) : pour tous les pays européens
En réalité, les différences vont bien plus loin de l'ordre dans lequel sont les
caractères de la police, ce qui joue sur l'aspect des applications semi-
graphiques, les correspondances avec des caractères latin1 ± latin9 ±
Unicode, ce qui a un rôle dans la compatibilité croisée ou exclusive, par
exemple purement Unicode...
Les polices lat9u sont encodées dans un ordre non standard, mais identique à
celui des polices latXu de kbd, par rapport aux polices précédentes, en
amenant les mêmes problèmes avec le cp1252 et le latin1 mais en incluant
une table de correspondance Unicode, ce qui permet d'avoir de jolis
caractères semi-graphiques sous Yast, mc, ou d'autres programmes basés sur
ncurses ou dialog.
Évaluation technolinguistique Linux 15
Bétel, OLF, 2001
Les polices lat9v sont encodées dans l'ordre officiel ISO/CEI comme les lat9
mais avec une table Unicode complète : aucun symbole monétaire
international ne sera plus remplacé par l'euro! Ces polices sont utiles pour
éviter les problèmes d'exportation, grâce à l'Unicode pur, avec une table de
clavier Unicode adaptée : tous les caractères latin9 sont remplacés par des
caractères Unicode et affichés ainsi, ce qui a le mérite d'être compatible avec
le latin9, l’Unicode, d'être élégant techniquement mais inutilisable sous
linux-console.
loadunimap fonts/linux-console/lat9.uni
setfont fonts/linux-console/lat9-16.psf
Pour utiliser la police lat9w-16.psf ou une autre lat 9u, lat9v ou lat9w :
setfont /fonts/linux-console/lat9w-16.psf
• fr français générique
• fr_FR français de France
• fr_BE français de Belgique
• fr_CH français de Suisse
• fr_LU français du Luxembourg
• fr_CA français du Canada
Exemple :
SYSFONT=lat0-sun16
LC_CTYPE=fr_CA
LC_MONETARY=fr_CA
LANGUAGE=fr_CA:fr
LC_TIME=fr_CA
LC_NUMERIC=fr_CA
LC_COLLATE=fr_CA
LC_MESSAGES=fr_CA
LANG=fr
SYSFONTACM=iso15
setxkbmap ca
• BDF (bitmap)
• PCF (bitmap)
• Type 1
• Speedo
• TrueType
• CIDFont
KDE est un environnement graphique perfectionné qui offre une base solide
à un nombre toujours plus important d'applications destinées aux stations de
travail Unix. KDE a conçu un modèle de développement de haute qualité
pour le système Linux, ce qui permet de développer rapidement et
efficacement de nouvelles applications.
La distribution Red Hat utilisée a été téléchargée sans frais à partir du site
Internet de Red Hat : http://www.redhat.com.
Le site de Red Hat est partiellement francisé. La page d’accueil française est
http://www.fr.redhat.com.
Bien que partiellement francisé, le site de Red Hat est en anglais pour la
partie téléchargement de la distribution et la partie «soutien».
Premier écran
Les répertoires créés à la fin de l’installation sont ceux normalisés par les
normes Unix et Posix.
Aide en ligne
L’aide en ligne est par défaut en anglais. Il est possible d’installer l’aide en
ligne en français à partir d'Internet (au site http://www.linuxdoc.org).
Les 63 caractères
Le tri sous le tableur gnumeric ne tient pas compte des signes diacritiques.
L’aide en ligne
Les noms de fichiers, comme en mode graphique, peuvent utiliser tout type
de caractères.
Affichage – saisie
L’ensemble des caractères ISO-8859-1 peuvent être saisis au clavier.
Le tri est correctement réalisé. Nous avons utilisé la commande standard sort
avec les variables LANG et LC_ALL positionnées dans leur valeur par
défaut lors de l’installation.
Choix de la langue
Choix du clavier
Nous remarquons qu'il est possible de changer les valeurs par défaut de la
position du symbole monétaire. Selon le « Français au bureau » 5e édition, le
symbole monétaire doit se trouver après la valeur.
Ou en japonais.
Traitement de la casse
Remarque : on dit bien «français» et non pas «french». Ce qui est meilleur
que dans les deux autres distributions.
Choix du clavier
Aide en français
Tri
Ce logiciel est disponible pour les trois distributions que nous avons
évaluées (par défaut avec Suse et Red Hat, optionnellement avec Mandrake).
Il faut distinguer les messages ou mots clefs en anglais qui font partie du
protocole d'échange informatique entre les clients et les serveurs (par
exemple les mots clefs: From, To, etc.) et les messages d'erreur qui sont
produits par le serveur ou par d'autres serveurs intermédiaires (user
unknown, domain inexistant, we do not relay).
Les mots–clefs sont parfois traduits par les logiciels clients et ne dépendent
pas du serveur. Par contre les messages du serveur sont toujours fournis tels
quels.
Bilan
Malgré la différence de langue, toutes les fonctions du client et du
serveur sont opérationnelles.
Tous les clients de messagerie sous Linux que nous avons testés (Netscape
mail, kmail) acceptent par défaut l'encodage MIME 8 bits ESMTP et
utilisent par défaut le jeu de caractères du poste client, ISO-8859-1 dans
notre cas.
Il est fourni en bloc par les trois distributions cibles que nous avons
étudiées : Red Hat, Mandrake et Suse.
Comme la plupart des outils du monde du logiciel ouvert (Open Source), sa
langue par défaut est l'anglais.
Il ne nous a pas paru utile de démontrer l'interopérabilité au sens strict du
terme tant le nombre d'installations Apache est grand dans le monde (plus de
la moitié des serveurs web dans le monde fonctionne avec Apache) et il est
manifeste pour tous que l'utilisation d'un fureteur anglais ou français n'est
pas un obstacle à l'accès de ces sites.
Par contre, il est configurable afin de fournir aux développeurs de pages web
des outils permettant de sélectionner la langue du fureteur client et de fournir
en conséquence les pages dans la langue appropriée (voir à ce sujet
http://ppewww.ph.gla.ac.uk/~flavell/www/lang-neg.html).
DÉFINITION
DESCRIPTION
UCS contient les caractères nécessaires pour représenter presque toutes les
langues connues. En plus des langues utilisant une extension de l'alphabet
latin, il inclut les suivantes : le grec, l'alphabet cyrillique, l’hébreu, l’arabe,
l’arménien, le géorgien, le japonais, le chinois, l’hiragana, le katakana, le
coréen, l’hangul, le devangari, le bengali, le gurmukhi, le gujarati, l’oriya, le
tamoul, le telugu, le kannada, le malayam, le thaï, le lao, le bopomofo et
d'autres encore.
Pour la plupart de ces derniers alphabets, l'encodage n'était pas encore très
clair quand la norme fut publiée en 1993. En plus des caractères nécessaires
à ces langages, furent inclus un grand nombre de symboles graphiques,
typographiques, mathématiques ou scientifiques comme ceux fournis par
TeX, Postscript, MS-DOS, Macintosh, Videotex, OCR et de nombreux
80 Évaluation technolinguistique Linux
Bétel, OLF, 2001
traitements de texte. Des codes spéciaux ont été ajoutés pour garantir la
compatibilité circulaire avec les autres jeux de caractères.
CARACTÈRES COMPOSÉS
Quelques codes du UCS ont été assignés à des caractères composés. Ils sont
semblables aux touches accentuées sans avance sur les machines à écrire. Un
caractère composé ajoute simplement un accent sur le caractère précédent
(contrairement aux machines à écrire qui agissent sur le caractère suivant).
Les caractères accentués les plus importants ont leurs propres codes dans
l'UCS; néanmoins le mécanisme des caractères composés permet d'ajouter
des accents ou des signes diacritiques sur n'importe quel caractère de base.
Les caractères composés suivent toujours le caractère qu'ils modifient. Par
exemple, le caractère allemand A-Umlaut (A majuscule avec un tréma Ä)
peut être représenté soit par le code UCS pré-composé 0x00C4, ou par la
combinaison d'un A majuscule normal, suivi d'un tréma composé
(combining diaeresis), 0x0041 0x0308.
NIVEAUX D'IMPLÉMENTATION
Comme tous les systèmes ne sont pas censés comporter les mécanismes
comme les caractères composés, ISO 10646 spécifie les trois niveaux
d'implémentation suivants pour l'UCS :
Sous Linux, seul le niveau d'implémentation 1 BMP devrait être utilisé pour
le moment afin de maintenir la complexité des caractères combinés à un
degré raisonnable. Les niveaux d'implémentation supérieurs ne sont pas
envisagés comme formats spéciaux de traitement de textes, mais comme un
jeu de caractères générique du système. Le type C wchar_t est un entier 16
bits non signé sous Linux, et sa valeur est interprétée comme un code BMP
de niveau 1 UCS.
ZONE PRIVÉE
DOCUMENTATION
Il offre donc un soutien partiel d’Unicode, limité à une compatibilité avec les
256 premiers caractères, soit la table ISO-8859-1.
GNOME soutiendra Unicode à partir de la version 2.0 qui est prévue d’ici la
fin de l’année 2001. Le module chargé du soutien Unicode dans Gnome
s’appelle Pango.
KEYTABLE=cn-latin1
Pour Suse 7.1 le clavier devrait être accessible par l'outil de configuration
Yast.
Voici la procédure à utiliser pour configurer votre clavier sous X pour les
distributions Mandrake et Red Hat.
Une dernière manière de procéder est de lancer sous X, dans une console
texte, la commande :
setxkbmap ca
RedHat France
http://www.fr.redhat.com/
Mandrake France
http://www.linux-mandrake.com/fr/
Suse France
http://www.suse.com/fr/
charset "iso-8859-1"
keycode 0 =
keycode 1 = Escape
keycode 2 = +one +exclam
ctrlr keycode 2 = onesuperior
ctrlr shift keycode 2 = exclamdown
keycode 3 = +two +at
ctrlr keycode 3 = twosuperior
keycode 4 = +three +numbersign
ctrlr keycode 4 = threesuperior
ctrlr shift keycode 4 = sterling
keycode 5 = +four +dollar
ctrlr keycode 5 = onequarter
ctrlr shift keycode 5 = currency
keycode 6 = +five +percent
ctrlr keycode 6 = onehalf
keycode 7 = +six +question
ctrlr keycode 7 = threequarters
keycode 8 = +seven +ampersand braceleft
keycode 9 = +eight +asterisk braceright
keycode 10 = +nine +parenleft bracketleft
ctrlr shift keycode 10 = plusminus
keycode 11 = +zero +parenright bracketright
keycode 12 = +minus +underscore
ctrlr shift keycode 12 = questiondown
keycode 13 = +equal +plus notsign
ctrlr keycode 13 = dead_cedilla
keycode 14 = Delete BackSpace
alt control keycode 14 = Boot
altgr control keycode 14 = Boot
keycode 15 = Tab
control keycode 15 = Meta_Tab
alt keycode 15 = Last_Console
keycode 16 = +q +Q
keycode 17 = +w +W
keycode 18 = +e +E
keycode 19 = +r +R
ctrlr keycode 19 = paragraph
ctrlr shift keycode 19 = registered
keycode 20 = +t +T
keycode 21 = +y +Y
ctrlr shift keycode 21 = yen
keycode 22 = +u +U
keycode 23 = +i +I
keycode 24 = +o +O
ctrlr keycode 24 = oslash
ctrlr shift keycode 24 = Oslash
keycode 25 = +p +P
ctrlr keycode 25 = thorn
ctrlr shift keycode 25 = THORN
keycode 26 = dead_circumflex dead_diaeresis dead_grave
ctrlr shift keycode 26 = degree
keycode 27 = +ccedilla +Ccedilla dead_tilde
ctrlr keycode 27 = tilde
ctrlr shift keycode 27 = macron
keycode 28 = Return
alt keycode 28 = 0x080d
altgr keycode 28 = Linefeed
keycode 29 = Control
keycode 30 = +a +A
ctrlr keycode 30 = ae
name[Group1]= "Canadian";
// Alphanumeric section
// CAN/CSA-Z243.200-92 calls this key "AE00"
key <TLDE> {
type[Group1]= "THREE_LEVEL",
symbols[Group1]= [ slash, backslash, bar ],
// The standard calls for a soft hyphen, but X doesn't declare
// a keysym for soft_hyphen.
// symbols[Group2]= [ NoSymbol, soft_hyphen ]
symbols[Group2]= [ NoSymbol, hyphen ]
};
key <AE04> { [ 4, dollar ],
[onequarter, currency ] };
key <AE06> { [ 6, question ],
[threequarters, fiveeighths ] };
key <AE07> {
type[Group1]= "THREE_LEVEL",
symbols[Group1]= [ 7, ampersand, braceleft ],
symbols[Group2]= [ 7, seveneighths ]
};
key <AE08> {
type[Group1]= "THREE_LEVEL",
symbols[Group1]= [ 8, asterisk, braceright ],
symbols[Group2]= [ 8, trademark ]
};
key <AE09> {
type[Group1]= "THREE_LEVEL",
symbols[Group1]= [ 9, parenleft, bracketleft ],
symbols[Group2]= [ 9, plusminus ]
};
key <AE10> {
type[Group1]="THREE_LEVEL",
type[Group2]="THREE_LEVEL",
symbols[Group1]= [ 0, parenright, bracketright ],
symbols[Group2]= [ 0, parenright, bracketright ]
partial alphanumeric_keys
xkb_symbols "Sundeadkeys" {
include "ca(basic)"
key <AE12> {
type[Group1]="THREE_LEVEL",
symbols[Group1]= [ equal, plus, notsign ],
symbols[Group2]= [ SunFA_Cedilla, dead_ogonek ]
};
key <AD11> {
type[Group1]="THREE_LEVEL",
};
partial alphanumeric_keys
xkb_symbols "sundeadkeys" {
include "ca(Sundeadkeys)"
};
partial alphanumeric_keys
xkb_symbols "nodeadkeys" {
include "ca(basic)"
key <AE12> {
type[Group1]="THREE_LEVEL",
symbols[Group1]= [ equal, plus, notsign ],
symbols[Group2]= [ cedilla, ogonek ]
};
key <AD11> {
type[Group1]="THREE_LEVEL",
symbols[Group1]=[ asciicircum, diaeresis, grave ],
symbols[Group2]=[ NoSymbol, degree ]
};
key <AD12> {
type[Group1]="THREE_LEVEL",
symbols[Group1]=[ ccedilla, Ccedilla, asciitilde ],
symbols[Group2]=[ asciitilde, macron ]
};
key <AC10> {
type[Group1]="THREE_LEVEL",
symbols[Group1]= [ semicolon, colon, degree ],
symbols[Group2]= [ acute, doubleacute ]
};
key <AC11> { [ egrave, Egrave ],
[ NoSymbol, caron ] };
key <BKSL> { [ agrave, Agrave ],
[ NoSymbol, breve ] };
};