Hallo,

Bezug nehmen auf den Post zu hyprref und externe Dateien habe ich folgende Überlegung. Bei meiner Literaturverwaltung speichere ich z.B. .pdf Dateien unter dem entsprechenden Bibtex-Key in einem Verzeichnis ab. Jabref synchronisiert automatisch den bibtex-Eintrag mit den .pdf-Dateien, die mit den bibtexkey enhalten. In den Jabref-Einstellungen legt man das Verzeichnis fest, das zur Synchronisierung verwendet werden soll. Ich habe den konkreten Ordner festgelegt, so das Jabref das Feld file = {Stromback1975_The Conversion of Iceland.pdf:Stromback1975_The Conversion of Iceland.pdf:PDF} setzt (s. Minimalbeispiel). In Jabref kann ich nun wunderbar mit Hilfe der Verlinkung bequem entsprechende Dateien öffnen.

Meinen Literaturordner möchte ich auf z.B. auf CD/USB kopieren und dann in der fertig erstellten .pdf-Datei aus dem Literaturverzeichnis auf die dort gespeicherten Dateien zugreifen. Wie kann ich das automatisieren, dass pdflatex oder biblatex meine .bib Datei abgleicht und immer dort, wo das Feld file = {}, gesetzt ist, im Literaturverzeichnis anfügt "zum öffnen hier klicken" ö.ä. und sich das jeweilige Dokument öffnet? Kann man das automatisieren?

Mit href{run:} funktioniert die Verlinkung wohl, bei größeren Literaturverzeichnissen wäre das aber sehr, sehr viel Aufwand. Kann ich nun einen Befehl setzen, der mir jeweils den Eintrag file={} so setzt, dass ich später in der .pdf Enddatei die Datei anklicken kann? Bei einigen LIteratureinträgen die mir NICHT elektronisch vorliegen, habe ich manchmal aber ein TOC als .pdf heruntergeladen. Diese tragen im Dateinamen "BibtexkeyAusgabejahr_Titel_TOC" den Marker TOC. Kann ich diese aus der Verlinkung herausnehmen?

Nachtrag: Vielleicht nochmal den Grundgedanke aufgreifen. Ich habe z.Z. >600 Einträge in meiner .bib-Datei. Davon sind max. 25 Prozent Einträge, bei denen ich ein .pdf hinterlegt habe. Wenn ich jetzt bei jedem Zitat ein href{run:} setzen würde, müßte ich jedes Mal nachschauen, bei welchem Eintrag nochmal eine *.pdf vorlag und bei welchem nicht. Jabref setzt einen Verweis einer externe Datein den jeweiligen Eintrag.

Bsp.

Open in Online-Editor
\begin{filecontents}{\jobname.bib}
@BOOK{Stromback1975,
  author = {Stromback, Dag and Foote, Peter},
  shortauthor = {Strömbäck/Foote},
  gender = {pm},
  title = {The conversion of Iceland},
  shorttitle = {The conversion of Iceland},
  subtitle = {A survey},
  address = {London},
  year = {1975},
  publisher = {Viking Society for Northern Research},
  keywords = {secondary, Christianisierung},
  number = {6},
  series = {Text Series},
  file = {Stromback1975_The Conversion of Iceland.pdf:Stromback1975_The Conversion of Iceland.pdf:PDF},
}
\end{filecontents}
\documentclass{article}
\usepackage[main=ngerman,icelandic]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc} 
\usepackage{hyperref}
\usepackage[style=footnote-dw,backend=biber]{biblatex}
\addbibresource{\jobname.bib}

\nocite{*}
\begin{document}
\printbibliography
\end{document}

gefragt 15 Aug '14, 15:41

Tischa's gravatar image

Tischa
1.4k30106129
Akzeptiert-Rate: 15%

bearbeitet 18 Jul '15, 18:40

Nein, ich meinte aus der fertig kompilierten Enddatei im ausgebenen Literaturverzeichnis der .pdf Datei, aus der ich auf einen Eintrag, klicken und die .pdf-File, auf dem Datenträger gespeichert ist, öffnen kann.

Ich möchte meine Arbeit zusammen mit der Literatur, die mir als *.pdf vorliegt, auf CD/USB speichern und dem Leser die Möglichkeit geben aus dem Literaturverzeichnis die Dateien per Link zu öffnen.

