Hop, déterrage de topic. J’ai vu passer ce sujet et ça m’a donné l’envie d’essayer ça pour les dictionnaires de KompoZer.
La
documentation Apache 2 est assez précise. Pour ajouter une description, il suffit d’une ligne dans le fichier .htaccess :
Comme on utilise des caractères UTF-8, il faut le préciser dans les options générales :
Code : Tout sélectionner
IndexOptions FancyIndexing DescriptionWidth=* NameWidth=32 Charset=UTF-8
La largeur du champ « Name » est fixée à 32 caractères, celle du champ « Description » s’ajustera automatiquement. J’utilise ici « FancyIndexing » pour garder le tout dans une balise <pre>, afin de pouvoir avoir deux pseudo-colonnes dans le champ « Description ».
Tant qu’on y est, on en profite pour ajouter une feuille de style, un en-tête et un pied de page :
Code : Tout sélectionner
IndexStyleSheet "/l10n/index.css"
HeaderName HEADER.html
ReadmeName README.html
Le résultat sur les dictionnaires m’a bien plu, du coup je l’ai étendu aux langpacks. Voilà le résultat :
Certes, on pourrait faire mieux avec une bibliothèque PHP adaptée, mais j’ai été séduit par la simplicité de la solution. Là je n’ai eu à définir qu’un seul fichier .htaccess pour toute la partie l10n du site. Les en-têtes et pied de page sont de simples fragments HTML, c’est simple et efficace. Du coup, j’ai peaufiné l’ensemble, en ajoutant des icônes de fichier plus sympa que les icônes Apache par défaut.
Pour ceux que ça intéresserait, voilà le fichier .htaccess du moment :
Code : Tout sélectionner
Options +Indexes
IndexOptions FancyIndexing DescriptionWidth=* NameWidth=32 Charset=UTF-8
IndexStyleSheet "/l10n/index.css"
HeaderName HEADER.html
ReadmeName README.html
DefaultIcon /l10n/images/document-blank.png
AddIconByType (IMG,/l10n/images/document-image.png) image/*
AddIconByType (IMG,/l10n/images/document-style.png) text/css
AddIconByType (IMG,/l10n/images/document-html.png) text/html
AddIconByType (IMG,/l10n/images/document-text.png) text/plain
AddIconByType (IMG,/l10n/images/document-text.png) .log
AddIcon (IMG,/l10n/images/file-xpi.png) .xpi
AddIcon (IMG,/l10n/images/file-zip.png) .jar
AddIcon (IMG,/l10n/images/file-zip.png) .zip
AddIcon /l10n/images/folder-local.png ^^DIRECTORY^^
AddIcon /l10n/images/folder-up.png *~
AddDescription "Albanian | Shqip" *.sq.*
AddDescription "Arabic | عربي" *.ar.*
AddDescription "Belarusian | Беларуская" *.be.*
AddDescription "Bulgarian | Български" *.bg.*
AddDescription "Bulgarian | Български" *.bg-BG.*
AddDescription "Catalan | Català" *.ca.*
AddDescription "Catalan | Català" *.ca-AD.*
AddDescription "Chinese | 中文 (简体)" *.zh-CN.*
AddDescription "Chinese | 正體中文 (繁體)" *.zh-TW.*
AddDescription "Czech | Čeština" *.cs.*
AddDescription "Czech | Čeština" *.cs-CZ.*
AddDescription "Danish | Dansk" *.da.*
AddDescription "Danish | Dansk" *.da-DK.*
AddDescription "Dutch | Nederlands" *.nl.*
AddDescription "Dutch | Nederlands" *.nl-NL.*
AddDescription "English | English (US)" *.en-US.*
AddDescription "Esperanto | Esperanto" *.eo.*
AddDescription "Esperanto | Esperanto" *.eo-EO.*
AddDescription "Finnish | suomi" *.fi.*
AddDescription "Finnish | suomi" *.fi-FI.*
AddDescription "French | français" *.fr.*
AddDescription "French | français" *.fr-FR.*
AddDescription "German | Deutsch" *.de.*
AddDescription "German | Deutsch" *.de-DE.*
AddDescription "Greek | Ελληνικά" *.el.*
AddDescription "Hebrew | עברית" *.he.*
AddDescription "Hungarian | Magyar" *.hu.*
AddDescription "Hungarian | Magyar" *.hu-HU.*
AddDescription "Icelandic | íslenska" *.is.*
AddDescription "Irish | Gaeilge" *.ga.*
AddDescription "Irish | Gaeilge" *.ga-IE.*
AddDescription "Italian | Italiano" *.it.*
AddDescription "Italian | Italiano" *.it-IT.*
AddDescription "Japanese | 日本語" *.ja.*
AddDescription "Japanese | 日本語" *.ja-JP.*
AddDescription "Latvian | Latviešu" *.lv.*
AddDescription "Lithuanian | lietuvių kalba" *.lt.*
AddDescription "Norwegian | Norsk (bokmål)" *.nb-NO.*
AddDescription "Norwegian | Norsk (nynorsk)" *.nn-NO.*
AddDescription "Polish | Polski" *.pl.*
AddDescription "Polish | Polski" *.pl-PL.*
AddDescription "Portuguese | Português (Europeu)" *.pt-PT.*
AddDescription "Portuguese | Português (do Brasil)" *.pt-BR.*
AddDescription "Russian | Русский" *.ru.*
AddDescription "Russian | Русский" *.ru-RU.*
AddDescription "Serbian | Српски" *.sr.*
AddDescription "Slovak | slovenčina" *.sk.*
AddDescription "Slovak | slovenčina" *.sk-SK.*
AddDescription "Slovene | slovensko" *.sl.*
AddDescription "Spanish | Español" *.es-ES.*
AddDescription "Swedish | Svenska" *.sv.*
AddDescription "Turkish | Türkçe" *.tr.*
AddDescription "Upper Sorbian | Hornjoserbsce" *.hsb.*
AddDescription "Upper Sorbian | Hornjoserbsce" *.hsb-DE.*
AddDescription "Vietnamese | Tiếng Việt" *.vi.*
AddDescription "Welsh | Cymraeg" *.cy.*
Ce qui est vraiment intéressant pour le dossier /l10n/ de KompoZer, c’est que la description des locales n’est effectuée qu’une seule fois et est appliquée à des fichiers de types différents : xpi, zip, log, etc.