perl warning: Setting locale failed und Syntaxfehler

Erstellung eines Literaturverzeichnisses mit BibTeX, Biber, BibLaTeX und Co.


stefmil
Forum-Newbie
Forum-Newbie
Beiträge: 8
Registriert: Do 30. Jun 2022, 09:38

perl warning: Setting locale failed und Syntaxfehler

Beitrag von stefmil »

Hallo,

ich schreibe gerade meine Bachelorarbeit auf meinem Macbook und verwende den Editor Aquamacs sowie das mit Hilfe von Moewe angepasste Biblatex-Jura 2 Paket. (Danke nochmals :D ).

(1)Nun erhalte ich, wenn ich Biber laufen lasse den Fehler:

Running `Biber' on `Bachelorthesis_main_SRH' with ``biber Bachelorthesis_main_SRH''
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LC_ALL = (unset),
LANG = "en_DE.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

Ich habe bereits gegoogelt und komme nicht weiter, da ich mich mit Programmiersprachen null auskenne. Vielleicht habt ihr ja eine Idee oder der Fehler ist euch schon bekannt?

(2) Der zweite Fehler, der sich mir zeigt ist beim Eintrag @Commentary.

ERROR - BibTeX subsystem: /var/folders/vl/wr7hkm557m7dtnf4m8sgvtm00000gn/T/biber_tmp_bYKB/1c4eb1d03cb7b1f6684d53d805dfb6da_3524.utf8, line 431, syntax error: found "@Commentary", expected end of entry ("}" or ")") (skipping to next "@")

Mein Eintrag sieht so aus:
@Commentary{münchner:komminso1,
  maintitle = {Münchner Kommentar zur InsO},
  title = {\hfill\hfill\linebreak
  Band 1: §§ 1 - 79 Insolvenzrechtliche Vergütungsverordnung. \hfill\hfill\linebreak},
  editor = {Stürner, Rolf and Eidenmüller, Horst and Schoppmeyer, Heinrich},
  editortype = {founder},
  edition = {4. Auflage},
  year = {2019},
  publisher = {C.H. Beck},  
  address = {München},
  shorthand = {MüKoInsO},
  addendum = {(jeweils zit. als MüKoInsO/\emph{Bearbeiter})},
}
In der Form finden sich noch viele Kommentar in der Bib-Datei und es wird immer der erste als Fehler angezeigt. Lösche ich diesen, wird der nächste als Fehler angezeigt. Ich suche schon den zweiten Tag und habe keine Ahnung wo hier eine Klammer fehlen soll.

Mein Minimalbeispiel (leider sehr lang, da angepasst):
\documentclass[a4paper, 11pt, BCOR=7mm, onecolumn, parskip=half, ngerman]{scrreprt}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%Präambel

%\usepackage{todo}


% Parameter laden
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{tgheros}
\usepackage{graphicx}
\usepackage{microtype}
\usepackage[left=40mm, right=20mm, top=25mm, bottom=20mm]{geometry}
\usepackage{scrlayer-scrpage}
\usepackage{setspace}
\usepackage[german=quotes]{csquotes}

%Bibliographystyle
\usepackage[
  backend=biber,
  style=ext-authoryear-ibid,
  giveninits=true, uniquename=init,
  isbn=false, doi=false,
]{biblatex}

\addbibresource{Literatur_Bachelorthesis.bib}
%\usepackage{hyperref}

%Seitenzahlen Kopfzeile mittig 
\clearscrheadfoot
\chead[\pagemark]{\pagemark}

%keine Serifenschriftarten
\renewcommand\familydefault{\sfdefault}
\onehalfspacing

