summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2023-09-14 20:25:13 +0000
committerKarl Berry <karl@freefriends.org>2023-09-14 20:25:13 +0000
commitd6880412cfd3146e7b1f60870c697dd57cb63375 (patch)
treec9f57d60226602cd6db937960c7ae2ab2b13f0cf
parent55b82c74f04f6bfaad0d922aa48a9919e89fed84 (diff)
arraycols (14sep23)
git-svn-id: svn://tug.org/texlive/trunk@68277 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/arraycols/arraycols.pdfbin463229 -> 464654 bytes
-rw-r--r--Master/texmf-dist/source/latex/arraycols/arraycols.dtx178
-rw-r--r--Master/texmf-dist/tex/latex/arraycols/arraycols.sty2
3 files changed, 109 insertions, 71 deletions
diff --git a/Master/texmf-dist/doc/latex/arraycols/arraycols.pdf b/Master/texmf-dist/doc/latex/arraycols/arraycols.pdf
index d66dd231be1..b42c461d366 100644
--- a/Master/texmf-dist/doc/latex/arraycols/arraycols.pdf
+++ b/Master/texmf-dist/doc/latex/arraycols/arraycols.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/arraycols/arraycols.dtx b/Master/texmf-dist/source/latex/arraycols/arraycols.dtx
index 43dc0fe7eaa..b3a438be983 100644
--- a/Master/texmf-dist/source/latex/arraycols/arraycols.dtx
+++ b/Master/texmf-dist/source/latex/arraycols/arraycols.dtx
@@ -20,7 +20,7 @@
%<*package>
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{arraycols}
- [2023/08/09 v1.3 .dtx arraycols file]
+ [2023/09/13 v1.4 .dtx arraycols file]
%</package>
%<*driver>
\documentclass{ltxdoc}
@@ -29,6 +29,12 @@
\usepackage[french,english]{babel}
\usepackage{lmodern}
\usepackage{arraycols}
+
+\usepackage{sectsty}
+\usepackage{xcolor}
+\definecolor{darkbrown}{rgb}{0.5,0.1,0.1}
+\allsectionsfont{\color{darkbrown}}
+
\DisableCrossrefs
%\CodelineIndex
%\RecordChanges
@@ -72,9 +78,11 @@
% \changes{v1.0}{2019/05/04}{Initial version, creating dtx and ins files}
% \changes{v1.0}{2019/06/17}{English translation by François Bastouil}
% \changes{v1.1}{2020/11/23}{Incompatibility with tablestyles mentioned,
-% minor changes in documentation}
-% \changes{v1.2}{2021/09/20}{Incompatibility with siunitx package (called by pstricks-add) is solved}
-% \changes{v1.3}{2023/09/08}{Small changes in the documentation}
+% minor changes in documentation}
+% \changes{v1.2}{2021/09/20}{Incompatibility with siunitx package
+% (called by pstricks-add) is solved}
+% \changes{v1.3}{2023/08/09}{Small changes in documentation}
+% \changes{v1.4}{2023/09/13}{More changes in documentation}
%
% \GetFileInfo{arraycols.sty}
%
@@ -82,15 +90,16 @@
% corresponds to \textsf{arraycols}~\fileversion, dated \filedate.
% Thanks to François Bastouil for assistance with the English translation.}}
% \author{Antoine Missier \\ \texttt{antoine.missier@ac-toulouse.fr}}
-% \date{August 9, 2023}
+% \date{September 13, 2023}
% \maketitle
%
% \section{Introduction}
%
-% This package introduces new predefined column types for tables, alongside
-% the \textsf{array} package by Frank Mittelbach and David Carlisle~\cite{ARRAY}. It also includes a command for wide horizontal rule drawing.
+% This package introduces new predefined column types for tables, in addition to
+% the \textsf{array} package by Frank Mittelbach and David Carlisle~\cite{ARRAY}.
+% It also includes a command for wide horizontal rule drawing.
% Below is a summary of the column types and macro defined by \textsf{arraycols},
-% with further to follow.
+% which will be detailed in the following section.
%
% \begin{center}\small \setlength{\extrarowheight}{1pt}
% \begin{tabular}{|cIm{7.9cm}|}
@@ -112,7 +121,8 @@
% \hline
% \texttt{y} & Left-aligned column in math mode with adjusted height \\
% \hline
-% \texttt{z}\marg{width} & Centered column in math mode, similar to \texttt{x}, with adjusted height,
+% \texttt{z}\marg{width} & Centered column in math mode, similar to \texttt{x},
+% with adjusted height,
% but with fixed \meta{width} \\
% \hline
% \texttt{T} & Centered text column with adjusted width
@@ -132,62 +142,66 @@
% \end{tabular}
% \end{center}
%
-% Note that if a column type has been previously defined,
+% Note that if a column type has been previously defined by another package,
% using \textsf{arraycols} will overwrite it and display a warning message.
%
-% In addition to loading the \textsf{array} package, \textsf{arraycols} also requires the \textsf{cellspace} package~\cite{CELLSP},
-% which is necessary for the \texttt{x}, \texttt{y}, \texttt{z} and \texttt{Z} column types. Moreover it relies on
+% In addition to loading the \textsf{array} package, \textsf{arraycols}
+% also requires \textsf{cellspace}~\cite{CELLSP},
+% which is necessary for the \texttt{x}, \texttt{y}, \texttt{z} and \texttt{Z} column types.
+% Moreover it relies on
% \textsf{tabularx}~\cite{TABX} for \texttt{T} and \texttt{Z} column types and
% loads \textsf{makecell}~\cite{MKCELL} for creation of multilined tabular cells.
% It's worth mentioning that the \textsf{tablestyles} package~\cite{TBLSTY}
-% also defines L, C, R and Z column types differently.
+% also defines L, C, R and Z column types, but differently.
% Nevertheless, \textsf{tablestyles} is incompatible with \textsf{makecell}
% and consequently with \textsf{arraycols} as well.
%
-% Despite its minimal code, this package does not aim to introduce new macros.
-% Its main purpose is to combine and configure features derived from other packages.
+% With its minimal code, \textsf{arraycols} makes no claim to develop new macros.
+% Its purpose is to combine and configure functionalities derived from other packages.
%
% \section{Usage}
%
%\medskip
% \DescribeEnv{L} \DescribeEnv{C} \DescribeEnv{R}
% Referring to an example from the \textsf{array} package documentation,
-% the |L|, |C| and |R| columns types, offered by \textsf{arraycols}, provide the convenience
-% of reversing the mathematical mode.
+% the |L|, |C| and |R| columns types, enable the
+% reversal of the mathematical mode.
% This allows to achieve centered, left-aligned or right-aligned
% LR-mode in an \texttt{array} environment or an equivalent math-mode
% in a \texttt{tabular} environment.
% For instance, using the declaration "\begin{tabular}{|l|C|r|}" sets the second column
% in centered mathematical mode. Similarly, using the declaration "\begin{array}{|L|c|c|}"
-% sets the first column\footnote{The declarations
+% sets the first column in text mode, left-aligned\footnote{The declarations
% \texttt{L, C, R} do not work in a \texttt{tabularx} environment.
% Additionally, the \mbox{\textsf{tabulary}} package by David Carlisle~\cite{TABY}
-% already defines the \texttt{L, C, R} and \texttt{J} column types for specific alignments
+% already defines the \texttt{L, C, R} (and \texttt{J}) column types for specific alignments
% in tables of the same type as \texttt{tabularx}.
-% However there is no incompatibility with \textsf{arraycols} because these column definitions
-% apply exclusively in \texttt{tabulary} environments.
-% } in text mode, left-aligned.
+% However, there is no incompatibility with \textsf{arraycols} because these column definitions
+% apply exclusively within \texttt{tabulary} environments.
+% }.
%
% \medskip
% \DescribeEnv{t\marg{width}}
-% The newly introduced column type definition \texttt{t}\{\meta{width}\} (text in LR-mode)
-% achieves both horizontal and vertical centering within the column. It is distinct from the traditional
-% \texttt{p}\marg{width} (in standard \LaTeX) and \texttt{m}\marg{width}
-% (from the \textsf{array} package) column types, which are equivalent to
-% "\parbox[t]" or "\parbox".
+% The newly introduced column type definition \texttt{t}\{\meta{width}\}
+% horizontally and vertically centers paragraphs within the column,
+% with a specified \meta{width}.
+% In contrast, the traditional \texttt{p}\marg{width} (in standard \LaTeX)
+% and \texttt{m}\marg{width} (from the \textsf{array} package) column types,
+% justifies paragraphs, while text in \texttt{t}\{\meta{width}\} is centered.
%
% \medskip
% \DescribeEnv{x} \DescribeEnv{y}
% In order to guarantee adequate row heights, especially for displaymath mode
% formulas, the package includes the column types \texttt{x} (centered)
-% and \texttt{y} (left aligned), based on the \textsf{cellspace} package
+% and \texttt{y} (left aligned).
+% These column types activate the mathematical mode and
+% allow automatic adjustment of row heights to prevent any overlap with
+% horizontal rules in cases where the content is too tall,
+% thanks to a functionality of the \textsf{cellspace} package
% by Josselin Noirel~\cite{CELLSP}.
-% These column types allow automatic adjustment of row heights to prevent any overlap with
-% horizontal rules in cases where the content is too tall.
% While \textsf{cellspace} is initially designed for \texttt{tabular} environments,
-% the new \texttt{x} and \texttt{y} column types, introduces by \mbox{\textsf{arraycols}},
-% generate mathematically well-adjusted columns.
-% They are applicable in both \texttt{tabular} and \texttt{array} environments.
+% the new \texttt{x} and \texttt{y} column types
+% are applicable in both \texttt{tabular} and \texttt{array} environments.
% Examine the following examples created using
% "\begin{array}{|c|}" and "\begin{array}{|x|}".
% \[
@@ -222,24 +236,26 @@
% \og the \textsf{amsmath} package can be loaded beforehand with other
% packages (such as \texttt{empheq} or \texttt{mathtools}),
% were an incompatibility to arise from one’s loading it later\fg.}
-% to effectively manage row heights in matrix tables.
+% to efficiently manage row heights, including in matrices.
% Another option of \textsf{cellspace}, \texttt{column=Q}
% (with \texttt{S} being the default in \textsf{cellspace})\footnote{The
-% selection of the letter Q to substitute the default column modifier S of the \textsf{cellspace}
-% package is here arbitrary.}, was necessary to prevent any compatibility issues
+% letter Q is a substitute for the default column modifier S of the \textsf{cellspace}
+% package.}, was necessary to prevent any compatibility issues
% with the \textsf{siunitx} package (also loaded by \textsf{pstricks-add}).
-% The \texttt{Q} column type serves as a \og modifier \fg{}
-% that, when combined with the traditional
-% column types \texttt{l, c, r}, permits the adjustment of cell height.
+% The \texttt{Q} declaration serves as a \og modifier \fg{}
+% that, when placed before a column type declaration,
+% permits the adjustment of cell height,
+% for instance ``\texttt{Qc}'' for a vertical adjustment
+% within a centered column type.
%
% \medskip
% Notice that another package, \textsf{booktabs}~\cite{BOOK}, also offers
% excellent row height adjustment. However, regrettably, it doesn't handle the height
-% of vertical separators "|".
+% of vertical separators ``"|"''.
% In order to achieve a similar vertical adjustment as \textsf{booktabs},
-% we configure the \textsf{cellspace} parameters as follows:\\
-% "\setlength{\cellspacetoplimit}{3pt}", \\
-% "\setlength{\cellspacebottomlimit}{2pt}".
+% we set the \textsf{cellspace} parameters as follows:\\
+% \indent\indent"\setlength{\cellspacetoplimit}{3pt}", \\
+% \indent\indent"\setlength{\cellspacebottomlimit}{2pt}".
%
% Additionally, it's worth mentioning the \textsf{tabls} package by Donald Arneseau~\cite{TABLS}
% that makes a good adjustment of row heights as well, but it is incompatible
@@ -253,21 +269,25 @@
%
% \medskip
% \DescribeEnv{z\marg{width}}
-% The \texttt{z}\marg{width} column type allows you to define the column width,
-% just like \texttt{t}\marg{width},
-% and it also activates math mode and adjusts the row height,
-% similar to the \texttt{x} column type.
+% The \texttt{z}\marg{width} column type activates the mathematical mode
+% and allows to define the column width,
+% similar to \texttt{t}\marg{width}.
+% It also adjusts the row height, akin to the \texttt{x} column type.
+% The content consist of a single line. When it becomes too wide, it may protrude to the right.
%
% \medskip
% \DescribeEnv{T} \DescribeEnv{Z}
% The \textsf{tabularx} package by David Carlisle~\cite{TABX} introduces
-% the \texttt{X} column definition, which calculates its width based on
+% the \texttt{X} column definition, which calculates its width in relation to
% the required width for the entire table. It aligns text to the left
-% akin to \texttt{p}\marg{width}.
-% For instance, using "\begin{tabularx}{8cm}{|c|X|X|}" adjusts the width of the \texttt{X} columns
+% similar to \texttt{p}\marg{width}.
+% For instance, using "\begin{tabularx}{8cm}{|c|X|X|}"
+% adjusts the width of the \texttt{X} columns
% to achieve a total width of 8\,cm. To complement this, we offer
-% the \texttt{T} declaration, which performs a similar function but centers the content horizontally.
-% Additionally the \texttt{Z} declaration goes further by activating mathematical mode and adjusting
+% the \texttt{T} declaration, which performs a similar function
+% but centers the content horizontally.
+% Additionally the \texttt{Z} declaration activates mathematical
+% mode and adjusts
% line heights, comparable to \texttt{x} or \texttt{z}). Here's an example with
% "\begin{tabularx}{\linewidth}{|T|y|x|Z|T|}".
% \begin{center}
@@ -281,24 +301,30 @@
% \hline
% \end{tabularx}
% \end{center}
-% In order to maintain precise alignment of fraction bars within mathematical formulas,
-% cells are deliberately not vertically centered. Nevertheless, for achieving accurate vertical positioning
-% within the last cell, we have used the powerful "\makecell" command from
+% Observe that cells 3 and 4 are not vertically centered to preserve
+% the precise alignment of fraction bars within mathematical formulas
+% across cells.
+% For achieving accurate vertical positioning
+% within the last cell, we have used the powerful "\makecell"\oarg{pos}\marg{content}
+% command from
% the \textsf{makecell} package by Olga Lapko~\cite{MKCELL}:
% "\makecell{a multi-line \\ piece of text}".
%
% \bigskip
-% \DescribeEnv{I} \DescribeEnv{V\marg{thickness}}
+% \DescribeEnv{I} \DescribeEnv{V\marg{thickness}}
% The column definition \texttt{I} is mentioned in The \LaTeX\ Companion~\cite{COMP}
-% and allows for drawing a thicker \emph{vertical} line (1\,pt thick) compared to the one achieved
-% with the standard declaration "|". For selecting the line thickness, we additionally provide the column
+% and allows for drawing a thicker \emph{vertical} line (1\,pt thick)
+% compared to the one achieved
+% with the standard declaration ``"|"''. For selecting the line thickness,
+% we additionally provide the column
% definition \texttt{V}\marg{thickness}\footnote{The definition of \texttt{V}
-% would have been simplified by utilizing an optional argument for \texttt{I}, but unfortunately, this approach doesn't function.}.
+% would have been simplified by utilizing an optional argument for \texttt{I},
+% but unfortunately, this approach doesn't function.}.
%
% \medskip
% \DescribeMacro{\whline}
-% Similarly, the "\whline" command, suggested in The \LaTeX\ Companion, allows for drawing a
-% thicker \emph{horizontal} line (1\,pt thick) compared to the line obtained with "\hline".
+% Similarly, the "\whline" command, suggested in The \LaTeX\ Companion, enables the drawing of
+% a thicker \emph{horizontal} line (1\,pt thick) compared to the line obtained with "\hline".
% Moreover, the \textsf{makecell} package provides the command "\Xhline"\marg{thickness}
% enabling the choice of horizontal rule thickness.
%
@@ -307,12 +333,13 @@
% serving as a separator between the two text columns.
% Horizontal rules at the beginning and end of the table are accomplished using "\whline",
% while a "\Xhline{0.8pt}" rule is employed after the legend rows.
-% The formatting of header rows is achieved using the "\thead" command from the \textsf{makecell}
-% package. By default, \textsf{arraycols} sets:
+% The formatting of header rows is achieved using the "\thead" command
+% from the \textsf{makecell} package. By default, \textsf{arraycols} sets:
% "\renewcommand\theadfont{\footnotesize\sffamily}"
-% (initially |\footnotesize| only, without "\sffamily").
+% (in \textsf{makecell} it is |\footnotesize| only, without "\sffamily").
% Lastly, following a recommendation of the \textsf{array} package~\cite{ARRAY},
-% an additional 1\,pt has been added to the standard height of each row within this table. This adjustment is implemented with the command
+% an additional 1\,pt has been added to the standard height of each row within this table.
+% This adjustment is implemented with the command
% "\setlength{\extrarowheight}{1pt}"\footnote{As stated
% in the \textsf{array} package documentation:
% \og This is important for tables with horizontal lines because those
@@ -332,7 +359,8 @@
\newcolumntype{R}{>{$}r<{$}}
\newcolumntype{t}[1]{>{\centering\arraybackslash}m{#1}}
% \end{macrocode}
-% The \textsf{cellspace} package offers the \texttt{S} modifier (we used \texttt{Q} instead), which,
+% The \textsf{cellspace} package provides the \texttt{S} modifier
+% (we used \texttt{Q} instead), which,
% when placed before a column declaration, allows for the adjustment of cell content height
% to prevent any overlap with horizontal rules. The spacing between the content and the rules
% is governed by the parameters
@@ -345,20 +373,28 @@
\setlength{\cellspacebottomlimit}{2pt}
\newcolumntype{z}[1]{>{$}Q{>{\centering\arraybackslash}p{#1}}<{$}}
% \end{macrocode}
-% When defining the \texttt{z} column type, we employ the \texttt{p} column type instead of \texttt{m}
-% (which centers content automatically). This choice ensures proper alignment of mathematical
+% For the \texttt{z} column type, we employed the \texttt{p} declaration
+% instead of \texttt{m} (which should automatically center content).
+% This choice ensures proper alignment of mathematical
% expressions within cells of the same row.
+% The same result can be achieved with the following definition:
+% "\newcolumntype{z}[1]{>{$}Q{W{c}{#1}}<{$}}" with "W{c}" defined
+% in the \textsf{array} package.
+%
% \medskip
% \begin{macrocode}
\newcolumntype{T}{>{\centering\arraybackslash}X}
\newcolumntype{Z}{>{$}QT<{$}}
% \end{macrocode}
-% The \texttt{T} columns are not centered automatically. Although it's possible to achieve this
+% Like \texttt{X}, the \texttt{T} columns are not vertically centered.
+% Although it's possible to achieve this
% by using the command "\renewcommand{\tabularxcolumn}[1]{m{#1}}"
% (with \texttt{m} instead of default value \texttt{p}),
% unfortunately, this approach has a global effect on all column declarations based
% on \texttt{X}, including \texttt{T} and \texttt{Z}. As a result, it could disrupt the
% alignment of mathematical expressions within cells of the same row.
+%
+% \medskip
% \begin{macrocode}
\newcolumntype{I}{!{\vrule width 1pt}}
\newcolumntype{V}[1]{!{\vrule width #1}}
@@ -371,6 +407,7 @@
\renewcommand\theadfont{\footnotesize\sffamily}
% \end{macrocode}
%
+% \bigskip
% \begin{thebibliography}{11}
% \bibitem{ARRAY} \emph{A new implementation of LATEX’s \textsf{tabular} and \textsf{array}
% environment}, Frank Mittelbach, David Carlisle, CTAN, v2.4k revised 2018/12/30.
@@ -384,7 +421,8 @@
% \bibitem{BOOK} \emph{Publication quality tables in \LaTeX}, package \textsf{booktabs} by
% Simon Fear, CTAN, v1.618033 2016/04/29.
% \bibitem{TABLS} \emph{The \textsf{tabls} package}, Donald Arseneau, CTAN, v3.5 2010/02/26.
-% \bibitem{STRUT} \emph{The \textsf{multirow}, \textsf{bigstrut} and \textsf{bigdelim} packages},
+% \bibitem{STRUT} \emph{The \textsf{multirow}, \textsf{bigstrut}
+% and \textsf{bigdelim} packages},
% Piet van Oostrum, Øystein Bache, Jerry Leichter, CTAN, v2.4 2019/01/01.
% \bibitem{SPA} \emph{The \textsf{spacingtricks} package}, Antoine Missier,
% CTAN, v1.3 2020/11/02.
diff --git a/Master/texmf-dist/tex/latex/arraycols/arraycols.sty b/Master/texmf-dist/tex/latex/arraycols/arraycols.sty
index 2a2a4a56d80..a7e81f20224 100644
--- a/Master/texmf-dist/tex/latex/arraycols/arraycols.sty
+++ b/Master/texmf-dist/tex/latex/arraycols/arraycols.sty
@@ -22,7 +22,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{arraycols}
- [2023/08/09 v1.3 .dtx arraycols file]
+ [2023/09/13 v1.4 .dtx arraycols file]
\RequirePackage{array}
\RequirePackage[math,column=Q]{cellspace}
\RequirePackage{tabularx} % must be loaded after cellspace