von Gast » Fr 23. Nov 2018, 14:22
Vorab: Die eingangs genannten biblatex 3.4 und auch 3.8a sind mit Biber 2.11 inkompatibel. Die genaue Liste kompatibler Versionen kannst Du der [d]biblatex[/d]- oder [d]biber[/d]-Dokumentation entnehmen (Stichwort "compatibility matrix"), aktuell sind biblatex 3.12 und Biber 2.12.
Außer in begründeten Einzelfällen, zu denen der normale Gebrauch eigentlich nicht zählt, sollte man biblatex, Biber und alle in MikTeX und TeX live vorhandenen Pakete
niemals händisch von CTAN oder anderen Quellen wie Sourceforge installieren. Das sollte immer über die TeX-Distribution (bei TeX live mit tlmgr bei MikTeX mit der Console) erfolgen. Bei einer Mehrbenutzer-/Admin-Installation von MikTeX muss man gegebenenfalls beachten, dass Pakete an zwei verschiedenen Leveln installiert werden können. Ferner sollte man nach der Installation neuer Pakete ein Update in Betracht ziehen, da es seien kann, dass Abhängigkeiten des neu installierten Pakets schon in einer alten (im schlimmsten Fall inkompatiblen) Version auf dem System vorhanden sind.
Da biblatex und Biber sehr enge Abhängigkeiten haben, es aber im schlimmsten Fall bei biblatex vier Konfigurationen gibt (oder drei? kann man als Nutzer in einem Mehrbenutzersystem ausführbare Programme installieren?), wie die beiden Pakete installiert sein können, sollte man bei der Installation immer genau beachten, ob man als Nutzer oder Admin arbeitet. Ferner sollte man zur Sicherheit nach der Installation ein Update im Nutzermodus und ein Update im Adminmodus machen.
Fast niemals sollte man bei manuellen Installationen in einem von der TeX-Distribution verwalteten Bereich schreiben. Wenn Du biblatex in einen MikTeX-Ordner kopierst, dann kann MikTeX Deine Version ohne Vorwarnung überschreiben.
Soviel dazu. Nun zu Deiner Frage: Grundsätzlich sind auch bei biblatex und Biber alle Sonderzeichen nutzbar, dabei sind aber folgende Dinge zu beachten.
- Bei der Nutzung von Nicht-ASCII-Zeichen ist die gleiche Eingabecodierung zu nutzen wie in der TeX-Datei, die dort explizit angegeben werden muss, wenn es sich nicht um UTF-8 (neues LaTeX >= 2018-04-01) oder ASCII (altes LaTeX < 2018-04-01) handelt. Abweichende Codierungen müssen explizit angegeben werden. Ich empfehle heutzutage sowohl im .tex-Dokument als auch in der .bib-Datei nach Möglichkeit UTF-8 zu nutzen.
- Zeichen, die für (La)TeX eine spezielle Bedeutung haben, müssen im Allgemeinen wie in einem normalen .tex-Dokument escaped werden. So kannst Du nicht title = {100\,% #Influencer}, schreiben, es müsste 100\,\% \#Influencer heißen. Davon ausgenommen sind nur bestimmte "verbatim"/"uri"-Felder wie url, doi oder eprint. Insbesondere gilt das selbst für Felder die biblatex bekannt sind, aber nicht im Literaturverzeichnis oder sonstwo ausgegeben werden. Dazu gehört zum Beispiel abstract. Bei BibTeX verhält sich das etwas anders, dort müssen zwar prinzipiell auch alle Zeichen mit Sonderbedeutung für TeX durch Escapen entschärft werden, allerdings ist das nur notwendig, wenn das Feld wirklich ausgegeben wird. Daher treten bei einigen Nutzern Schwierigkeiten beim Umstieg auf, wenn sie fehlerhafte abstract-Felder haben: Diese wurden bei BibTeX meist nicht ausgegeben, bei biblatex werden sie auch nicht ausgegeben, erzeugen aber dennoch einen Fehler.
Korrekt wäre es also, die Zeichen mit Sonderbedeutung für TeX wie üblich zu escapen, es sei denn sie stehen in einem Feld mit Sonderbehandlung wie url oder doi. Wenn Du das abstract-Feld eh nicht brauchst, kannst Du es auch von Biber entfernen lassen, die meisten derartigen Probleme sollten sich dadurch lösen lassen
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldset=abstract, null]
}
}
}
Bitte beachte, dass dies ein Fehler ist, der sich in der temporären .bbl-Datei manifestiert. Es ist daher sinnvoll, die temporären Dateien zu löschen, nachdem Du den Fehler behoben hast, um zu vermeiden, dass sich die alte Information in der Hilfsdatei festtritt und einen neuen Kompilationsdurchgang unmöglich macht.
Dein
Minimalbeispiel ist zur Darstellung des Problems leider etwas zu minimal geraten, da wir die beiden Einträge BuchA und BuchB aus Deiner Datei Beispielliteraturverzeichnis.bib nicht kennen. Für explizite Hilfe zu Deinem Problem müsstest Du uns die beiden schon zeigen, damit wir konkrete Aussagen machen können.
Vorab: Die eingangs genannten [tt]biblatex[/tt] 3.4 und auch 3.8a sind mit Biber 2.11 inkompatibel. Die genaue Liste kompatibler Versionen kannst Du der [d]biblatex[/d]- oder [d]biber[/d]-Dokumentation entnehmen (Stichwort "compatibility matrix"), aktuell sind [tt]biblatex[/tt] 3.12 und Biber 2.12.
Außer in begründeten Einzelfällen, zu denen der normale Gebrauch eigentlich nicht zählt, sollte man [tt]biblatex[/tt], Biber und alle in MikTeX und TeX live vorhandenen Pakete [i]niemals[/i] händisch von CTAN oder anderen Quellen wie Sourceforge installieren. Das sollte immer über die TeX-Distribution (bei TeX live mit [tt]tlmgr[/tt] bei MikTeX mit der Console) erfolgen. Bei einer Mehrbenutzer-/Admin-Installation von MikTeX muss man gegebenenfalls beachten, dass Pakete an zwei verschiedenen Leveln installiert werden können. Ferner sollte man nach der Installation neuer Pakete ein Update in Betracht ziehen, da es seien kann, dass Abhängigkeiten des neu installierten Pakets schon in einer alten (im schlimmsten Fall inkompatiblen) Version auf dem System vorhanden sind.
Da [tt]biblatex[/tt] und Biber sehr enge Abhängigkeiten haben, es aber im schlimmsten Fall bei [tt]biblatex[/tt] vier Konfigurationen gibt (oder drei? kann man als Nutzer in einem Mehrbenutzersystem ausführbare Programme installieren?), wie die beiden Pakete installiert sein können, sollte man bei der Installation immer genau beachten, ob man als Nutzer oder Admin arbeitet. Ferner sollte man zur Sicherheit nach der Installation ein Update im Nutzermodus und ein Update im Adminmodus machen.
Fast niemals sollte man bei manuellen Installationen in einem von der TeX-Distribution verwalteten Bereich schreiben. Wenn Du [tt]biblatex[/tt] in einen MikTeX-Ordner kopierst, dann kann MikTeX Deine Version ohne Vorwarnung überschreiben.
Soviel dazu. Nun zu Deiner Frage: Grundsätzlich sind auch bei [tt]biblatex[/tt] und Biber alle Sonderzeichen nutzbar, dabei sind aber folgende Dinge zu beachten.
[list]
[*] Bei der Nutzung von Nicht-ASCII-Zeichen ist die gleiche Eingabecodierung zu nutzen wie in der TeX-Datei, die dort explizit angegeben werden muss, wenn es sich nicht um UTF-8 (neues LaTeX >= 2018-04-01) oder ASCII (altes LaTeX < 2018-04-01) handelt. Abweichende Codierungen müssen explizit angegeben werden. Ich empfehle heutzutage sowohl im [tt].tex[/tt]-Dokument als auch in der [tt].bib[/tt]-Datei nach Möglichkeit UTF-8 zu nutzen.
[*] Zeichen, die für (La)TeX eine spezielle Bedeutung haben, müssen im Allgemeinen wie in einem normalen [tt].tex[/tt]-Dokument escaped werden. So kannst Du nicht [tt]title = {100\,% #Influencer},[/tt] schreiben, es müsste [tt]100\,\% \#Influencer[/tt] heißen. Davon ausgenommen sind nur bestimmte "verbatim"/"uri"-Felder wie [tt]url[/tt], [tt]doi[/tt] oder [tt]eprint[/tt]. Insbesondere gilt das selbst für Felder die [tt]biblatex[/tt] bekannt sind, aber nicht im Literaturverzeichnis oder sonstwo ausgegeben werden. Dazu gehört zum Beispiel [tt]abstract[/tt]. Bei BibTeX verhält sich das etwas anders, dort müssen zwar prinzipiell auch alle Zeichen mit Sonderbedeutung für TeX durch Escapen entschärft werden, allerdings ist das nur notwendig, wenn das Feld wirklich ausgegeben wird. Daher treten bei einigen Nutzern Schwierigkeiten beim Umstieg auf, wenn sie fehlerhafte [tt]abstract[/tt]-Felder haben: Diese wurden bei BibTeX meist nicht ausgegeben, bei [tt]biblatex[/tt] werden sie auch nicht ausgegeben, erzeugen aber dennoch einen Fehler.[/list]
Korrekt wäre es also, die Zeichen mit Sonderbedeutung für TeX wie üblich zu escapen, es sei denn sie stehen in einem Feld mit Sonderbehandlung wie [tt]url[/tt] oder [tt]doi[/tt]. Wenn Du das [tt]abstract[/tt]-Feld eh nicht brauchst, kannst Du es auch von Biber entfernen lassen, die meisten derartigen Probleme sollten sich dadurch lösen lassen
[code]\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldset=abstract, null]
}
}
}[/code]
Bitte beachte, dass dies ein Fehler ist, der sich in der temporären [tt].bbl[/tt]-Datei manifestiert. Es ist daher sinnvoll, die temporären Dateien zu löschen, nachdem Du den Fehler behoben hast, um zu vermeiden, dass sich die alte Information in der Hilfsdatei festtritt und einen neuen Kompilationsdurchgang unmöglich macht.
Dein [m][/m] ist zur Darstellung des Problems leider etwas zu minimal geraten, da wir die beiden Einträge [tt]BuchA[/tt] und [tt]BuchB[/tt] aus Deiner Datei [tt]Beispielliteraturverzeichnis.bib[/tt] nicht kennen. Für explizite Hilfe zu Deinem Problem müsstest Du uns die beiden schon zeigen, damit wir konkrete Aussagen machen können.