Zitieren von DIN-Normen / unterteilte Literaturverzeichnisse
Zitieren von DIN-Normen / unterteilte Literaturverzeichnisse
Hallo,
ich arbeite mich gerade in LaTeX bzw. speziell biblatex zur Erstellung eines Literaturverzeichnisses ein. Leider ist das für mich nicht so ganz trivial, vieles habe ich schon hinbekommen, an manchen Punkten verzweifele ich aber.
Ich benutze einen angepassten Authoryear-Stil für citestyle (Verweis in eckigen Klammern, maxnames=1, kein "u.a.", Name in Kapitälchen), also z. B. [MUSTERMANN 2008a]
Hierfür habe ich in der LR-authoyear.cbx die Einträge für cite, parencite usw. wie folgt geändert:
\DeclareCiteCommand*{\cite}[\mkbibbrackets]
Außerdem folgendes eingefügt:
\renewcommand*{\andothersdelim}{}
\DefineBibliographyStrings{ngerman}{andothers={}}
\renewcommand*{\mkbibnamelast}[1]{\textsc{#1}}
Das klappt soweit auch schon gut, es wäre aber besser wenn im eigentlichen Literaturverzeichnis die Nachnamen nicht in Kapitälchen gesetzt würde, in der Wiederholung der Referenz darüber hingegen schon. Da ich ja mit \renewcommand*{\mkbibnamelast}[1]{\textsc{#1}} alle Nachnamen in Kapitälchen setzte, funktioniert das natürlich so nicht.
edit: Den mittlerweile überflüssigen Code habe ich mal weg editiert, da habe ich vor lauter Bäumen den Wald nicht sehen können.
ich arbeite mich gerade in LaTeX bzw. speziell biblatex zur Erstellung eines Literaturverzeichnisses ein. Leider ist das für mich nicht so ganz trivial, vieles habe ich schon hinbekommen, an manchen Punkten verzweifele ich aber.
Ich benutze einen angepassten Authoryear-Stil für citestyle (Verweis in eckigen Klammern, maxnames=1, kein "u.a.", Name in Kapitälchen), also z. B. [MUSTERMANN 2008a]
Hierfür habe ich in der LR-authoyear.cbx die Einträge für cite, parencite usw. wie folgt geändert:
\DeclareCiteCommand*{\cite}[\mkbibbrackets]
Außerdem folgendes eingefügt:
\renewcommand*{\andothersdelim}{}
\DefineBibliographyStrings{ngerman}{andothers={}}
\renewcommand*{\mkbibnamelast}[1]{\textsc{#1}}
Das klappt soweit auch schon gut, es wäre aber besser wenn im eigentlichen Literaturverzeichnis die Nachnamen nicht in Kapitälchen gesetzt würde, in der Wiederholung der Referenz darüber hingegen schon. Da ich ja mit \renewcommand*{\mkbibnamelast}[1]{\textsc{#1}} alle Nachnamen in Kapitälchen setzte, funktioniert das natürlich so nicht.
edit: Den mittlerweile überflüssigen Code habe ich mal weg editiert, da habe ich vor lauter Bäumen den Wald nicht sehen können.
Zuletzt geändert von LarsR am Do 19. Aug 2010, 19:30, insgesamt 1-mal geändert.
Hallo nochmal,
das mit den Normen hat sich anscheinend weitestgehend erledigt, ich hatte wohl Tomaten auf den Augen. Ich habe das Autoren-Feld leer gelassen (Was für eine Idee, dort DIN 1000 einzutragen ...) und stattdessen ein Feld label eingefügt. Damit sieht schon viel besser aus.
Ich glaube, ich muss morgen noch einmal mit klarem Kopf darüber nachdenken.
Tipps zu der anderen Frage sind aber weiterhin willkommen.
das mit den Normen hat sich anscheinend weitestgehend erledigt, ich hatte wohl Tomaten auf den Augen. Ich habe das Autoren-Feld leer gelassen (Was für eine Idee, dort DIN 1000 einzutragen ...) und stattdessen ein Feld label eingefügt. Damit sieht schon viel besser aus.
Ich glaube, ich muss morgen noch einmal mit klarem Kopf darüber nachdenken.
Tipps zu der anderen Frage sind aber weiterhin willkommen.

Bis auf die Sache mit den Kapitälchen habe ich jetzt alles hinbekommen, ich werde beim nächsten Mal auch ein vollständiges Minimalbeispiel posten - allerdings ist das nicht so einfach, wenn ich die cbx- und bbx-Dateien direkt verändert habe, oder?
Vielleicht hat ja auch jemand eine Idee, wie ich das Datumsformat im Literaturverzeichnis auf das sog. ISO-Format umstellen kann? Durch die Benutzung von babel mit ngerman wird das Datum ja entsprechend deutschen Verhältnissen angepasst.
Ich müsste für die DIN-Normen aber das Format YYYY-MM-DD haben.
Ich habe es schon mit dem hier von Philipp Lehman geposteten Code versucht, allerdings ändert der bei mir nur von 1. Sept. 2010 auf 01.09.2010, wenn ich für date = 2010-09-01 angegeben habe.
Vielleicht hat ja auch jemand eine Idee, wie ich das Datumsformat im Literaturverzeichnis auf das sog. ISO-Format umstellen kann? Durch die Benutzung von babel mit ngerman wird das Datum ja entsprechend deutschen Verhältnissen angepasst.
Ich müsste für die DIN-Normen aber das Format YYYY-MM-DD haben.
Ich habe es schon mit dem hier von Philipp Lehman geposteten Code versucht, allerdings ändert der bei mir nur von 1. Sept. 2010 auf 01.09.2010, wenn ich für date = 2010-09-01 angegeben habe.
Ich hoffe, du hast nicht die Dateien selbst direkt geändert, denn dannLarsR hat geschrieben:Bis auf die Sache mit den Kapitälchen habe ich jetzt alles hinbekommen, ich werde beim nächsten Mal auch ein vollständiges Minimalbeispiel posten - allerdings ist das nicht so einfach, wenn ich die cbx- und bbx-Dateien direkt verändert habe, oder?
würden deine Änderungen beim nächsten Paket-Update verloren gehen.
Du solltest am besten eigene cbx- und bbx-Dateien erstellen (wie man das
macht, habe ich in meinen biblatex-Artikeln in der TeXnischen Komödie
beschrieben – siehe Link in meiner Signatur).
Externe Dateien kann man übrigens auch aus einem Minimalbeispiel
heraus erstellen. Wie das geht, habe ich hier erklärt.
Hier bräuchte man tatsächlich ein Minimalbeispiel zum überprüfen.Vielleicht hat ja auch jemand eine Idee, wie ich das Datumsformat im Literaturverzeichnis auf das sog. ISO-Format umstellen kann? Durch die Benutzung von babel mit ngerman wird das Datum ja entsprechend deutschen Verhältnissen angepasst.
Ich müsste für die DIN-Normen aber das Format YYYY-MM-DD haben.
Ich habe es schon mit dem hier von Philipp Lehman geposteten Code versucht, allerdings ändert der bei mir nur von 1. Sept. 2010 auf 01.09.2010, wenn ich für date = 2010-09-01 angegeben habe.
Gruß,
Dominik.-
Hallo!

Dort habe ich den Code aus dem Link hineinkopiert. Das Auskommentieren von date=short schaltet zwischen der Darstellung 01. 09. 2010 (mit Leerzeichen nach den Punkten?!) und 1. Sep. 2010 um, das Datumsformat wird aber nicht auf 2010-09-01 geändert.
Eine weitere Frage: Ich habe für die DIN-Norm ja jetzt die Klasse @misc genommen, keinen Eintrag für den Autor gewählt, dafür ein label angegeben. Beim Sortieren wird jetzt die DIN-Norm anscheinend nach allen anderen Einträgen mit Autoren eingefügt, kann man es irgendwie einstellen, dass die Normen mit DIN an alphabetisch passender Stelle zwischen den Autoren erscheinen?
Danke und Gruß vom Niederrhein
Lars
Ja, habe ich auch genau so anhand der Anleitung gemacht (und es funktioniert)!domwass hat geschrieben: Ich hoffe, du hast nicht die Dateien selbst direkt geändert, denn dann
würden deine Änderungen beim nächsten Paket-Update verloren gehen.
Du solltest am besten eigene cbx- und bbx-Dateien erstellen (wie man das
macht, habe ich in meinen biblatex-Artikeln in der TeXnischen Komödie
beschrieben – siehe Link in meiner Signatur).

Ja, danke dafür. Habe ich für unten auch mal versucht, allerdings stellt sich mir bei .cbx und .bbx den gesamten Inhalt hinein kopieren muss? Das sind ja einige Zeilen und hätte wohl mit einem Minimalbeispiel nicht mehr viel zu tun.Externe Dateien kann man übrigens auch aus einem Minimalbeispiel
heraus erstellen. Wie das geht, habe ich hier erklärt.
Ich hoffe, dieses hier tut, diesmal mit authoryear, das macht da keinen Unterschied:Hier bräuchte man tatsächlich ein Minimalbeispiel zum überprüfen.Vielleicht hat ja auch jemand eine Idee, wie ich das Datumsformat im Literaturverzeichnis auf das sog. ISO-Format umstellen kann? Durch die Benutzung von babel mit ngerman wird das Datum ja entsprechend deutschen Verhältnissen angepasst.
Ich müsste für die DIN-Normen aber das Format YYYY-MM-DD haben.
Ich habe es schon mit dem hier von Philipp Lehman geposteten Code versucht, allerdings ändert der bei mir nur von 1. Sept. 2010 auf 01.09.2010, wenn ich für date = 2010-09-01 angegeben habe.
\documentclass[a4paper,12pt,oneside]{scrartcl} \usepackage{filecontents} \begin{filecontents}{\jobname.bib} @misc{test1, author = {}, label = {DIN 1000}, title = {Normen - Anforderungen, Prüfung}, publisher = {Beuth-Verlag}, date = {2010-09-01}, location = {Berlin}, } \end{filecontents} \usepackage[T1]{fontenc} \usepackage[latin1]{inputenc} \usepackage[ngerman]{babel} \usepackage[autostyle,german=quotes]{csquotes} \usepackage[ style=authoryear, backend=bibtex8, %date=short, urldate=short ]{biblatex} \DefineBibliographyExtras{ngerman}{% \def\bibdateshort{% \thefield{year}-\thefield{month}-\thefield{day}}% \def\biburldateshort{% \thefield{urlyear}-\thefield{urlmonth}-\thefield{urlday}}% } \bibliography{\jobname} \begin{document} \section{Test} In der DIN 1000 steht außerdem "`Blabla"' \parencite{test1} \printbibliography \end{document}
Eine weitere Frage: Ich habe für die DIN-Norm ja jetzt die Klasse @misc genommen, keinen Eintrag für den Autor gewählt, dafür ein label angegeben. Beim Sortieren wird jetzt die DIN-Norm anscheinend nach allen anderen Einträgen mit Autoren eingefügt, kann man es irgendwie einstellen, dass die Normen mit DIN an alphabetisch passender Stelle zwischen den Autoren erscheinen?
Danke und Gruß vom Niederrhein
Lars
Die Behandlung von Datumsangaben hat sich seit der Lösung von PhilippLarsR hat geschrieben:Das Auskommentieren von date=short schaltet zwischen der Darstellung 01. 09. 2010 (mit Leerzeichen nach den Punkten?!) und 1. Sep. 2010 um, das Datumsformat wird aber nicht auf 2010-09-01 geändert.
geändert. Folgendes sollte aber funktionieren:
\AtBeginDocument{% \protected\def\mkbibdateshort#1#2#3{% \thefield{#1}% \iffieldundef{#2} {} {-\thefield{#2}% \iffieldundef{#3} {} {-\thefield{#3}}}} }
Nimm das Feld sortname.Eine weitere Frage: Ich habe für die DIN-Norm ja jetzt die Klasse @misc genommen, keinen Eintrag für den Autor gewählt, dafür ein label angegeben. Beim Sortieren wird jetzt die DIN-Norm anscheinend nach allen anderen Einträgen mit Autoren eingefügt, kann man es irgendwie einstellen, dass die Normen mit DIN an alphabetisch passender Stelle zwischen den Autoren erscheinen?
Gruß,
Dominik.-
Klappt, danke!domwass hat geschrieben: Die Behandlung von Datumsangaben hat sich seit der Lösung von Philipp
geändert. Folgendes sollte aber funktionieren:
Problem: Wenn ich sortname nehme und parallel label verwende, wird anscheinend der Wert von label genommen (es ändert sich jedenfalls an der Sortierung nichts), wenn ich nur Sortname nehme und author und label frei lasse, wird gar kein Eintrag geschrieben. Author kann ich aber nicht nehmen, da dann aus DIN 1000 [1000] wird (weil nur der Nachname referenziert wird) und im Literaturverzeichnis wegen NACHNAME, Vorname "1000, DIN" steht.Nimm das Feld sortname.Eine weitere Frage: Ich habe für die DIN-Norm ja jetzt die Klasse @misc genommen, keinen Eintrag für den Autor gewählt, dafür ein label angegeben. Beim Sortieren wird jetzt die DIN-Norm anscheinend nach allen anderen Einträgen mit Autoren eingefügt, kann man es irgendwie einstellen, dass die Normen mit DIN an alphabetisch passender Stelle zwischen den Autoren erscheinen?
Vermutlich habe ich die Syntax hinter sortname irgendwie nicht verstanden. Gibt es da vielleicht einen Zusammenhang mit sortcase (wg. DIN)? Ich habe in der Präambel "backend=bibtex8" stehen, reicht das, um bibtex8 zu nutzen?