PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : jurabib/MLA Sprache einstellen



hhieb
04-03-2007, 19:29
Hallo,

ich habe mich zum Schreiben meiner Bachelor-Arbeit in Latex eingearbeitet und bin bisher begeistert. jurabib und Katrins/1stLuebbis MLA Erweiterung sind genau das, was ich brauche. Vielen Dank!
Das einzige Problem, das ich bisher noch nicht lösen konnte, ist die Spracheinstellung. Sämtliche Literaturangaben werden auf Englisch ins Literaturverzeichnis eingefügt (mit "and", "ed." etc.). Ich habe versucht, die Sprache Fallweise auf deutsch einzustellen, indem ich language = {german} in bestimmte Einträge in meiner .bib eingefügt habe. Leider zeigt das keine Wirkung. Was mache ich falsch?
Im Voraus vielen Dank für Hilfe.

Gruß
Heike

Dr.Ryan
05-03-2007, 09:57
Poste doch mal bitte ein Minimalbeispiel.
Wahrscheinlich lädst du nicht das Paket mit den deutschen Spracheinstellungen, oder?

hhieb
05-03-2007, 13:35
Poste doch mal bitte ein Minimalbeispiel.
Wahrscheinlich lädst du nicht das Paket mit den deutschen Spracheinstellungen, oder?

Ich hatte mich zunächst nicht getraut, ein Beispiel zu posten, da es durch die vielen Anweisungen für MLA ziemlich lang wird:

\documentclass[a4paper, oneside]{scrbook}

\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{mla6}

\jurabibsetup{
authorformat={citationreversed,reducedifibidem,fir stnotreversed},
citefull=first,
round,% -- JMC
endnote=false,% -- JMC
annotatorfirstsep=qtd,% -- JMC
crossref=long,
titleformat=commasep,
bibformat=ibidem,
}

\AddTo\bibsenglish{%
\def\edbyname{}
\def\Edbyname{ed.}
\def\inname{\unskip}
\def\editorname{\unskip,\space ed.}
\def\editorsname{\unskip,\space eds.}
\def\etalname{et al\periodn}
\renewcommand*{\trans}{trans.}
\renewcommand*{\ibidemname}{}
\renewcommand*{\ibidemmidname}{}
\renewcommand*{\idemname}{}
\renewcommand*{\idemmidname}{}
\renewcommand*{\firstedname}{1\textsuperscript{st} }
\renewcommand*{\secondedname}{2\textsuperscript{nd }}
\renewcommand*{\thirdedname}{3\textsuperscript{rd} }
\renewcommand*{\fourthedname}{4\textsuperscript{th }}
\renewcommand*{\fifthedname}{5\textsuprescript{th} }
\renewcommand*{\thedname}{\textsuperscript{th}}
\renewcommand*{\editionname}{ed.}
\renewcommand*{\urldatecomment}{\unskip\commas}
\biburlfont{rm}
}
\addto\jbonlyforbib{%
\DeclareRobustCommand{\mla}{. }
\DeclareRobustCommand{\mlaws}{.}
\DeclareRobustCommand{\commas}{ }
\DeclareRobustCommand{\periodn}{}
\DeclareRobustCommand{\nosnoc}{.}
\DeclareRobustCommand{\commanot}{}
\DeclareRobustCommand{\nocolon}{:}
\DeclareRobustCommand{\diss}{Diss}
\DeclareRobustCommand{\perf}{Perf.}
\DeclareRobustCommand{\dir}{Dir.}
\DeclareRobustCommand{\reviewintro}{Rev. of }
\DeclareRobustCommand{\specintro}{Spec. issue of }
\DeclareRobustCommand{\Edbyname}{Ed.}
\DeclareRobustCommand{\editorname}{\unskip,\space ed}
\DeclareRobustCommand{\editorsname}{\unskip,\space eds}
\DeclareRobustCommand{\revedname}{Rev.}
\DeclareRobustCommand{\editionname}{ed}
\DeclareRobustCommand{\trans}{Trans.}
\DeclareRobustCommand{\bibapyldelim}{}
\DeclareRobustCommand{\bibapyrdelim}{}
\renewcommand*{\bibtfont}{\textit}
\renewcommand*{\bibbtfont}{\textit}
\renewcommand*{\bibjtfont}{\textit}
\renewcommand{\bibauthormultiple}{---. }
}