(15 Aug '14, 16:36) Tischa
1

"Mit href{run:} funktioniert die Verlinkung wohl, bei größeren Literaturverzeichnissen wäre das aber sehr, sehr viel Aufwand"

Aber Du mußt doch irgendwie angeben, welche Datei geöffnet werden soll. Liegt die Zieldatei im selben Ordner, sollte href{run:foo.pdf} reichen, falls der Dateipfad stören sollte.

Oder gib eben mal ein konkretes Bsp. an.

(15 Aug '14, 17:28) cis

Wenn wirklich sicher gestellt ist, dass die pdf den basename des bibkeys hat, dann sollte das doch recht bequem über die Umdefinition zu machen sein?

(15 Aug '14, 18:52) Johannes

Wie bereits früher erklärt, müssen URLs keine http:-Links sein, es können auch einfach Dateien sein:

Open in writeLaTeX
\begin{filecontents}{\jobname.bib}
@BOOK{Test,
  author={Ich},
  title={Egal},
  url={usrguide.pdf}
}
\end{filecontents}
\documentclass{book}
\usepackage{biblatex}
\addbibresource{\jobname.bib}
\usepackage{hyperref}
\nocite{*}
\begin{document}
\printbibliography
\end{document}

Unter der Voraussetzung, dass die Datei usrguide.pdf in dasselbe Verzeichnis kopiert wurde, öffnet sich bei mir mit einem Klick auf das blau umrandete usrguide.pdf im Literaturverzeichnis der Testdatei dann auch eben diese Datei. Getestet mit Okular und Evince.

Es genügt also, einfach nur die Datei als url-Eintrag anzugeben – natürlich nur für die Dateien, die auch wirklich verlinkt werden sollen.

Permanenter link

beantwortet 16 Okt '14, 15:44

gast3's gravatar image

gast3
(ausgesetzt)
Akzeptiert-Rate: 53%

bearbeitet 16 Okt '14, 15:45

Ich habe gerade allen Online-Artikel das Feld url={} schon mit dem Hyperlink belegt. Zudem sind alle .pdf mit dem Feld file={} verlinkt. Alle in url umzuändern, wäre da nicht sinnvoll. Funktioniert es auch, wenn ich url nicht in denselben Ordner packe? Wenn ich eine ganze CD mit >100 .pdfs vollpacke, findet man auf Anhieb die Hauptdatei nicht mehr.

(16 Okt '14, 16:06) Tischa
2

Wenn sie nicht in demselben Ordner liegen, musst Du eben einen Dateinamen mit Ordnerangabe verwenden. Wenn die PDFs allerdings nicht an einem wohldefinierten Ort im Dateisystem verfügbar sind, dann ist das ganze sinnlos. Der PDF-Viewer oder das System (je nachdem, wie solche Dateilinks gehandhabt werden, was vom PDF-Viewer und vom System abhängt) können ja nicht hellsehen. Man muss ihnen schon genau sagen, welche Datei sie öffnen sollen. Ggf. sind dann Links doch wieder besser. Und für Online-Artikel brauchst Du ja keine zusätzliche Datei.

(17 Okt '14, 07:48) gast3

Hm, Mist. Dann scheint meine Idee nicht zu funktioneren, wenn immer ein fester Pfad angegeben ist. Man könnte auf gut Glück einen bestimmten Laufwerksname vordefinieren. Ich möchte auch für Online-Artikel eine Datei verwenden, da ich i.d.R. von jeder Seite die ich zitiere ein .pdf zur Datensicherung erstelle und es gut fände, wenn ich eben auch die online-Quellen per .pdf offline zur Verfügung stellen könnte.

(17 Okt '14, 21:54) Tischa
3

@Tischa: Es ist doch keine Problem, wenn die pdf-Dateien in einem Unterordner sind, dann kannst du ja relative Pfade benutzen.

(18 Okt '14, 15:44) Ulrike Fischer

@Ulrike Fischer: Wie würde ich die genau angeben? Die Automatisierung kann man wohl nicht umsetzen?

(20 Okt '14, 09:00) Tischa

@Tischa: So wie relative Pfade generell aussehen, beispielsweise UNTERORDNER/DOKUMENT.pdf, um ein DOKUMENT.pdf zu referenzieren, das in einem Verzeichnis UNTERORDNER relativ zum Verzeichnis des Hauptdokuments liegt, oder ../SCHWESTERORDNER/DOKUMENT.pdf, wenn DOKUMENT.pdf im Verzeichnis SCHWESTERORDNER des Elternverzeichnisses des Hauptdokuments liegt. Und was ist nun wieder das Problem mit der Automatisierung? Du sprichst in Rätseln.

Ach, ich sehe gerade, dass Du mich gar nicht gefragt hast. Sorry, dass ich mich eingemischt habe …

(20 Okt '14, 09:05) gast3
3

@Tischa: Ich wüsste keinen Grund, warum man das nicht automatisieren kann -- wenn die Daten vernünftig formatiert sind. Ich weiß aber, warum ich das nicht automatisiere: Es kostet -- u.a. wegen des fehlenden Minimalbeispiel und der vagen und unklaren Frage -- zuviel Zeit.

(20 Okt '14, 12:05) Ulrike Fischer

Das Minimalbsp. habe ich versucht richtig anzupassen. Unklar finde ich die Frage nicht. Ich möchte .pdfs, die durch mein Literaturverwaltugnsprogramm JabRef mit file{Eintrag}, verlinkt sind auf CD speichern und in meiner Dateiausgabe am Ende die Einträge, die ein file{Eintrag}, enthalten und zitiert werden als Link ausgegeben bekommen, so dass die auf dem Datenträger enthaltenen .pdfs anklickbar sind. Einige der Einträge sind nur Inhaltsverzeichnis, die als file{Eintrag_TOC}, gekennzeichnet sind. Die TOC sollen nicht anklickbar sein.

(20 Okt '14, 17:01) Tischa
Ergebnis 5 von 8 show 3 more comments
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×105
×62
×11

gestellte Frage: 15 Aug '14, 15:41

Frage wurde gesehen: 10,715 Mal

zuletzt geändert: 18 Jul '15, 18:40