Surcharger des chaînes de langues BibLaTeX

samedi 19 mars 2011, mise à jour dimanche 3 août 2014, par Maïeul
Suivre la vie du site RSS 2.0 Forum

Mon précédent article portait sur la manière de modifier les chaînes de langues des abréviation bibliographiques en latins.

Mais on pourrait vouloir modifier le contenu d’un chaîne de langue. Voici comment faire.

Problème

Je cite un article, et j’obtiens :

Frédéric AMSLER, « Remarques sur la réception liturgique et folklorique des Actes de Philippe (APh VIII-XV et Martyre) », dans : Apocrypha 8 (1997), p. 251–264

Mais j’aimerais que « dans » soit remplacé par l’équivalent latin, « in », avec les italiques.

Chaînes de langues : repérer la clef

Ceci est une chaîne de langue. C’est à dire un morceau de texte qui varie selon la langue. Les styles bibliographiques appellent une fonction en lui passant une clef, et, selon la langue, cette clef va être traduite par tel ou tel terme.

Par exemple, en anglais, j’aurais eu « in ».

Il est possible de rédéfinir des chaînes de langues.

Pour ce faire il faut d’abord savoir quelle est la clef qui nous intéresse. Il faut donc trouver le fichier où sont définies les chaînes de langues par défaut. Ce fichier porte l’extension .lbx et en analysant le journal de compilation (le fichier .log qui est créé lors de la compilation) on trouve rapidement le chemin de ce fichier.

Sur Mac, avec MacLive 2010, c’est dans :

/usr/local/texlive/2010/texmf-dist/tex/latex/biblatex/lbx/french.lbx.

Ouvrons ce fichier : on trouve une ligne contenant :

\DeclareBibliographyStrings{%

Cette ligne est suivi d’autres lignes sous la forme

clef     = {{valeur longue}{valeur courte}},

Il s’agit de nos chaînes de langue, avec deux traductions possibles, breves ou courtes, selon des options à passer lorsqu’on appel le package.

Il est alors facile de trouver la clef correspondant à notre chaîne. Pour le cas de « dans » on voit qu’il s’agit de in.

Surcharge de la chaîne

Reste à surcharger cette chaîne, de manière à ce que notre définition l’emporte sur la définition par défaut.

Pour cela, il suffit de mettre

\DefineBibliographyStrings{french}{%
	in = {\emph{in}}%
}

La commande \DefineBibliographyStrings permet de surcharger des chaînes de langues. Ici je surcharge uniquement pour le français.

Et voilà, ma citation selon mon désir :

Frédéric AMSLER, « Remarques sur la réception liturgique et folklorique des Actes de Philippe (APh VIII-XV et Martyre) », in : Apocrypha 8 (1997), p. 251–264

Vos commentaires

  • Le 23 février 2012 à 16:22, par AntoineVe En réponse à : Surcharger des chaînes de langues BibLaTeX

    Merci ! Grâce à cet article, j’ai pu changer les « et » par des « ; » dans la liste des noms d’auteurs :

    \DefineBibliographyStrings{french}{
            and = {~;~}
    }
  • Le 23 février 2012 à 16:44, par Maïeul En réponse à : Surcharger des chaînes de langues BibLaTeX

    De rien ;-)

  • Le 23 février 2012 à 19:58, par Maïeul En réponse à : Surcharger des chaînes de langues BibLaTeX

    tu devrais utiliser les commandes d’insertion de signes de ponctuation :

    \addnbspace\addsemicolon\addnbspace

    Cela permet à BibLaTeX de gérer correctement les cas où il y a plusieurs ponctuations qui se suivent.

    Voir le manuel de biblatex 1.7 p. 166 et suivantes

  • Le 23 février 2012 à 20:22, par AntoineVe En réponse à : Surcharger des chaînes de langues BibLaTeX

    Finalement, je suis parti sur une autre approche, qui me semble plus « propre » (et je l’ai modifié pour utiliser les commandes d’insertion) :

    \renewcommand{\multinamedelim}{\addnbspace\addsemicolon\addnbspace}
    \renewcommand{\finalnamedelim}{\addnbspace\addsemicolon\addnbspace}
  • Le 23 février 2012 à 20:24, par Maïeul En réponse à : Surcharger des chaînes de langues BibLaTeX

    oui, c’est effectivement plus propre en général. Je crois que j’en parle quelquepart sur ce site (pas sûr)

  • Le 25 novembre 2014 à 17:41, par Frédéric Vachon En réponse à : Surcharger des chaînes de langues BibLaTeX

    Quelques années plus tard, un autre merci à toi, ça fait un moment que je souhaite traduire mes In (ma directrice de recherche considère qu’ils sont en anglais et non en latin).

  • Le 12 août 2015 à 03:07, par Jean Bernard En réponse à : Surcharger des chaînes de langues BibLaTeX

    Bonjour, merci pour l’article. J’ai néanmoins un problème lorsque je redéfinis une chaîne qui a une valeur longue et une valeur courte, dans mon préambule, par ex. :

    \DefineBibliographyStrings{french}{%
      february         = {{f\'evrier}{f\'evr\adddot}}
    }

    les deux valeurs s’affichent, agglutinées, dans mon document : « 11 févrierfévr. 2015 »… Une idée du problème ? Merci ! J.-B.

  • Le 12 août 2015 à 12:24, par Maïeul En réponse à : Surcharger des chaînes de langues BibLaTeX

    malheureusement \DefineBibliographyStrings ne permet de définir qu’une chaîne de langue à la fois.

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Acheter XeLaTeX appliqué aux sciences humaines

À propos

Titulaire d’un doctorat en théologie et d’un doctorat en histoire, sous la direction conjointe de Frédéric Amsler et d’Élisabeth_Malamut, je commence à partir du 1er août 2017 un travail d’édition critique des Actes de Barnabé.

Dans le cadre de la rédaction de mon mémoire de master puis de ma thèse de doctorat, j’ai été emmené à utiliser LaTeX, et j’ai donc décider de partager mes techniques. En effet, au cours de mes premiers apprentissages, j’ai découvert que les ressources indiquant les outils pour l’utilisation de LaTeX en sciences humaines étaient rares. Ceci m’a conduit à maintenir ou créer plusieurs packages LaTeX et à donner plusieurs formations.

J’ai reçu en 2018 le prix DANTE e.V pour mon travail autour de LaTeX, en particulier autour de reledmac et reledpar.

Par ailleurs, je suis membre actif de la communauté SPIP, au sein de laquelle j’administre le site Spip-Contrib. Je propose sur ce site quelques notes sur SPIP, en général à destination de webmestre.

Il m’arrive également de faire un petit peu de Python, de temps en temps.

Enfin, je tiens un blog de réflexions politiques et religieuses.

Maïeul