PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Klammerproblem mit Jurabib



stef_t
01-01-2010, 18:18
Hallo Leute,

ich schreibe meine Thesis mit LaTeX und mir fehlen mittlerweile "nur" noch ein paar Feinschliffe.

Ich arbeite mit TexShop und hier mit der Version 2.29 (ich nehme an, ich habe die neueste Version von LaTex) Ich benutze Jurabib für mein Literaturverzeichnis was schon fast so funktioniert, wie ich das brauche.

Im Minimalbeispiel ist auch nochmal zu sehen, was ich benutze und wie ich das gerne haben möchte. Ich brauche im Grunde den Befehl \citefield{shorttitle}{testurl}
und möchte, dass eckige Klammern darum erscheinen.
Das kann man ja meines Wissens mit \renewcommand erreichen oder besser noch in \newcommand, nur habe ich damit keine Erfahrung und werde aus der Doku nicht schlau.
Wofür steht beispielsweise die Anzahl der Argumente in:
\renewcommand{alterBefehl}[Anzahl Argumente]{neueDefinition}

Ich kann die Syntax bei Beispielen wie der Änderung von Fonts schon nachvollziehen, auch \let habe ich mir bereits angschaut, um mir "einfach" eckige Klammern drum zu zaubern, aber leider kein Erfolg.

Dann noch eine Frage, kann man den Command \citefield{shorttitle}{ref} so umdefinieren, dass ich sozusagen einen neuen Befehl habe, der automatisch den shorttitle in die (dann vorhandenen eckigen Klammern) schreibt?

Wäre für jede Hilfe dankbar. Hier meine tex-datei:


\documentclass{scrbook}
%
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8x]{inputenc}
\usepackage{ucs}
\usepackage[%
titleformat=italic,%
titleformat=all,%
titleformat=noreplace,%
titleformat=commasep,%
commabeforerest,%
ibidem=strict,%
citefull=first,%
lookat,%
oxford,%
pages=format,%
hypercite=true,%
]{jurabib}
\usepackage{hyperref}
\hypersetup{urlcolor=green, colorlinks=true}

%
\begin{document}
Folgendes macht das schon ganz gut, ich will nur eckige Klammern drumrum haben:
Lorem ipsum \citefield{shorttitle}{testurl} dolor sit amet. \\
So fände ich es gut:
Lorem ipsum [\citefield{shorttitle}{testurl}] dolor sit amet. \\


\bibliographystyle{jurabib} % Use the "unsrtnat" BibTeX style for formatting the Bibliographynamed "Bibliography.bib"
\bibliography{Bibliography} % The references (bibliography) information are stored in the file
\end{document}


Und ein kleines Literaturverzeichnis:


