tabularray icon indicating copy to clipboard operation
tabularray copied to clipboard

tabularray doesn't work with multicol package

Open jgunstone opened this issue 2 years ago • 3 comments

I've been looking into tables that format correctly with multiple columns for a while and tabularray seems to work excellently.

My issue is that i would only like multiple columns on sections of the document rather than the whole lot.

I'm looking to achieve a layout that looks like this: schedule_layout

I was able to reproduce the example from here and it worked well.

I tried to adapt the example shown to use the multicol package.
It worked, but the table formatted was ruined:

image

test.tex

\documentclass{article}
\usepackage[margin=15mm]{geometry}
\usepackage{tabularray}
\usepackage{multicol}

\usepackage[sfdefault,lf]{carlito}
%% The 'lf' option for lining figures
%% The 'sfdefault' option to make the base font sans serif
\usepackage[T1]{fontenc}
\renewcommand*\oldstylenums[1]{\carlitoOsF #1}


\begin{document}

Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text.
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text.
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text.
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text.
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text.

{\begin{multicols}{2}
\begin{longtblr}[
  caption = {Long Long Long Tabular},
  entry = {Short Caption},
  label = {tblr:test},
]{
  colspec = {XXX}, hlines,
  rowhead = 2, rowfoot = 1,
  row{1-2,Z} = {font=\bfseries},
}
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 \end{longtblr}
 
 \begin{longtblr}[
  caption = {Long Long Long Tabular},
  entry = {Short Caption},
  label = {tblr:test},
]{
  colspec = {XXX}, hlines,
  rowhead = 2, rowfoot = 1,
  row{1-2,Z} = {font=\bfseries},
}
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 \end{longtblr}
 
 \begin{longtblr}[
  caption = {Long Long Long Tabular},
  entry = {Short Caption},
  label = {tblr:test},
]{
  colspec = {XXX}, hlines,
  rowhead = 2, rowfoot = 1,
  row{1-2,Z} = {font=\bfseries},
}
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 \end{longtblr}
 
\begin{longtblr}[
  caption = {Long Long Long Tabular},
  entry = {Short Caption},
  label = {tblr:test},
]{
  colspec = {XXX}, hlines,
  rowhead = 2, rowfoot = 1,
  row{1-2,Z} = {font=\bfseries},
}
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Foot    & Foot  & Foot    \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 \end{longtblr}
 
 \begin{longtblr}[
  caption = {Long Long Long Tabular},
  entry = {Short Caption},
  label = {tblr:test},
]{
  colspec = {XXX}, hlines,
  rowhead = 2, rowfoot = 1,
  row{1-2,Z} = {font=\bfseries},
}
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Alpha   & Beta  & Gamma   \\
 Epsilon & Zeta  & Eta     \\
 Iota    & Kappa & Lambda  \\
 Nu      & Xi    & Omicron \\
 Rho     & Sigma & Tau     \\
 Phi     & Chi   & Psi     \\
 Foot    & Foot  & Foot    \\
\end{longtblr}

\end{multicols}
}

Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text.
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text.
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text.
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text.
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text.

\end{document}

are the packages incompatible? or is there a way to make them work together?

Many Thanks,

jgunstone avatar Mar 08 '22 12:03 jgunstone

It is not easy to make tabularray work well with multicol in every use case. I will find more time to look into this bug some day.

lvjr avatar Mar 12 '22 03:03 lvjr

ok - thanks for the update

jgunstone avatar Mar 21 '22 08:03 jgunstone

The workaround presented here works for longtable (and derivatives like xltabular), but not for longtblr. Maybe this could help in looking for a solution.

jrmanrique avatar Oct 27 '23 05:10 jrmanrique