\begin{document}
\bibliographystyle{mla6}

\mainmatter
\chapter{Einleitung}

Buch\footcite[]{meer}

\bibliography{ba}
\end{document}

Der entsprechende .bib-Eintrag lautet:

@BOOK{meer,
author = {Sylvia Nasar},
publisher = {Piper},
title = {Auf den fremden Meeren des Denkens},
shortauthor = {Nasar},
shorttitle = {Auf den fremden Meeren des Denkens},
year = 1999,
address = {München},
translator = {Plieninger, Cäcilie and Hansen-Schmidt, Anja},
language = {ngerman}


Ich habe als language sowohl ngerman als auch german getestet, beides jedoch ohne Erfolg. Ich bin total ratlos und weiß nicht, wo ich noch ein Sprachpaket einbinden könnte. Reicht \usepackage[ngerman]{babel} nicht?

Vielen Dank für jegliche Hilfe!!
Heike

marius79
05-03-2007, 14:00
Hallo Heike,

\usepackage[ngerman]{babel} reicht schon, es hat nur keine Auswirkungen auf Dein Literaturverzeichnis. Die Wörter, um die es Dir geht, also wohl vor allem "ed." statt "Hrsg.", werden im entsprechenden Bib-Style festgelegt, in Deinem Fall also in mla6. Ich habe davon noch nie etwas gehört, um ehrlich zu sein. Wenn ich mir aber Dein Minimalbeispiel anschaue, würde ich aus dem Bauch heraus vorschlagen, in dem folgenden Fragment ein paar Änderungen vorzunehmen (ich hab mal die Stellen rot markiert, an denen ich ändern würde):

\AddTo\bibsenglish{%
\def\edbyname{}
\def\Edbyname{ed.}
\def\inname{\unskip}
\def\editorname{\unskip,\space ed.}
\def\editorsname{\unskip,\space eds.}
\def\etalname{et al\periodn}
\renewcommand*{\trans}{trans.}
\renewcommand*{\ibidemname}{}
\renewcommand*{\ibidemmidname}{}
\renewcommand*{\idemname}{}
\renewcommand*{\idemmidname}{}
\renewcommand*{\firstedname}{1\textsuperscript{st} }
\renewcommand*{\secondedname}{2\textsuperscript{nd }}
\renewcommand*{\thirdedname}{3\textsuperscript{rd} }
\renewcommand*{\fourthedname}{4\textsuperscript{th }}
\renewcommand*{\fifthedname}{5\textsuprescript{th} }
\renewcommand*{\thedname}{\textsuperscript{th}}
\renewcommand*{\editionname}{ed.}
\renewcommand*{\urldatecomment}{\unskip\commas}
\biburlfont{rm}
}
\addto\jbonlyforbib{%
\DeclareRobustCommand{\mla}{. }
\DeclareRobustCommand{\mlaws}{.}
\DeclareRobustCommand{\commas}{ }
\DeclareRobustCommand{\periodn}{}
\DeclareRobustCommand{\nosnoc}{.}
\DeclareRobustCommand{\commanot}{}
\DeclareRobustCommand{\nocolon}{:}
\DeclareRobustCommand{\diss}{Diss}
\DeclareRobustCommand{\perf}{Perf.}
\DeclareRobustCommand{\dir}{Dir.}
\DeclareRobustCommand{\reviewintro}{Rev. of }
\DeclareRobustCommand{\specintro}{Spec. issue of }
\DeclareRobustCommand{\Edbyname}{Ed.}
\DeclareRobustCommand{\editorname}{\unskip,\space ed}
\DeclareRobustCommand{\editorsname}{\unskip,\space eds}
\DeclareRobustCommand{\revedname}{Rev.}
\DeclareRobustCommand{\editionname}{ed}
\DeclareRobustCommand{\trans}{Trans.}
\DeclareRobustCommand{\bibapyldelim}{}
\DeclareRobustCommand{\bibapyrdelim}{}
\renewcommand*{\bibtfont}{\textit}
\renewcommand*{\bibbtfont}{\textit}
\renewcommand*{\bibjtfont}{\textit}
\renewcommand{\bibauthormultiple}{---. }
}
Wenn ich das recht überblicke, sind das genau die Definitionen, die dafür verantwortlich sind, ob in Deinem Literaturverzeichnis später z. B. "ed." statt "Hrsg." oder "1st Ed." statt "erste Ausg." steht.

Einfach mal rumprobieren und testen, was dabei rauskommt. :)

