Verwenden Sie lokalisierte Anführungszeichen, Silbentrennung und Zeichensetzung in BibLaTeX unter Verwendung der Langid für den Eintragstitel.

Verwenden Sie lokalisierte Anführungszeichen, Silbentrennung und Zeichensetzung in BibLaTeX unter Verwendung der Langid für den Eintragstitel.

Was ich bekomme:

A. Autor: „Irgendein Artikeltitel?“. Egal, welche Zeitschrift.

B. Buthor, „Ein Artikel?“. Ein anderes Journal.

Was ich möchte:

A. Autor: „Irgendein Artikeltitel?“. Egal, welche Zeitschrift.

B. Buthor, „Ein Artikel?“. Ein anderes Journal.

Und die Silbentrennung sollte natürlich sprachabhängig sein. ;)

autolang=otherist keine Option, da dadurch andere Teile der Bibliografie übersetzt würden, was meiner Meinung nach nicht beeinträchtigt werden soll.

Ich bin gestolpert überBibLaTeX langid mit autolang=hyphen bewirkt, dass csquotes lokalisierte Anführungszeichen verwendetund das alte Verhalten ist größtenteils das, was ich will (mit dem kleinen Hinweis, dass ich nicht weiß, wie es sich hinsichtlich der Zeichensetzung wie bei den Fragezeichen oben verhalten hat).

MNWE:

\documentclass{scrartcl}

\usepackage[british,french]{babel}
\usepackage[autostyle=true]{csquotes}
\usepackage[autolang=hyphen]{biblatex}
\usepackage{filecontents}

\begin{filecontents*}{\jobname.bib}
@article{eng,
  author = {Author, A.},
  title = {Some article title?},
  journal = {Whatever Journal},
  year = {2019},
  langid = {british},
}
@article{fra,
  author = {Buthor, B.},
  title = {Un article ?},
  journal = {Another Journal},
  year = {2019},
  langid = {french},
}
\end{filecontents*}
\addbibresource{\jobname.bib}

\begin{document}
\nocite{*}
\printbibliography
\end{document}

Antwort1

Sie können Folgendes versuchen.

Eine Anmerkung zu den Satzzeichen. In deinem Beispiel gibt es zwei Arten:

  • Satzzeichen in Feldern, wie zB das Fragezeichen im Titel: {Some article title?},

  • Durch Makros aus BibLaTeX erstellte Satzzeichen, z. B. der Doppelpunkt nach dem In:.

Der erste Typ lässt sich mit pdflatex nur schwer an die Sprache anpassen, da die Catcodes bereits eingefroren sind. Mit lualatex funktioniert es.

\documentclass{scrartcl}
\usepackage{ifluatex}
\ifluatex\else
 \usepackage[T1]{fontenc} %with pdflatex
\fi

\usepackage[british,french]{babel}
\usepackage[autostyle=true]{csquotes}
\usepackage[autolang=hyphen]{biblatex}
\usepackage{filecontents}

\begin{filecontents*}{\jobname.bib}
@article{eng,
  author = {Author, A.},
  title = {Some article title?},
  journal = {Whatever Journal},
  year = {2019},
  langid = {british},
  editor={D. Editor}
}
@article{fra,
  author = {Buthor, B.},
  title = {Un article?},
  journal = {Another Journal},
  year = {2019},
  langid = {french},
  editor={D. Editor}
}

\end{filecontents*}
\addbibresource{\jobname.bib}

\makeatletter
\def\blx@hook@initlang{%
 \csq@reset=0 \csq@setstyle{\abx@field@langid}%
 %optional for the colon after "In":
 \ifdefstring{\abx@field@langid}{french}{}
  {\def\FDP@colonspace{}%
   \def\FDP@thinspace{}}%
 }
\makeatletter
\begin{document}

\nocite{*}
\printbibliography
\end{document}

Ausgabe mit lualatex:

Bildbeschreibung hier eingeben

Ausgabe mit pdflatex

Bildbeschreibung hier eingeben

Antwort2

Die Verwendung autolang=other(und das Laden der T1Schriftkodierung) erledigt den Job:

\documentclass{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage[british,french]{babel}
\usepackage[autostyle=true]{csquotes}
\usepackage[autolang=other]{biblatex}
\usepackage{filecontents}

\begin{filecontents*}{\jobname.bib}
@article{eng,
  author = {Author, A.},
  title = {Some article title?},
  journal = {Whatever Journal},
  year = {2019},
  langid = {british},
}
@article{fra,
  author = {Buthor, B.},
  title = {Un article ?},
  journal = {Another Journal},
  year = {2019},
  langid = {french},
}
\end{filecontents*}
\addbibresource{\jobname.bib}

\begin{document}

\nocite{*}
\printbibliography

\end{document} 

Bildbeschreibung hier eingeben

verwandte Informationen