Modèle:Langue
Ce modèle sert à indiquer la langue d’un texte, notamment pour lessynthétiseurs vocaux,l’indexation des inclusions de mots en langues différentes par les moteurs de recherche, et l'affichage de certains caractères variant selon la langue[note 1].Il permet aussi la personnalisation de la présentation des textes, en permettant aux utilisateurs de paramétrer les polices de caractères pour chaque écriture.
La mention d’un changement de langue est une information essentielle pour l’accessibilité du contenu.Elle est également utile aux outils de traduction automatique.
Les normes internationales d’accessibilité imposent de signaler un changement de langue, excepté« pour un nom propre, pour un terme technique, pour un mot dont la langue est indéterminée ou pour un mot ou une expression faisant partie du langage courant »[1],pour lesquels cela n’a pas de caractère obligatoire. Legroupe de travail sur les directives d'accessibilité du contenu WebduW3Csouligne que des mots pris individuellement peuvent « faire partie » de la langue qui les accueille; il n’y a donc pas lieu de signaler dans ces situations un changement de langue; un critère pour décider de la stratégie à employer dans ces situations peut être de vérifier si« le mot se prononcerait de la même façon dans la langue du texte qui l’entoure (en dehors de simples problèmes d’accent ou d’intonation) »[2].
Syntaxe
{{Langue|code de langue|texte=texte}}
{{Langue|code de langue|texte=texte|trans=trans|dir=direction-langue}}
Syntaxe simplifiée:
{{Langue|code de langue|texte}}
{{Langue|code de langue|texte|trans=trans|dir=direction-langue}}
Dans le cas de la syntaxe simplifiée, il faut utiliser le code «{{=}}» pour faire apparaître le signe « = », car le texte n'apparaît pas si un simple « = » est utilisé dans le code.
Paramètres
Ce modèle indique la langue d’un texte, notamment pour les synthétiseurs vocaux, l’indexation correcte des inclusions de mots en langues différentes par les moteurs de recherche, et l'affichage de certains caractères variant selon la langue. Dans le cas d'une citation, utilisez {{Citation étrangère}} à la place.
Paramètre | Description | Type | État | |
---|---|---|---|---|
Code de langue | 1 | Étiquette d’identification IETF ou nom français de la langue du texte inclus.
| Chaîne | obligatoire |
Texte | 2 texte | Texte en langue étrangère. À mettre en italique si nécessaire, sauf si ce sont des caractères non latins.
| Chaîne | obligatoire |
Texte (obsolète) | 3 | Texte en langue étrangère utilisé uniquement si le paramètre 1 contient la direction de la langue rtl ou ltr et le paramètre 2 le code de la langue.
| Chaîne | obsolète |
Translittération | trans | Translittération du texte. Attention, ce n’est pas une traduction, mais une conversion lettre à lettre la plus proche possible de l’orthographe originale. | Chaîne | facultatif |
Direction | dir | Direction de la langue: rtl (de droite à gauche) ou ltr (de gauche à droite); normalement inutile car le modèle détermine la direction en fonction du code de langue.
| Chaîne | facultatif |
Classes CSS additionnelles | class | Classes CSS supplémentaire. Fonctionnalité avancée à n'utiliser qu'en cas de besoin. | Ligne de texte | facultatif |
Exemples
Les effets sonta priorinon visibles à l’écran (la police utilisée dépend du logiciel configuré par l’utilisateur), sauf ceux concernant la position (à droite ou à gauche) des ponctuations en début ou fin de textes écrits de droite à gauche et pour les langues qui utilisent des sinogrammes comme le chinois ou le japonais.
{{Langue|de|texte=Die {{II}}. Republik}}
DieII.Republik{{Langue|ar|texte=العربية…|dir=rtl}}
العربية…{{Langue|allemand|Die ewige Wiederkehr des Gleichen}}
Die ewige Wiederkehr des Gleichen{{Langue|es|¿Qué tal güey?}}
¿Qué tal güey?{{Langue|arabe|العربية|trans=al-ʻarabīyah|dir=rtl}}
العربية(al-ʻarabīyah){{Langue|grc|texte=ἡμέρα|trans=hēméra}}
ἡμέρα(hēméra){{Langue|ja|クレヨンしんちゃん|trans=Kureyon Shin-chan}}
クレヨンしんちゃん(Kureyon Shin-chan){{Langue|ja| nay }}
Nay{{Langue|zh| nay }}
Nay
Dans les deux derniers exemples, notez la différence desglyphessuivant la langue.
Liens internes
Pour créer un lien non redirigé, la syntaxe à utiliser est la suivante:''{{Langue|en|[[New York Stories]]}}''
.
Dans le cas d'un lien redirigé, la syntaxe à privilégier est celle-ci:''[[Deep Impact (film)|{{Langue|en|Deep Impact}}]]''
(voircette discussion).
Codes de langue
Codes principaux
Langue | Code | Notes |
---|---|---|
allemand | de | |
anglais | en | |
arabe | ar | écriture avec l’ Alpha bet perso-arabe |
catalan | ca | |
espagnol | es | |
grec ancien | grc | avant 1453 |
grec moderne | el | depuis 1453 |
italien | it | |
latin | la | Alpha bet de base normalement réduit (sansj,u,w,y) mais diacritiques possibles (usage principalement didactique) pour différencier les voyelles brèves ou longues |
occitan; provençal | oc |
Tous les codes
La liste complète des langues prises en charge se trouve sur la pageModule:Langue/Liste des langues.
Si le code de langue dont vous avez besoin manque, demander sur leprojet modèle.Les codes de langue compatibles sont ceux qui suivent la recommandationBCP 47de l’IETF.La liste des composants utilisables issus notamment des normesISO 639,ISO 15924,ISO 3166-1,M.49 est publiée à l’adresse suivante:http:// iana.org/assignments/language-subtag-registry.Pour rechercher un code de langue, ce lien (en anglais) est recommandé.
Certaines erreurs courantes sont automatiquement détectées et signalées dans lacatégorie:Page avec code de langue invalide.
Système d'écriture
La plupart des langues ont un système d’écriture par défaut. Lorsque la langue est écrite avec un autre système d’écriture, il est utile de le préciser, le modèle ou le navigateur pourra alors adapter le sens d'écriture ou lafonteutilisée. Le système d’écriture est précisé, le cas échéant, en un code à quatre lettres suivant le code langue principal, séparé par un trait d’union (-
).
Par exemple, l'arabe(ar
) est considéré comme écrit avec descaractères arabes,de droite à gauche. Si le texte est une translittération de l'arabe enAlpha bet latin,écrit de gauche à droite, il faut utiliser le code de languear-Latn
.
Cas spécifique pour le mongol, il vaut mieux utilisermn-Mong
pour lemongol bitchig(mongol dittraditionnel,six millions de personnes enChineet une partie de la population deMongolie(trois millions d'habitants). Tandis quemn-Cyrl
,unique écriture officielle du Pays mongol entre 1941 et 1991 (le bitchig est de nouveau officiel depuis 1991). Cas particulier encore,mn-Cyrl
mongol cyrilliqueest affiché comme mn dans le cas des liens web.
Exemples de code système d’écriture:
- latin:
Latn
; - arabe:
Arab
; - cyrillique:
Cyrl
; - grec:
Grek
; - hébreu:
Hebr
; - mongol:
Mong
; - sinogrammes traditionnels:
Hant
; - sinogrammes simplifiés:
Hans
; - sinogrammesdans le coréen (hanja), japonais (kanji) et vietnamien (Nôm) (normeISO 15924:Hani(en)):
Hani
; - tifinagh:
Tfng
.
Pour la liste complète et pour tester si un code est valide, voirce lien (en anglais);dans la boîte de dialogueList,sélectionnerRegionspuis cliquer surList.
Variété géographique
Pour prendre en compte les variétés géographiques, un code paysISO 3166-1à deux lettres peut être ajouté, séparé par un trait d’union (-
). Le code pays est toujours écrit en capitales (au contraire du code langue qui est toujours en minuscules).
Exemple:fr-CA
pour le français canadien.
Pour les dialectes d'une région n'ayant pas de code de langue propre, il faut utiliser le code de langue le plus proche.
Exemple:oc
pour le gascon et le provençal, qui sont des dialectes de l'occitan (ou langue d’oc).
Changer l’apparence d’une langue
Afin de changer le style des caractères d’une langue en particulier, on peut se servir de la syntaxeCSSdédiée:lang(code-langue)
dans soncommon.css.
Exemples:
/* personnalisation de l’écriture latine étendue, pour la langue: vietnamien;
ou pour l’API */
:lang(vi){font-family:SegoeUI,Tahoma,Verdana,FreeSans,sans-serif}
/* personnalisation de l’écriture grecque, pour les langues: grec moderne (monotonique), grec ancien (polytonique) */
:lang(el),:lang(grc){font-family:Athena,SegoeUI,LucidaSansUnicode,ArialUnicodeMS,Tahoma,FreeSans,sans-serif}
/* personnalisation de l’écriture cyrillique, pour les langues: russe, bulgare, serbe, macédonien, mongol moderne... */
:lang(ru),:lang(bg),:lang(sr),:lang(mk),:lang(mn)oumieux:lang(mn-Cyrl){font-family:SegoeUI,Tahoma,sans-serif}
/* personnalisation de l’écriture arabe, pour les langues: arabe, persan, ourdou;
taille augmentée mais interlignage par défaut conservé */
:lang(ar),:lang(fa),:lang(ur){font-family:SegoeUI,Tahoma;font-size:1.25em;}
/* personnalisation de l’écriture thaïe, pour la langue: thaï;
taille réduite mais interlignage par défaut augmenté */
:lang(th){font-family:SegoeUI,Tahoma,FreeSans;font-size:0.87em;line-height:1.4;}
Il est aussi possible de simplement faire apparaître qu'un mot ou expression sont dans une autre langue, en changeant la police d'affichage par l'ajout de cette ligne dans son CSS personnalisé:
/* Utiliser la police « serif » pour les éléments HTML de tout type (« span », « div », « td », etc.)
qui ont un attribut « lang= "code-de-langue" » de valeur quelconque */
[lang]{font-family:serif;}
/* Utiliser la police « serif » seulement pour les éléments HTML de tout type
qui ont un attribut « lang= "el" » pour indiquer la langue grecque moderne */
[lang=el]{font-family:serif;}
/* Utiliser la police « serif » seulement pour les éléments HTML de tout type
qui ont un attribut « lang= "zh" », avec un éventuel suffixe comme « lang= "zh-Hant" » */
[lang|=zh]{font-family:serif;}
/* Utiliser la police « serif » seulement pour les éléments HTML de type « span »
ayant un attribut « lang= "code-de-langue" » de valeur quelconque */
span[lang]{font-family:serif;}
Un sélecteur CSS sur le nom de l'attribut entre crochets droits[lang=code]
ou[lang|=code]
est cependant moins puissant que le pseudo-sélecteur:lang(code)
,lequel permet aussi de trouver les correspondances par code d'écriture indépendamment des langues qui utilisent cette écriture, en plaçant dans son paramètre un joker*
à la place du code langue de base, suivi d'un tiret et d'un code d'écriture; l'utilisation d'un joker requiert cependant d'échapper ce joker, ou de placer l'identificateur de langue entre guillemets droits:
/* Utiliser la police « serif » seulement pour les éléments HTML de tout type
et dont le contenu est dans une langue utilisant l'écriture grecque. */
:lang(\*-Grek){font-family:serif;}/* joker avec un échappement */
:lang("*-Grek"){font-family:serif;}/* code complet entre guillemets droits */
Notes et références
Notes
- Par exemple lessinogrammes:voir cetableauou«Pourquoi utiliser l'attribut du langage?», surw3.org,W3C(consulté le).
Références
- (en)Web Content Accessibility Guidelines (WCAG) 2.0,3.1.2 Language of Parts.
- (en)Understanding WCAG 2.0,Language of Parts:UnderstandingSC3.1.2.Cette page recommande ainsi de ne pas signaler par un attribut spécifique une utilisation du mot« rendezvous »au sein d’un texte enanglais,ou du mot« podcast »au sein d’un texte enfrançais.
- https:// w3.org/TR/UNDERSTANDING-WCAG20/meaning-other-lang-id.html
Voir aussi
- {{Citation étrangère}}
- {{Code langue}}
- {{Langue du titre}}
- {{Transl}}– translittération avec schéma (comme Hepburn ou DIN)
- {{Lien}}- avec le paramètre
langue=
Ladocumentationde cemodèleest générée par le modèle{{Documentation}}.
Elle estinclusedepuis sasous-page de documentation.Veuillez placer les catégories sur cette page-là.
Les éditeurs peuvent travailler dans lebac à sable(modifier)et la page de test(créer).
Voir lesstatistiques d'utilisation du modèlesur l'outilwstat.