PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : pdflatex und hyperref



linkas
17-05-2006, 12:28
Mein ursprüngliches Problem war: Ich möchte, dass URLs im Literaturverzeichnis umgebrochen werden, so dass keine "badboxes" auftreten

Die Lösung, die ich fand: Paket hyperef bzw. breakurl, welches auf hyperef basiert.

Ich benutze nun SuSE 10.0 und rufe über kile latex auf, welches sich mit

This is pdfeTeX, Version 3.141592-1.21a-2.2 (Web2C 7.5.4)
entering extended mode

meldet und ein dvi erzeugt. Ich benutze als explizit latex mit EPS grafiken und nich das eigentliche pdflatex. Dieses Wirrwarr wurde ja schon an anderer Stelle diskutiert!

Sobald ich das Paket hyperref in mein Dokument einbinde, bekomme ich viele Fehlermeldungen mit "! Missing number, treated as zero."

Kann mir jemand weiterhelfen? Eigentlich möchte ich nur die URLs umbrechen. Ich benutze übrigens den IEEE-BibTEX-Style

Andy

============================================

This is pdfeTeX, Version 3.141592-1.21a-2.2 (Web2C 7.5.4)
entering extended mode
(./dis.tex
LaTeX2e
Babel and hyphenation patterns for american, french, german, ngerman, b
ahasa, basque, bulgarian, catalan, croatian, czech, danish, dutch, esperanto, e
stonian, finnish, greek, icelandic, irish, italian, latin, magyar, norsk, polis
h, portuges, romanian, russian, serbian, slovak, slovene, spanish, swedish, tur
kish, ukrainian, nohyphenation, loaded.
(/usr/share/texmf/tex/latex/base/book.cls
Document Class: book 2004/02/16 v1.4f Standard LaTeX document class
(/usr/share/texmf/tex/latex/base/bk12.clo))
(/usr/share/texmf/tex/generic/german/ngerman.sty v2.5e 1998-07-08)
(/usr/share/texmf/tex/latex/graphics/epsfig.sty
(/usr/share/texmf/tex/latex/graphics/graphicx.sty
(/usr/share/texmf/tex/latex/graphics/keyval.sty)
(/usr/share/texmf/tex/latex/graphics/graphics.sty
(/usr/share/texmf/tex/latex/graphics/trig.sty)
(/usr/share/texmf/tex/latex/graphics/graphics.cfg)
(/usr/share/texmf/tex/latex/graphics/dvips.def))))
(/usr/share/texmf/tex/latex/citesort/citesort.sty)
(/usr/share/texmf/tex/latex/footmisc/footmisc.sty)
(/usr/share/texmf/tex/latex/base/alltt.sty)
(/usr/share/texmf/tex/latex/koma-script/typearea.sty
Package typearea, 2004/09/16 v2.9t LaTeX2e KOMA package
Copyright (C) Frank Neukam, 1992-1994
Copyright (C) Markus Kohm, 1994-2002

) (/usr/share/texmf/tex/latex/amsmath/amsmath.sty
For additional information on amsmath, use the `?' option.
(/usr/share/texmf/tex/latex/amsmath/amstext.sty
(/usr/share/texmf/tex/latex/amsmath/amsgen.sty))
(/usr/share/texmf/tex/latex/amsmath/amsbsy.sty)
(/usr/share/texmf/tex/latex/amsmath/amsopn.sty))
(/usr/share/texmf/tex/latex/amsfonts/amsfonts.sty)
(/usr/share/texmf/tex/latex/amsfonts/amssymb.sty)
(/usr/share/texmf/tex/latex/boxedminipage/boxedminipage.sty)
(/usr/share/texmf/tex/latex/base/textcomp.sty
(/usr/share/texmf/tex/latex/base/ts1enc.def))
(/usr/share/texmf/tex/latex/hyperref/hyperref.sty
(/usr/share/texmf/tex/latex/hyperref/pd1enc.def)
(/usr/share/texmf/tex/latex/hyperref/hyperref.cfg)
Implicit mode ON; LaTeX internals redefined
(/usr/share/texmf/tex/latex/url/url.sty))
*hyperref using driver hdvips*
(/usr/share/texmf/tex/latex/hyperref/hdvips.def
(/usr/share/texmf/tex/latex/hyperref/pdfmark.def)) (./ali_h.sty) (./dis.aux
(./modellparameter/modpara.aux

LaTeX Warning: Label `fig:tem-querschnitt' multiply defined.

)) (/usr/share/texmf/tex/latex/base/ts1cmr.fd)
(/usr/share/texmf/tex/latex/hyperref/nameref.sty) (./dis.out) (./dis.out)
(./titelei/titelseite.tex [1] [2] (/usr/share/texmf/tex/latex/amsfonts/umsa.fd)
(/usr/share/texmf/tex/latex/amsfonts/umsb.fd) [3])
(./titelei/amtl-erklaerung.tex [4])
No file dis.toc.
[5] (./einleitung/abstract.tex
Kapitel 1.
) (./einleitung/einleitung.tex [1]
Kapitel 2.
[2]) (./grundlagen/grundlagen.tex [3]
Kapitel 3.
! Missing number, treated as zero.

\let
l.25 ...me des \textsc{C-Netzes}~\cite{david-1996}
.
[4]
! Missing number, treated as zero.

\let
l.41 ...bile System}~\cite{david-1996,gibson-1999}
. Sie alle
! Missing number, treated as zero.

