diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/varsfromjobname/varsfromjobname.sty |
Initial commit
Diffstat (limited to 'macros/latex/contrib/varsfromjobname/varsfromjobname.sty')
-rw-r--r-- | macros/latex/contrib/varsfromjobname/varsfromjobname.sty | 167 |
1 files changed, 167 insertions, 0 deletions
diff --git a/macros/latex/contrib/varsfromjobname/varsfromjobname.sty b/macros/latex/contrib/varsfromjobname/varsfromjobname.sty new file mode 100644 index 0000000000..57893a1f39 --- /dev/null +++ b/macros/latex/contrib/varsfromjobname/varsfromjobname.sty @@ -0,0 +1,167 @@ +%begin of varsfromjobname.sty +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{varsfromjobname}[2017/05/07 v. 1.0 extracts tokens from jobname] +\RequirePackage{ifthen} +\RequirePackage{currfile} + +% Author: Uwe Ziegenhagen +% based on code supplied by Friedrich Vosberg and Markus Kohm +% help by Rolf Niepraschk and Sven Naumann, Ulrich Schwarz +% and Andreas Mathias was greatly appreciated +% see posting <3983639.NRU96H2Y1Y@ID-107054.user.dfncis.de> +% requires the filename to be of the following form +% itemone-itemtwo-itemthree- ... -itemnine.tex + +\makeatletter + +\newcommand*{\getonefromjobname}{% + \expandafter\@getonefromfilename\jobname--------\@nil% +} + +\newcommand*{\gettwofromjobname}{% + \expandafter\@gettwofromfilename\jobname--------\@nil% +} + +\newcommand*{\getthreefromjobname}{% + \expandafter\@getthreefromfilename\jobname--------\@nil% +} + +\newcommand*{\getfourfromjobname}{% + \expandafter\@getfourfromfilename\jobname--------\@nil% +} + +\newcommand*{\getfivefromjobname}{% + \expandafter\@getfivefromfilename\jobname--------\@nil% +} + +\newcommand*{\getsixfromjobname}{% + \expandafter\@getsixfromfilename\jobname--------\@nil% +} + +\newcommand*{\getsevenfromjobname}{% + \expandafter\@getsevenfromfilename\jobname--------\@nil% +} + +\newcommand*{\geteightfromjobname}{% + \expandafter\@geteightfromfilename\jobname--------\@nil% +} + +\newcommand*{\getninefromjobname}{% + \expandafter\@getninefromfilename\jobname\@nil% +} + +\newcommand*\@getonefromfilename{} +\def\@getonefromfilename#1-#2-#3-#4-#5-#6-#7-#8-#9\@nil{% +#1% +} + +\newcommand*\@gettwofromfilename{} +\def\@gettwofromfilename#1-#2-#3-#4-#5-#6-#7-#8-#9\@nil{% +#2% +} + +\newcommand*\@getthreefromfilename{} +\def\@getthreefromfilename#1-#2-#3-#4-#5-#6-#7-#8-#9\@nil{% +#3% +} + +\newcommand*\@getfourfromfilename{} +\def\@getfourfromfilename#1-#2-#3-#4-#5-#6-#7-#8-#9\@nil{% +#4% +} + +\newcommand*\@getfivefromfilename{} +\def\@getfivefromfilename#1-#2-#3-#4-#5-#6-#7-#8-#9\@nil{% +#5% +} + +\newcommand*\@getsixfromfilename{} +\def\@getsixfromfilename#1-#2-#3-#4-#5-#6-#7-#8-#9\@nil{% +#6% +} + +\newcommand*\@getsevenfromfilename{} +\def\@getsevenfromfilename#1-#2-#3-#4-#5-#6-#7-#8-#9\@nil{% +#7% +} + +\newcommand*\@geteightfromfilename{} +\def\@geteightfromfilename#1-#2-#3-#4-#5-#6-#7-#8-#9\@nil{% +#8% +} + +\newcommand*\@getninefromfilename{} +\def\@getninefromfilename#1-#2-#3-#4-#5-#6-#7-#8-#9\@nil{% +#9% +} + +% as proposed by egreg, +% https://tex.stackexchange.com/questions/212169/qr-code-from-jobname +\newcommand{\getfromjobname}[1]{% + \ifcase#1 \or% + \getonefromjobname\or% + \gettwofromjobname\or% + \getthreefromjobname\or% + \getfourfromjobname\or% + \getfivefromjobname\or% + \getsixfromjobname\or% + \getsevenfromjobname\or% + \geteightfromjobname\or% + \getninefromjobname% + \fi% +} + +% for the currfilebase version + +\newcommand*{\getonefromcurrfilename}{% + \expandafter\@getonefromfilename\currfilebase--------\@nil% +} + +\newcommand*{\gettwofromcurrfilename}{% + \expandafter\@gettwofromfilename\currfilebase--------\@nil% +} + +\newcommand*{\getthreefromcurrfilename}{% + \expandafter\@getthreefromfilename\currfilebase--------\@nil% +} + +\newcommand*{\getfourfromcurrfilename}{% + \expandafter\@getfourfromfilename\currfilebase--------\@nil% +} + +\newcommand*{\getfivefromcurrfilename}{% + \expandafter\@getfivefromfilename\currfilebase--------\@nil% +} + +\newcommand*{\getsixfromcurrfilename}{% + \expandafter\@getsixfromfilename\currfilebase--------\@nil% +} + +\newcommand*{\getsevenfromcurrfilename}{% + \expandafter\@getsevenfromfilename\currfilebase--------\@nil% +} + +\newcommand*{\geteightfromcurrfilename}{% + \expandafter\@geteightfromfilename\currfilebase--------\@nil% +} + +\newcommand*{\getninefromcurrfilename}{% + \expandafter\@getninefromfilename\currfilebase\@nil% +} + +\newcommand{\getfromcurrfilename}[1]{% + \ifcase#1 \or% + \getonefromcurrfilename\or% + \gettwofromcurrfilename\or% + \getthreefromcurrfilename\or% + \getfourfromcurrfilename\or% + \getfivefromcurrfilename\or% + \getsixfromcurrfilename\or% + \getsevenfromcurrfilename\or% + \geteightfromcurrfilename\or% + \getninefromcurrfilename% + \fi% +} + +\makeatother +% end of jobdate.sty
\ No newline at end of file |