Bienvenue sur le wiki de Nuit debout, nous sommes le 3056 mars.




Modèle:Langue/Documentation

De NuitDebout
Révision de 27 octobre 2014 à 11:56 par Nnemo (discussion) (Lien. Lien parlant. Accessibilité.)

Aller à : navigation, rechercher
Illustration de documentation
Ceci est la page de documentation de Modèle:Langue [modifier] [purger].
Cette sous-page contient les instructions, les catégories de son modèle d'origine et elle n'est pas destinée à être visualisée directement.
Modèle:Protection Modèle:Modèle utilisant les modules Lua Modèle:Raccourci de modèle

Ce modèle a pour but d’indiquer la langue d’un texte, notamment pour les synthétiseurs vocaux et l’indexation correcte des inclusions de mots en langues différentes par les moteurs de recherche. Il permet aussi la personnalisation de la présentation des textes, en permettant aux utilisateurs de paramétrer les polices de caractères permettant d’afficher correctement 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 automatiques.

Les normes internationales d’accessibilité imposent de signaler un changement de langue, excepté Modèle:Citation[1] pour lesquels cela n’a pas de caractère obligatoire. Le groupe de travail sur les directives d'accessibilité du contenu Web du W3C souligne 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}}

La syntaxe simplifiée est déconseillée car elle n'affiche pas le texte si celui-ci contient un signe « = ».

Paramètres

<templatedata> {

       "description": "Ce modèle indique la langue d’un texte, notamment pour les synthétiseurs vocaux et l’indexation correcte des inclusions de mots en langues différentes par les moteurs de recherche.",
       "params": {
               "1": {
                       "label": "Code de langue",
                       "description": "Code IETF ou nom français de la langue du texte inclus.",
                       "type": "string",
                       "required": true
               },
               "texte": {
                       "description": "Entrez ici le texte en langue étrangère.",
                       "type": "string",
                       "required": true,
                       "aliases": ["2"]
               },
               "trans": {
                       "label": "Translittération",
                       "description": "Translittération du texte. Attention, ce n’est pas une traduction, mais une conversion lettre à lettre la plus proche possible de l’orthographe originale.",
                       "type": "string"
               },
               "dir": {
                       "label": "Direction",
                       "description": "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.",
                       "type": "string",
                       "default": "dépend du code de langue"
               }
       }

} </templatedata>

Exemples

Les effets sont a priori non 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.

Liens internes

Le code à privilégier est celui-ci :

''[[The New York Times|{{lang|en|The New York Times}}]]''

(Voir cette discussion)

Italiques

Les italiques se mettent à l’extérieur. Voir les bonnes pratiques d'accessibilité.

Exemple :

Les Directives pour l’Accessibilité du Contenu Web (''{{lang|en|Web Content Accessibility Guidelines}}'') ont été publiées en 1999 par la ''[[Web Accessibility Initiative|{{lang|en|Web Accessibility Initiative}}]]'' du [[World Wide Web Consortium|W3C]].

En infobox

Problème
Si ce modèle est utilisé dans une infobox pour donner un titre original en caractères non latins, en utilisant donc à la fois ses paramètres texte et transl, alors il peut causer des problèmes de largeur, car la césure ou le retour à la ligne ne sont pas bien gérés par tous les navigateurs dans tous ces cas.
Symptômes
Un titre long va alors dilater en largeur sa case et comprimer le reste de l'infobox, qui se retrouve avec une colonne d'intitulés deux fois moins large que la normale, où chaque intitulé est affiché mot par mot sur deux ou trois lignes, donnant une infobox étirée en hauteur.
Solution
Séparer titre original et translittération : en utilisant le modèle (avec seulement le texte en caractères non latins) suivi d'un élément br et du modèle {{transl}} (pour la translittération).
Exemple
Au lieu de ce type de code :

| titre_orig = {{lang|ja|世界の終りとハードボイルド・ワンダーランド|trans=Sekai no owari to Hādo-boirudo Wandārando}}

Utiliser ce type de code (noter les parenthèses ajoutées autour du transl) :

| titre_orig = {{lang|ja|世界の終りとハードボイルド・ワンダーランド}}<!-- son param trans= pose problème en infobox, donc br et modèle transl à la place --> <br />({{transl|ja|Hepburn|Sekai no owari to Hādo-boirudo Wandārando}})