\DeclareSourcemap{
  \maps[datatype=bibtex]{
    \map[overwrite=true]{
      \step[fieldset=pagetotal, null]
      \step[fieldset=publisher, null]
    }
    \map[overwrite=false]{
      \pertype{jurisdiction}
      \step[fieldsource=gericht,
            fieldtarget=institution]
      \step[fieldsource=dokumententyp,
            fieldtarget=usera]
      \step[fieldsource=entscheidungsdatum,
            fieldtarget=date]
      \step[fieldsource=aktenzeichen,
            fieldtarget=userb]
      \step[fieldsource=datenbank,
            fieldtarget=userc]
      \step[fieldsource=fundstelle,
            fieldtarget=userd]
      \step[fieldsource=ecli,
            fieldtarget=usere]
      \step[fieldsource=entscheidungsname,
          fieldtarget=userf]
    }
  }
}


\DeclareLabeldate[misc]{%
  \field{date}
  \field{year}
  \field{eventdate}
  \field{origdate}
  \field{urldate}
}

\DefineBibliographyStrings{ngerman}{
  andothers = {et\,al\adddot},
}


\DeclareNameAlias{sortname}{family-given}

\DeclareDelimFormat{multinamedelim}{\addslash}
\DeclareDelimAlias{finalnamedelim}{multinamedelim}