\let
l.41 ...bile System}~\cite{david-1996,gibson-1999}
. Sie alle
! Missing number, treated as zero.

\let
l.41 ...bile System}~\cite{david-1996,gibson-1999}
. Sie alle
! Missing number, treated as zero.

\let
l.41 ...bile System}~\cite{david-1996,gibson-1999}
. Sie alle
! Missing number, treated as zero.

\let
l.59 ... L"andern~\cite{gsa-network-update-200510}
der Erde
! Missing number, treated as zero.

\let
l.60 ...ich. Heute (Stand Mai 2006~\cite{gsmworld}
) ist es mit einen Weltmar...

! Missing number, treated as zero.

\let
l.68 ...{jung-1997,wikipedia-en-mobile-phone-2006}
.
! Missing number, treated as zero.

\let
l.68 ...{jung-1997,wikipedia-en-mobile-phone-2006}
.
! Missing number, treated as zero.

\let
l.68 ...{jung-1997,wikipedia-en-mobile-phone-2006}
.

Salnic
17-05-2006, 12:44
Hi Linkas,

herzlich willkommen im Forum.

so richtig kann ich nicht erkennen, was bei Dir schief gelaufen ist. Ich nehme an, dass vor der Einbindung des hyperref-Packetes alles funktioniert hat. Hast Du das hyperref-Packet als letztes aller Packete eingebunden?

> Ich benutze als explizit latex mit EPS grafiken und nich das
> eigentliche pdflatex.
das sollte hier erst mal egal sein.