(Dans cet exemple, un commentaire HTML est inséré au milieu pour éviter qu'un autre éditeur fusionne de bonne foi les deux modèles en pensant bien faire.)

Codes de langue

Modèle:Article détaillé

Codes principaux

Langue Code Notes
allemand de
anglais en
arabe ar écriture avec l’alphabet perso-arabe
catalan ca
espagnol es
grec ancien grc avant 1453
grec moderne el depuis 1453
italien it
latin la alphabet de base normalement réduit (sans j, u, w, y) mais diacritiques possibles (usage principalement didactique) pour différencier les voyelles brèves ou longues
occitan ; provençal oc

La liste complète des codes acceptés par le modèle :

Si le code de langue dont vous avez besoin manque, demander sur le projet modèle. Les codes de langue compatibles sont ceux qui suivent la recommandation BCP 47 de l’[[Internet Engineering Task Force|{{{2}}}Modèle:Main other]]. La liste des composants utilisables issus notamment des normes ISO 639, ISO 15924, ISO 3166-1, M.49 est publiée à l’adresse suivante : http://www.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 la catégorie:Page avec code de langue invalide.

Système d'écriture

La plupart de 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 la fonte utilisé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 des caractères arabes, de droite à gauche. Si le texte est une translittération de l'arabe en alphabet latin, écrit de gauche à droite, il faut utiliser le code de langue ar-Latn.

Exemples de code système d’écriture :

  • latin : Latn ;
  • arabe : Arab ;
  • cyrillique : Cyrl ;
  • grec : Grek ;
  • hébreu : Hebr ;
  • sinogrammes traditionnels : Hant ;
  • sinogrammes simplifiés : Hans ;
  • tifinagh : Tfng.

Pour la liste complète et pour tester si un code est valide, voir ce lien (en anglais ; dans la boîte de dialogue {{{2}}}Modèle:Main other, sélectionner {{{2}}}Modèle:Main other et cliquer sur {{{2}}}Modèle:Main other).

Variété géographique

Pour prendre en compte les variétés géographiques, un code pays ISO 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 québécois.

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 syntaxe CSS dédiée :lang(code-langue) dans son monobook.css. Exemples :

/* personnalisation de l’écriture latine étendue, pour la langue : vietnamien ;
   ou pour l’API */
:lang(vi) {font-family: Segoe UI, 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, Segoe UI, Lucida Sans Unicode, Arial Unicode MS, 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)  {font-family: Segoe UI, 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: Segoe UI, 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: Segoe UI, Tahoma, FreeSans; font-size: 0.87em; line-height: 1.4;}

Note : Si un navigateur ne gère pas les sélecteurs CSS normalisés :lang(xxx), il est possible d’utiliser dans une feuille de style personnelle les sélecteurs de classes CSS nommés .lang-xxx à la place, mais de façon moins précise (et non normalisée, spécifique à cette implémentation sur Wikipédia).

Attention aussi aux personnalisations de tailles de police dans une feuille de style personnelle Monobook : elles peuvent éventuellement s’imbriquer et créer des tailles agrandies ou réduites plusieurs fois si les attributs « lang » sont utilisés ailleurs que sur les inclusions faites par ce modèle et modifient la mise en page des blocs (paragraphes, tableaux…). Mieux vaut personnaliser la taille par défaut dans le seul élément « body » pour l’appliquer en une seule fois à toute la page, ou utiliser les fonctions d’agrandissement de texte ou de zoom de page intégrées dans votre navigateur.

Mieux vaut ne pas personnaliser la direction du texte en fonction de l’écriture dans la feuille de style personnelle, car cela dépend de la présentation des pages, et certaines inclusions de textes peuvent avoir besoin de changer la direction par défaut. Ce modèle permet de préciser cette direction (rtl ou ltr) dans les articles, là où c’est nécessaire dans les pages.

Notes et références

  1. (en) Web Content Accessibility Guidelines (WCAG) 2.0Modèle:Main other, 3.1.2 Language of PartsModèle:Main other
  2. (en) Understanding WCAG 2.0Modèle:Main other, Language of PartsModèle:Main other : Understanding Modèle:Abr 3.1.2Modèle:Main other. Cette page recommande ainsi de ne pas signaler par un attribut spécifique une utilisation du mot « rendezvous » au sein d’un texte en anglais, ou du mot « podcast » au sein d’un texte en français.

Voir aussi