\renewcommand*{\mkbibcompletename}[1]{%
  \ifboolexpr{%
    test {\ifentrytype{commentary}}%
    and
    test {\iftoggle{tnbcbx@citedbytitle}}%
    }%
  {#1}%
  {\mkbibemph{#1}}%
}

\DeclareDelimFormat[bib]{nametitledelim}{\addcomma\space}

\DeclareFieldFormat*{title}{#1}
\DeclareFieldFormat*{booktitle}{#1}

\renewcommand*{\locdatedelim}{\addspace}


\newtoggle{tnbcbx@citedbytitle}
\DeclareBiblatexOption{global,type,entry}{citedbytitle}[true]{\settoggle{tnbcbx@citedbytitle}{#1}}

\DeclareBibliographyDriver{commentary}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \iftoggle{tnbcbx@citedbytitle}%  
    {\usebibmacro{maintitle+title}\newunit\newblock}%
    {\usebibmacro{author/editor+others/translator+others}%
     \setunit{\printdelim{nametitledelim}}\newblock%
     \usebibmacro{maintitle+title}%
     \newunit\newblock}%
  \usebibmacro{byauthor}%
  \newunit\newblock
  \usebibmacro{byeditor+others}%
  \newunit\newblock
  \printfield{edition}%
  %\newunit
  %\usebibmacro{location+date}%
  \setunit*{\addcomma\space}%
  \printlist{location}%
  \setunit*{\space}%
  \usebibmacro{date}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}%
  \newblock
  \usebibmacro{finentry}}

%%% 'editortype' in Klammern
\DeclareFieldFormat[commentary]{editortype}{%
  %\iffieldequalstr{citedby}{title}%
  \iftoggle{tnbcbx@citedbytitle}%  
    {#1}%
    {\mkbibparens{#1}}%
  }%

%%% Titel nicht kursiv
\DeclareFieldFormat[commentary]{maintitle}{%
  %\iffieldequalstr{citedby}{title}%
  \iftoggle{tnbcbx@citedbytitle}%  
    {\mkbibemph{#1}}%
    {\normalfont{#1}}%
  }
\DeclareFieldFormat[commentary]{title}{%
  \ifboolexpr{%
    test {\iffieldundef{maintitle}}%
    and
    test {\iftoggle{tnbcbx@citedbytitle}}}%
  {{\mkbibemph{#1}}}%
  {\normalfont{#1}}%
}

\DeclareFieldFormat{journaltitle}{#1}

\DeclareFieldFormat{issuedate}{%
  \iffieldundef{volume}
    {#1}
    {\mkbibparens{#1}}}

\renewbibmacro*{issue+date}{%
  \printtext[issuedate]{%
    \printfield{issue}%
    \setunit*{\addspace}%
    \printdate}%
  \newunit}

\renewbibmacro{edition}{}
\renewbibmacro*{pubinstorg+location+date}[1]{%
  \printfield{edition}%
  \setunit{\addcomma\space}%
  \printlist{#1}%
  \setunit*{\publocdelim}%
  \printlist{location}%
  \setunit*{\pubdatedelim}%
  \usebibmacro{date}%
  \newunit}

\newtoggle{tnbcbx@howcited}
\DeclareBiblatexOption{global,type,entry}[boolean]{howcited}[true]{\settoggle{tnbcbx@howcited}{#1}}

\newtoggle{tnbcbx@bearbeiterin}
\DeclareBiblatexOption{global,type,entry}[boolean]{bearbeiterin}[true]{\settoggle{tnbcbx@bearbeiterin}{#1}}

\newbibmacro{howcited}{%
  \iftoggle{tnbcbx@howcited}%
    {\iffieldundef{shorthand}%
      {}%
      {\setunit{\addspace}%
      \iftoggle{tnbcbx@bearbeiterin}
        {\iffieldundef{shorthand}
          {}%
          {\setunit{\addspace}%
          \printtext[parens]{%
            \bibstring{zitiertals}%
            \setunit{\space}%
            \bibstring[\emph]{bearbeiter}%
            \setunit{\space}%
            \bibstring{kommentarin}\addspace%
            \printfield{shorthand}%
            }%
          }%
        }%
        {\iffieldundef{shorthand}%
          {}%
          {\setunit{\addspace}%
          \printtext[parens]{%
            \bibstring{zitiertals}%
            %\setunit{\addcolon\space}%
            \setunit{\space}%
            \printfield{shorthand}%
            \setunit{\addslash}%
            \bibstring[\emph]{bearbeiter}%
            }%
          }%
        }%
      }%
    {}%
  }%
}%

\renewbibmacro{finentry}{%
  \ifentrytype{commentary}{%
    \usebibmacro{howcited}\newunit\newblock}%
    {}%
  \ifentrytype{incollection}{%
    \usebibmacro{fshowcited}\newunit\newblock}%
    {}%
  \ifentrytype{online}{%
    \usebibmacro{fshowcited}\newunit\newblock}%
    {}%
  \finentry}%

\NewBibliographyString{bearbeiter}
\NewBibliographyString{zitiertals}
\NewBibliographyString{kommentarin}
\DefineBibliographyStrings{ngerman}{
  zitiertals = {zit. als},
  bearbeiter = {Bearbeiter},
  kommentarin = {in}, 
}
\DefineBibliographyStrings{german}{
  zitiertals = {zit. als},
  bearbeiter = {Bearbeiter},
  kommentarin = {in}, 
}

\DeclareNameWrapperFormat{sortnamenorm}{\mkbibemph{#1}}
\DeclareNameAlias[incollection]{editor}{sortname}
\DeclareNameWrapperAlias[incollection]{editor}{sortnamenorm}

\newtoggle{tnbcbx@fshowcited}
\DeclareBiblatexOption{global,type,entry}[boolean]{fshowcited}[true]{\settoggle{tnbcbx@fshowcited}{#1}}

\newbibmacro{fshowcited}{%
  \iftoggle{tnbcbx@fshowcited}
    {\iffieldundef{shorttitle}
       {}
       {\setunit{\addspace}%
        \printtext[parens]{%
          \bibstring{zitiertals}%
          \setunit{\space}%
          \printfield{shorttitle}%          
          }}}%
    {}}%


\renewbibmacro*{cite}{%
  \global\boolfalse{cbx:loccit}%
  \iffieldundef{shorthand}
    {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
       {\usebibmacro{cite:ibid}}
       {\usebibmacro{cite:namebit}%
        \usebibmacro{cite:additionalbit}}}
    {\usebibmacro{cite:shorthand}}}

\newbibmacro*{cite:namebit}{%
  \ifbibmacroundef{cite:namebit:\thefield{entrytype}}
    {\usebibmacro{cite:usualnamebit}}
    {\usebibmacro*{cite:namebit:\thefield{entrytype}}}}

\newbibmacro*{cite:usualnamebit}{%
  \ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}}
    {\usebibmacro{cite:label}%
     \setunit{\printdelim{nonameyeardelim}}}
    {\printnames{labelname}%
     \setunit{\printdelim{nameyeardelim}}}}

\DeclareFieldFormat{footcitelabeldate}{\mkbibparens{#1}}
\newbibmacro*{cite:additionalbit}{%
  \ifbibmacroundef{cite:additionalbit:\thefield{entrytype}}
    {\usebibmacro{cite:labeldate+extradate}}
    {\usebibmacro*{cite:additionalbit:\thefield{entrytype}}}}

\DeclareFieldFormat{citejournaltitle}{\mkbibemph{#1}}
\DeclareFieldFormat[article]{citepages}{\mkfirstpage{#1}}
\newbibmacro*{cite:additionalbit:article}{%
  \printtext[bibhyperref]{%
    \printfield[citejournaltitle]{journaltitle}% 
    \setunit{\addspace}%
    \iffieldundef{volume}
      {\printlabeldateextra}%
      {\printfield{volume}%
       \setunit{\addspace}%
       \printtext[parens]{\printlabeldateextra}}%
    \setunit{\addcomma\space}%
    \printfield[citepages]{pages}}}

\DeclareFieldFormat{dashed}{\textendash\space#1}

\newtoggle{tnbcbx@citedbypage}
\DeclareBiblatexOption{global,type,entry}[boolean]{citedbypage}[true]{\settoggle{tnbcbx@citedbypage}{#1}}

\newbibmacro*{cite:namebit:jurisdiction}{}

\newbibmacro*{cite:additionalbit:jurisdiction}{%
  \printtext[bibhyperref]{%
    \printlist{institution}%
    \setunit{\addcomma\space}%
    \printfield{usera}%
    \setunit{\addspace}%
    \printtext{vom}%
    \setunit{\addspace}%
    \printdate
    \setunit{\addspace}%
    \printtext[dashed]{%
      \printfield{userb}%
      % Entfernen für Verwendung der ECLI
      \setunit{\addspace}%
      \printfield[brackets]{usere}%
      \setunit{\addcomma\space}
      \printfield{userf}}%
    \setunit{\addspace}%
    \printfield{userc}%
    \setunit{\addspace}%
    \printfield{userd}}}

\renewcommand*{\postnotedelim}{%
  \ifboolexpr{
    test {\ifentrytype{article}}%
    or
    (test {\ifentrytype{jurisdiction}} and togl {tnbcbx@citedbypage})}
    {\addspace}%
    {\addcomma\space}%
}
\DeclareFieldFormat[article]{postnote}{\mkbibparens{#1}}
\DeclareFieldFormat[jurisdiction]{postnote}{\iftoggle{tnbcbx@citedbypage}{\mkbibparens{#1}}{#1}}

\let\oldpostnotedelim\postnotedelim
\renewcommand*{\postnotedelim}{%  
  \ifentrytype{commentary}%
    {}%
    {\oldpostnotedelim}}% 

\makeatletter
\newrobustcmd*{\mkpostnote}[1]{\mkpostnote@i#1&}

\def\mkpostnote@i{%
  \@ifnextchar(%)
    {\mkpostnote@ii}
    {\mkpostnote@ii()}}

\def\mkpostnote@ii(#1)#2&{%
  \ifblank{#1}{}{%
    \blx@getformat\cbx@postnote@prefix@fmt{ffd}{}{postnote:prefix}%
    \cbx@postnote@prefix@fmt{#1}}%
  \ifblank{#2}{}{%
    \blx@getformat\cbx@postnote@stem@fmt{ffd}{}{postnote:stem}%
    \cbx@postnote@stem@fmt{#2}}%
  }
\def\cbx@postnote@stem@fmt{}
\def\cbx@postnote@prefix@fmt{}
\makeatother

\DeclareFieldFormat{postnote:stem}{\oldpostnotedelim\mkpageprefix[pagination][\mknormrange]{#1}}
\DeclareFieldFormat{postnote:prefix}{\addslash\mkbibemph{#1}}
\DeclareFieldFormat{postnote}{\mkpostnote{#1}}

\begin {document}

Zudem konnte, auch mit Beitritt anderer Gläubiger, die Einweisung
in das schuldnerische Vermögen beantragt werden. \footcite[Vgl.][(Stürner) Einleitung,
Rn. 26]{münchner:komminso1}


\end {document}
[code]

ich meine ja nur

Re: perl warning: Setting locale failed und Syntaxfehler

Beitrag von ich meine ja nur »

stefmil hat geschrieben:
Do 8. Dez 2022, 09:25
(1)Nun erhalte ich, wenn ich Biber laufen lasse den Fehler:

Running `Biber' on `Bachelorthesis_main_SRH' with ``biber Bachelorthesis_main_SRH''
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LC_ALL = (unset),
LANG = "en_DE.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Kein Fehler, sondern eine Warnung. Kannst du AFAIK normalerweise ignorieren. Du kannst aber auch probieren, explizit die Umgebungsvariable LANG="en_DE.UTF-8" zu setzen. Bei Linux würde man das in ~/.profile o. ä. machen. Auf dem Mac kann ich dir das nicht sagen. Ich habe keinen Mac und kenne mich daher nicht damit aus.
stefmil hat geschrieben:
Do 8. Dez 2022, 09:25
(2) Der zweite Fehler, der sich mir zeigt ist beim Eintrag @Commentary.

ERROR - BibTeX subsystem: /var/folders/vl/wr7hkm557m7dtnf4m8sgvtm00000gn/T/biber_tmp_bYKB/1c4eb1d03cb7b1f6684d53d805dfb6da_3524.utf8, line 431, syntax error: found "@Commentary", expected end of entry ("}" or ")") (skipping to next "@")
Der Fehler deutet darauf hin, dass der Eintrag davor fehlerhaft ist. Er wurde nicht korrekt beendet. Irgendwo im vorherigen Eintrag fehlt vermutlich eine schließende Klammer (meist geschweift, manchmal aber auch eine normale runde). Es nützt daher auch nichts, wenn du die Einträge aber der Fehlermeldung löschst.

Genau die fehlerhafte Datenbank fehlt leider im Beispiel, so dass ich dir nicht sagen kann, wo genau der Fehler ist.

stefmil
Forum-Newbie
Forum-Newbie
Beiträge: 8
Registriert: Do 30. Jun 2022, 09:38

Re: perl warning: Setting locale failed und Syntaxfehler

Beitrag von stefmil »

Vielen Dank für die super Hilfe. Du hattest vollkommen Recht. Im Eintrag davor fehlte eine geschweifte Klammer. Nicht zu fassen, ich habs nicht gesehen, weil ich immer in den @Commentary Einträgen gesucht hab ... und zwar "ab" dieser Zeile. :roll:

Ich schaue mal ob ich die Perl Warnung noch rausbekomme. Wenn es trotzdem alles korrekt durchläuft und ausgegeben wird, ist es ja nicht so dringend.

Vielen lieben Dank. :D

MoeWe
Forum-Meister
Forum-Meister
Beiträge: 801
Registriert: Fr 30. Aug 2019, 15:35
Kontaktdaten:

Re: perl warning: Setting locale failed und Syntaxfehler

Beitrag von MoeWe »

Zu der ersten Warnung siehe auch https://tex.stackexchange.com/q/496173/35864. Ich denke, das liegt an einem etwas merkwürdig konfigurierten System, sollte aber eigentlich keinen Unterschied machen, da Biber die einzig relevante Lokalisierungsinformation (die Sortierreihenfolge nämlich) in den meisten Fällen aus dem Dokument abliest.

Bei Fehlern in der TeX-Welt im allgemeinen ist es immer eine gute Idee, auch ein paar Zeilen vor der gemeldeten Zeile des Fehlers nachzusehen (ein paar Zeilen dahinter kann auch selten schaden). Einige Fehler manifestieren sich die durch Syntaxregeln erst ein paar Zeilen nach der eigentlich problematischen Stelle.

Antworten