Hallo! Könnte man den den im Dokument besonders markierten Kram irgendwie auslagern? Am besten in die main.tex Open in Online-Editor
% arara: pdflatex % arara: biber % arara: pdflatex % arara: pdflatex \documentclass[parskip=half-,toc=flat, fontsize=9pt,DIV = 9, paper=a5,pagesize,headings=normal]{scrartcl} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[ngerman]{babel} \usepackage[autostyle]{csquotes} \usepackage[datamodel=ufischer,defernumbers ]{biblatex} \addbibresource{MeineAdressen.bib} % Diesen Kram %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%% \DeclareBibliographyDriver{adresse}{% \printnames{name}\setunit{\addcomma\addspace}% \printfield{strasse}\setunit{\addcomma\addspace}% \printfield{plz}\setunit{\addspace}\printfield{ort}% \usebibmacro{finentry}} \DeclareNameFormat[adresse]{anrede}{#1} \DeclareCiteCommand{\citeanrede}{}{% \iffieldequalstr{gender}{sm} {\printtext{Herr}}{\printtext{Frau}}% \setunit{\addspace}\printnames[anrede]{name}} {}{} \DeclareCiteCommand{\citeadresse}{}{% \printtext{\par\noindent}% \iffieldequalstr{gender}{sm}{\printtext{Herrn}}{\printtext{Frau}}% \setunit{~}\printnames{name}% \setunit{\\}\printfield{strasse}% \setunit{\\}\printfield{plz}\setunit{\addspace}\printfield{ort}} {}{} %%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%% % Diesen Kram %%%%%%%%%%%%%% \begin{document} \citeadresse{max} \citeadresse{eva} \bigskip Lieber \citeanrede{max}, liebe \citeanrede{eva}, schaut euch doch mal \cite{dante} an und lest \cite{input1} \printbibliography[type=adresse,title=Verteilerliste] \printbibliography[nottype=adresse,resetnumbers] \end{document} ufischer.dbx Open in Online-Editor
\DeclareDatamodelEntrytypes{adresse} \DeclareDatamodelFields[type=list, datatype=name] {name} \DeclareDatamodelFields[type=field, datatype=literal] {strasse,ort,plz} \DeclareDatamodelEntryfields[adresse]{% name,strasse,ort,plz,gender} MeineAdressen.bib Open in Online-Editor
@adresse{max, name ={Muster, Max}, strasse ={Im Versuchsweg 10}, ort ={Testgelände}, plz ={X01234}, gender ={sm} } @adresse{eva, name ={Muster, Eva}, strasse ={Im Versuchsweg 10}, ort ={Testgelände}, plz ={X01234}, gender ={sf} } gefragt 19 Nov '15, 11:39 cis
Ergebnis 5 von 20
show 15 more comments
|
Sagen wir, Du willst den Stil Open in Online-Editor
\DeclareDatamodelEntrytypes{adresse} \DeclareDatamodelFields[type=list, datatype=name] {name} \DeclareDatamodelFields[type=field, datatype=literal] {strasse,ort,plz} \DeclareDatamodelEntryfields[adresse]{% name,strasse,ort,plz,gender} Die entsprechende Datei Open in Online-Editor
\RequireBibliographyStyle{numeric} \DeclareBibliographyDriver{adresse}{% \printnames{name}\setunit{\addcomma\addspace}% \printfield{strasse}\setunit{\addcomma\addspace}% \printfield{plz}\setunit{\addspace}\printfield{ort}% \usebibmacro{finentry}} \DeclareNameFormat[adresse]{anrede}{#1} und zu guter Letzt die passende Datei Open in Online-Editor
\RequireCitationStyle{numeric} \DeclareCiteCommand{\citeanrede}{}{% \iffieldequalstr{gender}{sm} {\printtext{Herr}}{\printtext{Frau}}% \setunit{\addspace}\printnames[anrede]{name}} {}{} \DeclareCiteCommand{\citeadresse}{}{% \printtext{\par\noindent}% \iffieldequalstr{gender}{sm}{\printtext{Herrn}}{\printtext{Frau}}% \setunit{~}\printnames{name}% \setunit{\\}\printfield{strasse}% \setunit{\\}\printfield{plz}\setunit{\addspace}\printfield{ort}} {}{} Speichert man die Dateien alle an einem Ort ab, wo sie gefunden werden können (im Arbeitsverzeichnis des Dokuments oder im lokalen TeX-Baum (bei mir wäre das Open in Online-Editor
% arara: pdflatex % arara: biber % arara: pdflatex % arara: pdflatex \documentclass[parskip=half-,toc=flat, fontsize=9pt,DIV = 9, paper=a5,pagesize,headings=normal]{scrartcl} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[ngerman]{babel} \usepackage[autostyle]{csquotes} \usepackage[style=adressen,defernumbers]{biblatex} \addbibresource{MeineAdressen.bib} \addbibresource{biblatex-examples.bib} \begin{document} \citeadresse{max} \citeadresse{eva} \bigskip Lieber \citeanrede{max}, liebe \citeanrede{eva}, schaut euch doch mal \cite{companion} und \cite{knuth:ct:a} an. \printbibliography[type=adresse,title=Verteilerliste] \printbibliography[nottype=adresse,resetnumbers] \end{document} Soweit ich weiß, ist es übrigens nicht möglich, mehere Stile parallel zu verwenden. D.h. eine eventuelle zusätzliche Bibliograpie wird dann mit dem gleichen Stil gesetzt. Alternativ könnte man auch den Inhalt der
Open in Online-Editor
\RequirePackage[datamodel=adressen]{biblatex} \ExecuteBibliographyOptions{defernumbers} \DeclareBibliographyDriver{adresse}{% \printnames{name}\setunit{\addcomma\addspace}% \printfield{strasse}\setunit{\addcomma\addspace}% \printfield{plz}\setunit{\addspace}\printfield{ort}% \usebibmacro{finentry}} \DeclareNameFormat[adresse]{anrede}{#1} \DeclareCiteCommand{\citeanrede}{}{% \iffieldequalstr{gender}{sm} {\printtext{Herr}}{\printtext{Frau}}% \setunit{\addspace}\printnames[anrede]{name}} {}{} \DeclareCiteCommand{\citeadresse}{}{% \printtext{\par\noindent}% \iffieldequalstr{gender}{sm}{\printtext{Herrn}}{\printtext{Frau}}% \setunit{~}\printnames{name}% \setunit{\\}\printfield{strasse}% \setunit{\\}\printfield{plz}\setunit{\addspace}\printfield{ort}} {}{} Verwendet werden kann sie dann so: Open in Online-Editor
% arara: pdflatex % arara: biber % arara: pdflatex % arara: pdflatex \documentclass[parskip=half-,toc=flat, fontsize=9pt,DIV = 9, paper=a5,pagesize,headings=normal]{scrartcl} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[ngerman]{babel} \usepackage[autostyle]{csquotes} \usepackage{adressen} \addbibresource{MeineAdressen.bib} \addbibresource{biblatex-examples.bib} \begin{document} \citeadresse{max} \citeadresse{eva} \bigskip Lieber \citeanrede{max}, liebe \citeanrede{eva}, schaut euch doch mal \cite{companion} und \cite{knuth:ct:a} an. \printbibliography[type=adresse,title=Verteilerliste] \printbibliography[nottype=adresse,resetnumbers] \end{document} beantwortet 21 Nov '15, 19:17 cgnieder Du bist mein Held! (Aber das ist ja leider nichts Neues
(21 Nov '15, 19:53)
cis
1
(21 Nov '15, 20:39)
Johannes
Ahhja,
(21 Nov '15, 20:40)
cis
1
@cis Die Sache mit dem Stil ist der Grund, warum ich die Adressentreiber nicht in bbx und cbx-Dateien stecken würde, sondern in irgendeine sty-Datei.
(21 Nov '15, 21:29)
Ulrike Fischer
Da muss ich Ulrike sogar zustimmen und merke das mein obiger Ratschlag eher wenig sinnvoll war, wie so oft wenn man nur schnell kommentiert. Am einfachsten wäre es den Block in eine normale
(21 Nov '15, 21:38)
Johannes
@Johannes: Das ist wohl wahr mit dem lebenslangen biblatex-Lernen.
Ja gut Version mit dem @Ulrike Fischer: Ja, das mit der
(21 Nov '15, 21:51)
cis
Ergebnis 5 von 8
show 3 more comments
|
Du kannst das in eine neue
bbx
schreiben.Oh nein, das ist ja schrecklich, dann habe ich am Schluß 4 Millionen Datendateien (und dann weiß ich weider nicht, wo ich da alle abspeichern muss). Mhhh, geht dann wohl nicht anders.
Ok, wie findet Tex dann die Datei
ufischer.bbx
\usepackage[ style=ufischer, datamodel=ufischer, defernumbers, ]{biblatex}
ist scheints falsch :(
Kleiner Überblick über die Dateiendungen der Deklarationsdateien bei
biblatex
:dbx
=Datenbankmodeldeklaration (biblatex
-Anleitung, Abschnitt 4.5.3)bbx
=Literaturverzeichnisstildeklaraton (biblatex
-Anleitung, Abschnitt 4.2.1)cbx
=Literaturzitierstildeklaration (biblatex
-Anleitung, Abschnitt 4.3.1)Sie alle werden via Option geladen. Zum einen via Option
style
, aber auch über individuelle Optionen. Näheres dazu ist derbiblatex
-Anleitung zu entnehmen.Ja, danke. Dann wahrscheinlich doch wie oben
\usepackage[style=ufischer,...]{biblatex}
oder vielleicht\RequireBibliographyStyle{ufischer.bbx}
Dann kommt
! Package biblatex Error: Style 'ufischer.bbx' not found.
Wahrscheinlich muss man die Datei erstmal auffindbar machen. Da hab ich grad keine Ahnung, wie das geht. Das ist vermutlich i'was Grundsätzliches, und das steht auch nicht im biblatex-Handbuch.
@cis LaTeX ist es relativ schnurz ob es eine Klassen-, Paket, -bbx-Datei finden sool/muss. Die gehören alle an bestimmte Plätze. http://texwelt.de/wissen/fragen/4887/wie-kann-ich-klassen-oder-pakete-verwenden-die-nur-als-einzelne-datei-bereitgestellt-werden
Ich weiß ja nicht wie @Ulrike das sieht, aber ich würde dir empfehlen für deine eigenen Dateien auch deinen eigenen Namen zu verwenden und nicht den von Ulrike.
@cis: Wenn Du
style=foo
angibst, dann werdenfoo.cbx
,foo.bbx
benötigt und wenn vorhanden auchfoo.dbx
geladen. Wenn Du also nur einefoo.dbx
hast, aber keinefoo.bbx
, dann iststyle
nicht die richtige Option. Siehe dazu die bereits oben genannten Abschnitte der aktuellenbiblatex
-Anleitung. Dass Ulrike es begrüßen würde, wenn Du Dateien weniger direkt nach ihr benennen würdest, hat sie ja bereits erwähnt. ;-)Ok, danke - ich versuchs.
Und wenn ich's nicht nach ihr bennene, dann wird moniert, dass einfach ihre Dateien unter meinem Namen verwende. Unterm Strich ist eh alles falsch, was man macht. Das war schon immer so und wird auch immer so sein.
OK,
bbx
auffindbar gemacht. Und was muss in dercbx
stehen?@cis: Hast Du den oben genannten Abschnitt zu
cbx
-Dateien in der Anleitung denn noch immer nicht gelesen?Der Code ist öffentlich und den darfst du abschreiben, verwenden, verändern wie es dir gefällt. Ich würde dir empfehlen einen neuen Namen zu benutzen, denn wenn jeder "seine" Version ufischer nennt, kommen alle durcheinander.
Du kannst innerhalb der Datei ein Kommentar mit Link zum Artikel bzw. den Beispieldateien bereit stellen. Das ist üblich. Den Dateinamen unter allen Umständen zu behalten allerdings weit weniger.
@saputello Ne, bis jetzt nur den Teil zu
bbx
- aber, um ehrlich zu sein, ist mir das zu hoch. Kann man nicht eine vorhandenecbx
Datei verwenden? Falls ja, wie wird die aufgerufen?Wie schon mehrfach erwähnt: All die oben aufgeführten Dateien werden über Optionen geladen. Eine einzelne
cbx
-Datei übercitestyle
, zusammen mit einer gleichnamigenbbx
-Datei und ggf. einerdbx
-Datei auch überstyle
. Lies das bitte endlich in der Anleitung nach! Und natürlich kann man sich an vorhandenencbx
-Dateien orientieren. Zusammen mit der Anleitung kann man da eine Menge über das korrekte Vorgehen lernen. Am besten nimmt man eine dercbx
-Dateien, die beibiblatex
dabei sind. Die passen garantiert zur verwendetenbiblatex
-Version.Letzten Endes steht in der
cbx
die Zitierweise, also das was mitcite
eingefügt wird. Das hast du oben schon in dem Block. Derbibdriver
muss in diebbx
. Also hast du eigentlich schon alles.Also kann allein aufgrund der Anleitung keine cbx-Datei selber schreiben. Wenn Du das seit den 80ern o.ä. machst, ist es klar, dass Du das kannst - ich mache es seit wenigen Jahren. Empathie...
Ich dachte, das muss so aussehen:
\usepackage[ style=ufischer, %ufischer.bbx citestyle=alphabetic, %alphabetic.cbx datamodel=ufischer, %ufischer.dbx defernumbers, ]{biblatex}
Das liefert
! Package biblatex Error: Bibliography macro 'finentry' undefined.
Es gibt übrigens noch http://texwelt.de/blog/hilfe-zu-biblatex/ und http://texwelt.de/blog/modifizieren-eines-biblatex-stils/
Aja, da kommt gerade
Fehler beim Aufbau einer Datenbankverbindung
- mal sehen, ob die Seiten bald wieder gehen.@cis Die Seiten sind wieder verfügbar, @Stefan hat sich darum gekümmert. Danke Stefan :-)