Ich verwende biblatex
mit backend=biber
und der folgenden .bib
Datei:
@article{concellon_synthesis_2006,
title = {Synthesis of Enantiopure ({αS,βS)-} or ({αR,βS)-β-Amino} Alcohols by Complete Regioselective Opening of Aminoepoxides by Organolithium Reagents {LiAlH4} or {LiAlD4}},
volume = {71},
number = {17},
journal = {J. Org. Chem.},
author = {Concellón, José M. and Bernad, Pablo L. and del Solar, Virginia and Suárez, José Ramón and García-Granda, Santiago and Díaz, M. Rosario},
month = aug,
year = {2006},
pages = {6420--6426},
}
Ich kann dies erfolgreich mit kompilieren biber
, aber dann pdflatex
schlägt der Befehl aufgrund des α
und β
in der .bbl
Datei fehl. Ich bin erstaunt darüber, dass es für dieses Problem anscheinend keine elegante Lösung gibt, obwohl dies zumindest in der wissenschaftlichen Literatur ein alltägliches Szenario zu sein scheint.
Welche Möglichkeiten habe ich, dieses Problem zu beheben?
Antwort1
Sie müssen den von Ihnen verwendeten Unicode-Zeichen, die nicht standardmäßig festgelegt sind, eine Bedeutung zuweisen. Hier ist eine Möglichkeit.
\begin{filecontents*}{\jobname.bib}
@article{concellon_synthesis_2006,
title = {Synthesis of Enantiopure ({αS,βS)-} or ({αR,βS)-β-Amino} Alcohols by Complete Regioselective Opening of Aminoepoxides by Organolithium Reagents {LiAlH4} or {LiAlD4}},
volume = {71},
number = {17},
journal = {J. Org. Chem.},
author = {Concellón, José M. and Bernad, Pablo L. and del Solar, Virginia and Suárez, José Ramón and García-Granda, Santiago and Díaz, M. Rosario},
month = aug,
year = {2006},
pages = {6420--6426},
}
\end{filecontents*}
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{newunicodechar}
\newunicodechar{α}{\ensuremath{\alpha}}
\newunicodechar{β}{\ensuremath{\beta}}
\usepackage{biblatex}
\addbibresource{\jobname.bib}
\begin{document}
\cite{concellon_synthesis_2006}
\printbibliography
\end{document}
Die Verwendung filecontents
dient nur dem Erhalt eines in sich geschlossenen MWE.
Eine andere Lösung besteht in der Verwendung des \textgreek
Pakets, das ebenfalls von erspart, newunicodechar
da es die Bedeutung der griechischen Unicode-Buchstaben als gleichwertig mit ihrem \text...
Gegenstück definiert. So α
wird \textalpha
.
\begin{filecontents*}{\jobname.bib}
@article{concellon_synthesis_2006,
title = {Synthesis of Enantiopure ({αS,βS)-} or ({αR,βS)-β-Amino} Alcohols by Complete Regioselective Opening of Aminoepoxides by Organolithium Reagents {LiAlH4} or {LiAlD4}},
volume = {71},
number = {17},
journal = {J. Org. Chem.},
author = {Concellón, José M. and Bernad, Pablo L. and del Solar, Virginia and Suárez, José Ramón and García-Granda, Santiago and Díaz, M. Rosario},
month = aug,
year = {2006},
pages = {6420--6426},
}
\end{filecontents*}
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{textgreek}
\usepackage{biblatex}
\addbibresource{\jobname.bib}
\begin{document}
\cite{concellon_synthesis_2006}
\printbibliography
\end{document}
Das Ergebnis ist
Antwort2
biber ist so konzipiert, dass es in genau dieser Situation automatisch in TeX-Makros umkodieren kann. Dies wird im biber-Handbuch erklärt - das Problem, mit dem Sie konfrontiert sind, ist eine Einschränkung von inputenc
PDFLaTeX, das nicht vollständig UTF-8 versteht. Laden Sie biblatex mit der safeinputenc
Option und rufen Sie dann biber mit der --output_safecharsset=full
Option auf. Dadurch wird alles automatisch für Sie erledigt.
Um zu den Textgreek-Varianten zu wechseln, ist es ganz einfach: Sie benötigen eine benutzerdefinierte UTF-8<->TeX-Makro-XML-Konvertierungsdatei (biber wird mit einer Standarddatei geliefert, die für die meisten Anwendungen geeignet ist). Um die Textgreek-Varianten zu verwenden, holen Sie sich diese Datei:
https://www.dropbox.com/s/ln3ht1xd9mmgu9w/recode.xml
Dann ruf Biber so an:
biber --recodedata=<path to file downloaded above>
Stellen Sie dann einfach sicher, dass Sie die Option „Biblatex“ \usepackage{textgreek}
in Ihrem LaTeX-Dokument verwenden .safeinputenc
Eine viel einfachere Möglichkeit, damit umzugehen, ist einfach auf LuaLaTeX umzusteigen, da Biber problemlos mit UTF-8 zurechtkommt. Dann besteht keine Notwendigkeit für eine spezielle Biber-Option oder die safeintputenc
Biblatex-Option.
Antwort3
Wenn Sie Unicode verwenden möchten, sollten Sie Folgendes in Betracht ziehen:Schriftspezifikationzusammen mit einer Unicode-Schriftart mit griechischen Buchstaben (die praktisch alle Unicode-Schriftarten haben). Hier habe ich Linux Libertine verwendet.
\documentclass{article}
\usepackage{filecontents,fontspec,biblatex}
\setmainfont[Ligatures=TeX]{Linux Libertine O}
\begin{filecontents}{\jobname.bib}
@article{concellon_synthesis_2006,
title = {Synthesis of Enantiopure ({αS,βS)-} or ({αR,βS)-β-Amino} Alcohols by Complete Regioselective Opening of Aminoepoxides by Organolithium Reagents {LiAlH4} or {LiAlD4}},
volume = {71},
number = {17},
journal = {J. Org. Chem.},
author = {Concellón, José M. and Bernad, Pablo L. and del Solar, Virginia and Suárez, José Ramón and García-Granda, Santiago and Díaz, M. Rosario},
month = aug,
year = {2006},
pages = {6420--6426}}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\cite{concellon_synthesis_2006}
\printbibliography
\end{document}
Antwort4
Dank PLK und cgnieder konnte ich eine Lösung finden, mit der ich zufrieden bin. Sie basiert auf der Antwort von PLK, stellt aber auch sicher, dass die griechischen Buchstaben aufrecht stehen.
\begin{filecontents*}{\jobname.bib}
@article{concellon_synthesis_2006,
title = {Synthesis of Enantiopure ({αS,βS)-} or ({αR,βS)-β-Amino} Alcohols by Complete Regioselective Opening of Aminoepoxides by Organolithium Reagents {LiAlH4} or {LiAlD4}},
volume = {71},
number = {17},
journal = {J. Org. Chem.},
author = {Concellón, José M. and Bernad, Pablo L. and del Solar, Virginia and Suárez, José Ramón and García-Granda, Santiago and Díaz, M. Rosario},
month = aug,
year = {2006},
pages = {6420--6426},
}
\end{filecontents*}
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{textgreek}
\usepackage[backend=biber, safeinputenc]{biblatex}
\addbibresource{\jobname.bib}
\begin{document}
\cite{concellon_synthesis_2006}
\printbibliography
\end{document}
Nun wird die Makrodatei (gefunden aufBiber CTAN /biblatex-biber-1.5/lib/Biber/LaTeX/recode_data.xml
) muss bearbeitet werden. Dies:
<maps type="greek" set="full">
<map><from>alpha</from> <to hex="3B1">α</to></map>
<map><from>beta</from> <to hex="3B2">β</to></map>
...
<map><from>Omega</from> <to hex="3A9">Ω</to></map>
</maps>
Muss folgendermaßen geändert werden:
<maps type="wordmacros" set="base,full">
<map><from>textalpha</from> <to hex="3B1">α</to></map>
<map><from>textbeta</from> <to hex="3B2">β</to></map>
...
<map><from>textOmega</from> <to hex="3A9">Ω</to></map>
</maps>
und in Ihrem Arbeitsverzeichnis gespeichert. Das Paket textgreek
stellt den \textalpha
Befehl bereit, der zu einem aufrechten Ergebnis führt α
.
Ausführen Biber
mit den folgenden Optionen:
--recodedata=recode_data.xml
Und der folgende pdflatex
Durchlauf sollte eine Bibliographie mit aufrecht stehenden griechischen Buchstaben ergeben.