From ffd0a5d337e9ff3c89109f208771ec70f599ebef Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 11 Jan 2015 22:25:35 +0000 Subject: cnltx (11jan15) git-svn-id: svn://tug.org/texlive/trunk@36025 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/cnltx/README | 6 +- Master/texmf-dist/doc/latex/cnltx/cnltx_en.pdf | Bin 762276 -> 774451 bytes Master/texmf-dist/doc/latex/cnltx/cnltx_en.tex | 293 +++++++++++++++++-------- 3 files changed, 199 insertions(+), 100 deletions(-) (limited to 'Master/texmf-dist/doc/latex') diff --git a/Master/texmf-dist/doc/latex/cnltx/README b/Master/texmf-dist/doc/latex/cnltx/README index 2bf6be22b0e..e70bf85deaf 100644 --- a/Master/texmf-dist/doc/latex/cnltx/README +++ b/Master/texmf-dist/doc/latex/cnltx/README @@ -1,5 +1,5 @@ -------------------------------------------------------------------------- -the CNLTX bundle v0.10 2014/01/02 +the CNLTX bundle v0.12 2015/01/11 LaTeX tools and documenting facilities @@ -8,7 +8,7 @@ Clemens Niederberger Web: https://github.com/cgnieder/cnltx/ E-Mail: contact@mychemistry.eu -------------------------------------------------------------------------- -Copyright 2013-2014 Clemens Niederberger +Copyright 2013-2015 Clemens Niederberger This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 @@ -24,7 +24,7 @@ The Current Maintainer of this work is Clemens Niederberger. -------------------------------------------------------------------------- The cnltx bundle consists of the files - cnltx-base.sty, cnltx-doc.cls, cnltx-example.sty, cnltx-listings.sty, - cnltx-tools.sty, cnltx.sty, + cnltx-names.sty, cnltx-tools.sty, cnltx-translations.sty, cnltx.sty, - cnltx.ist, cnltx.bib, cnltx.bbx, cnltx.cbx, cnltx.dbx, - cnltx_en.tex, cnltx_en.pdf, - README diff --git a/Master/texmf-dist/doc/latex/cnltx/cnltx_en.pdf b/Master/texmf-dist/doc/latex/cnltx/cnltx_en.pdf index cb9ca7ba24b..ba4fab65a6f 100644 Binary files a/Master/texmf-dist/doc/latex/cnltx/cnltx_en.pdf and b/Master/texmf-dist/doc/latex/cnltx/cnltx_en.pdf differ diff --git a/Master/texmf-dist/doc/latex/cnltx/cnltx_en.tex b/Master/texmf-dist/doc/latex/cnltx/cnltx_en.tex index 9fbaff05a8a..6e62c578f0e 100644 --- a/Master/texmf-dist/doc/latex/cnltx/cnltx_en.tex +++ b/Master/texmf-dist/doc/latex/cnltx/cnltx_en.tex @@ -1,8 +1,8 @@ % arara: pdflatex: { shell: on } -% !arara: pdflatex +% arara: pdflatex % arara: biber -% !arara: pdflatex -% !arara: pdflatex +% arara: pdflatex +% arara: pdflatex % -------------------------------------------------------------------------- % the CNLTX bundle % @@ -13,7 +13,7 @@ % Web: https://github.com/cgnieder/cnltx/ % E-Mail: contact@mychemistry.eu % -------------------------------------------------------------------------- -% Copyright 2013-2014 Clemens Niederberger +% Copyright 2013-2015 Clemens Niederberger % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 @@ -64,54 +64,43 @@ % internal macros: cnltx@babel@options, cnltx@bibtex@listings@style, - cnltx@caption@font,cnltx@captionlabel@font, + cnltx@caption@font, cnltx@captionlabel@font, cnltx@define@colorscheme, cnltx@gobble, + cnltx@ifcounter, cnltx@ifisnum, cnltx@ifpunctuation, cnltx@ifsym, - cnltx@listings@style, + cnltx@listings@style, cnltx@load@module, cnltx@load@modules, + cnltx@make@active, cnltx@make@letter, cnltx@make@other, cnltx@makeindex@listings@style, cnltx@mdframed@options, + cnltx@restore@catcode, cnltx@restore@catcodes, + cnltx@save@catcode, cnltx@save@catcodes, + cnltx@set@catcode, cnltx@set@catcodes, cnltx@scrartcl@options, cnltx@trailpunct, cnltx@treat@lst@index, % official macros: - AD,AM,BC, - changedversion,cls, - cnltxacronym, - cnltxat,cnltxbang,cnltxequal, - code,codefont,command,cs,csidx, - ctan,CTAN,CTANurl, - darg, - DeclareCounterRepresentation, - Default,default, - definecolorscheme, - dsh, - eg,env,envidx,environment, - expandable, - iftest, - indexcs, - inputexample,inputsidebyside,inputsourcecode, - key,keybool,keychoice,keyval, - lppl,LPPL, - marg,Marg,module,Module, - newabbr,newarg, - newcounterrepresentation, - newname, - newnote, - newpackagename, - newinputsourcefilecmd, - newsourcecodeenv, - oarg,opt,option, - PM,pkg, - providecounterrepresentation, + AD, AM, BC, + changedversion, cls, cnltxacronym, cnltxat, cnltxbang, cnltxequal, code, + codefont, command, cs, csidx, ctan, CTAN, CTANurl, + darg, DeclareCounterRepresentation, Default, default, definecolorscheme, + dsh, + eg, env, envidx, environment, expandable, + iftest, indexcs, inputexample, inputsidebyside, inputsourcecode, + key, keybool, keychoice, keyval, + lppl, LPPL, + marg, Marg, module, Module, + name, newabbr, newarg, newcounterrepresentation, newname, newnote, + newpackagename, newinputsourcefilecmd, newsourcecodeenv, + oarg, opt, option, + PM, pkg, providecounterrepresentation, renewcounterrepresentation, - sarg,setcnltx,sinceversion,sourceformat, - unexpandable, - usf,usw, - vgl,Vgl, - zB,ZB + sarg, setcnltx, sinceversion, sourceformat, + unexpandable, usf, usw, + vgl, Vgl, + zB, ZB }, add-silent-cmds = { @foo, @@ -119,6 +108,7 @@ carlisle, cd, chead, circled,circlenumber, cnltx, foo, foothree, GetTranslation, + href, KOMAoptions, lipsum, minusone,multoffourrm, @@ -153,16 +143,17 @@ \newpackagename\cnltxexample{cnltx\cnltxhyphen example} \newpackagename\cnltxlistings{cnltx\cnltxhyphen listings} \newpackagename\cnltxtools{cnltx\cnltxhyphen tools} +\newpackagename\cnltxtranslations{cnltx\cnltxhyphen translations} \newnote*\bypackage[1]{provided by \csname cnltx#1\endcsname} \newnote*\byclass{provided by \cnltxdoc} -\newname\oberdiek{Heiko}{Oberdiek} -\newname\egreg{Enrico}{Gregorio} -\newname\heinz{Carsten}{Heinz} -\newname\moses{Brooks}{Moses} -\newname\hoffmann{Jobst}{Hoffmann} -\newname\daniel{Marco}{Daniel} +\newname\oberdiek{Heiko Oberdiek} +\newname\egreg{Enrico Gregorio} +\newname\heinz{Carsten Heinz} +\newname\moses{Brooks Moses} +\newname\hoffmann{Jobst Hoffmann} +\newname\daniel{Marco Daniel} \usepackage{fixfoot} \DeclareFixedFootnote\oberdiekfn{\CTANurl{oberdiek}} @@ -266,7 +257,10 @@ files: schemes for the \cnltxdoc\ class. All other packages and classes of the \cnltx\ bundle load this package. This package can be used stand-alone. \\ - \verbcode+\usepackage{cnltx-base}+ + \verbcode+\usepackage{cnltx-base}+\\ + The packages commands are not described in the main part of this + documentation but only in section~\ref{sec:defined-cnltxbase}, \ie, in the + appendix. \item \cnltxdoc\ -- a class for writing package manuals. Loads \cnltxexample\ and \cnltxtools\ and implicitly all other files of the bundle. \\ @@ -286,6 +280,9 @@ files: \cnltxdoc\ that are unrelated to \LaTeX\ documentation \latin{per se}. This package can be used stand-alone. \\ \verbcode+\usepackage{cnltx-tools}+ + \item \sinceversion{0.11}\cnltxtranslations\ -- a package that provides + translations needed by the other modules. It makes no sense to use this + package standalone although it's possible. \item \file{cnltx.ist} -- an index style file that is used when the option \option{add-index} for \cnltxdoc\ is activated and the option \option{index-style} is not used. @@ -311,8 +308,7 @@ The \cnltxbase\ package loads the following packages: \needpackage{xcolor}~\cite{pkg:xcolor}. The \cnltxdoc\ class loads the packages \cnltxbase, \cnltxexample, -\needpackage{ulem}~\cite{pkg:ulem}, -\pkg{translations}~\cite{pkg:translations}, +\cnltxtranslations, \needpackage{ulem}~\cite{pkg:ulem}, \needpackage[macros/latex/required/tools]{multicol}~\cite{pkg:multicol}, \needpackage[macros/latex/contrib/ms]{ragged2e}~\cite{pkg:ragged2e}, \needpackage{marginnote}~\cite{pkg:marginnote} and @@ -323,8 +319,8 @@ class has the option \option{load-preamble} which when used will load additional packages, see section~\vref{sec:preamble} for details. The \cnltxexample\ package loads the packages: \cnltxbase, \cnltxlistings, -\cnltxtools, \needpackage{translations}, -\needpackage{mdframed}~\cite{pkg:mdframed}, +\cnltxtools, \cnltxtranslations, \needpackage{mdframed}~\cite{pkg:mdframed}, +\needpackage{textcomp}~\cite{pkg:textcomp}, \needpackage{idxcmds}~\cite{pkg:idxcmds}, \needpackage{ifxetex}~\cite{pkg:ifxetex}, \needpackage{adjustbox}~\cite{pkg:adjustbox}. @@ -333,9 +329,12 @@ The \cnltxlistings\ package loads the packages \cnltxbase, \needpackage{listings}~\cite{pkg:listings} and \needpackage{catchfile}~\cite{pkg:catchfile}. -The \cnltxtools\ package loads the packages \cnltxbase\ and +The \cnltxtools\ package loads the packages \cnltxbase, \cnltxtranslations and \pkg{accsupp}\oberdiekfn~\cite{pkg:accsupp}. +\cnltxtranslations\ loads the \pkg{translations} +package~\cite{pkg:translations}. + All other packages that are loaded are loaded by the mentioned packages and not directly by any of the packages or classes of the \cnltx\ bundle. Like all of my packages \cnltx\ implicitly relies on an up to date \TeX\ @@ -351,8 +350,8 @@ The intended use of this bundle is three-fold: \end{sourcecode} and actually loads most if not all of the bundle. \item The module \cnltxbase\ is also intended as a programming tools package - that will be used in other packages eventually. It is already used by the - \pkg{cntformats} package from the \bnd{exsheets} + that will be used in other packages eventually. For example it is used by + the \pkg{cntformats} package from the \bnd{exsheets} bundle~\cite{bnd:exsheets}. \item In case parts of this bundle prove useful to be used in a document the recommended way is to add @@ -366,6 +365,11 @@ The intended use of this bundle is three-fold: \usepackage[example]{cnltx} \end{sourcecode} would load \cnltxexample. + \item Parts of the bundle -- especially \cnltxbase\ -- may prove useful in + other packages. The loading the packages directly as indicated in + section~\ref{sec:license} seems the best way. After loading \cnltxbase\ + the other modules can also be loaded with \verbcode+\cnltx@load@module+, + see section~\ref{sec:related-bundle} for details. \end{itemize} \part{Details of Available Commands, Environments and Options} @@ -436,6 +440,13 @@ provided macros, options and the like. \Darg{arg}. \command{sarg} An optional star argument, \cs{sarg}: \sarg. + \command{newarg}[\oarg{arg formatting}\marg{cs}\marg{left delim}\marg{right delim}]% + \Default{\cs{meta}} + \changedversion{0.2}Command used to define the argument commands: + \verbcode+\newarg\marg{\{}{\}}+. The optional argument determines how the + argument of the new command will be formatted. This is done with + \cs{meta} per default. \cs{Marg} is defined + \verbcode+\newarg[\code]\Marg{\{}{\}}+. \command{option}[\sarg\marg{name}] An option \meta{name}, \cs{option}\Marg{name}: \option{name}. Adds a corresponding index entry. The starred form does not add an index entry. @@ -492,7 +503,9 @@ world wide web. Defines a note like \cs{sinceversion}. The syntax of the command is the same as the one of \cs*{newcommand}. \cs{sinceversion} was defined as follows:\\ - \verbcode+\newnote*\sinceversion[1]{Introduced in version~#1}+ + \verbcode+\newnote*\sinceversion[1]{Introduced in version~#1}+\\ + or actually like this:\\ + \verbcode+\newnote*\sinceversion[1]{\GetTranslation{cnltx-introduced}~#1}+ \command{newpackagename}[\marg{cs}\marg{name}] Define a comand \meta{cs} that prints \meta{name} formatted like \cnltx, \ie\ in small caps and colored with the color \code{cnltx} (see @@ -523,6 +536,12 @@ world wide web. footnotes. The predefined directory is \code{macros/latex/contrib}. The link address will be:\par \code{http://mirrors.ctan.org/\meta{directory}/\meta{name}/}. + \command{email}[\marg{email address}] + \sinceversion{0.11}A wrapper for \verbcode+\href{mailto:#1}{#1}+. + \command{website}[\marg{web address}] + \sinceversion{0.11}A wrapper for \verbcode+\href{http://#1/}{#1}+. + \command{securewebsite}[\marg{web address}] + \sinceversion{0.11}A wrapper for \verbcode+\href{https://#1/}{#1}+. \command{needpackage}[\oarg{directory}\marg{name}] \sinceversion{0.2}A wrapper for \verbcode+\pkg{#2}\footnote{\CTANurl[#1]{#2}}+ @@ -668,18 +687,22 @@ section~\vref{sec:envs:description} items are input via the following command: The optional bang adds the information that an option is mandatory, \ie\ has to be set. \command{expandable} - \sinceversion{0.5}Adds the symbol \textcolor{expandable}{\expandablesign} - to the left of a command in the margin to indicate that the command is - expandable. This command should be used \emph{immediately} before - \cs{command}. + \sinceversion{0.5}Adds the symbol \expandablesymbol\ to the left of a + command in the margin to indicate that the command is expandable. This + command should be used \emph{immediately} before \cs{command}. \command{unexpandable} - \sinceversion{0.5}Adds the symbol \textcolor{unexpandable}{\expandablesign} - to the left of a command in the margin to indicate that the command is not - expandable. This command should be used \emph{immediately} before - \cs{command}. + \sinceversion{0.5}Adds the symbol \unexpandablesymbol\ to the left of a + command in the margin to indicate that the command is not expandable. + This command should be used \emph{immediately} before \cs{command}. \command{expandablesign}\Default{\cs*{textasteriskcentered}} \sinceversion{0.5}The macro that holds the sign used by \cs{expandable} and \cs{unexpandable}. + \command{expandablesymbol} + \sinceversion{0.11}The symbol \expandablesymbol, \ie, \cs{expandablesign} + formatted with the color \code{expandable}. + \command{unexpandablesymbol} + \sinceversion{0.11}The symbol \unexpandablesymbol, \ie, + \cs{expandablesign} formatted with the color \code{unexpandable}. \end{commands} \begin{example} @@ -1169,6 +1192,7 @@ manual setup could then look something like this: \documentclass[load-preamble]{cnltx-doc} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} + \usepackage{mypackage} \setcnltx{ package = mypackage , authors = John Doe , @@ -1369,10 +1393,19 @@ The \cnltxtools\ package defines some additional macros which provide useful functionality also in contexts \emph{not} documenting a \LaTeX\ package. \begin{commands} - \command{newname}[\marg{cs}\marg{first name}\marg{second name}] - Defines \meta{cs} to write out the full name and add an index entry sorted - by the last name. Also defines a starred variant of \meta{cs} that only - writes the last name but still adds the full index entry. + \command{newname}[\marg{cs}\Marg{\meta{first name} \meta{last name}}] + Defines \meta{cs}\changedversion{0.12} to write out the full name and add + an index entry sorted by the last name. Also defines a starred variant of + \meta{cs} that only writes the last name but still adds the full index + entry. + \command{name}[\sarg\Marg{\meta{first name} \meta{last name}}] + \changedversion{0.12}Typesets a name according to the same specs as the + names defined with \cs{newname}. Also adds the name to the index. The + starred version only writes the name but doesn't add the name to the + index. Index entries either have the form \meta{last name} or + \code{\meta{last name}, \meta{first name}} depending on the usage of the + optional argument. It's safer to define a dedicated macro with + \cs{newname} to get consistent index entries. \command{cnltxacronym}[\marg{pdf and sort string}\marg{acronym}] Typesets \meta{acronym} with small caps and uses \meta{pdf and sort string} as \PDF\ string and for sorting the index entry that is added. @@ -1404,11 +1437,26 @@ functionality also in contexts \emph{not} documenting a \LaTeX\ package. \begin{options} \keyval{acronym-format}{definition}\Default{\cs*{scshape}} Formatting of the acronyms as typeset with \cs{cnltxacronym}. + \keyval{name-format}{formatting commands}\Default{\#1} + The formatting of names created with \cs{newname} or typeset with + \cs{name}. Names typeset through the bibliography style \code{cnltx} are + also formatted according to this option. \meta{formatting commands} + should contain \code{\#1} for the actual name. + \keyval{last-name-format}{formatting commands}\Default{\cs*{textsc}\Marg{\#1}} + The formatting of the last names created with \cs{newname} or typeset with + \cs{name}. Names typeset through the bibliography style \code{cnltx} are + also formatted according to this option. \meta{formatting commands} + should contain \code{\#1} for the actual name. + \keyval{first-name-format}{formatting commands}\Default{\#1} + The formatting of first names created with \cs{newname} or typeset with + \cs{name}. Names typeset through the bibliography style \code{cnltx} are + also formatted according to this option. \meta{formatting commands} + should contain \code{\#1} for the actual name. \end{options} A short example of the usage of \cs{newname} and \cs{cnltxacronym}: \begin{example} - \newname\carlisle{David}{Carlisle}% + \newname\carlisle{David Carlisle}% \carlisle\ is a well-known member of the \LaTeX\ community. \carlisle* is the author of many packages such as \pkg*{longtable}. Take a look in the index where you'll find \carlisle* mentioned. @@ -1434,9 +1482,9 @@ reasoning is two-fold: following a small letter as the end of a sentence and a dot after a capital letter as a dot after an abbreviation inside of a sentence. Usually you solve this by adding \cs*{@} in the appropriate places: - \verbcode+e.\,g.\@+ for a intra-sentence space and \verbcode+NASA\@.+ for + \verbcode+e.\,g.\@+ for a intra-sentence space and \verbcode+NSA\@.+ for a inter-sentence space. The dot added by \cnltxtools\ always will be - followed by a intra-sentence space. If you add a dot explicitly it will + followed by an intra-sentence space. If you add a dot explicitly it will be your responsibility. Per default it will then act like a dot after a small letter. \end{itemize} @@ -1498,7 +1546,7 @@ All of these macros add a final dot followed by \cs*{@} \emph{except} if a dot \minisec{German Abbreviations}\label{sec:german-abbreviations} -The following abbreviations are not sensitive to localization are and only of +The following abbreviations are not sensitive to localization and are only of use in a German text. Although they're defined: \emph{please} do not use abbreviations at the start of a sentence! \begin{commands} @@ -1971,7 +2019,7 @@ This document uses the following call of \pkg{biblatex}: \usepackage[ backend=biber, style=cnltx, - sortlocale=en_EN, + sortlocale=en_US, indexing=cite, useprefix]{biblatex} \addbibresource{cnltx.bib} @@ -2001,7 +2049,7 @@ What this options does is including the following code: \RequirePackage[ backend=biber, style=cnltx, - sortlocale=en_EN, + sortlocale=en_US, indexing=cite, useprefix]{biblatex} \addbibresource{cnltx.bib} @@ -2240,6 +2288,13 @@ the actually used color names. They are defined via the following command: immediately clear from the examples below. \end{commands} +To activate a color scheme for a document it is simply selected through an +option: +\begin{options} + \keyval{color-scheme}{color scheme name}\Default{default} + Activate a color scheme previously defined with \cs{definecolorscheme}. +\end{options} + The `default' color scheme is defined as follows: \begin{sourcecode} \definecolorscheme{default}{ @@ -2316,20 +2371,26 @@ Finally the `formal' color scheme is defined like this: \section{Language Support}\label{sec:language-support} \noindent\sinceversion{0.2}The \cnltxdoc, the \cnltxexample\ and the -\cnltxtools\ package all rely on the \pkg{translations} +\cnltxtools\ package as well as the \code{cnltx.ist} index style and the +\code{cnltx} \pkg{biblatex} style all rely on the \pkg{translations} package~\cite{pkg:translations} for providing some document language dependent -strings. Currently only translations for English and German are provided. -Others can be added and the existing ones changed with the following command -provided by the \pkg{translations} package: +strings\footnote{Actually they depend on \cnltxtranslations\ which in turn + loads \pkg{translations}.}. Currently only translations for English and +German are provided. Others can be added and the existing ones changed with +the following commands provided by the \pkg{translations} package: \begin{commands} \command{DeclareTranslation}[\marg{language}\marg{keyword}\marg{translation}] - Provide translations for the string identified by the \textsc{id} + Define or redefine translations for the string identified by the + \textsc{id} \meta{keyword}. + \command{RenewTranslation}[\marg{language}\marg{keyword}\marg{translation}] + Renew translations for the string identified by the \textsc{id} \meta{keyword}. \end{commands} -The defined strings are listed in table~\vref{tab:language:strings}. They are -used in indexing strings and in different parts of the document. +The strings defined by \cnltx\ are listed in +table~\vref{tab:language:strings}. They are used in indexing strings and in +different parts of the document. \begin{table} \centering\renewcommand\arraystretch{1.3} @@ -2411,15 +2472,16 @@ used in indexing strings and in different parts of the document. \section{Internal Helper Commands} The commands in this section are only described for the sake of completeness. -They are not meant to be used in a document. Expandable commands are marked -with \textcolor{expandable}{\expandablesign}. +They are not meant to be used in a document. Some of them might be useful in +\LaTeX\ programming, though. Expandable commands are marked with +\textcolor{expandable}{\expandablesign}. \subsection{Defined by \cnltxbase}\label{sec:defined-cnltxbase} Especially \cnltxbase\ defines some useful helper macros that are also used by the other packages and classes. -\subsubsection{Related to the Bundle} +\subsubsection{Related to the Bundle}\label{sec:related-bundle} \begin{commands} \expandable\command{cnltx\at\at date} @@ -2444,6 +2506,12 @@ the other packages and classes. Issue a message using \cs*{PackageInfo}\Marg{cnltx-base}. \command{cnltx\at define\at colorscheme}[\marg{name}\marg{scheme definition}] Command that can be used to define a color scheme. + \command{cnltx\at load\at module}[\marg{\cnltx\ module}] + \sinceversion{0.11}Loads the package \code{cnltx-\meta{\cnltx\ + module}.sty}. + \command{cnltx\at load\at modules}[\marg{\cnltx\ modules}] + \sinceversion{0.11}Maps the comma separated list \meta{\cnltx\ modules} to + \cs{cnltx\at load\at module}, leading and trailing spaces are trimmed. \end{commands} \subsubsection{Programming Tools} @@ -2492,6 +2560,12 @@ the other packages and classes. This is a command in the spirit of \pkg{etoolbox}'s \cs*{notbool} that does the same for a boolean \meta{bool} defined with \cs*{newif}\cs*{if\meta{bool}} or \cs*{newbool}\marg{bool}. + \expandable\command{cnltx\at ifcounter}[\marg{counter}\marg{true}% + \marg{false}] + \sinceversion{0.11}Checks if \meta{counter} is a counter, \ie, if the + control sequence names \cs*{c@\meta{counter}}, \cs*{cl@\meta{counter}}, + \cs*{p@\meta{counter}} \emph{and} \cs*{the\meta{counter}} exist and either + leaves \meta{true} or \meta{false} in the input stream. \command{cnltx\at ifnextchars}[\marg{list of tokens}\marg{true}\marg{false}\meta{trailing token}] \sinceversion{0.8}Tests if \meta{trailing token} is any of those in @@ -2499,7 +2573,7 @@ the other packages and classes. input stream without removing \meta{trailing token}. \command{cnltx\at ifsym}[\marg{token}\marg{true}\marg{false}] A generic version of \LaTeX's \cs*{@ifstar} that checks if \meta{token} - follows if the input stream. If yes it is removed and \meta{true} is + follows in the input stream. If yes it is removed and \meta{true} is placed in the input stream else \meta{false}. \command{cnltx\at ifdash}[\marg{true}\marg{false}] A wrapper for \verbcode+\cnltx@ifsym{-}+. @@ -2507,7 +2581,7 @@ the other packages and classes. \sinceversion{0.3}A wrapper for \verbcode+\cnltx@ifsym{!}+. \expandable\command{cnltx\at ifisnum}[\marg{token list}\marg{true}\marg{false}] \sinceversion{0.6}Checks if \meta{token list} is an integer zero or - greater and leaves \meta{true} in the input stream if it is an + greater and leaves \meta{true} in the input stream if it is and \meta{false} if it isn't. There is one hopefully extremely unlikely case where the test fails: when \meta{token list} starts with ``\code{\meta{integer}\%}'' where \code{\%} has a category code different @@ -2559,6 +2633,37 @@ the other packages and classes. \end{itemize} \end{commands} +\paragraph{Category Code Stuff} +\begin{commands} + \command{cnltx\at save\at catcode}[\marg{token}] + \sinceversion{0.11}Saves the current category code of \meta{token}. + \command{cnltx\at restore\at catcode}[\marg{token}] + \sinceversion{0.11}Restores the category code of \meta{token} as + previously saved with \cs{cnltx\at save\at catcode}. + \command{cnltx\at set\at catcode}[\marg{token}\marg{catcode}] + \sinceversion{0.11}Sets the category code of \meta{token} to + \meta{catcode}. This is a wrapper for \newline + \code{\cs*{catcode}`\meta{token}=\meta{catcode}\cs*{relax}}. + \command{cnltx\at save\at catcodes}[\marg{tokenlist}] + \sinceversion{0.11}Maps \cs{cnltx\at save\at catcode} to all tokens in + \meta{tokenlist}. + \command{cnltx\at restore\at catcodes}[\marg{tokenlist}] + \sinceversion{0.11}Maps \cs{cnltx\at restore\at catcode} to all tokens in + \meta{tokenlist}. + \command{cnltx\at set\at catcodes}[\marg{tokenlist}\marg{catcode}] + \sinceversion{0.11}Maps \cs{cnltx\at set\at catcode} to all tokens in + \meta{tokenlist}, \ie, all tokens get category code \meta{catcode}. + \command{cnltx\at make\at letter}[\marg{token}] + \sinceversion{0.11}A wrapper for \cs{cnltx\at set\at + catcode}\marg{token}\Marg{11}. + \command{cnltx\at make\at other}[\marg{token}] + \sinceversion{0.11}A wrapper for \cs{cnltx\at set\at + catcode}\marg{token}\Marg{12}. + \command{cnltx\at make\at active}[\marg{token}] + \sinceversion{0.11}A wrapper for \cs{cnltx\at set\at + catcode}\marg{token}\Marg{13}. +\end{commands} + \paragraph{Token List Manipulation} \begin{commands} \command{cnltx\at replace\at once}[\marg{cs}\marg{search}\marg{replace}] @@ -2671,13 +2776,6 @@ the other packages and classes. \sinceversion{0.7a}This command was used to define \cs{indexcs} and \cs{indexenv}:\\ \verbcode+\cnltx@treat@lst@index{\indexcs}{\csidx}+ - \command{newarg}[\oarg{arg formatting}\marg{cs}\marg{left delim}\marg{right delim}]% - \Default{\cs{meta}} - \changedversion{0.2}Command used to define the argument commands: - \verbcode+\newarg\marg{\{}{\}}+. The optional argument determines how the - argument of the new command will be formatted. This is done with - \cs{meta} per default. \cs{Marg} is defined - \verbcode+\newarg[\code]\Marg{\{}{\}}+ \command{MakePercentComment} Sets the category code of \code{\%} to 14. \command{cnltx\at copyablespace} @@ -2743,13 +2841,14 @@ the other packages and classes. Issue a message using \cs*{PackageInfo}\Marg{cnltx-tools}. \command{cnltx\at accsupp}[\marg{actual text}\marg{additional options}\marg{\TeX\ text}] - A wrapper for package \pkg{accsupp}'s \cs*{BeginAccSupp}\Marg{ActualText - = \meta{actual text}} \meta{\TeX\ text} \cs*{EndAccSupp}\marg{}. + A wrapper for package \pkg{accsupp}'s\newline + \cs*{BeginAccSupp}\Marg{ActualText = \meta{actual text}}\meta{\TeX\ text}% + \cs*{EndAccSupp}\marg{}. \end{commands} \section{List of Known \LaTeX\ Control Sequences}\label{sec:known:csnames} -Below are listed all \emph{predefined} control sequence names that are treated +Below all \emph{predefined} control sequence names are listed that are treated as ``silent'' names by \cnltx, that is, those defined by \cnltxlistings. \begin{multicols}{3}\small @@ -2758,8 +2857,8 @@ as ``silent'' names by \cnltx, that is, those defined by \cnltxlistings. \section{List of Known \LaTeX\ Environments}\label{sec:known:environments} -Below are listed all \emph{predefined} control sequence names that are treated -as ``silent'' names by \cnltx, that is, those defined by \cnltxlistings. +Below all \emph{predefined} environment names are listed that are treated as +``silent'' names by \cnltx, that is, those defined by \cnltxlistings. \begin{multicols}{3}\small \RaggedRight\listsilentenvs -- cgit v1.2.3