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}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

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
Code, hier editierbar zum Übersetzen:
\IfFileExists{path/datei.ext}{}%Wenn Datei vorhanden, tu nix
{\immediate\write18{wget http://path/datei.ext}}%sonst lade herunter
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Permanenter link

beantwortet 07 Mai '14, 21:48

stefan's gravatar image

stefan ♦♦
18.4k163148
Akzeptiert-Rate: 50%

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 ausblenden]

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

Frage-Themen:

×117
×48
×43

gestellte Frage: 07 Mai '14, 02:43

Frage wurde gesehen: 11,296 Mal

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