diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/concepts/dry.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/concepts/dry.sty | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/concepts/dry.sty b/Master/texmf-dist/tex/latex/concepts/dry.sty new file mode 100644 index 00000000000..2ff5646046a --- /dev/null +++ b/Master/texmf-dist/tex/latex/concepts/dry.sty @@ -0,0 +1,66 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \iffalse %%%% +% % +% Copyright (c) 2012 - Michiel Helvensteijn (www.mhelvens.net) % +% % +% http://latex-concepts.googlecode.com % +% % +% This work may be distributed and/or modified under the conditions % +% of the LaTeX Project Public License, either version 1.3 of this % +% license or (at your option) any later version. The latest version % +% of this license is in http://www.latex-project.org/lppl.txt % +% and version 1.3 or later is part of all distributions of LaTeX % +% version 2005/12/01 or later. % +% % +% This work has the LPPL maintenance status `author-maintained'. % +% % +% The Current Maintainer of this work is Michiel Helvensteijn. % +% % +% This work consists of the file dry.sty. % +% % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \fi %%%% + +% I will 'officially' release this package at some point in the future. For +% now I'm just using it to document the concepts package. Still, it's +% released under LPPL, so use it as you will. +% +% -- Michiel Helvensteijn + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{dry} + [2012/12/16 convenience macros for reusing LaTeX code] + +\RequirePackage{filecontents} +\RequirePackage{xparse} +\RequirePackage{etoolbox} +\RequirePackage{with} + +\newcommand\minput[1]{% + \input{#1}% + \ifhmode\ifnum\lastnodetype=11% + \unskip% + \fi\fi% +} + +\NewDocumentCommand{\NewDRYer}{m m +m}{% + \WithUniqueCsname[#1]{% + \csgdef{dry@filebase@##1}{##1}% + \csgdef{dry@filename@##1}{\csuse{dry@filebase@##1}.tmp}% + % + % WARNING: Custom argument specs #2, but cannot end with an optional argument! + \NewDocumentEnvironment{#1}{#2}{% + \begingroup% + \@tempswafalse\filec@ntents{\csuse{dry@filename@##1}}% + }{% + \endfilecontents% + \endgroup% + }% + % + \AfterEndEnvironment{#1}{% + \def\DRYFilename{\csuse{dry@filename@##1}}% + \def\DRYContent{\minput{\csuse{dry@filename@##1}}}% + #3% + \let\DRYFilename\relax% + \let\DRYContent\relax% + }% + }% +} |