summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/FAQ-en/faq-mac-prog.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-01-30 00:23:18 +0000
committerKarl Berry <karl@freefriends.org>2010-01-30 00:23:18 +0000
commita6eeaf899a64dcd37c685f4d6225be65e5577f79 (patch)
tree10d2e849f7c5f3e58cc50f528b55b1c6f63af375 /Master/texmf-dist/doc/generic/FAQ-en/faq-mac-prog.tex
parent5cf448717d5bd535646efd1290abb0237b239f41 (diff)
FAQ_en 3.19c (29jan10)
git-svn-id: svn://tug.org/texlive/trunk@16865 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/generic/FAQ-en/faq-mac-prog.tex')
-rw-r--r--Master/texmf-dist/doc/generic/FAQ-en/faq-mac-prog.tex20
1 files changed, 16 insertions, 4 deletions
diff --git a/Master/texmf-dist/doc/generic/FAQ-en/faq-mac-prog.tex b/Master/texmf-dist/doc/generic/FAQ-en/faq-mac-prog.tex
index b6a6b69f721..69e5e655dda 100644
--- a/Master/texmf-dist/doc/generic/FAQ-en/faq-mac-prog.tex
+++ b/Master/texmf-dist/doc/generic/FAQ-en/faq-mac-prog.tex
@@ -1,4 +1,4 @@
-% $Id: faq-mac-prog.tex,v 1.3 2009/08/25 17:17:55 rf10 Exp rf10 $
+% $Id: faq-mac-prog.tex,v 1.6 2009/11/01 23:23:26 rf10 Exp rf10 $
\section{Macro programming}
@@ -243,11 +243,13 @@ pass them on:
\begin{quote}
\begin{wideversion}
\begin{verbatim}
+\let\OldSmooth\smooth
\renewcommand{\smooth}[2]{\mumble\OldSmooth{#1}{#2}}
\end{verbatim}
\end{wideversion}
\begin{narrowversion}
\begin{verbatim}
+\let\OldSmooth\smooth
\renewcommand{\smooth}[2]%
{\mumble\OldSmooth{#1}{#2}}
\end{verbatim}
@@ -923,6 +925,16 @@ isn't available with the other keys packages. However, there seems to
be no mechanism for using \Package{pgfkeys} keys as part of the
options of another package, in the way that \Package{kvoptions} does.
+The \Package{expl3} programming layer for \Qref*{\LaTeX{}3}{Q-LaTeX3}
+includes the \Package{l3keys} module. Inspired by \Package{pgfkeys},
+it provides a keyval-based method for the programmer to create keys.
+As with keyval and derivatives, \Package{l3keys} uses separate macros
+for defining and setting keys. There is also a support package,
+\Package{l3keys2e}, available to allow \LaTeXe{} package and class
+options to be processed using \Package{l3keys}. The \Package{expl3}
+code can be used within existing LaTeX2e documents, so
+\Package{l3keys} is available to the \LaTeXe{} programmer.
+
Another key-value system that's part of larger set of macros is
\Package{scrbase}, which uses the facilities of \Package{keyval} to
build a larger set of facilities, originally for use within the
@@ -944,13 +956,13 @@ in the \Package{kvoptions} package.
This brief summary was guided by input from two sources: a draft article
for \textsl{TUGboat} by Joseph Wright, and the partial translation of the
documentation of package \Package{scrbase} prepared by Philipp
-Stephani. At Joseph's suggestion, discussion of his \Package{keys3}
-package, which is designed for use with the experimental \LaTeX{}3,
-has been omitted.
+Stephani.
\begin{ctanrefs}
\item[keyval.sty]Distributed as part of \CTANref{graphics}
\item[kvoptions.sty]Distributed as part of \CTANref{oberdiek}
\item[kvsetkeys.sty]Distributed as part of \CTANref{oberdiek}
+\item[l3keys.sty]Distributed as part of \CTANref{expl3}
+\item[l3keys2e.sty]Distributed as part of \CTANref{expl3}
\item[pgfkeys.sty]Distributed as part of \CTANref{pgf}
\item[scrbase.sty]Distributed as part of \CTANref{koma-script}
\item[xkeyval.sty]\CTANref{xkeyval}