Le mpg-blog

LaTeX et autres geekeries

Texdoc 0.8 et les langues

without comments

Je viens de publier la version 0.8 de texdoc, l’outil d’accès rapide à la documentation dans TeX Live. La nouveauté majeure est qu’il sélectionne en priorité la documentation dans votre langue préférée quand elle existe. Une bonne partie de cette fonctionnalité est fournie par un patch de Philipp Stephani, que je remercie pour sa contribution.## Détection et choix de la langue

Par défaut, la langue est détectée en utilisant la fonction os.setlocale de Lua pour découvrir la configuration de votre système. Sous Unix, ceci est déterminé par les variables d’environnements LANG, LC_<catégorie> et LC_ALL.

Si la détection automatique ne donne pas le résultat attendu, vous pouvez régler la langue préférée à l’aide d’une instruction

lang = <code de lettres>

dans votre fichier de configuration (texdoc -f pour connaître son emplacement, il est possible que vous ayez besoin de le créer).

Noms de fichiers

Lorsque vous effectuez une recherche avec texdoc <nom>, le classement des résultats d’après le nom de fichier se fait initialement dans l’ordre suivant (par préférence croissante)

  1. Fichiers contenant <nom> en tant que mot (séparé du reste par des symboles de ponctuation).
  2. Fichiers contenant <nom><suffixe> en tant que mot, où <suffixe> est par exemple -doc ou guide (cette liste est déterminée par le paramètre suffix_list).
  3. Fichiers dont le nom est exactement <nom><suffixe>.
  4. Fichiers dont le nom est exactement <nom>.
  5. Fichiers dont le nom est exactement <nom>-<code> ou <code>-<nom>, où <code> est le code à deux lettres de la langue préférée.

(Ce classement peut être modifié par d’autre paramètres indépendants de la langue.) Cette méthode n’est pas parfaite, comme toutes les méthodes basées sur les noms de fichiers elle suppose que les auteurs de paquets utilisent une convention simple pour les noms de fichiers, ce qui n’est pas toujours le cas. Pour l’instant, seule la convention la plus évidente est reconnue automatiquement, d’autres cas pourront être ajoutés ultérieurement.

Les lecteurs francophones peuvent tester cette fonctionnalité avec texdoc xargs ou texdoc lshort par exemple.

Alias

Pour les cas où le nom de fichier et les informations contenues dans la base de données des paquets TeX Live ne suffisent pas, texdoc utilise des alias. Par exemple, la version allemande de lshort s’appelle l2kurz.pdf et se situe dans le répertoire lshort-german, du nom du paquet. Aucun de ces noms n’est facilement identifiable par texdoc, qui reconnaîtrait plutôt lshort-de. Heureusement, le fichier de configuration par défaut contient

alias lshort-de = l2kurz

Désormais, texdoc <nom> utilise non seulement les alias pour <nom> mais aussi ceux pour <nom>-<langue>, auxquels il donne en fait la priorité.

La suite

On peut envisager différents développements techniques pour améliorer la sélection de la documentation par langue : en plus des améliorations possibles de l’heuristique basée sur le nom de fichier mentionnée plus haut, on pourrait utiliser les étiquettes de langue parfois présentes dans le catalogue du CTAN (informations auxquelles texdoc a déjà accès mais qu’il ne prend actuellement pas en compte).

À suivre dans les prochaines versions… En attendant, vos retours sont comme toujours les bienvenus, particulièrement si vous avez des exemples de documents que texdoc ne trouve pas correctement, que ce soit en rapport ou non avec leur langue.

Written by mpg

mai 19th, 2011 at 1:09

Posted in TeX et compagnie

Tagged with