summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/catoptions/catoptions-guide.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/catoptions/catoptions-guide.tex')
-rw-r--r--Master/texmf-dist/doc/latex/catoptions/catoptions-guide.tex19
1 files changed, 12 insertions, 7 deletions
diff --git a/Master/texmf-dist/doc/latex/catoptions/catoptions-guide.tex b/Master/texmf-dist/doc/latex/catoptions/catoptions-guide.tex
index 71593145d43..553438cd5b1 100644
--- a/Master/texmf-dist/doc/latex/catoptions/catoptions-guide.tex
+++ b/Master/texmf-dist/doc/latex/catoptions/catoptions-guide.tex
@@ -26,7 +26,7 @@
This manual doesn't, as yet, explain all the currently available features and commands of
the \pkg'{catoptions}. This manual continues to evolve.
}
-\version{0.2.7a}
+\version{0.2.7b}
\titleurl{http://mirror.ctan.org/macros/latex/contrib/catoptions/}
\author{Ahmed Musa \Email{amusa22@gmail.com}\\Preston, Lancashire, UK}
@@ -61,7 +61,7 @@
\docsection(sec:packageloading){Loading the package}
-\newfootnote{1}{%
+\ltsnewfootnote{1}{%
The user interfaces of \ffx'{\XDeclareOption, \XExecuteOptions, \XProcessOptions} are similar to those of \hhx'{\DeclareOption, \ExecuteOptions, \ProcessOptions} but they aren't the same. See \sref{sec:options-parse}.
}
The \pkg'{catoptions} can be loaded in class and style files and in documents (before or after \hx{\documentclass}) with the options described in \sref{sec:pkg-options}. If the package is loaded before \hx{\documentclass}, it will, by default, use the options parser of the package in place of \latex's options parsing scheme (namely, the more robust commands \ffx'{\XDeclareOption, \XExecuteOptions, \XProcessOptions} in place of \latex's native commands \hhx'{\DeclareOption, \ExecuteOptions, \ProcessOptions})\usefootnote{1}. In that case, the legacy commands \hhx'{\DeclareOption, \ExecuteOptions, \ProcessOptions} are aliased to \ffx'{\XDeclareOption, \XExecuteOptions, \XProcessOptions}, respectively. The latter set of commands do immediately recognize that they have to deal with option functions that are based on the kernel's syntax and semantics. This allows expandable options and option values (together with options with spaces in their names) to be passed via \hx{\documentclass}---if \pkg{catoptions} is loaded before \hx{\documentclass}. This also implies that existing packages can use the options parsing scheme of \pkg'{catoptions} without modifying the packages.
@@ -318,7 +318,7 @@ The \unstform of the macro \fx{\XDeclareOption} declares an option that can be u
\XDeclareOption{leftmargin}[.5\hsize]{\setlength\leftmargin{#1}}|xwmlabel(mac:leftmargin)
\finish{example}
-\newfootnote{2}{%
+\ltsnewfootnote{2}{%
The commands \ffx'{\XDeclareBooleanOption, \XDeclareBooleanOptions, \XDeclareBiBooleanOptions} allow the user to define new boolean options without the need to first initialize the booleans with \hx{\newif} or \fx{\cptnewbool} as seen here.
}
@@ -419,7 +419,7 @@ In the parlance of the \pkg'{catoptions,ltxtools}, a switch can assume only one
\finish{newmacro}
\fxim*{\ifswitchTF,\ifswitchFT}
-\newfootnote{4}{%
+\ltsnewfootnote{4}{%
Because of the need to do, \eg, \fx{\let\swa\cpttrue} and \hx{\if}\unskip\fx{\swa} for any given switch \fx{\swa}, switches, unlike toggles, don't have their own separate namespace and it is all too easy to redefine an existing switch.
}
Note that here \ang{switch} has no escape character, unless it evaluates to a switch name. So, after defining \fx{\def\swa{00}} we could then do \fx{\ifswitchTF{swa}{true}{false}}. It is somewhat risky to introduce new switches with \hx{\def} or \hx{\let}\usefootnote{4}. It is advisable to always use \fx{\newswitch} instead. It has the syntax
@@ -460,7 +460,7 @@ The command \fx{\XDeclareSwitchOptions} is similar to \fx{\XDeclareSwitchOption}
\finish{newmacro}
\fxim*{\XUnknownOptionHandler}
-\newfootnote{3}{%
+\ltsnewfootnote{3}{%
Declaring a default handler for each unknown option is, of course, inefficient.
We have, therefore, provided provisions for declaring such handers for only families of options.
}
@@ -681,6 +681,7 @@ The commands \ffx'{\BeforeProcessOptions,\AfterProcessOptions} can be used to pr
\loadsub{subpkg1,subpkg2,subpkg3}
\finish{example}
+%\enlargethispage{2\baselineskip}
\bigskip
\docsubsection(sec:ifoptiondef){Testing if an option is defined}
@@ -989,6 +990,7 @@ The following provides a simple application of \fx{\indrisloop}, which I posted
\end{|R(document)}
\finish{example}
+%\bigskip
\docsection(sec:tsvparse)<Iterating tokenwise>{Parsing \headquoted{tsv} lists}
\start+{newmacro}[\tsv@@parse,\tsv@@loop]
@@ -1023,14 +1025,17 @@ In the commands \ffx'{\tsv@loop,\tsv@@parse}, it is always possible to break out
\tsv@@loop{ a {b} {c} }
\finish{example}
-
+
\docsection(sec:version-hist){Version history}
The following change history highlights significant changes that affect user utilities and interfaces; mutations of technical nature are not documented in this section. The numbers on the right-hand side of the following lists are section numbers; the \stsign means the subject features in the package but is not reflected anywhere in this user guide.
\begin{versionhist}
+ \begin{version}{0.2.7b}{2011/12/17}
+ \item Renamed the user commands \ffx'{\dofunclist, \stripallouterbraces, \stripouterbraces} to \ffx'{\cptdofunclist, \cptstripallouterbraces, \cptstripNouterbraces}, respectively.\vsecref*
+ \end{version}
\begin{version}{0.2.7a}{2011/12/07}
- \item Renamed the user commands \ffx'{\newvariables,\docommalist, \iflacus...\then} to \ffx'{\cptnewvariables,\cptdocommalist, \iflacus...\dolacus}, respectively.\vsecref*
+ \item Renamed the user commands \ffx'{\newvariables,\docommalist, \iflacus...\then} to \ffx'{\cptnewvariables,\cptdocommalist, \iflacus...\dolacus}, respectively, to reduce the chances of name clashes with other packages or user code. The old names haven't actually been removed yet, but will disappear in the future.\vsecref*
\end{version}
\begin{version}{0.2.7}{2011/10/10}
\item Introduced the commands \ffx'{\BeforeProcessOptions,\AfterProcessOptions} \vsecref{sec:before-proc-options}