Viel Erfolg
marius

hhieb
05-03-2007, 14:06
\AddTo\bibsenglish{%
\def\edbyname{}
\def\Edbyname{ed.}
\def\inname{\unskip}
\def\editorname{\unskip,\space ed.}
\def\editorsname{\unskip,\space eds.}
\def\etalname{et al\periodn}
\renewcommand*{\trans}{trans.}
\renewcommand*{\ibidemname}{}
\renewcommand*{\ibidemmidname}{}
\renewcommand*{\idemname}{}
\renewcommand*{\idemmidname}{}
\renewcommand*{\firstedname}{1\textsuperscript{st} }
\renewcommand*{\secondedname}{2\textsuperscript{nd }}
\renewcommand*{\thirdedname}{3\textsuperscript{rd} }
\renewcommand*{\fourthedname}{4\textsuperscript{th }}
\renewcommand*{\fifthedname}{5\textsuprescript{th} }
\renewcommand*{\thedname}{\textsuperscript{th}}
\renewcommand*{\editionname}{ed.}
\renewcommand*{\urldatecomment}{\unskip\commas}
\biburlfont{rm}
}
\addto\jbonlyforbib{%
\DeclareRobustCommand{\mla}{. }
\DeclareRobustCommand{\mlaws}{.}
\DeclareRobustCommand{\commas}{ }
\DeclareRobustCommand{\periodn}{}
\DeclareRobustCommand{\nosnoc}{.}
\DeclareRobustCommand{\commanot}{}
\DeclareRobustCommand{\nocolon}{:}
\DeclareRobustCommand{\diss}{Diss}
\DeclareRobustCommand{\perf}{Perf.}
\DeclareRobustCommand{\dir}{Dir.}
\DeclareRobustCommand{\reviewintro}{Rev. of }
\DeclareRobustCommand{\specintro}{Spec. issue of }
\DeclareRobustCommand{\Edbyname}{Ed.}
\DeclareRobustCommand{\editorname}{\unskip,\space ed}
\DeclareRobustCommand{\editorsname}{\unskip,\space eds}
\DeclareRobustCommand{\revedname}{Rev.}
\DeclareRobustCommand{\editionname}{ed}
\DeclareRobustCommand{\trans}{Trans.}
\DeclareRobustCommand{\bibapyldelim}{}
\DeclareRobustCommand{\bibapyrdelim}{}
\renewcommand*{\bibtfont}{\textit}
\renewcommand*{\bibbtfont}{\textit}
\renewcommand*{\bibjtfont}{\textit}
\renewcommand{\bibauthormultiple}{---. }
}
Wenn ich das recht überblicke, sind das genau die Definitionen, die dafür verantwortlich sind, ob in Deinem Literaturverzeichnis später z. B. "ed." statt "Hrsg." oder "1st Ed." statt "erste Ausg." steht.

Einfach mal rumprobieren und testen, was dabei rauskommt. :)

Hallo Marius,

vielen Dank für deinen Vorschlag. Darüber habe ich auch schon nachgedacht. Es ist für mich aber leider keine Lösung, da ich sowohl englische als auch deutsche Literaturangaben habe und eine fallweise Anpassung brauche. Außerdem findet sich in obigem Code nicht "and", was sehr häufig vorkommt (beispielsweise bei den Übersetzern in meinem Beispiel).

Es muss doch irgendwie gehen, die Sprache von einer Quelle zur nächsten zu verändern, oder??

LG
Heike

marius79
05-03-2007, 14:16
Hmmm ... na gut. Das macht die Sache natürlich etwas komplizierter. Mir fallen dazu drei Sachen ein:

1. Warum möchtest Du denn auch solche Ausdrücke wie "ed." bzw. "Hrsg." zweisprachig haben? Reicht es nicht, diese Begriffe in der Sprache Deiner Arbeit, vermutlich Deutsch, zu setzen?

2. Das "and" ist garantiert im bst-File definiert. Um daraus ein "und" oder ein "&" zu machen, musst Du an dieser Datei was ändern.

