Git Product home page Git Product logo

Comments (15)

LukasCBossert avatar LukasCBossert commented on June 20, 2024

Ich stelle gerade fest (https://tex.stackexchange.com/a/242268/98739), die Fehlermeldung verschwindet, wenn ich

\NewBibliographyString{owntranslation}

eintippe. Aber der String ist ja eigentlich bereits definiert. ich will ihn ja nur re-definieren.

from biblatex-archaeologie.

moewew avatar moewew commented on June 20, 2024

Mhh, keine Ahnung woran es liegt. Müsste ich mir mal genauer ansehen. Im Allgemeinen würde ich aber davon abraten, \NewBibliographyString erst in der .lbx zu verwenden. Definier doch die neuen Strings schon in der .bbx.

from biblatex-archaeologie.

LukasCBossert avatar LukasCBossert commented on June 20, 2024

Stimmt - dann brauch ich die ja auch nur einmal für alle Sprachen definieren. Jetzt passiert das immer für jede Sprache extra (habe ich mir wohl irgendwo mal abgeschaut).

Wird geändert.

from biblatex-archaeologie.

moewew avatar moewew commented on June 20, 2024

Folgende Theorie (müsste ich noch verifizieren): Die .lbx-Dateien werden im Allgemeinen recht spät geladen. Man kann sagen, frühestens in etwa wie \AtBeginDocument. Du möchtest in der Präambel (woanders geht es ja auch nicht) mit \DefineBibliographyStrings den String owntranslation definieren. Zu dem Zeitpunkt ist die .lbx aber noch gar nicht geladen und daher der String auch noch gar nicht bekannt. -> Tada, Fehler!

Es gibt in der Tat einige .lbxen die eigene Strings definieren und daher \NewBibliographyString selbst nutzen. Da dies aber Nachteile hat, wie wir gerade gesehen haben, sollten wir darüber nachdenken, das zu ändern. Oder halt die .lbxen am Anfang einmal durchladen ...

from biblatex-archaeologie.

LukasCBossert avatar LukasCBossert commented on June 20, 2024

Das ist sehr einleuchtend.
Zumal das Ergebnis ja korrekt war, weil wohl intern der re/neu-definierte String gespeichert war, obwohl TeX erst später den angelegt bekommen hat. Man müsste also die .lbx direkt nach biblatex einmal laden.

from biblatex-archaeologie.

moewew avatar moewew commented on June 20, 2024

Habs ausprobiert, die Ladereihenfolge ist wie beschrieben.

Das Durchladen aller .lbx-Dateien direkt nach dem Laden von biblatex geht nicht. Wenn biblatex selbst geladen wird, weiß es noch nicht, welches Sprachpaket genutzt wird und welche Sprachen geladen werden. Damit vernünftiges Verhalten von biblatex nicht von der Ladereihenfolge in der Präambel abhängt, wird der ganze Sprachkram erst in \AtEndPreamble behandelt. Aber da ist es schon zu spät für Dich. Man könnte natürlich die jetzt schon bekannten Sprachen behandeln, aber ehrlich gesagt müsste man mir dafür zu viel rumfrickeln und Code auseinanderreißen oder doppeln.

from biblatex-archaeologie.

LukasCBossert avatar LukasCBossert commented on June 20, 2024

Ok, aber jetzt, da ich weiß, woran es liegt, ist es wohl am einfachsten, ich lade in der Präambel einfach

\NewBibliographyString{owntranslation}

. Danke dir!

from biblatex-archaeologie.

moewew avatar moewew commented on June 20, 2024

Besser in der .bbx und nicht der Präambel.

from biblatex-archaeologie.

LukasCBossert avatar LukasCBossert commented on June 20, 2024

äh, genau. aber für die Redefinition (da ich individuell den Übersetzer mit meinem Namen angeben möchte), füge ich eben \NewBibliographyString{owntranslation} ein. Die Standard-Strings kommen in die .bbx.

from biblatex-archaeologie.

moewew avatar moewew commented on June 20, 2024

Aber owntranslation wird doch in allen .lbxen von archaeologie selbst übersetzt, muss also bekannt sein. Daher sollte auch für diesen String \NewBibliographyString{owntranslation} in der .bbx stehen. Egal wo Du das nachher umdefinierst. Wenn man es richtig macht, ist nur ein \NewBibliographyString{owntranslation} nötig. Aber vielleicht reden wir aneinander vorbei.

from biblatex-archaeologie.

LukasCBossert avatar LukasCBossert commented on June 20, 2024

Ich denke, wir reden von dem gleichen. Ich wollte in meiner Diss als owntranslation nicht eig. Übers. stehen haben, sondern mein Name. Daher habe ich das in der Präambel re-definiert (wäre wohl nicht notwendig, denn mit eig. Übers. wird ja im Text schon auf mich verwiesen.)

from biblatex-archaeologie.

moewew avatar moewew commented on June 20, 2024

OK. Ich wollte nur sagen, dass es absolut ausreichend ist, nur genau einmal (idealerweise in der .bbx-Datei) \NewBibliographyString{owntranslation} stehen zu haben. In der Präambel Deines Dokumentes solltest Du \NewBibliographyString{owntranslation} nicht aufrufen müssen, da ist \DefineBibliographyStrings{ngerman} genug, wenn \NewBibliographyString{owntranslation} ordnungsgemäß angemeldet wurde. Ich war verwirrt, weil Du

aber für die Redefinition (da ich individuell den Übersetzer mit meinem Namen angeben möchte), füge ich eben \NewBibliographyString{owntranslation} ein.

geschrieben hast. Eben das ist ja nicht notwendig, wenn owntranslation einmal korrekt angemeldet wird.

from biblatex-archaeologie.

LukasCBossert avatar LukasCBossert commented on June 20, 2024

danke für die Klarstellung. Genau, aber momentan sind die Strings ja noch in der .lbx definiert und bis ich ein CTAN-update fertig habe, rufe ich \NewBibliographyString{owntranslation} noch(mals) in der Präambel auf – da ich Donnerstag die Diss abgeben werde, wollte ich jetzt nicht auf das CTAN update warten, bzw. geht es einfach schneller, diese Zeile in die Präambel einzufügen als in der installierten .bbx.
Ist also nur ein Workaround aus Zeit- und Faulheitsgründen.

from biblatex-archaeologie.

moewew avatar moewew commented on June 20, 2024

Ach so, na dann. Ich wollte nur nicht, dass wir uns in unnötigem Code verheddern.

Viel Erfolg mit der Dissertation!

from biblatex-archaeologie.

LukasCBossert avatar LukasCBossert commented on June 20, 2024

Vielen Dank!

Ne, werde demnächst alls \NewBibliographyString{} nur einmal in der .bbx definieren, dann brauch ich meinen Workaround auch nicht mehr.

from biblatex-archaeologie.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.