von Simbeat » Mo 27. Feb 2017, 16:06
Einen wunderschönen guten Tag euch allen,
ich bin derzeit auf der Suche nach einer Möglichkeit, LaTeX auf meine Umgebungsvariablen des (Windows)Systems zugreifen zu lassen (Also eben jene, die man unter Systemeigenschaften --> Umgebungsvariablen) findet.
Ursprung der Idee ist es, dass ich ein Handbuch verfasse, dessen Versionsnummer automatisch hinzugefügt werden soll. Das geschieht über einen externen Anwender, welcher dem Handbuch automatisch immer eine Versionsnummer hinzufügt, die dann als die Variable "DOCVERSION" gespeichert wird. Wenn ich es nun also schaffen sollte, dass LaTeX automatisch auf diese Variable zugreifen könnte, dann wäre ich glücklich. Bei meinen Recherchen habe ich bereits diesen Link gefunden, den ich (dachte ich zumindest) für nützlich hielt.
https://tex.stackexchange.com/questions ... es#tab-top
Daraus ergibt sich bei mir folgendes MB:
\documentclass[final,11pt,a4paper,parskip=half,chapterprefix,numbers=noenddot,]{scrreprt}
\usepackage{catchfile}
\newcommand{\getenv}[2][]{%
\CatchFileEdef{\temp}{"|kpsewhich --var-value #2"}{}%
\ifx\temp\empty\def\temp{Error}\fi
\if\relax\detokenize{#1}\relax\temp\else\let#1\temp\fi}
\begin{document}
Platzhaltetext
Die Versionsnummer ist \getenv{DOCVERSION}
\end{document}
Ich bekomme aber den Fehler, dass DOCVERSION nicht gefunden werden könnte.
Ich dachte mir vielleicht liegt es ja an dem sonderbaren DOCVERSION, doch auch wenn ich eine Variable nehme, die bereits vorhanden ist (z.B. TEMP), in der Hoffnung, dass er mir einfach den Wert hiervon ausgibt, bekomme ich Fehler.
Da ich nun schon 6 Stunden am herumprobieren bin, wollte ich einmal Fragen, ob hier vielleicht jemand eine Idee hätte, wo das Problem sein könnte. Ich wäre euch zu ewigem Dank verpflichtet.
LG
Simbeat
Einen wunderschönen guten Tag euch allen,
ich bin derzeit auf der Suche nach einer Möglichkeit, LaTeX auf meine Umgebungsvariablen des (Windows)Systems zugreifen zu lassen (Also eben jene, die man unter Systemeigenschaften --> Umgebungsvariablen) findet.
Ursprung der Idee ist es, dass ich ein Handbuch verfasse, dessen Versionsnummer automatisch hinzugefügt werden soll. Das geschieht über einen externen Anwender, welcher dem Handbuch automatisch immer eine Versionsnummer hinzufügt, die dann als die Variable "DOCVERSION" gespeichert wird. Wenn ich es nun also schaffen sollte, dass LaTeX automatisch auf diese Variable zugreifen könnte, dann wäre ich glücklich. Bei meinen Recherchen habe ich bereits diesen Link gefunden, den ich (dachte ich zumindest) für nützlich hielt.
https://tex.stackexchange.com/questions/342419/accessing-a-possibly-undefined-system-environment-variable-from-latex-followup?answertab=votes#tab-top
Daraus ergibt sich bei mir folgendes MB:
[code]
\documentclass[final,11pt,a4paper,parskip=half,chapterprefix,numbers=noenddot,]{scrreprt}
\usepackage{catchfile}
\newcommand{\getenv}[2][]{%
\CatchFileEdef{\temp}{"|kpsewhich --var-value #2"}{}%
\ifx\temp\empty\def\temp{Error}\fi
\if\relax\detokenize{#1}\relax\temp\else\let#1\temp\fi}
\begin{document}
Platzhaltetext
Die Versionsnummer ist \getenv{DOCVERSION}
\end{document}
[/code]
Ich bekomme aber den Fehler, dass DOCVERSION nicht gefunden werden könnte.
Ich dachte mir vielleicht liegt es ja an dem sonderbaren DOCVERSION, doch auch wenn ich eine Variable nehme, die bereits vorhanden ist (z.B. TEMP), in der Hoffnung, dass er mir einfach den Wert hiervon ausgibt, bekomme ich Fehler.
Da ich nun schon 6 Stunden am herumprobieren bin, wollte ich einmal Fragen, ob hier vielleicht jemand eine Idee hätte, wo das Problem sein könnte. Ich wäre euch zu ewigem Dank verpflichtet.
LG
Simbeat