summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/ltxmisc/askinclude.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/ltxmisc/askinclude.sty')
-rw-r--r--Master/texmf-dist/tex/latex/ltxmisc/askinclude.sty103
1 files changed, 103 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/ltxmisc/askinclude.sty b/Master/texmf-dist/tex/latex/ltxmisc/askinclude.sty
new file mode 100644
index 00000000000..c4a6ffb617c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ltxmisc/askinclude.sty
@@ -0,0 +1,103 @@
+% askinclude.sty - interactive asking of included files
+%
+% VERSION 1.2e November 11, 1994
+%
+% (c) 1991 by Pablo A. Straub. Permission is granted to copy and use this
+% in any way and for any purpose, except direct commercial advantage,
+% provided that you retain this copyright notice.
+%
+% HISTORY
+%
+% 0.95 11/05/91 First beta-test version (asked two questions)
+% 0.99 11/05/91 Second beta-test version (asks one question; uses * and -.)
+% 1.0 11/07/91 Changed prompts (sent to comp.text.tex)
+% 1.2e 11/02/94 Two small changes to run under LaTeX2e [RF];
+% additional documentation [TRS]
+%
+% Please send enhancements and corrections to straub@cs.umd.edu.
+%
+% USAGE
+%
+% Here's an example root file (see pp.72--74 in the LaTeX book):
+%
+% % File: main.tex
+% %
+% \documentclass[...]{book}
+% \usepackage{askinclude}
+% % ^^^^^^^^^^
+% % Initialization:
+% \input{preamble}
+% %
+% \begin{document}
+% %
+% % Title page:
+% \include{titlepg}
+% %
+% % Chapters:
+% \include{chapter0}
+% \include{chapter1}
+% \include{chapter2}
+% ...
+% %
+% \end{document}
+%
+% Each \include causes a page break and so askinclude probably only makes
+% sense in the context of larger documents such as books.
+%
+% HOW IT WORKS
+%
+% The askinclude package asks the user which files to include. If
+% the user presses return, the files from the previous run are included
+% automatically (except on the first run, in which case all files are
+% included); if the answer is * all files are included; if the answer
+% is - no files are included; otherwise the specified files (separated
+% by commas, with no embedded spaces) are included.
+%
+% RESTRICTIONS
+%
+% This file redefines \document, the command executed with \begin{document}.
+% It may be incompatible with other styles that also redefine \document.
+%
+% The user's input is not validated. Anything that is not a * or a - or an
+% empty line is passed to \includeonly.
+%
+% ACKNOWLEDGEMENT
+%
+% Tom Scavo (scavo@cie.uoregon.edu) suggested saving the include file list
+% from the previous run and a simplified user interface.
+
+
+\def\@includeonly{\@gobble} % assume we do not include from last run
+\def\@inputs{*} % assume all files included
+
+% determine which files to include
+
+\def\@star{*} % constant for comparison purposes
+\def\@minussign{-} % " " " "
+
+\typeout { }
+\typeout {Enter file(s) to include (separated by commas and no spaces),}
+\typeout {or enter * for all files, or enter - for none, or}
+\typein [\inputfiles]{press Return if this run is the same as the last.}
+
+\ifx\inputfiles\@star % all files included
+ % do nothing
+\else \ifx\inputfiles\@minussign % no files included
+ \includeonly{}
+ \def\@inputs{}
+\else \ifx\inputfiles\empty % include according to previous run
+ \def\@includeonly#1{%
+ \gdef\@inputs{#1}
+ \ifx\@inputs\@star \else \global\@partswtrue\global\edef\@partlist{#1}\fi}
+\else
+ \def\@inputs{\inputfiles} % include these files
+ \includeonly{\inputfiles}
+\fi\fi\fi
+
+
+\AtBeginDocument{\if@filesw
+ \immediate\write\@mainaux{\string\@includeonly\string{\@inputs
+ \string}}%
+ \def\@includeonly{}\fi}
+
+% END OF FILE askinclude.sty