3. Um die Sprache zwischen zwei Einträgen zu wechseln, gibt es wohl ein Feld "language", dass aber bei den wenigsten Bib-Styles vorgesehen ist. Ich hab das noch nie verwendet, vermute aber, dass damit lediglich die Rechtschreibung und Silbentrennung des jeweiligen title-Feldes angepasst wird. Wenn Du Dir mit custombib einen eigenen Bib-Style erstellst, wirst du gefragt, ob Du das language-Feld verwenden möchtest, oder nicht. Das schaltet aber nicht zwischen z. B. "ed." und "Hrsg." um, was (zumindest meiner Meinung nach) auch unüblich ist.

Grüße
marius

hhieb
05-03-2007, 14:38
1. Warum möchtest Du denn auch solche Ausdrücke wie "ed." bzw. "Hrsg." zweisprachig haben? Reicht es nicht, diese Begriffe in der Sprache Deiner Arbeit, vermutlich Deutsch, zu setzen?

MLA sieht vor, dass Editor/Herausgeber etc. in der Sprache des zitierten Werks geschrieben werden. Frag mich nicht, warum :mad:



3. Um die Sprache zwischen zwei Einträgen zu wechseln, gibt es wohl ein Feld "language", dass aber bei den wenigsten Bib-Styles vorgesehen ist. Ich hab das noch nie verwendet, vermute aber, dass damit lediglich die Rechtschreibung und Silbentrennung des jeweiligen title-Feldes angepasst wird. Wenn Du Dir mit custombib einen eigenen Bib-Style erstellst, wirst du gefragt, ob Du das language-Feld verwenden möchtest, oder nicht. Das schaltet aber nicht zwischen z. B. "ed." und "Hrsg." um, was (zumindest meiner Meinung nach) auch unüblich ist.

Hier scheint wohl mein Problem zu liegen. Wenn das der Fall ist, muss ich mir wohl eine komplett andere Lösung suchen. Gibt es ein Programm, was die fallweise Umschaltung der Sprache erlaubt?

Vielen Dank für die vielen Beiträge
Heike

rais
05-03-2007, 18:47
Moin moin,


Gibt es ein Programm, was die fallweise Umschaltung der Sprache erlaubt?

Gegenfrage: Du definierst
\AddTo\bibsenglish{%
[..]
}

hast Du den Block schonmal kopiert und
\AddTo\bibsgerman{%
[..]
}
genannt -- mit entsprechend deutschen Anpassungen? Vllt passt es dann ja bereits mit entsprechenden Einträgen `language={german}´bzw. `{english}´;)
MfG,

hhieb
05-03-2007, 20:25
Moin moin,

Gegenfrage: Du definierst
hast Du den Block schonmal kopiert und
\AddTo\bibsgerman{%
[..]
}
genannt -- mit entsprechend deutschen Anpassungen? Vllt passt es dann ja bereits mit entsprechenden Einträgen `language={german}´bzw. `{english}´;)


Sehr gute Idee, hab's gleich ausprobiert. Leider auch damit kein Erfolg. Es wird dann für beide Sprachen übernommen. Eine Unterscheidung scheint auch auf diesem Weg nicht möglich zu sein. :(

Grüße
Heike

1stLuebbi
08-03-2007, 14:47
Hallo Heike,

entschuldige, dass ich mich erst so spät melde, ich hoffe, du hattest nicht in der Zwischenzeit Abgabe! Eigentlich funktioniert es genauso, wie Rainer gesagt hat, denn zur Sprachumschaltung hat jurabib etwas eingebaut, an dem ich nicht gedreht habe. Hier ist ein Minimalbeispiel, das zumindest bei mir wie gewünscht funktioniert:


\documentclass[12pt, oneside, a4paper, BCOR14.5mm, DIV12, headsepline, normalheadings]{scrreprt}
\usepackage{mathptmx}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx,textcomp,booktabs,amsmath}
\usepackage[UKenglish]{babel}
\usepackage[onehalfspacing]{setspace}
\usepackage{mla6}

