PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Biblatex: Selbstdefinierte entry types auswerten



baumbaron
28-08-2009, 16:43
Hallo,

Ich wuerde gerne BibTex-Verzeichnisse mit beliebigen Eintragstypen, wie z.B.



@Baum{linde,
name={Sommerlinde},
nomenclature={tilia platyphyllos};
hoehe = {40}
}


von Biblatex setzen lassen. In der Doku sind allein die Standard-Buchtypen (article, book...) als gueltig erwaehnt - gibt es eine einfache Moeglichkeit, jene zusaetzlichen Typen und deren Felder zu definieren (so dass dann \printfield{nomenclature} moeglich ist)? Mit BibTex waere dies mit einer eigenen .bst-Datei getan, ich koennte dann aber sicherlich nicht zusaetzlich BibLatex verwenden und wuerde mir gerne die garstige bst-Syntax ersparen.

Vielleicht kennt jemand eine einfache Loesung?

Danke,
Martin

hakaze
28-08-2009, 16:57
Mmh.. konkrete Hilfe kann ich zwar nicht anbieten, aber bei PracTeX gab's mal ein Artikel dazu. Ich glaube, dieser hier (http://www.tug.org/pracjourn/2008-1/calleecharan/) war's.

Schoenes Wochenende! :)

bobmalaria
28-08-2009, 16:57
hi,

schau mal in die standard.bbx datei von biblatex. per \DeclareBibiographyDriver kannst du eigene eintragstypen erstellen. per \newbibmacro kannst du dann auch eigene macros definieren die innerhalb des drivers ausgeführt werden.
wie andere felder definiert sind kannst du in der biblatex.def sehen

am besten nimmst du als startpunkt existierende einträge und versuchst kopien davon abzuändern.

gruss

baumbaron
28-08-2009, 19:04
Vielen Dank fuer die Antworten.

@hakaze: Danke fuer den Link - Eigentlich wollte ich ja nicht in der biblatex.bst herumschreiben, nachdem ich das aber dennoch ein wenig naiv getan habe, gelang mir sogar mein obiges Beispiel wie gewuenscht:



[biblatex.bst]
....
ENTRY {
...
name
nomenclature
...}
...
FUNCTION {output:fields.pt1} {
"name" name output:write:field
"nomenclature" nomenclature output:write:field
...}
...
FUNCTION {baum} { type$ output:entry}


und dann im Biblatex-Style:



\ProvidesFile{MyStyle.bbx}
...
\DeclareFieldAlias{name}{default}
\DeclareFieldAlias{nomenclature}{default}

\DeclareBibliographyDriver{baum}{
\printfield{name}
\printfield{nomenclature}
\finentry
}
...


@bobmalaria: So dachte ich es mir am Anfang auch - allerdings weiss Biblatex ja nicht um die Feldnamen meiner Eintragstypen.

Um die Bearbeitung der Biblatex.bst scheine ich wohl nicht herumzukommen?

Viele Gruesse und ein schoenes Wochenende,

Martin

bobmalaria
28-08-2009, 19:10
hi,

da hast du recht, das habe ich vergessen. wenn du eine datei editierst, dann solltest du die kopie aber umbenennen oder in einen lokalen baum ablegen. sonst kann es bei einem update sein das die datei überschrieben wird.

auf golatex ist übrigens dominik weis(s?)enhofen zu finden. er ist sehr kompetent wenn es zu dieser ganzen biblatex-geschichte kommt.

gruss