summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/l3experimental/xcoffins
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2012-02-28 00:40:17 +0000
committerKarl Berry <karl@freefriends.org>2012-02-28 00:40:17 +0000
commited49b3dfe19b91f9fd96ab70fe95dcda8fba24c8 (patch)
tree0eb59527efd68f813d629e7d0977fe31d8d6419f /Master/texmf-dist/source/latex/l3experimental/xcoffins
parentb1436d6ee293a02df32a18832d21c54348335565 (diff)
l3experimental 3471 (26feb12)
git-svn-id: svn://tug.org/texlive/trunk@25523 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/l3experimental/xcoffins')
-rw-r--r--Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx211
1 files changed, 105 insertions, 106 deletions
diff --git a/Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx b/Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx
index 30a58c18817..be9e4e24f75 100644
--- a/Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx
+++ b/Master/texmf-dist/source/latex/l3experimental/xcoffins/xcoffins.dtx
@@ -1,5 +1,5 @@
% \iffalse meta-comment
-%
+%
%% File: xcoffins.dtx Copyright(C) 2010,2011 The LaTeX3 Project
%%
%% It may be distributed and/or modified under the conditions of the
@@ -36,7 +36,7 @@
%
%<*driver|package>
\RequirePackage{xparse}
-\GetIdInfo$Id: xcoffins.dtx 2963 2011-11-15 22:06:41Z joseph $
+\GetIdInfo$Id: xcoffins.dtx 3385 2012-02-12 20:37:09Z bruno $
{L3 Experimental design-level coffins}
%</driver|package>
%<*driver>
@@ -56,13 +56,13 @@
\end{document}
%</driver>
% \fi
-%
+%
% \title{^^A
% The \textsf{xcoffins} package\\ Design-level coffins^^A
% \thanks{This file describes v\ExplFileVersion,
% last revised \ExplFileDate.}^^A
% }
-%
+%
% \author{^^A
% The \LaTeX3 Project\thanks
% {^^A
@@ -89,7 +89,7 @@
% positions, for example the top or horizontal centre. The points
% where these poles intersect are called \enquote{handles}. Two
% coffins can then be aligned by describing the relationship between
-% a handle on one coffin with a handle on the second. In words, an
+% a handle on one coffin with a handle on the second. In words, an
% example might then read
% \begin{quote}
% Align the top-left handle of coffin A with the bottom-right
@@ -97,20 +97,20 @@
% \end{quote}
%
% The locations of coffin handles are much easier to understand
-% visually. Figure~\ref{fgr:handles} shows the standard handle
-% positions for a coffin typeset in horizontal mode (left) and in
+% visually. Figure~\ref{fgr:handles} shows the standard handle
+% positions for a coffin typeset in horizontal mode (left) and in
% vertical mode (right). Notice that the later case results in a greater
% number of handles being available. As illustrated, each handle
% results from the intersection of two poles. For example, the centre
% of the coffin is marked |(hc,vc)|, \emph{i.e.}~it is the
-% point of intersection of the horizontal centre pole with the
+% point of intersection of the horizontal centre pole with the
% vertical centre pole. New handles are generated automatically when
% poles are added to a coffin: handles are \enquote{dynamic} entities.
%
% \begin{figure}
% \hfil
% \begin{minipage}{0.4\textwidth}
-% \SetHorizontalCoffin\ExampleCoffin
+% \SetHorizontalCoffin\ExampleCoffin
% {\color{black!10!white}\rule{1 in}{1 in}}
% \DisplayCoffinHandles\ExampleCoffin{blue}
% \end{minipage}
@@ -123,9 +123,9 @@
% \hfil
% \caption{Standard coffin handles: left, horizontal coffin; right,
% vertical coffin}
-% \label{fgr:handles}
+% \label{fgr:handles}
% \end{figure}
-%
+%
%\section{Creating and setting coffins}
%
% Before any alignment can take place, coffins must be created and
@@ -139,7 +139,7 @@
% \begin{syntax}
% \cs{NewCoffin} \meta{coffin}
% \end{syntax}
-% Before a \meta{coffin} can be used, it must be allocated using
+% Before a \meta{coffin} can be used, it must be allocated using
% \cs{NewCoffin}. The name of the \meta{coffin} should be a
% control sequence (starting with the escape character, usually
% |\|), for example
@@ -175,7 +175,7 @@
% \end{syntax}
% Typesets the \meta{material} in vertical mode constrained to the
% given \meta{width} and stores the result in the \meta{coffin}. The
-% standard poles for the \meta{coffin} are then set up based on the
+% standard poles for the \meta{coffin} are then set up based on the
% size of the typeset material.
% \end{function}
%
@@ -194,7 +194,7 @@
% box of the coffin;
% \item[b] a pole running along the bottom edge of the bounding
% box of the coffin;
-% \item[vc] a pole running horizontally through the centre of the
+% \item[vc] a pole running horizontally through the centre of the
% coffin half-way between the bottom and top edges of the bounding
% box (\emph{i.e.}~the \enquote{vertical centre});
% \item[t] a pole running along the top edge of the bounding
@@ -202,7 +202,7 @@
% \item[H] a pole running along the baseline of the typeset material
% contained in the coffin.
% \end{itemize}
-% In addition, coffins containing vertical-mode material also
+% In addition, coffins containing vertical-mode material also
% feature poles which reflect the richer nature of these systems:
% \begin{itemize}
% \item[B] a pole running along the baseline of the material at the
@@ -219,10 +219,10 @@
% The \meta{pole} will be located at the \meta{offset} from the
% bottom edge of the bounding box of the \meta{coffin}. The
% \meta{offset} should be given as a dimension expression; this may
-% include the terms \cs{TotalHeight}, \cs{Height}, \cs{Depth} and
-% \cs{Width}, which will evaluate to the appropriate dimensions of
-% the \meta{coffin}. For example, to create a pole running
-% horizontally through the coffin at one third of the distance from
+% include the terms \cs{TotalHeight}, \cs{Height}, \cs{Depth} and
+% \cs{Width}, which will evaluate to the appropriate dimensions of
+% the \meta{coffin}. For example, to create a pole running
+% horizontally through the coffin at one third of the distance from
% the base of the coffin to the top, the appropriate instruction would
% be
% \begin{verbatim}
@@ -230,7 +230,7 @@
% \end{verbatim}
% Note that poles which run \emph{horizontally} are described in terms
% of their \emph{vertical} location in the coffin. Also notice that
-% the total height of the coffin is described by the sum of
+% the total height of the coffin is described by the sum of
% \cs{Height} and \cs{Depth}: these are both measured from the
% horizontal baseline of the material in the coffin.
% \end{function}
@@ -243,10 +243,10 @@
% The \meta{pole} will be located at the \meta{offset} from the
% left-hand edge of the bounding box of the \meta{coffin}. The
% \meta{offset} should be given as a dimension expression; this may
-% include the terms \cs{TotalHeight}, \cs{Height}, \cs{Depth} and
-% \cs{Width}, which will evaluate to the appropriate dimensions of
+% include the terms \cs{TotalHeight}, \cs{Height}, \cs{Depth} and
+% \cs{Width}, which will evaluate to the appropriate dimensions of
% the \meta{coffin}. For example, to create a pole running vertically
-% through the coffin at one third of the distance from the left-hand
+% through the coffin at one third of the distance from the left-hand
% edge, the appropriate instruction would be
% \begin{verbatim}
% \SetVerticalPole \MyCoffin {width/3} {\Width/3}
@@ -260,7 +260,7 @@
% \cs{TotalHeight}
% \end{syntax}
% Within the \meta{offset} argument of \cs{SetHorizontalPole} and
-% \cs{SetVerticalPole}, \cs{TotalHeight} will give the distance from
+% \cs{SetVerticalPole}, \cs{TotalHeight} will give the distance from
% the base to the top of the bounding box of the relevant coffin.
% \end{function}
%
@@ -300,10 +300,10 @@
% \end{syntax}
% Rotates the \meta{coffin} by the given \meta{angle} about its reference
% point (given in degrees counter-clockwise) . This process will rotate both
-% the coffin content and poles. Multiple rotations will not result in
+% the coffin content and poles. Multiple rotations will not result in
% the bounding box of the coffin growing unnecessarily.
-%
-% The effect of rotation on a coffin is illustrated in
+%
+% The effect of rotation on a coffin is illustrated in
% Figure~\ref{fgr:rotation}. As is shown, the coffin handles will
% remain correctly positioned relative to the content of the coffin.
% The \enquote{top} of a rotated coffin may of course no longer be the
@@ -312,7 +312,7 @@
%
% \begin{figure}
% \hfil
-% \SetHorizontalCoffin\ExampleCoffin
+% \SetHorizontalCoffin\ExampleCoffin
% {^^A
% \color{black!10!white}\rule{0.5 in}{1 in}^^A
% \color{black!20!white}\rule{0.5 in}{1 in}^^A
@@ -339,8 +339,8 @@
% \end{syntax}
% Resized the \meta{coffin} to \meta{width} and \meta{total-height},
% both of which should be given as dimension expressions. These may
-% include the terms \cs{TotalHeight}, \cs{Height}, \cs{Depth} and
-% \cs{Width}, which will evaluate to the appropriate dimensions of
+% include the terms \cs{TotalHeight}, \cs{Height}, \cs{Depth} and
+% \cs{Width}, which will evaluate to the appropriate dimensions of
% the \meta{coffin}.
% \end{function}
%
@@ -348,8 +348,8 @@
% \begin{syntax}
% \cs{ScaleCoffin} \meta{coffin} \Arg{x-scale} \Arg{y-scale}
% \end{syntax}
-% Scales the \meta{coffin} by a factors \meta{x-scale} and
-% \meta{y-scale} in the horizontal and vertical directions,
+% Scales the \meta{coffin} by a factors \meta{x-scale} and
+% \meta{y-scale} in the horizontal and vertical directions,
% respectively. The two scale factors should be given as real numbers.
% \end{function}
%
@@ -359,7 +359,7 @@
%
% \begin{figure}
% \hfil
-% \SetHorizontalCoffin\ExampleCoffin
+% \SetHorizontalCoffin\ExampleCoffin
% {^^A
% \color{black!10!white}\rule{0.5 in}{1 in}^^A
% \color{black!20!white}\rule{0.5 in}{1 in}^^A
@@ -376,26 +376,26 @@
% \hfil
% \caption{Coffin resizing: left, resized to exactly $4$\,cm by
% $6$\,cm; right, scaled a factors of $2$ and $0.5$ in
-% $x$ and $y$, respectively (example coffin as in
+% $x$ and $y$, respectively (example coffin as in
% Figure~\ref{fgr:rotation}).}
-% \label{fgr:resizing}
+% \label{fgr:resizing}
% \end{figure}
%
% \section{Joining coffins}
%
% The key operation for coffins is joining coffins to each other. This
-% is always carried out such that the first coffin is the
+% is always carried out such that the first coffin is the
% \enquote{parent}, and is updated by the alignment. The second
% \enquote{child} coffin is not altered by the alignment process.
-%
+%
% \begin{function}{\JoinCoffins}
% \begin{syntax}
% \cs{JoinCoffins} *
-% ~~\meta{coffin1} [ \meta{coffin1-pole1} , \meta{coffin1-pole2} ]
+% ~~\meta{coffin1} [ \meta{coffin1-pole1} , \meta{coffin1-pole2} ]
% ~~\meta{coffin2} [ \meta{coffin2-pole1} , \meta{coffin2-pole2} ]
-% ~~( \meta{x-offset} , \meta{y-offset} )
+% ~~( \meta{x-offset} , \meta{y-offset} )
% \end{syntax}
-% Joining of two coffins is carried out by the \cs{JoinCoffins}
+% Joining of two coffins is carried out by the \cs{JoinCoffins}
% function, which takes two mandatory arguments: the \enquote{parent}
% \meta{coffin1} and the \enquote{child} \meta{coffin2}. All of the
% other arguments shown are optional.
@@ -403,15 +403,15 @@
%
% The standard \cs{JoinCoffins} functions joins \meta{coffin2} to
% \meta{coffin1} such that the bounding box of \meta{coffin1} after the
-% process will expand. The new bounding box will be the smallest
-% rectangle covering the bounding boxes of the two input coffins.
+% process will expand. The new bounding box will be the smallest
+% rectangle covering the bounding boxes of the two input coffins.
% When the starred variant of \cs{JoinCoffins} is used, the bounding
% box of \meta{coffin1} is not altered, \emph{i.e.}~\meta{coffin2} may
% protrude outside of the bounding box of the updated \meta{coffin1}.
% The difference between the two forms of alignment is best illustrated
% using a visual example. In Figure~\ref{fgr:alignment}, the two
% processes are contrasted. In both cases, the small red coffin has been
-% aligned with the large grey coffin. In the left-hand illustration,
+% aligned with the large grey coffin. In the left-hand illustration,
% the \cs{JoinCoffins} function was used, resulting in an expanded
% bounding box. In contrast, on the right \cs{AttachCoffin} was used,
% meaning that the bounding box does not include the area of the
@@ -419,9 +419,9 @@
%
% \begin{figure}
% \fboxsep 0 pt\relax
-% \SetHorizontalCoffin\ExampleCoffin
+% \SetHorizontalCoffin\ExampleCoffin
% {\color{black!20!white}\rule{1 in}{1 in}}
-% \SetHorizontalCoffin \SmallCoffin
+% \SetHorizontalCoffin \SmallCoffin
% {\color{red!20!white}\rule{0.1 in}{0.1 in}}
% \hfil
% \begin{minipage}{0.4\textwidth}
@@ -436,14 +436,14 @@
% \fbox{\TypesetCoffin\ExampleCoffin}%
% \end{minipage}
% \hfil
-% \caption{Contrast between \cs{JoinCoffins} (left) and
+% \caption{Contrast between \cs{JoinCoffins} (left) and
% \cs{JoinCoffins*} (right); the bounding box of the coffin is show
% in black.}
-% \label{fgr:alignment}
+% \label{fgr:alignment}
% \end{figure}
-%
+%
% The alignment is carried out by first calculating \meta{handle1}, the
-% point of intersection of \meta{coffin1-pole1} and
+% point of intersection of \meta{coffin1-pole1} and
% \meta{coffin1-pole2}, and \meta{handle2}, the point of intersection
% of \meta{coffin2-pole1} and \meta{coffin2-pole2}. If the two
% \meta{poles} are not specified, \cs{JoinCoffins} will use the
@@ -456,19 +456,19 @@
% |(0 pt, 0 pt)| is used.
%
% Notice that when \cs{JoinCoffins} is used the new bounding box is
-% the smallest rectangle containing the bounding boxes of the two input
+% the smallest rectangle containing the bounding boxes of the two input
% coffins. As a result, it will include additional white space unless
-% one coffin entirely overlaps the other (Figure~\ref{fgr:bounding},
+% one coffin entirely overlaps the other (Figure~\ref{fgr:bounding},
% left). Rotation of coffins will take account of the extent of the
% material after rotation when re-calculating the bounding box. This
-% means that no \emph{unnecessary} white space will be added on
+% means that no \emph{unnecessary} white space will be added on
% rotation (Figure~\ref{fgr:bounding}, right).
%
% \begin{figure}
% \fboxsep 0 pt\relax
-% \SetHorizontalCoffin\ExampleCoffin
+% \SetHorizontalCoffin\ExampleCoffin
% {\color{black!20!white}\rule{1 in}{1 in}}
-% \SetHorizontalCoffin\SmallCoffin
+% \SetHorizontalCoffin\SmallCoffin
% {\color{red!20!white}\rule{0.1 in}{0.1 in}}
% \JoinCoffins\ExampleCoffin[vc,r]\SmallCoffin[vc,l]
% \hfil
@@ -485,7 +485,7 @@
% \hfil
% \caption{The effect of rotation of a joined coffin: the black line
% shows the coffin bounding box.}
-% \label{fgr:bounding}
+% \label{fgr:bounding}
% \end{figure}
%
% As part of the joining procedure, the poles of the two input coffins
@@ -495,35 +495,35 @@
% \begin{enumerate}
% \item The \enquote{native} poles of the updated coffin, such as
% \texttt{l}, \texttt{r}, \texttt{hc}, \emph{etc}.
-% \item Poles derived from \meta{coffin1}, such as
+% \item Poles derived from \meta{coffin1}, such as
% \texttt{\meta{coffin1}-l}, \texttt{\meta{coffin1}-r},
% \texttt{\meta{coffin1}-hc}, \emph{etc.}
-% \item Poles derived from \meta{coffin2}, such as
+% \item Poles derived from \meta{coffin2}, such as
% \texttt{\meta{coffin2}-l}, \texttt{\meta{coffin2}-r},
% \texttt{\meta{coffin2}-hc}, \emph{etc.}
% \end{enumerate}
-%
+%
% Applying this ability allows a series of joining operations to
% take place, as illustrated in Figure~\ref{fgr:nested}. In this
% example, the scheme used for alignment was as follows:
% \begin{verbatim}
% \SetHorizontalCoffin\OutputCoffin{}
-% \SetHorizontalCoffin\RedCoffin
+% \SetHorizontalCoffin\RedCoffin
% {\color{red!20!white}\rule{0.2 in}{0.2 in}}
% \JoinCoffins\OutputCoffin[vc,hc]\RedCoffin[vc,hc]
-% \SetHorizontalCoffin\BlueCoffin
+% \SetHorizontalCoffin\BlueCoffin
% {\color{blue!20!white}\rule{0.2 in}{0.2 in}}
% \JoinCoffins\OutputCoffin[\RedCoffin-vc,\RedCoffin-hc]
% \BlueCoffin[b,l]
-% \SetHorizontalCoffin\GreenCoffin
+% \SetHorizontalCoffin\GreenCoffin
% {\color{green!20!white}\rule{0.2 in}{0.2 in}}
% \JoinCoffins\OutputCoffin[\BlueCoffin-vc,\BlueCoffin-hc]
% \GreenCoffin[b,l]
-% \SetHorizontalCoffin\YellowCoffin
+% \SetHorizontalCoffin\YellowCoffin
% {\color{yellow!20!white}\rule{0.2 in}{0.2 in}}
% \JoinCoffins\OutputCoffin[\GreenCoffin-vc,\GreenCoffin-hc]
% \YellowCoffin[b,l]
-% \SetHorizontalCoffin \OrangeCoffin
+% \SetHorizontalCoffin \OrangeCoffin
% {\color{orange!20!white}\rule{0.2 in}{0.2 in}}
% \JoinCoffins\OutputCoffin[\BlueCoffin-t,\BlueCoffin-l]
% \OrangeCoffin[b,r]
@@ -533,62 +533,62 @@
% output. Each join then takes place placing the new addition relative
% to the previous one. As each coffin joined has a unique name it is
% possible to align relative to each one of the component parts of the
-% assembly. This is illustrated by the addition of the final
+% assembly. This is illustrated by the addition of the final
% \cs{OrangeCoffin} based on the earlier placement of the
% \cs{BlueCoffin}.
%
% \begin{figure}
% \centering
% \SetHorizontalCoffin\OutputCoffin{}
-% \SetHorizontalCoffin\RedCoffin
+% \SetHorizontalCoffin\RedCoffin
% {\color{red!20!white}\rule{0.2 in}{0.2 in}}
% \JoinCoffins\OutputCoffin[vc,hc]\RedCoffin[vc,hc]
-% \SetHorizontalCoffin\BlueCoffin
+% \SetHorizontalCoffin\BlueCoffin
% {\color{blue!20!white}\rule{0.2 in}{0.2 in}}
% \JoinCoffins\OutputCoffin[\RedCoffin-vc,\RedCoffin-hc]
% \BlueCoffin[b,l]
-% \SetHorizontalCoffin\GreenCoffin
+% \SetHorizontalCoffin\GreenCoffin
% {\color{green!20!white}\rule{0.2 in}{0.2 in}}
% \JoinCoffins\OutputCoffin[\BlueCoffin-vc,\BlueCoffin-hc]
% \GreenCoffin[b,l]
-% \SetHorizontalCoffin\YellowCoffin
+% \SetHorizontalCoffin\YellowCoffin
% {\color{yellow!20!white}\rule{0.2 in}{0.2 in}}
% \JoinCoffins\OutputCoffin[\GreenCoffin-vc,\GreenCoffin-hc]
% \YellowCoffin[b,l]
-% \SetHorizontalCoffin \OrangeCoffin
+% \SetHorizontalCoffin \OrangeCoffin
% {\color{orange!20!white}\rule{0.2 in}{0.2 in}}
% \JoinCoffins\OutputCoffin[\BlueCoffin-t,\BlueCoffin-l]
% \OrangeCoffin[b,r]
% \TypesetCoffin\OutputCoffin
% \caption{Aligning coffins using poles from previous operations.}
-% \label{fgr:nested}
+% \label{fgr:nested}
% \end{figure}
%
% \section{Typesetting coffins}
%
% \begin{function}{\TypesetCoffin}
% \begin{syntax}
-% \cs{TypesetCoffin}
+% \cs{TypesetCoffin}
% ~~\meta{coffin} [ \meta{pole1} , \meta{pole2} ]
-% ~~( \meta{x-offset} , \meta{y-offset} )
+% ~~( \meta{x-offset} , \meta{y-offset} )
% \end{syntax}
% Typesetting is carried out by first calculating \meta{handle}, the
% point of intersection of \meta{pole1} and \meta{pole2}. This is an
% optional argument, and if not given then |(H,l)|, the \TeX{}
% reference point of the underlying box, is used. The coffin
-% is then typeset such that the relationship between the current
+% is then typeset such that the relationship between the current
% reference point in the document and the \meta{handle} is described
% by the \meta{x-offset} and \meta{y-offset}. This \meta{offset} is
% optional, and if not given |(0 pt, 0 pt)| is used. Typesetting a
% coffin is therefore analogous to carrying out an alignment where the
% \enquote{parent} coffin is the current insertion point.
% \end{function}
-%
+%
% \section{Measuring coffins}
%
% There are places in the design process where it is useful to be able to
% measure coffins outside of pole-setting procedures.
-%
+%
% \begin{function}{\CoffinDepth}
% \begin{syntax}
% \cs{CoffinDepth} \meta{coffin}
@@ -606,7 +606,7 @@
% in a form suitable for use in a \meta{dimension expression}, for example
% |\setlength{\mylength}{\CoffinHeight\ExampleCoffin}|.
% \end{function}
-%
+%
% \begin{function}{\CoffinTotalHeight}
% \begin{syntax}
% \cs{CoffinTotalHeight} \meta{coffin}
@@ -627,7 +627,7 @@
%
% \section{Diagnostic functions}
%
-% Diagnostic data for following the coffin-building process is
+% Diagnostic data for following the coffin-building process is
% available both graphically and at the terminal. This reflects the
% fact that coffins are visual constructs.
%
@@ -636,22 +636,22 @@
% \cs{DisplayCoffinHandles} \meta{coffin} \Arg{colour}
% \end{syntax}
% This function first calculates the intersections between all of
-% the \meta{poles} of the \meta{coffin} to give a set of
-% \meta{handles}. It then prints the \meta{coffin} at the current
-% location in the source, with the position of the \meta{handles}
-% marked on the coffin. The \meta{handles} will be labelled as part
-% of this process: the locations of the \meta{handles} and the labels
+% the \meta{poles} of the \meta{coffin} to give a set of
+% \meta{handles}. It then prints the \meta{coffin} at the current
+% location in the source, with the position of the \meta{handles}
+% marked on the coffin. The \meta{handles} will be labelled as part
+% of this process: the locations of the \meta{handles} and the labels
% are both printed in the \meta{colour} specified.
% \end{function}
%
% \begin{function}{\MarkCoffinHandle}
% \begin{syntax}
-% \cs{MarkCoffinHandle} \meta{coffin}
+% \cs{MarkCoffinHandle} \meta{coffin}
% ~~[ \meta{pole1} , \meta{pole2} ] \Arg{colour}
% \end{syntax}
-% This function first calculates the \meta{handle} for the
+% This function first calculates the \meta{handle} for the
% \meta{coffin} as defined by the intersection of \meta{pole1} and
-% \meta{pole2}. It then marks the position of the \meta{handle}
+% \meta{pole2}. It then marks the position of the \meta{handle}
% on the \meta{coffin}. The \meta{handle} will be labelled as part of
% this process: the location of the \meta{handle} and the label are
% both printed in the \meta{colour} specified. If no \meta{poles} are
@@ -663,9 +663,9 @@
% \cs{ShowCoffinStructure} \meta{coffin}
% \end{syntax}
% This function shows the structural information about the
-% \meta{coffin} in the terminal. The width, height and depth of the
-% typeset material are given, along with the location of all of the
-% poles of the coffin. For example, for the rotated coffin in
+% \meta{coffin} in the terminal. The width, height and depth of the
+% typeset material are given, along with the location of all of the
+% poles of the coffin. For example, for the rotated coffin in
% Figure~\ref{fgr:rotation}, the output of \cs{ShowCoffinStructure}
% is:
% \begin{verbatim}
@@ -673,7 +673,6 @@
% > ht = 72.26999pt
% > dp = 0.0pt
% > wd = 72.26999pt
-%
% Poles of coffin \ExampleCoffin:
% > l => {0pt}{0pt}{0pt}{1000pt}
% > B => {0pt}{0pt}{1000pt}{0pt}
@@ -684,11 +683,11 @@
% > vc => {0pt}{36.135pt}{1000pt}{0pt}
% > t => {0pt}{72.26999pt}{1000pt}{0pt}
% > b => {0pt}{0.0pt}{1000pt}{0pt}.
-% <argument> ...ffin_show_aux:w \l_coffin_tmp_tl }
+% <recently read> }
% \end{verbatim}
% Notice that the poles of a coffin are defined by four values:
-% the $x$ and $y$ co-ordinates of a point that the pole
-% passes through and the $x$- and $y$-components of a
+% the $x$ and $y$ co-ordinates of a point that the pole
+% passes through and the $x$- and $y$-components of a
% vector denoting the direction of the pole. It is the ratio between
% the later, rather than the absolute values, which determines the
% direction of the pole.
@@ -699,17 +698,17 @@
% \begin{implementation}
%
% \section{Implementation}
-%
+%
% \begin{macrocode}
%<*package>
% \end{macrocode}
-%
+%
% \begin{macrocode}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
% \end{macrocode}
-%
-%
+%
+%
% \begin{variable}
% {
% \l_coffin_A_hpole_tl ,
@@ -722,7 +721,7 @@
% }
% Key--value definitions for the alignment system. With the exception
% of \texttt{grow-bounding-box}, all of these have to be given with a
-% value.
+% value.
% \begin{macrocode}
\keys_define:nn { coffin }
{
@@ -755,7 +754,7 @@
% \end{variable}
%
% A lot of this is more-or-less just passing data straight through.
-%
+%
% \begin{macro}{\NewCoffin}
% This is a very easy conversion.
% \begin{macrocode}
@@ -763,7 +762,7 @@
{ \coffin_new:N #1 }
% \end{macrocode}
% \end{macro}
-%
+%
% \begin{macro}{\BoxToCoffin}
% For allowing a user-level \LaTeXe{} box to be used as a coffin.
% \begin{macrocode}
@@ -855,12 +854,12 @@
% which need to be split. This is a simpler case of the code needed for
% \cs{JoinCoffins}.
% \begin{macrocode}
-\NewDocumentCommand \TypesetCoffin
+\NewDocumentCommand \TypesetCoffin
{
- m
- > { \SplitArgument { 1 } { , } } O { H , l }
+ m
+ > { \SplitArgument { 1 } { , } } O { H , l }
> { \SplitArgument { 1 } { , } } D ( ) { 0 pt , 0 pt }
- }
+ }
{ \coffin_typeset:Nnnnn #1 #2 #3 }
% \end{macrocode}
% \end{macro}
@@ -880,7 +879,7 @@
% \end{macro}
% \end{macro}
% \end{macro}
-%
+%
% \begin{macro}{\CoffinDepth, \CoffinHeight, \CoffinTotalHeigth, \CoffinWidth}
% Nothing too complex, except that the total height is set up as an
% expression so that it will act correctly if prefixed with a negative
@@ -911,10 +910,10 @@
% \end{macro}
%
% \begin{macro}{\MarkCoffinHandle}
-% Marking a handle requires a bit of work with the input, so that
+% Marking a handle requires a bit of work with the input, so that
% the design-level interface is \enquote{nice}.
% \begin{macrocode}
-\NewDocumentCommand \MarkCoffinHandle
+\NewDocumentCommand \MarkCoffinHandle
{ m > { \SplitArgument { 1 } { , } } O { H , l } m }
{
\cs_if_exist:cTF { l_coffin_poles_ \int_value:w #1 _prop }