Jump to content

Manual:$wgCategoryCollation

From mediawiki.org
This page is a translated version of the page Manual:$wgCategoryCollation and the translation is 95% complete.
Outdated translations are marked like this.
Catégories: $wgCategoryCollation
Ce que les catégories de collation utilisent pour trier
Introduit dans la version :1.17.0 (r72308)
Retiré dans la version :Encore utilisé
Valeurs autorisées :(chaîne)
Valeur par défaut :'uppercase'

Détails

La valeur d'initialisation indique quel algorithme de collation[1] doit être utilisé pour trier les listings des catégories.

Comme exemple, afin d'utiliser la collation espagnole, vous devrez écrire $wgCategoryCollation = 'uca-es'; dans LocalSettings.php puis exécuter updateCollation.php pour que vos modifications soient prises en compte.

Algorithmes actuellement pris en charge :

Algorithme de collation Version MW Description
uppercase par défaut met tout en majuscules, puis classe par valeur binaire de chaîne quand stockage en UTF-8. Essentiellement tri indépendant de la casse par code point.
numeric MW 1.28+ Pareil à uppercase, mais avec un classement numérique.
identity MW 1.18+ tri sur les valeurs binaires de la chaîne quand elle enregistrée en UTF-8 (sans la convertir en majuscules). Trié principalement par code point.
uca-default MW 1.17+ Unicode collation algorithm – complexe, collation de catégorie beaucoup plus conviviale dans les cas multilangues.
uca-default-u-kn MW 1.28+ uca-default avec tri numérique.
uca-<langcode> MW 1.21+ uca-default avec des ajustements spécifiques à la langue. Voir ci-dessous.
uca-<langcode>-u-kn MW 1.28+ uca-<langcode> avec tri numérique.
xx-uca-ckb MW 1.23+ sorani
xx-uca-et MW 1.24-1.31 (supprimé en 1.32) Estonien mais en considérant W et V comme des lettres séparées.
xx-uca-fa MW 1.30-1.31 (supprimé en 1.32) persan
uppercase-ab MW 1.31+ abkhaze
uppercase-ba MW 1.30+ bachkir
uppercase-se MW 1.31 (supprimé en 1.32) same du Nord

Depuis MediaWiki 1.18, les extensions peuvent ajouter des collations supplémentaires via l'accroche $CollationFactory .

La valeur est également enregistrée dans la table categorylinks pour déterminer quelles rangées doivent être mises à jour lorsque vous changez d'algorithme de collation.

Instructions de configuration

  • Après avoir modifié cette option, vous devez exécuter $updateCollation pour recalculer les clés de tri de toutes les pages, sinon vos catégories seront triées de manière incohérente.
  • La mise à jour des collations est un processus lent et peut prendre plusieurs heures sur les grands wikis.
  • les collations uca-default/uca-xx nécessitent l'extension PHP intl.
  • Si vous utilisez Varnish, Squid ou le cache de fichers, il est possible que vous deviez faire une purge des pages de catégories après avoir exécuté updateCollation.php pour voir les résultats.
  • Si vous mettez à jour (ou si vous recompilez) votre version de PHP, vous devez exécuter updateCollation.php --force.

Collations spécifiques à une langue

MediaWiki prend également en charge beaucoup de collations conçues pour des langues spécifiques. Celles-ci sont basées sur UCA Unicode collation algorithm uca-default et ont les mêmes contraintes; elles s'appellent uca-<langcode>, où <langcode> est à choisir parmi les valeurs suivantes :

af, am, ar, as, ast, az, be, be-tarask, bg, bn, bn@collation=traditional, bo, br, bs, bs-Cyrl, ca, chr, co, cs, cy, da, de, de-AT@collation=phonebook, dsb, ee, el, en, eo, es, et, eu, fa, fi, fil, fo, fr, fr-CA, fur, fy, ga, gd, gl, gu, ha, haw, he, hi, hr, hsb, hu, hy, id, ig, is, it, ka, kk, kl, km, kn, kok, ku, ky, la, lb, lkt, ln, lo, lt, lv, mk, ml, mn, mo, mr, ms, mt, nb, ne, nl, nn, no, oc, om, or, pa, pl, pt, rm, ro, ru, rup, sco, se, si, sk, sl, smn, sq, sr, sr-Latn, sv, sv@collation=standard, sw, ta, te, th, tk, tl, to, tr, tt, uk, uz, vi, vo, yi, yo, zu

Si vous avez besoin par exemple d'une collation pour l'espagnol, alors vous utiliserez la collation uca-es.

En utilisant ces collations, dans les deux cas, l'ordre de tri sera correct pour la langue donnée et les titres plus exacts pour les premières lettres des titres d'articles. Les version antérieures de MediaWiki peuvent ne pas prendre en charge tous ces codes de langue.

Ajouter de nouvelles collations

Pour qu'une nouvelle langue soit prise en charge il y a deux conditions :

  • Il faut qu'elle soit prise en charge par la bibliothèque ICU International Components for Unicode (la liste des codes de langue qu'elle reconnaît est disponible sur [1]). Notez néanmoins que les serveurs de production de Wikimedia n'utilisent pas la dernière version de la bibliothèque ICU. Depuis 2016, ils utilisent la version 52.1, qui ne prend en charge qu'un ensemble réduit et significatif de langues.
  • Et qu'elle soit prise en charge en plus par MediaWiki lui-même (ceci principalement nécessite de lister les caractères additionnels, ou les groupes de caractères qui sont consisérés comme des lettres séparées dans la langue donnée, en supplément de l'alphabet de base) – la liste toujours maintenue des langues actuellement prises en charge, est disponible dans includes/collation/IcuCollation.php .

Le cas peut aussi se présenter que le classement ICU par défaut ('uca-default' collation) range bien les titres mais ne sépare pas correctement les lettres – il peut être utilisé pour la première étape dans ce cas. Quelque fois la manière de ranger les lettres dans une autre langue peut convenir à la vôtre si elles sont parentes - une collation personnalisée peut quelque fois être fournie dans ce cas (il en existe déjà une pour le kurde sorani et pour le kurde central ('ckb'), appelée xx-uca-ckb includes/collation/Collation.php ).

Classement numérique

Comparaison entre le tri habituel (regular sorting, en haut) et le tri numérique (numeric sorting, en bas).

Si on trie par ordre numérique, les pages seront classées ainsi : 1, 2, 9, 10, 11, 20, 21, 99, 100. Maintenant si on trie de la manière habituelle (non numérique), alors les pages seront classées comme du texte : 1, 10, 100, 11, 2, 20, 21, 9, 99. Lorsque vous utilisez le tri numérique, toutes les pages qui commencent avec un numéro seront triées ensemble sous le même entête : 0–9. Si vous utilisez le tri habituel, les pages qui commencent avec un nombre seront classées sous des entêtes séparés quelque soit le nombre avec lequel leur titre commence : « 0 », « 1 », « 2 », etc. Pour plus d'informations concernant le tri numérique, voir la spécification de l'algorithme de collation Unicode numéro 10. Pour tester le tri numérique, voir la démonstration de collation ICU. Notez que le tri numérique ne fonctionne que si la séquence de chiffres n'est pas cassée. Les chiffres séparés par des virgules, des points ou des espaces sont considérés comme des nombres différents.

Voir aussi

Liens externes

Références

  1. collation est un anglicisme utilisé en informatique pour désigner un mode de classement de données, en fonction de leur jeu de caractères et de critères de tri définis (par exemple le tri alphabétique ou inversé, sensible ou non à la casse, etc). Collation