@WWW{testurl,
author = {Jens Berger},
title = {Home of jurabib},
url = {http://www.jurabib.org},
urldate = {06.12.2003},
shorttitle = {url}
}


Vielen Dank schonmal,
Stef

mechanicus
01-01-2010, 18:37
Das kann man ja meines Wissens mit \renewcommand erreichen
würde ich von abraten, da der Befehl auch intern noch genutzt wird:


\documentclass{scrbook}
%
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8x]{inputenc}
\usepackage{ucs}
\usepackage[%
titleformat=italic,%
titleformat=all,%
titleformat=noreplace,%
titleformat=commasep,%
commabeforerest,%
ibidem=strict,%
citefull=first,%
lookat,%
oxford,%
pages=format,%
hypercite=true,%
]{jurabib}
\usepackage{hyperref}
\hypersetup{urlcolor=green, colorlinks=true}
\usepackage{filecontents}
\begin{filecontents*}{Bibliography.bib}
@WWW{testurl,
author = {Jens Berger},
title = {Home of jurabib},
url = {http://www.jurabib.org},
urldate = {06.12.2003},
shorttitle = {url},
}
\end{filecontents*}
\newcommand*\citeshort[1]{[\citefield{shorttitle}{#1}]}
\begin{document}
Folgendes macht das schon ganz gut, ich will nur eckige Klammern drumrum haben:
Lorem ipsum \citeshort{testurl} dolor sit amet. \\
So fände ich es gut:
Lorem ipsum [\citefield{shorttitle}{testurl}] dolor sit amet. \\


\bibliographystyle{jurabib} % Use the "unsrtnat" BibTeX style for formatting the Bibliographynamed "Bibliography.bib"
\bibliography{Bibliography} % The references (bibliography) information are stored in the file
\end{document}

Gruß
Marco

stef_t
01-01-2010, 20:09
Wow, vielen Dank für die schnelle und hilfreiche Antwort :)
Macht genau das, was ich möchte!

Viele Grüße,
stef

stef_t
02-01-2010, 19:37
Hallo,

leider fehlt mir jetzt noch eine Kleinigkeit (ist es ja irgendwie immer ;) )

Und zwar möchte ich, dass man im Literaturverzeichnis auch das Kürzel aka Shorttitle sieht, da man ja sonst in der Druckversion gar nicht weiß, was hier wo zitiert wird, da es keine Links gibt.

In dem Thread http://www.mrunix.de/forums/showthread.php?t=65470&highlight=shorttitle habe ich auch wenigstens schon rausgefunden, wie ich den Shorttitle auch im Literaturverzeichnis erscheinen lasse.

Leider bekomme ich es aber nicht hin, dass das Kürzel auch angezeigt wird, wenn man mit \citefield (oder in meinem Fall mit dem neudefinierten Command \citeshort) arbeitet.

Hat da vielleicht jemand eine Idee, ob das überhaupt machbar ist ohne hier groß den Quellcode neu zu schreiben?
Alternative wäre natürlich einfach den \cite Befehl zu benutzen, der momentan
Author, 'shorttitle'
im Text ausgibt. Wie kann ich hier denn den Autor verschwinden lassen, dafür aber den shorttitle angeben?
Ändere ich "titleformat={all, colonsep}" in "titleformat={all}" verschwindet zum Beispiel der Shorttitle. Geht das auch andersrum?

Das ist mein Beispiel:


\documentclass{scrbook}
%
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8x]{inputenc}
\usepackage{ucs}
\usepackage[%
titleformat={all, colonsep},
howcited=all,
pages={always,test},
ibidem=strict,%
lookat,%
oxford,%
pages=format,%
hypercite=true,%
]{jurabib}
\usepackage{hyperref}

\newcommand*\citeshort[1]{[\citefield{shorttitle}{#1}]}

\hypersetup{urlcolor=green, colorlinks=true}
\usepackage{filecontents}
\begin{filecontents*}{Bibliography.bib}
@WWW{testurl,
author = {Jens Berger},
title = {Home of jurabib},
url = {http://www.jurabib.org},
urldate = {06.12.2003},
shorttitle = {Ber},
}
@WWW{testurl2,
author = {Anne Paul AND Jens Berger},
title = {Home of jurabib},
url = {http://www.jurabib.org},
urldate = {06.12.2003},
shorttitle = {PauBer}
}
\end{filecontents*}
%
\begin{document}

Dises Zitat \citeshort{testurl} hat im Literaturverzeichnis keine Angabe wie z.B. (zitiert als shorttitle).

Dieses Zitat \cite{testurl2} hat im Literaturverzeichnus die Angabe (zitiert als author, shorttitle). Hier möchte ich nur den shorttitle haben, genau wie im Literaturverzeichnis.

\bibliographystyle{jurabib}
\bibliography{Bibliography} % The references (bibliography) information are stored in the file
\end{document}


Jemand irgendeine Idee?

Viele Grüße,
Stef

mechanicus
02-01-2010, 22:17
Hi,


Und zwar möchte ich, dass man im Literaturverzeichnis auch das Kürzel aka Shorttitle sieht, da man ja sonst in der Druckversion gar nicht weiß, was hier wo zitiert wird, da es keine Links gibt.
leider kann ich dir nicht helfen. Mich würde mal interessieren, ob biblatex solch ein Option hat? Habe es nicht gefunden. Wenn es die Option gibt, dann rate ich dir, zu wechseln.

Gruß
Marco

stef_t
03-01-2010, 10:04
Hallo Marco,

schade, das habe ich mir fast schon gedacht, dass das zuviel Gefrickel werden würde :(



Mich würde mal interessieren, ob biblatex solch ein Option hat? Habe es nicht gefunden. Wenn es die Option gibt, dann rate ich dir, zu wechseln.


Ich habe biblatex noch nicht ausprobiert, möchte jedoch ungern von jurabib weg, da es an den allermeisten Stellen bereits tut, was es soll. Als workaround ginge aber vielleicht aber noch, die Variante, einfach fortlaufende, hochgestellte Nummern im Text zu haben. Die hatte ich vorher auch schon mit natbib, jedoch funktionierten hier wieder keine Fußnoten.

[EDIT:] Die Nummern hochzustellen muss nicht unbedingt sein, wäre aber schöner:)

Kann man mit jurabib auch einfach Nummern in Text haben, ohne Fußnoten?

Wäre euch echt dankbar, wenn ihr mir hier helfen könntet. Dann kann ich das Literaturverzeichnis nämlich erstmal abhaken :)

Viele Grüße,
Stef

stef_t
08-01-2010, 10:16
Hallo zusammen,

habe es jetzt letztendlich mit biblatex hinbekommen. Langsam bekomme ich doch schon Routine darin, neue Packages einzufügen, yey :)

Also, wen es interessiert, biblatex arbeitet anstatt mit shorttitle mit dem Feld shorthand. Das heißt man muss blöderweise zwar immer noch die Felder selber schreiben, anstatt sie sich generieren zu lassen, aber naja.
Dafür arbeitet biblatex zunächst mit einem numerischen Format [1]. Sobald man in einem Entry in der bib dann das Feld shorthand hinzufügt, benutzt er anstatt der Nummer [Ab09], je nachdem, wie man das definiert hat, und zeigt es auch im Literaturverzeichnis mit an.

Eine nette Geschichte ist auch noch der Befehl \printshorthands , der im Gegensatz zu \printbibliography ein Literaturverzeichnis erstellt, nur mit den Shorthands.

So, vielleicht hilft das ja jemanden irgendwann mal weiter, der mal auf ein ähnliches Problem stößt.

Vielen Dank nochmal für die Hilfe,
Stef