blob: fa13a83f619bdbf7beacf2535fba2f573649f76b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
\documentclass[pagesize=auto]{scrartcl}
\usepackage{fixltx2e}
\usepackage{etex}
\usepackage{xspace}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage{booktabs}
\usepackage{microtype}
\usepackage[unicode=true]{hyperref}
\newcommand*{\mail}[1]{\href{mailto:#1}{\texttt{<#1>}}}
\newcommand*{\pkg}[1]{\textsf{#1}}
\newcommand*{\cls}[1]{\textsf{#1}}
\newcommand*{\cs}[1]{\texttt{\textbackslash#1}}
\makeatletter
\newcommand*{\cmd}[1]{\cs{\expandafter\@gobble\string#1}}
\makeatother
\newcommand*{\env}[1]{\texttt{#1}}
\newcommand*{\opt}[1]{\texttt{#1}}
\newcommand*{\meta}[1]{\textlangle\textsl{#1}\textrangle}
\newcommand*{\marg}[1]{\texttt{\{}\meta{#1}\texttt{\}}}
\newcommand*{\oarg}[1]{\texttt{[}\meta{#1}\texttt{]}}
\newcommand*{\BibTeX}{Bib\kern-0.08em\TeX\@\xspace}
\newcommand*{\BigTeX}{Big\kern-0.08em\TeX\@\xspace}
\pdfstringdefDisableCommands{%
\def\BibTeX{BibTeX\xspace}%
\def\BigTeX{BigTeX\space}%
}
\addtokomafont{title}{\rmfamily}
\title{The \pkg{excludeonly} package}
\author{Dan Luecking \mail{luecking@uark.edu}\and Donald Arseneau \mail{asnd@triumf.ca}}
\date{2003/03/14}
\begin{document}
\maketitle
\noindent
This software is contributed to the public domain.
\section{Usage:}
In the document preamble, ``\verb+\excludeonly{+\meta{aaa}\verb+,+\meta{bbb}\verb+}+'' will prevent files
\texttt{\meta{aaa}.tex} and \texttt{\meta{bbb}.tex} from being typeset by \cmd{\include}\marg{aaa} and \cmd{\include}\marg{bbb}.
If both \cmd{\includeonly} and \cmd{\excludeonly} are used, then only the files
permitted by both declarations are used:
%
\begin{flushleft}
\verb+\includeonly{+\meta{aaa}\verb+,+\meta{bbb}\verb+}+\\
\verb+\excludeonly{+\meta{bbb}\verb+,+\meta{ccc}\verb+}+
\end{flushleft}
%
results in only \meta{aaa} being included.
This behavior contradicts the name ``exclude only'' but the name is
desirable anyway to show the relationship with \cmd{\includeonly}.
In case it is actually desireable that \cmd{\excludeonly} lives up
to its name, and causes \emph{all} parts to be included, except those
explicitly listed for exclusion, there is an \opt{[only]} package option
%
\begin{verbatim}
\usepackage[only]{excludeonly}
\end{verbatim}
%
The effect of this is to override any \cmd{\includeonly} commands.
\section{Conflicts:}
This package redefines the internal \cmd{\@include} command, so it could
conflict with other redefinitions. Known conflicts are with document
classes ``\cls{paper.cls}'' and ``\cls{thesis.cls}'' by Wenzel Matiaske.
A different method for implementing \cmd{\excludeonly} would be to
redefine \cmd{\@setckpt} to compile a file-inclusion list (\cmd{\@partlist})
that accounts for exclusions. Surprisingly, several packages
redefine \cmd{\@setckpt}, so this alternative would have more conflicts.
\end{document}
|