\jurabibsetup{
authorformat={citationreversed,reducedifibidem,fir stnotreversed},
citefull=first,
crossref=long,
titleformat=commasep,
bibformat=ibidem,
}
\AddTo\bibsenglish{%
\def\edbyname{}
\def\Edbyname{ed.}
\def\inname{\unskip}
\def\editorname{\unskip,\space ed.}
\def\editorsname{\unskip,\space eds.}
\def\etalname{et al\periodn}
\renewcommand*{\trans}{trans.}
\renewcommand*{\ibidemname}{}
\renewcommand*{\ibidemmidname}{}
\renewcommand*{\idemname}{}
\renewcommand*{\idemmidname}{}
\renewcommand*{\firstedname}{1\textsuperscript{st} }
\renewcommand*{\secondedname}{2\textsuperscript{nd }}
\renewcommand*{\thirdedname}{3\textsuperscript{rd} }
\renewcommand*{\fourthedname}{4\textsuperscript{th }}
\renewcommand*{\fifthedname}{5\textsuprescript{th} }
\renewcommand*{\thedname}{\textsuperscript{th}}
\renewcommand*{\editionname}{ed.}
\renewcommand*{\urldatecomment}{\unskip\commas}
\biburlfont{rm}
}
\addto\jbonlyforbib{%
\DeclareRobustCommand{\nopersp}{\unskip. }
\DeclareRobustCommand{\mla}{. }
\DeclareRobustCommand{\mlaws}{.}
\DeclareRobustCommand{\commas}{ }
\DeclareRobustCommand{\periodn}{}
\DeclareRobustCommand{\nosnoc}{.}
\DeclareRobustCommand{\commanot}{}
\DeclareRobustCommand{\diss}{Diss}
\DeclareRobustCommand{\perf}{Perf.}
\DeclareRobustCommand{\dir}{Dir.}
\DeclareRobustCommand{\Edbyname}{Ed.}
\DeclareRobustCommand{\editorname}{\unskip,\space ed}
\DeclareRobustCommand{\editorsname}{\unskip,\space eds}
\DeclareRobustCommand{\revedname}{Rev.}
\DeclareRobustCommand{\editionname}{ed}
\DeclareRobustCommand{\trans}{Trans.}
\DeclareRobustCommand{\reviewintro}{Rev. of }
\DeclareRobustCommand{\specintro}{Spec. issue of }
\DeclareRobustCommand{\bibapyldelim}{}
\DeclareRobustCommand{\bibapyrdelim}{}
\renewcommand*{\bibtfont}{\textit}
\renewcommand*{\bibbtfont}{\textit}
\renewcommand*{\bibjtfont}{\textit}
\renewcommand{\bibauthormultiple}{---. }
}

\AddTo\bibsgerman{% %---->das ist neu!
\def\editorname{\unskip,\space Hrsg.} %---->hier definierst du, was statt ed. in der dt. Version stehen soll
}
\addto\jbonlyforbib{% %---->das ist auch neu und muss für das Literaturverzeichnis da sein
\DeclareRobustCommand{\editorname}{\unskip,\space Hrsg} %---->gleiches Spiel, damit der deutsche Begriff im Literaturverzeichnis steht
}
\begin{document}
\bibliographystyle{mla6}
Das ist jetzt ein Test, ein Buch mit deutschem Herausgeber.\footcite{b} Hier müsste jetzt sowohl in der Fußnote also auch im Literaturverzeichnis Hrsg stehen.

Test - Teil 2: Ein anderes Buch, englischer Herausgeber.\footcite{d} Hier müsste also überall ed stehen...

%----Bibtex-Datei----
\bibliography{test}

%----Alle Einträge des Literaturverzeichnisses zitieren----
\nocite{*}

\end{document}

Dazu gehört dann die test.bib mit folgenden Einträgen:


@BOOK{B,
title = {Book 2},
publisher = {Publisher},
year = {1999},
language = {german},
editor = {Doe, Jane},
address = {Address}
}

@BOOK{D,
title = {Book 4},
publisher = {Publisher},
year = {2002},
editor = {Does, John and Maulwurf, Hans},
address = {Address}
}

Dadurch, dass in meinem Beispiel \usepackage[UKenglish]{babel} verwendet wird, benutzt jurabib, und damit auch mla6, Englisch als Hauptsprache. Wenn du jetzt einzelne Einträge in einer anderen Sprache haben möchtest, musst du das mit language = {klingonisch} angeben und eben entsprechend die einzelnen Bezeichnungen, die du verändern möchtest mit \Addto\bibsklingonisch verändern.

Hoffe, es klappt, und liebe Grüße, Katrin