Nebenbei:
> LaTeX Warning: Label `fig:tem-querschnitt' multiply defined.
es scheint so, als ob Du das Label fig:tem-querschnitt mindestens zwei mal vergeben hast.

Salnic

countbela666
17-05-2006, 12:57
Wie Salnic schon angemerkt hat: ohne ein Minimalbeispiel ist der Fehler nicht nachzuvollziehen. Hier mal ein Beispiel, das funktionieren sollte:

\begin{filecontents}{lit.bib}
@MISC{test,
author = {Peter Lustig},
title = {{\"U}ber das {S}chreiben von {B}lindtexten},
howpublished = {\url{http://de.wikipedia.org/wiki/Berner_%C3%9Cbereinkunft}},
}
\end{filecontents}
\documentclass{article}
\usepackage{hyperref,breakurl}
\begin{document}
\nocite*{}
\bibliographystyle{plain}
\bibliography{lit}
\end{document}Grüße,
Marcel

linkas
17-05-2006, 15:05
Danke. Ich habe den Fehler gefunden, da das Minimalbeispiel durchlief:

citesort und hyperref vertragen sich nicht! Allerdings ist das schade, denn die Ausgabe von citesort ist klasse!

@Salnic: Die Fehlermedung mit der doppelten Benamung tritt ebenfalls nur auf, wenn ich citesort und hyperref gleichzeitig benutze.

Falls jemand eine Alternative für citesortkennt, wäre das klasse.

Salnic
17-05-2006, 15:36
das Packet natbib hat die Option sort&compress

linkas
17-05-2006, 15:44
Leider scheppert es mit natbib auch. Liegt wahrscheinlich doch an hyperref. Gibt es eine andere Möglichkeit, wie über hyperref, URLs umzubrechen?

Salnic
18-05-2006, 02:04
Hi Linkas,

Du kannst ja vielleicht mal das cite-Packet versuchen, das komprimiert auch die Referenzen. Also einfach statt \usepackage{citesort} \usepackage{cite}

Salnic


PS: sehe gerade, dass es zwar keine Fehlermeldungen mehr gibt, allerdings wird auch nichts mehr verlinkt .-((

rais
18-05-2006, 03:11
Gibt es eine andere Möglichkeit, wie über hyperref, URLs umzubrechen?
Hast Du breakurl schon ausprobiert? Erwähnt hast Du es ja schon...

Mal ne ganz andere Sache: Du sagst, Du hast das Problem, seitdem Du hyperref hinzugeladen hast? Hast Du mal nach Hinzufügen von hyperref und _vor_ dem nächsten latex-Lauf die aux und toc - Datei gelöscht? Das hat schon so manches Wunder bewirkt ;)

MfG,

linkas
18-05-2006, 16:29
@Salnic: mit \usepackage{cite} klappts!

@Rais:
1. Nein, das Löschen der TOC- und AUX-Datei vor dem kompletten latex-Durchlauf bringt nichts!

2. breakurl verlangt hyperef:
./breakurl.sty:41:Package breakurl Error: The breakurl depends on hyperref package. }

3. Ich benutze jetzt folgende Kombination mit breakurl:
\usepackage{hyperref}
\usepackage{breakurl}
\usepackage{cite}

So, das eigentliche Problem ist jetzt gelöst. Vielen Dank!Nur noch eine Schönheitssache: Da hypererf ja Links erzeugt wird aus [12,5,1,2,4,3] ->[1,2,3,4,5,12] und nicht mehr [1-5,12]. Kann man die Links abschalten.

Best Grüße

linkas
19-05-2006, 20:20
Nachschlag:

Ich habe nun auch das letzte Problem noch lösen können! Um also sortierte Referenzen im komprimierten Format, wie [34-41] oder [12,45-52], zu erhalten und um gleichzeitig den Zeilenumbruch bei URLs im Literaturverzeichnis zu bewirken, müssen in der folgenden Reighenfolge drei Pakete geladen werden:

\usepackage{cite}
\usepackage{hyperref}
\usepackage{breakurl}

Vielen Dank für alle Hinweise.

panex
21-07-2006, 17:48
Genau diese antwort habe ich gesucht und gefunden, leider fkt
\usepackage{breakurl} bei mir nicht.
habe es bei CTAN runtergeladen, kompiliert und miktex refresh aktion gestartet.

bei komp. meines tex gibt er eine Fehlermeldung aus, wenn \usepackage{breakurl} drin steht:

Fehlermeldung:
"xkeyval.sty not found"

ich hab xkeyval.sty bei CTAN auch nicht gefunden.

könnt ihr mir da bitte weiterhelfen
Danke im voraus

mfg panex

rais
22-07-2006, 11:41
Moin moin,

ich hab xkeyval.sty bei CTAN auch nicht gefunden.

Wenn Du hier (http://www.dante.de/cgi-bin/ctan-index) einmal nach ``xkeyval'' suchen möchtest, solltest Du eigentlich bei CTAN fündig werden (.../macros/latex/contrib/xkeyval)

IMHO solltest Du nur nach dem Basisnamen suchen, dann gibt's in der Trefferliste idR auch gleich ein *.zip oder *.tar.gz - die beinhalten dann meist gleich die passende Paket-Doku.;)
MfG,

panex
22-07-2006, 15:41
Hi
danke erst einmal @rais.
auf meinem miktex verzeichnis war nichts, deswegen habe ich auf dein anraten bei CTAN die fertig komp. *tex *sty runtergeladen und ins verzeichn geladen, bei miktex dann noch auf refresh gedrückt.

Aber trotzdem funzt die reihenfolge nicht:

cite
hyperref
breakurl oder url

die url wird nicht schön umgebrochen, d.h auf der 1.zeile sind noch grosse lücken (gleich ob ich howpublished einfüge oder nicht) und
noch schlimmer: die Lit.ang. sind nicht verlinkt.
verschiebe ich aber cite nach hyperref, habe ich verlinkung aber keine komp., also [12-14]. url-adresse ist weiterhin mit lücken verlinkt.

anbei erlaube ich mir mal eine MB zu schicken:

\documentclass[a4paper,12pt,german,twoside,titlepage]{book}
\usepackage[ngerman]{babel}
\usepackage{latexsym}
\usepackage{bibgerm}
\usepackage{exscale}
\usepackage{amssymb}
\usepackage[ansinew]{inputenc} %zum Anzeigen von Registrierter Marke

\usepackage{cite} % version 4.01
\usepackage[plainpages=false,pdfpagelabels,pdfborder={0 0 0},pdftex]{hyperref}
\usepackage{xkeyval} % für breakurl sichheitshalber mitgeladen
\usepackage{breakurl} % zum Umbrechen von url-adressen, geht aber net
%\usepackage{url} % wahlweise, zum Umbrechen von url-adressen, geht aber net

\setlength{\parindent}{1.5em} \setlength{\parskip}{1.5ex plus0.5ex
minus0.5ex} \oddsidemargin=5mm \evensidemargin=-5mm
\topmargin=-5mm \textwidth=160mm \textheight=230mm

\begin{document}\small\normalsize %Umschaltung auf Normalgr"o"se

Bsb.text:
\\ \emph{force modulation microscopy}, FMM~\cite{Mai91,Rad93}
\\ \emph{scanning tunnel microscope}, STM\cite{Bin82,Mai91,Rad93}
\\ url-Angabe mit howpublished\cite{Parratt32}
\\ url-Angabe ohne howpublished\cite{Parratt}
\begin{thebibliography}{100}
\bibitem{Mai91}
P.~Maivald, {\em Nanotechnology}, {\bf 2}(2), 103 (1991).
\bibitem{Rad93}
M.~Radmacher, {\em Biophysical Journal}, {\bf 64}(3), 735 (1993).
\bibitem{Bin82}
G.~Binnig, {\em Applied Physics Letters}, {\bf 40}(2), 178 (1982).
\bibitem{Parratt32}
Ch.~Braun, The reflectivity tool: Parratt32,
howpublished = "\url{http://www.hmi.de/bensc/instrumentation/instrumente/v6/refl/parratt_en.htm}", 1999.
\bibitem{Parratt}
Ch.~Braun, The reflectivity tool: Parratt32, \url{http://www.hmi.de/bensc/instrumentation/instrumente/v6/refl/parratt_en.htm}, 1999.
\end{thebibliography}
\end{document}

Wie kann ich denn bitte latex dazu bringen, dass er die lit.ang verlinkt und komp. und die url scön (bei "instru-ment) bricht.

wäre super wenn mir geholfen werden kann
dankschön erst mal vorab

mfg panex

linkas
16-08-2006, 13:06
Hi Panex,

versuche doch mal wirklich die Reihenfolge:
\usepackage{cite}
\usepackage{hyperref}
\usepackage{breakurl}

xkeyval sollte automatisch nachgeladen werden, fall es ein Paket benötigt.

Bei mir funktioniert es unter Linux und ich habe es letzte Woch auch bei einem Bekannten mit Miktex problemlos zum Laufen gekriegt ....

panex
17-08-2006, 19:56
hi
das hab ich auch schon probiert, geht bei mir nicht, dabei habe
ich die neue version von cite instaslliert und im Miktex-Verz auf cite_neu umbenannt, da ich die alte cite ver ncith löschen wollte.
Ergebnis= lit.hinweise sind nicht verlinkt, aber Anzeige wie gewollt [1-3]

bei der Reihenfolge:
\usepackage{hyperref}
\usepackage{cite_neu} % neue cite version, wollte alte cite ver. nicht löschen
\breakurl
=> Ergebnis: lit.hinweise sind verlinkt, aber Anzeige [1,2,3]

ich mach es jetz so, wenn es auch nicht gut aussieht:
\usepackage{hyperref}
\usepackage[numbers,sort&compress]{natbib}
\usepackage{hypernat}
\usepackage{url}
=> Ergebnis: lit.hinweise sind verlinkt und Anzeige wie gewünscht [1-3],
wobei bei [3, 4] (Abstand nach Komma finde ich nicht gut, kann aber damit leben)


Danke trotzallem

mfg pan

RedCloud
17-08-2006, 20:23
h
das hab ich auch schon probiert, geht bei mir nicht, dabei habe
ich die neue version von cite instaslliert und im Miktex-Verz auf cite_neu umbenannt, da ich die alte cite ver ncith löschen wollte.
Ergebnis= lit.hinweise sind nicht verlinkt, aber Anzeige wie gewollt [1-3]


in solchen Fällen gibt es einiges zu beachten:

1. hyperref als letztes Paket laden
2. wenn es nicht hilft -> README von hyperref lesen und siehe da ...

cite:
This is from Mike Shell:
> cite.sty cannot currently be used with hyperref.
> However, I can do a workaround via:
>
> \makeatletter
> \def\NAT@parse{\typeout{This is a fake Natbib command to fool Hyperref.}}
> \makeatother
>
> \usepackage[hypertex]{hyperref}
>
> so that hyperref will not redefine any of the biblabel stuff - so cite.sty
> will work as normal - although the citations will not be hyperlinked, of
> course (But this may not be an issue for many people).

rc