From 758bc16c67cd2f74d2101fab34d81b1ccffd8a26 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 25 Nov 2010 01:41:09 +0000 Subject: tabu (24nov10) git-svn-id: svn://tug.org/texlive/trunk@20554 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/latex/tabu/tabu.drv | 16 +- Master/texmf-dist/source/latex/tabu/tabu.dtx | 220 ++++++++++++++++++++------- Master/texmf-dist/source/latex/tabu/tabu.ins | 6 +- 3 files changed, 175 insertions(+), 67 deletions(-) (limited to 'Master/texmf-dist/source') diff --git a/Master/texmf-dist/source/latex/tabu/tabu.drv b/Master/texmf-dist/source/latex/tabu/tabu.drv index 2b23f068a87..7ba3a4e3baa 100644 --- a/Master/texmf-dist/source/latex/tabu/tabu.drv +++ b/Master/texmf-dist/source/latex/tabu/tabu.drv @@ -8,7 +8,7 @@ %% %% This is a generated file. %% -%% tabu : 2010/11/18 v1.3 - tabu : Flexible LaTeX tabulars +%% tabu : 2010/11/22 v1.4 - tabu : Flexible LaTeX tabulars %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either @@ -25,8 +25,8 @@ %% \edef\thisfile{\jobname} \def\thisinfo{Flexible \LaTeX{} tabulars (\FC)} -\def\thisdate{2010/11/18} -\def\thisversion{1.3} +\def\thisdate{2010/11/22} +\def\thisversion{1.4} \def\CTANbaseurl{http://www.ctan.org/tex-archive/macros/latex} \def\CTANdisplay{CTAN:macros/latex} \makeatletter\protected\def\CTANhref{\@ifstar\CTANhrefstar\CTANhrefnost}\makeatother @@ -35,6 +35,7 @@ \let\loadclass\LoadClass \def\LoadClass#1{\loadclass[abstracton]{scrartcl}\let\scrmaketitle\maketitle\AtEndOfClass{\let\maketitle\scrmaketitle}} \PassOptionsToPackage{svgnames}{xcolor} +\PassOptionsToPackage{hyperfootnotes}{hyperref} \documentclass[a4paper,oneside]{ltxdoc} \AtBeginDocument{\DeleteShortVerb{\|}} \usepackage[latin1]{inputenc} @@ -42,10 +43,11 @@ \usepackage{etoolbox,geometry,graphicx,xcolor,lastpage,lmodern,bbding,hologo,relsize,moresize,manfnt,xspace,numprint} \usepackage[official]{eurosym} \usepackage[expansion=all,stretch=20,shrink=60]{microtype} -\usepackage{tocloft,titlesec,hypbmsec,fancyhdr,enumitem,multirow,makecell,tabularx,booktabs,delarray,ragged2e,colortbl,marginnote,shapepar} +\usepackage{tocloft,titlesec,hypbmsec,fancyhdr,enumitem,multirow,makecell,booktabs,delarray,ragged2e,colortbl,marginnote,shapepar} \heavyrulewidth=.7pt \usepackage{holtxdoc,bookmark} -\usepackage{interfaces}[2010/11/15] +\usepackage{tabularx} +\usepackage{interfaces}[2010/11/26] \usetikz{basic,chains,positioning} \usepackage{embedfile} \RequirePackage{amsopn,amsmath}% \DeclareMathOperator @@ -58,7 +60,7 @@ \csname endofdump\endcsname \CodelineNumbered \usepackage{fancyvrb}\fvset{gobble=1,listparameters={\topsep=0pt}} -\usepackage[linegoal,debugshow]{tabu} +\usepackage[linegoal]{tabu}\tracingtabu\tracingtabularx \lastlinefit999 \geometry{top=0pt,includeheadfoot,headheight=.6cm,headsep=.6cm,bottom=.6cm,footskip=.5cm,left=4cm,right=1.5cm} \hypersetup{% @@ -66,7 +68,7 @@ pdfsubject={a simple line parser for TeX}, pdfauthor={Florent CHERVET}, colorlinks,linkcolor=reflink, - pdfstartview={FitH},%pdfpagemode=UseOutLines, + pdfstartview=FitH,pdfpagemode=UseOutLines, pdfkeywords={tex, e-tex, latex, package, tabular, array, halign, tabularx, longtable, color, colortbl, alignment}, } \embedfile{\thisfile.dtx} diff --git a/Master/texmf-dist/source/latex/tabu/tabu.dtx b/Master/texmf-dist/source/latex/tabu/tabu.dtx index 8293de6dd76..804d8a60e75 100644 --- a/Master/texmf-dist/source/latex/tabu/tabu.dtx +++ b/Master/texmf-dist/source/latex/tabu/tabu.dtx @@ -1,5 +1,5 @@ % \iffalse meta-comment -% tabu : 2010/11/18 v1.3 - tabu: flexible LaTeX tabulars] +% tabu : 2010/11/22 v1.4 - tabu: flexible LaTeX tabulars] % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -36,7 +36,7 @@ \input docstrip.tex \Msg{************************************************************************} \Msg{* Installation} -\Msg{* Package: 2010/11/18 v1.3 - tabu: Flexible LaTeX tabulars} +\Msg{* Package: 2010/11/22 v1.4 - tabu: Flexible LaTeX tabulars} \Msg{************************************************************************} \keepsilent @@ -47,7 +47,7 @@ This is a generated file. -tabu : 2010/11/18 v1.3 - tabu : Flexible LaTeX tabulars +tabu : 2010/11/22 v1.4 - tabu : Flexible LaTeX tabulars This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either @@ -98,8 +98,8 @@ Copyright (C) 2010 by Florent Chervet %<*driver> \edef\thisfile{\jobname} \def\thisinfo{Flexible \LaTeX{} tabulars (\FC)} -\def\thisdate{2010/11/18} -\def\thisversion{1.3} +\def\thisdate{2010/11/22} +\def\thisversion{1.4} \def\CTANbaseurl{http://www.ctan.org/tex-archive/macros/latex} \def\CTANdisplay{CTAN:macros/latex} \makeatletter\protected\def\CTANhref{\@ifstar\CTANhrefstar\CTANhrefnost}\makeatother @@ -108,6 +108,7 @@ Copyright (C) 2010 by Florent Chervet \let\loadclass\LoadClass \def\LoadClass#1{\loadclass[abstracton]{scrartcl}\let\scrmaketitle\maketitle\AtEndOfClass{\let\maketitle\scrmaketitle}} \PassOptionsToPackage{svgnames}{xcolor} +\PassOptionsToPackage{hyperfootnotes}{hyperref} \documentclass[a4paper,oneside]{ltxdoc} \AtBeginDocument{\DeleteShortVerb{\|}} \usepackage[latin1]{inputenc} @@ -115,10 +116,11 @@ Copyright (C) 2010 by Florent Chervet \usepackage{etoolbox,geometry,graphicx,xcolor,lastpage,lmodern,bbding,hologo,relsize,moresize,manfnt,xspace,numprint} \usepackage[official]{eurosym} \usepackage[expansion=all,stretch=20,shrink=60]{microtype} -\usepackage{tocloft,titlesec,hypbmsec,fancyhdr,enumitem,multirow,makecell,tabularx,booktabs,delarray,ragged2e,colortbl,marginnote,shapepar} +\usepackage{tocloft,titlesec,hypbmsec,fancyhdr,enumitem,multirow,makecell,booktabs,delarray,ragged2e,colortbl,marginnote,shapepar} \heavyrulewidth=.7pt \usepackage{holtxdoc,bookmark} -\usepackage{interfaces}[2010/11/15] +\usepackage{tabularx} +\usepackage{interfaces}[2010/11/26] \usetikz{basic,chains,positioning} \usepackage{embedfile} \RequirePackage{amsopn,amsmath}% \DeclareMathOperator @@ -131,7 +133,7 @@ Copyright (C) 2010 by Florent Chervet \csname endofdump\endcsname \CodelineNumbered \usepackage{fancyvrb}\fvset{gobble=1,listparameters={\topsep=0pt}} -\usepackage[linegoal,debugshow]{tabu} +\usepackage[linegoal]{tabu}\tracingtabu\tracingtabularx \lastlinefit999 \geometry{top=0pt,includeheadfoot,headheight=.6cm,headsep=.6cm,bottom=.6cm,footskip=.5cm,left=4cm,right=1.5cm} \hypersetup{% @@ -139,7 +141,7 @@ Copyright (C) 2010 by Florent Chervet pdfsubject={a simple line parser for TeX}, pdfauthor={Florent CHERVET}, colorlinks,linkcolor=reflink, - pdfstartview={FitH},%pdfpagemode=UseOutLines, + pdfstartview=FitH,pdfpagemode=UseOutLines, pdfkeywords={tex, e-tex, latex, package, tabular, array, halign, tabularx, longtable, color, colortbl, alignment}, } \embedfile{\thisfile.dtx} @@ -149,7 +151,7 @@ Copyright (C) 2010 by Florent Chervet % % \fi % -% \CheckSum{3520} +% \CheckSum{3666} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -212,13 +214,12 @@ Copyright (C) 2010 by Florent Chervet % \newrobustcmd*\macrocodecolor{\color{macrocode}}\definecolor{macrocode}{rgb}{0.05,0.02,0.07} % \def\macro@font{\changefont{fam=lmtt,size-=1pt,color=macrocode,spread=1}\let\AltMacroFont\macro@font} % \def\MacroFont{\changefont{fam=lmtt,color=macrocode}} -% \g@addto@macro\@list@extra{\parsep\parskip\topsep\z@\itemsep\z@} % \def\texorpdf#1#2{\texorpdfstring{#1{#2}}{#2}} % \def\textitbf#1{\textbf{\itshape#1}}\let\textbfit\textitbf -% \DefineVerbatimEnvironment{VerbLines}{Verbatim}{gobble=1,frame=lines,framesep=6pt,fontfamily=\ttdefault,fontseries=m} -% \DefineVerbatimEnvironment{VerbLines*}{Verbatim}{gobble=1,frame=lines,framesep=6pt,fontfamily=\ttdefault,fontseries=m,commandchars=$()} -% \DefineVerbatimEnvironment{Verb}{Verbatim}{gobble=1,fontfamily=\ttdefault,fontseries=m} -% \DefineVerbatimEnvironment{Verb*}{Verbatim}{gobble=1,fontfamily=\ttdefault,fontseries=m,commandchars=$()} +% \DefineVerbatimEnvironment{VerbLines}{Verbatim}{frame=lines,framesep=6pt,fontfamily=\ttdefault,fontseries=m} +% \DefineVerbatimEnvironment{VerbLines*}{Verbatim}{frame=lines,framesep=6pt,fontfamily=\ttdefault,fontseries=m,commandchars=$()} +% \DefineVerbatimEnvironment{Verb}{Verbatim}{fontfamily=\ttdefault,fontseries=m} +% \DefineVerbatimEnvironment{Verb*}{Verbatim}{fontfamily=\ttdefault,fontseries=m,commandchars=$()} % \def\smex{\leavevmode\hb@xt@2em{\hfil$\longrightarrow$\hfil}} % \def\ttdefault{lmvtt} % \renewrobustcmd\#[1]{{\usefont{T1}{pcr}{bx}{n}\char`\##1}} @@ -340,8 +341,9 @@ Copyright (C) 2010 by Florent Chervet % % \definecolor{reflink}{rgb}{0.95,0.00,0.05} % \definecolor{reflink}{rgb}{0.05,0.00,0.95} -% \newrobustcmd\stform{\@ifnextchar*{\@stform[]\textasteriskcentered\@gobble}\@stform} -% \newrobustcmd\@stform[2][\string]{\textttbf{#1#2}\xspace} +% \newrobustcmd*\stform{\ifincsname\else\expandafter\@stform\fi} +% \newrobustcmd*\@stform{\@ifnextchar*{\@@stform[]\textasteriskcentered\@gobble}\@@stform} +% \newrobustcmd*\@@stform[2][\string]{\textttbf{#1#2}\ifnum\catcode`\ =\active\else\expandafter\xspace\fi} % % \makeatother % @@ -431,7 +433,9 @@ Copyright (C) 2010 by Florent Chervet % is parsed by the macros in \xfile{array.sty} with no modification in the characters classes. % \textt{tabu} improves \textt{tabular} and \textt{array}: % \begin{itemize} -% \item footnotes and index words are allowed inside \textt{tabu} +% \item footnotes and index words are allowed inside \textt{tabu}, unlike \xpackage{tabularx}, footnote links +% are not broken when compiled with \xpackage{hyperref}. The syntax \cs{footnote}\M[number]\M{text} +% is allowed (this is not implemented for \xpackage{longtable} yet...) % \item \textt X columns are also allowed, with an \emph{optional} parameter for the width-coefficient, % the alignment (\textt{l,r,c} or \textt{L,R,C} for \xpackage{ragged2e} settings) and the column % type (\textt{p,m,b}). \textt{tabu} has also a \emph{default target width} when used @@ -576,8 +580,8 @@ Copyright (C) 2010 by Florent Chervet % His pipe-smoking, deer stalkered image peers at us from ads in Yellow Pages, % to signs for neighbourhood crime-watch; from billboards to the classroom; % from film and television to the public library, and now over the Internet. -% He long ago transcended the boundaries of 19th Century London to become -% an international best-seller and has been accepted as part +% He long ago transcended the boundaries of 19th Century London\footnote{Capital of the U.K. (too see a linked footnote)} +% to become an international best-seller and has been accepted as part % of British folklore. Holmes is alive to millions." % & % There the text was too long, and \textt{tabu spread} behaves as if you didn't give it a target.\par @@ -603,7 +607,7 @@ Copyright (C) 2010 by Florent Chervet % \multicolumn2{|c|}{Hello} & World \\ \tabucline- % \end{tabu} % \end{Verb*} -% +% % \begin{tabu}{|X|X|X[2]|} \tabucline- % \multicolumn2{|c|}{Hello} & World \\ \tabucline- % \end{tabu} @@ -617,7 +621,7 @@ Copyright (C) 2010 by Florent Chervet % \tabuphantomline % \end{tabu} % \end{Verb*} -% +% % \begin{tabu}{|X|X|X[2]|} \tabucline- % \multicolumn2{|c|}{Hello} & World \\ \tabucline- % \tabuphantomline @@ -627,7 +631,7 @@ Copyright (C) 2010 by Florent Chervet % Even if it is possible to add a \cs{tabuphantomline} in any line of the \textt{tabu}, it is a good practice % to append it \emph{at the end} of the \textt{tabu}, for it may introduce indesirable side effects on vertical alignment % otherwise, when \textt{tabu} is nested inside another tabular. -% +% % % \subsubsection{Nesting \textt{tabu}{\texorpdf\small s} with \textt X columns} % @@ -721,7 +725,7 @@ Copyright (C) 2010 by Florent Chervet % stops at column 2. \\ \tabucline[1pt on 1.5pt off 2pt]{1-4} \margintext{[1pt on 1.5pt off 2pt]} % \cs{tabucline}\M*[1.5pt]\M*{-} & draws a horizontal solid line of width \textt{1.5pt} between the first % and the last column. \\ \tabucline[1.5pt]{-} \margintext{[1.5pt]} -% \cs{tabucline}\M*{2-} & draws a horizontal solid line of width \cs{arrayrulewidth} between the second +% \cs{tabucline}\M*{2-} & \spaceskip=\fontdimen2\font plus1em\relax draws a horizontal solid line of width \cs{arrayrulewidth} between the second % column and the last one.\\ \tabucline{2-} \margintext{default} % \cs{tabucline}\M*[on 2pt red]\M*{-5} & draws a horizontal dashed line between columns 1 and 5 % of width \cs{arrayrulewidth}. Dashed are @@ -730,7 +734,7 @@ Copyright (C) 2010 by Florent Chervet % \end{tabu} % \end{center}} % -% \begin{declcs}{tabucline}\stform*\M[style or spec.]\M*{start-end} +% \begin{declcs}{tabucline\stform*}\M[style or spec.]\M*{start-end} % \end{declcs} % % For fine tuning, the star form \cs{tabucline}\stform* can be used to keep the vertical lines that might @@ -1033,7 +1037,7 @@ Copyright (C) 2010 by Florent Chervet % This is \textt{tabu} with \xpackage{delarray} shortcut for parenthesis around % \end{tabu} % \\ \tabucline[1pt on2pt blue]- -% +% % \extrarowheight=0pt % \begin{tabularx}{\linewidth}[t]({X}) % This is \textt{tabularx} with \xpackage{delarray} shortcut for parenthesis around @@ -1155,7 +1159,7 @@ Copyright (C) 2010 by Florent Chervet % % \begin{Verb*} % \begin{tabu}{|X|X|} \tabucline- -% ($db(\rowfont))[c]\bfseries +% ($db(\rowfont))[c]\bfseries % This & Is \\ \tabucline[on 2pt,blue]- % \textt{tabu} & package \\ \tabucline- % \end{tabu} @@ -1165,7 +1169,7 @@ Copyright (C) 2010 by Florent Chervet % \rowfont[c]\bfseries This & Is \\ \tabucline[on 2pt,blue]- % \textt{tabu} & package \\ \tabucline- % \end{tabu} -% +% % % \section(Differences: tabu, tabular, tabularx){Differences between \textt{tabu}, \textt{tabular} and \textt{tabularx}} % @@ -1452,7 +1456,7 @@ Copyright (C) 2010 by Florent Chervet % \begin{macrocode} %<*package> \NeedsTeXFormat{LaTeX2e}[2005/12/01] -\ProvidesPackage{tabu}[2010/11/18 v1.3 - flexible LaTeX tabulars (FC)] +\ProvidesPackage{tabu}[2010/11/22 v1.4 - flexible LaTeX tabulars (FC)] \RequirePackage{array}[2008/09/09] % \end{macrocode} % @@ -1764,7 +1768,6 @@ Copyright (C) 2010 by Florent Chervet \def\tabu@rewritelast{% \ifx \@halignto\relax % found a X column \let\tabu@temp \@empty - %\aftergroup \tabu@addphantomline \ifx \tabu@halignto\relax % X column measure \aftergroup \tabu@prep@TRIAL \else \aftergroup \tabu@setup@everycr @@ -1772,9 +1775,9 @@ Copyright (C) 2010 by Florent Chervet \else \ifdim \tabu@target=\z@ \let\tabu@temp \@empty \else - \if |\noexpand\tabu@temp \def\tabu@temp{@{\extracolsep\@flushglue}}\else - \if !\noexpand\tabu@temp \def\tabu@temp{@{\extracolsep\@flushglue}}\else - \def\tabu@temp{!{\extracolsep\@flushglue}}\fi\fi + \if |\noexpand\tabu@temp\def\tabu@temp{@{\extracolsep\@flushglue}}\else + \if !\noexpand\tabu@temp\def\tabu@temp{@{\extracolsep\@flushglue}}\else + \def\tabu@temp{!{\extracolsep\@flushglue}}\fi\fi \fi \aftergroup\tabu@setup@everycr \fi @@ -1785,21 +1788,16 @@ Copyright (C) 2010 by Florent Chervet % \end{macro} % % -% \begin{macro}{\tabu@everycr@tok} % \begin{macro}{\iftabu@colortbl} % -% This token is used to store and restore the content of \cs{everycr} when \cs{rowfont} is used. -% % The switch \cs{iftabu@colortbl} is used by \cs{rowfont} when modifying the alignment, because % \xpackage{colortbl} changes the glue put inside the \cs{halign} preamble to make standard alignments. % This switch is set At Begin Document. % % \begin{macrocode} -%%\newtoks\tabu@everycr@tok \newif\iftabu@colortbl % \end{macrocode} % \end{macro} -% \end{macro} % % % \begin{macro}{\tabu@nowrite} @@ -1870,7 +1868,8 @@ Copyright (C) 2010 by Florent Chervet \fi\fi \fi \let\@footnotetext \tabu@footnotetext - \let\@xfootnotenext\tabu@xfootnotetext + \let\@xfootnotetext\tabu@xfootnotetext + \let\@xfootnote \tabu@xfootnote \let\centering \tabu@centering \let\raggedright \tabu@raggedright \let\raggedleft \tabu@raggedleft @@ -1921,11 +1920,19 @@ Copyright (C) 2010 by Florent Chervet }% \tabu@sett@rget \def\tabu@to to{\def\@halignto{to}\tabu@gettarget} \def\tabu@spread spread{\tabu@spreadtrue\def\@halignto{spread}\tabu@gettarget} -\def\tabu@gettarget{\afterassignment\tabu@begin\tabu@target} +\def\tabu@gettarget{\afterassignment\tabu@linegoaltarget\tabu@target} +\def\tabu@linegoaltarget{\futurelet\tabu@temp\tabu@linegoal@target} +\def\tabu@linegoal@target{\ifx\tabu@temp\LNGL@setlinegoal + \LNGL@setlinegoal + \expandafter\expandafter\expandafter \tabu@begin + \expandafter\@gobble + \else \expandafter\tabu@begin + \fi +}% \tabu@linegoal@target \def\tabu@begin#1#{% \edef\@halignto{\ifdim\tabu@target>\z@ \@halignto\the\tabu@target\fi}% \let\tabu@halignto \@halignto - \expandafter\@testopt\expandafter\tabu@@begin \tabu@aligndefault #1\@nil + \expandafter\@testopt \expandafter\tabu@@begin \tabu@aligndefault #1\@nil }% \tabu@begin \def\tabu@@begin[#1]#2\@nil#3{% \edef\tabu@align{#1}% @@ -1946,10 +1953,23 @@ Copyright (C) 2010 by Florent Chervet % \end{macro} % \end{macro} % +% +% \subsection{Footnotes inside \textt{tabu}} +% % \begin{macro}{\tabu@footnotes} % +% The (global) token that stores the footnotes inside \textt{tabu}: +% % \begin{macrocode} \newtoks\tabu@footnotes +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\tabu@footenotetext} +% +% The macros in case \xpackage{hyperref} is not used, or used with the option \textt{hyperfootnotes=false}: +% +% \begin{macrocode} \long\def\tabu@footnotetext#1{% \edef\@tempa{\the\tabu@footnotes \noexpand\footnotetext [\the\csname c@\@mpfn\endcsname]}% @@ -1957,9 +1977,67 @@ Copyright (C) 2010 by Florent Chervet \long\def\tabu@xfootnotetext[#1]#2{% \global\tabu@footnotes\expandafter{\the\tabu@footnotes \footnotetext[{#1}]{#2}}} +\let\tabu@xfootnote \@xfootnote % \end{macrocode} % \end{macro} % +% \begin{macro}{\tabu@Hy@ftntext} +% \begin{macro}{\tabu@Hy@xfootnote} +% +% The macros in case \xpackage{hyperref} is loaded with the option \textt{hyperfootnotes=true}: +% +% \begin{macrocode} +\long\def\tabu@Hy@ftntext{\tabu@Hy@ftntxt {\the \c@footnote }} +\long\def\tabu@Hy@xfootnote[#1]{% + \begingroup + \value\@mpfn #1\relax + \protected@xdef \@thefnmark {\thempfn}% + \endgroup + \@footnotemark \tabu@Hy@ftntxt {#1}% +}% \tabu@Hy@xfootnote +\long\def\tabu@Hy@ftntxt#1#2{% + \edef\@tempa{% + \the\tabu@footnotes + \begingroup + \value\@mpfn #1\relax + \noexpand\protected@xdef + \noexpand\@thefnmark{\noexpand\thempfn}% + \expandafter\noexpand\expandafter\tabu@Hy@footnotetext + \expandafter{% + \Hy@footnote@currentHref + }% + }% + \global\tabu@footnotes\expandafter{% + \@tempa{#2}% + \endgroup + }% +}% \tabu@Hy@ftntxt +\long\def\tabu@Hy@footnotetext#1#2{% + \H@@footnotetext{% + \ifHy@nesting + \hyper@@anchor{#1}{#2}% + \else + \Hy@raisedlink{% + \hyper@@anchor{#1}{\relax}% + }% + \def\@currentHref{#1}% + \let\@currentlabelname\@empty + #2% + \fi + }% +}% \tabu@Hy@footnotetext +\AtBeginDocument{% + \@ifpackageloaded{hyperref} + {\ifHy@hyperfootnotes + \let\tabu@footnotetext \tabu@Hy@ftntext + \let\tabu@xfootnote \tabu@Hy@xfootnote + \fi} + {}% +}% +% \end{macrocode} +% \end{macro} +% \end{macro} +% % % % \subsection{Flow chart of expansion} ^^A\enlargethispage{\baselineskip} @@ -2211,7 +2289,7 @@ Copyright (C) 2010 by Florent Chervet % This macro is used instead of \cs{tabu@rewrite@Xto} for \textt X columns with ``\textt{tabu spread}''. % % \begin{macrocode} -\def\tabu@rewrite@Xspread{% tabu spread with X columns: we need to store each coef +\def\tabu@rewrite@Xspread{% tabu spread with X columns: need to store each coef \iftabu@measuring % not the first X column found in preamble \advance\tabu@X@cols \@ne \expandafter\let\csname tabu@X\the\tabu@X@cols\endcsname \relax @@ -2350,7 +2428,7 @@ Copyright (C) 2010 by Florent Chervet % \begin{macrocode} \def\tabu@prep@TRIAL{% \let\tabu@savedpreamble \@preamble - \def\savetabu {\tabu@saveX}% + \def\savetabu {\tabu@saveX}% \begingroup\iffalse{\fi\ifnum0=`}\fi \tabu@setup@TRIAL \iftabu@spread % first trial only @@ -2381,6 +2459,7 @@ Copyright (C) 2010 by Florent Chervet \let\hfuzz \@tempdima \let\write \tabu@nowrite \let\@footnotetext\@gobble + \long\def\@xfootnote[##1]##2{}% \let\tabu@saveX \@gobble \tabu@TRIAL@hook }% \tabu@setup@TRIAL @@ -2405,7 +2484,7 @@ Copyright (C) 2010 by Florent Chervet % \begin{macrocode} \def\tabu@arrayleft@measure#1\bgroup{% \def\tabu@Xfinish{\ifnum0=`{\fi\iffalse}\fi\endgroup\tabu@global@X #1\bgroup}% - \toks@{% + \toks@{% \tabu@setup@everycr \let\@preamble\tabu@savedpreamble}% \tabu@collect @@ -2433,7 +2512,8 @@ Copyright (C) 2010 by Florent Chervet \expandafter\tabu@collectbody \fi }% \tabu@collectbody -\long\def\tabu@pushbegins#1\begin#2{\ifx\end#2\else b\expandafter\tabu@pushbegins\fi} +\long\def\tabu@pushbegins#1\begin#2{% + \ifx\end#2\else b\expandafter\tabu@pushbegins\fi} % \end{macrocode} % \end{macro} % \end{macro} @@ -2458,7 +2538,11 @@ Copyright (C) 2010 by Florent Chervet \def\tabu@TRIAL{\setbox\tabu@box \hbox\bgroup $\@arrayleft \if c\tabu@align\vcenter\else\vbox\fi\bgroup \the\toks@ \tabu@endTRIAL}% constant -\def\tabu@endTRIAL{\endarray$\egroup +\def\tabu@endTRIAL{% + \ifdefined\adl@ncol % + \csname crcr\endcsname + \noalign{\global\adl@ncol\tabu@nbcols}\fi + \endarray$\egroup \iftabu@spread \tabu@spreadfalse \let\@startpbox \tabu@startpboxORI \tabu@spreadarith % @@ -2497,7 +2581,7 @@ Copyright (C) 2010 by Florent Chervet \xdef\tabu@global@X {\tabu@target\the\tabu@target\relax \tabu@global@X \tabucolX \the\tabucolX\relax}% \else - \advance\tabucolX -\dimexpr(\wd\tabu@box-\tabu@target-\tabu@X@sum/65536) + \advance\tabucolX-\dimexpr(\wd\tabu@box-\tabu@target-\tabu@X@sum/65536) *65536/\tabu@X@sum\relax \ifdim \tabucolX<\z@ {\let\write\tabu@write\PackageWarning{tabu} @@ -2588,12 +2672,17 @@ Copyright (C) 2010 by Florent Chervet \def\tabu@spread@startpbox#1{\bgroup \in@{\tabucolX}{#1}% \ifin@ - \let\vss\relax\let\vfil\vss\let\vfill\vss\let\vskip\@tempskipa - \hbox to\tabu@target\bgroup\aftergroup\tabu@spread@endhbox\hfil + \hbox to\tabu@target\bgroup\aftergroup\tabu@spread@endhbox + \tabu@spread@startpbox@setup \hfil \else \expandafter\@gobble\tabu@startpboxORI{#1}% \@gobble \bgroup \fi }% \tabu@spread@startpbox +\def\tabu@spread@startpbox@setup{% + \let\tabu@vskipORI\vskip \let\tabu@adl@draw\adl@draw + \def\adl@draw{\let\vskip\tabu@vskipORI\tabu@adl@draw}% + \let\vss\relax\let\vfil\vss\let\vfill\vss\let\vskip\@tempskipa +}% \tabu@spread@startpbox@setup \def\tabu@spread@endhbox{% \ifnum\badness>\@M % \global\tabu@naturalX \tabu@target @@ -2647,7 +2736,10 @@ Copyright (C) 2010 by Florent Chervet % \begin{macrocode} \def\tabuvline@arg#1{% \ifx\\#1\\% - \def\tabu@temp{!{\tabu@vline\arrayrulewidth}}% + \edef\tabu@temp{!{% + \iftabu@colortbl\begingroup\noexpand\CT@arc@\fi + \noexpand\tabu@vline\arrayrulewidth + \iftabu@colortbl\endgroup\fi}}% \else \futurelet \tabu@temp \tabuvline@argi #1\p@\p@\@nnil \tabuvline@argiii \fi }% \tabuvline@arg @@ -2663,8 +2755,11 @@ Copyright (C) 2010 by Florent Chervet \tabu@maybecolor \@tempdima #1 \@nnil }% \tabuvline@argii \def\tabuvline@argiii{% - \edef\tabu@temp{!{\color@begingroup\tabu@color - \noexpand\tabu@vline{\the\@tempdima}\color@endgroup}}% + \edef\tabu@temp{!{\begingroup + \ifx\tabu@color\@empty + \iftabu@colortbl \noexpand\CT@arc@ \fi + \else \tabu@color\fi + \noexpand\tabu@vline{\the\@tempdima}\endgroup}}% }% \tabuvline@argiii % \end{macrocode} % \end{macro} @@ -2718,7 +2813,7 @@ Copyright (C) 2010 by Florent Chervet % with a single line containing \cs{multicolumn}... % % \begin{macrocode} -\def\tabuphantomline{\crcr\noalign{% +\def\tabuphantomline{\crcr\noalign{% \global\let\@arstrutbox \voidb@x \iftabu@colortbl \xdef\tabu@minrowclearance{\the\minrowclearance}% @@ -2735,7 +2830,7 @@ Copyright (C) 2010 by Florent Chervet \global\let\vcenter \tabu@vcenter \iftabu@colortbl \global\minrowclearance \tabu@minrowclearance\relax\fi - \global\let\tabu@first@cline \@ne}}% + \global\let\tabu@first@cline \@ne}}% \expandafter}\the\toks@ }% \tabuphantomline % \end{macrocode} @@ -2907,7 +3002,7 @@ Copyright (C) 2010 by Florent Chervet 3\fi\fi\fi\fi\relax \def\tabu@next##1{\futurelet\tabu@temp\tabu@linecolor}% \or\def\tabu@next{\tabu@gobblespace{\futurelet\tabu@temp\tabu@linecolor}}% - \or\let\tabu@next\tabu@getlinecolor + \or\let\tabu@next \tabu@getlinecolor \else\expandafter\remove@to@nnil \fi \tabu@next }% \tabu@linecolor @@ -2925,7 +3020,8 @@ Copyright (C) 2010 by Florent Chervet % \cs{tabulinestyle}\M*{style=spec.} % % \begin{macrocode} -\def\tabulinestyle#1{\@for\@tempa:=#1\do{\expandafter\tabu@linestyle\@tempa==\@nil}} +\def\tabulinestyle#1{\@for\@tempa:=#1\do + {\expandafter\tabu@linestyle\@tempa==\@nil}} \def\tabu@linestyle#1=#2=#3\@nil{% \begingroup \tabu@getlinespec {#2}\expandafter\gdef \csname tabu@line@style@\detokenize{#1}\expandafter\endcsname @@ -2954,7 +3050,7 @@ Copyright (C) 2010 by Florent Chervet % \begin{macrocode} {\catcode32=13\relax\catcode`\^^@=13\relax \gdef\tabu@verb{\@sanitize\makeatletter\catcode`\^=7\edef\^{\string^}% -\catcode32=13\let =\ \catcode`\^^@=13\def^^@{\par}\endlinechar\m@ne}% +\catcode32=13\let =\ \catcode`\^^@=13\def^^@{\linebreak}\endlinechar\m@ne}% } \newcommand\tabu@sanitizetext[1][\ttfamily]{\begingroup \tabu@verb #1\tabu@s@nitizetext} @@ -3595,6 +3691,16 @@ Copyright (C) 2010 by Florent Chervet % % \sectionformat\subsection[hang]{font=\large\bfseries\macrocodecolor} % +% \begin{Version}{2010/11/22 v1.4} +% \item Compatibility improvement with \xpackage{linegoal} for the syntax: \\ +% \cs{begin}\M*{tabu}\textt{ to\cs{linegoal}}\M*{...} +% \item Hyper footnotes now work correctly. +% \item Fix a bug when using colored vertical lines in \textt{tabu} in math mode. +% \item Fix a bug with vertical lines and \xpackage{colortbl} \cs{arrayrulecolor} specification. +% \item Fix a compatibility bug with \xpackage{arydshln}: when nesting a tabular that use +% vertical dashed lines (\xpackage{arydshln}) inside \textt{tabu spread} with \textt X columns. +% \end{Version} +% % \begin{Version}{2010/11/18 v1.3} % \item Documentation. % \item Fix a bug that may appear in \cs{tabucline} depending on the preamble due to arbitrary \cs{countdef}. diff --git a/Master/texmf-dist/source/latex/tabu/tabu.ins b/Master/texmf-dist/source/latex/tabu/tabu.ins index 0f802222d7b..889294e144a 100644 --- a/Master/texmf-dist/source/latex/tabu/tabu.ins +++ b/Master/texmf-dist/source/latex/tabu/tabu.ins @@ -8,7 +8,7 @@ %% %% This is a generated file. %% -%% tabu : 2010/11/18 v1.3 - tabu : Flexible LaTeX tabulars +%% tabu : 2010/11/22 v1.4 - tabu : Flexible LaTeX tabulars %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either @@ -26,7 +26,7 @@ \input docstrip.tex \Msg{************************************************************************} \Msg{* Installation} -\Msg{* Package: 2010/11/18 v1.3 - tabu: Flexible LaTeX tabulars} +\Msg{* Package: 2010/11/22 v1.4 - tabu: Flexible LaTeX tabulars} \Msg{************************************************************************} \keepsilent @@ -37,7 +37,7 @@ This is a generated file. -tabu : 2010/11/18 v1.3 - tabu : Flexible LaTeX tabulars +tabu : 2010/11/22 v1.4 - tabu : Flexible LaTeX tabulars This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either -- cgit v1.2.3