Um notwendige Pakete in der jeweils aktuellen Fassung in ein Dokument einzubinden, muß man nicht unbedingt auf die Installation von TeX auf dem eigenen Rechner, CTAN oder TeX-Live zurückgreifen, man kann die notwendigen Pakete auch per wget von einer Autorenhomepage (oder CTAN) in sein Dokumentverzeichnis herunterladen und dann einbinden. Dies ist leicht machbar, wenn man sich ein Script schreibt, welches die benötigten Dateien aus den Netzquellen herunterlädt (Bsp: wget http://biocoen.org/mbenotes.sty).

Die Frage ist, wie man diesen Vorgang aus einer LaTeX-Quelldatei heraus auslösen kann, ohne ein Shellscript zu benutzen.

gefragt 07 Mai '14, 02:43

ctansearch's gravatar image

ctansearch
(ausgesetzt)
Akzeptiert-Rate: 18%

bearbeitet 15 Mai '14, 08:05

Bes's gravatar image

Bes
2913937


Wenn man die Option shell-escape bzw. enable-write18 für seine TeX-Installation aktiviert hat, könnte man vor \usepackage aufrufen:

Open in writeLaTeX
\immediate\write18{wget http://biocoen.org/mbenotes.sty}

Dann wird das Paket durch den Aufruf des externen Programms wget heruntergeladen. Mann kann auch Optionen übergeben, beispielsweise für Überschreiben einer bereits vorhandenen Datei.

Ausserdem: Wie man write18 aktiviert

Nachtrag @ctansearch: Man kann die Dateien auch bedingt herunterladen

Open in writeLaTeX
\IfFileExists{path/datei.ext}{}%Wenn Datei vorhanden, tu nix
  {\immediate\write18{wget http://path/datei.ext}}%sonst lade herunter
Permanenter link

beantwortet 07 Mai '14, 21:48

stefan's gravatar image

stefan ♦♦
18.1k143048
Akzeptiert-Rate: 48%

bearbeitet 15 Mai '14, 07:46

Bes's gravatar image

Bes
2913937

Es sei darauf hingewiesen, dass man seit LuaTeX 0.85 \immediate\write18 besser nicht mehr direkt verwenden sollte, sondern stattdessen das Paket shellesc und dann \ShellEscape{wget http://biocoen.org/mbenotes.sty}.

(07 Jun '16, 15:30) saputello
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:

×117
×48
×43

gestellte Frage: 07 Mai '14, 02:43

Frage wurde gesehen: 10,456 Mal

zuletzt geändert: 07 Jun '16, 15:31