3

David Reiter passed the following code to me for generating CCG proofs. This works well provided one does not load colortbl.

Without colortbl I get:

enter image description here

and with colortbl I get:

enter image description here

Is there a way to fix this? Do the CCG poofs differently? I would like to use both packages.

\documentclass{article}

\newcommand{\deriv}[2]
{ %\arraycolsep=.25em
   \renewcommand{\arraystretch}{.5}
  \ensuremath{\begin{array}[t]{@{}*{#1}{c}@{}}
     #2
   \end{array}} }

\newcommand{\hr}{\ensuremath{\hrulefill}}
\newcommand{\forwardapp}{\ensuremath{\hrulefill_{>}}}
\newcommand{\backwardapp}{\ensuremath{\hrulefill_{<}}}

\newcommand{\bs}{\char`\\}

\usepackage{colortbl}

\begin{document}

\deriv{4}{
the  & cat & chased         & Mary\\
\hr  & \hr & \hr            & \hr \\
np/n & n   & (s\bs np)/np   & np\\
\multicolumn{2}{@{}c}{\forwardapp} & \multicolumn{2}{c@{}}{\forwardapp}\\
\multicolumn{2}{c}{{np}}             & \multicolumn{2}{c@{}}{{s\bs np}}\\
\multicolumn{4}{@{}c@{}}{\backwardapp}\\
\multicolumn{4}{c@{}}{{s}}\\
}

\end{document}
  • Interesting, colortbl loads array which was changed recent ly. But loading just array does not give any problem. – daleif Jan 17 at 9:42
  • @daleif this isn't a recent change, been that way since the 1980s:-) – David Carlisle Jan 17 at 9:46
  • @DavidCarlisle so it's like that apparent 36 year old error that has just been "discovered" in scp? – daleif Jan 17 at 9:47
  • @daleif I don't know about scp but this was a design choice, not an error. – David Carlisle Jan 17 at 9:51
  • See also tex.stackexchange.com/q/264067/15925 – Andrew Swann Jan 17 at 9:57
9

the colortbl doc does warn against using infinite stretch in colortbl, so you need to squash it more strongly:

enter image description here

\documentclass{article}

%all the %% are needed...
\newcommand{\deriv}[2]
{%% %\arraycolsep=.25em
   \renewcommand{\arraystretch}{.5}%%
  \ensuremath{\begin{array}[t]{@{}*{#1}{c}@{}}
     #2
   \end{array}}%%
 }

\def\hrulefilll{\leavevmode\leaders\hrule\hskip 0pt plus 1filll\kern0pt }
\newcommand{\hr}{\ensuremath{\hrulefilll}}
\newcommand{\forwardapp}{\ensuremath{\hrulefilll_{>}}}
\newcommand{\backwardapp}{\ensuremath{\hrulefilll_{<}}}

\newcommand{\bs}{\char`\\}

\usepackage{colortbl}

\begin{document}

\deriv{4}{
\mathrm{the}  & \mathrm{cat} & \mathrm{chased}  & \mathrm{Mary}\\ %math italic too painful
\hr  & \hr & \hr            & \hr \\
np/n & n   & (s\bs np)/np   & np\\
\multicolumn{2}{@{}c}{\forwardapp} & \multicolumn{2}{c@{}}{\forwardapp}\\
\multicolumn{2}{c}{{np}}             & \multicolumn{2}{c@{}}{{s\bs np}}\\
\multicolumn{4}{@{}c@{}}{\backwardapp}\\
\multicolumn{4}{c@{}}{{s}}\\
}

\end{document}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.