Строка разрыва внутри таблицы с сохранением автоматического переноса строк

Строка разрыва внутри таблицы с сохранением автоматического переноса строк

Я объявил макрос следующим образом:

\newcommand{\itemcell}[1]{%
    \begin{tabular}[t]{@{}l@{}}#1\end{tabular}
} 

Но теперь я борюсь с этим, потому что это больше не позволяет автоматически переносить строки. Смотрите пример ниже:

\begin{longtable}{p{4cm}p{1.5cm}p{1.2cm}p{1.2cm}p{1.2cm}p{\dimexpr\columnwidth-9.1cm-12\tabcolsep\relax}}
\toprule
Title 1 & Title 2 & Title 3 & Title 4 & Title 5 & Title 6 \\
\midrule
a       & b       & c       & d       & e       & \itemcell{This is a very long description which won't fit in 1 line, it should break, but it won't\\And this is a second line} \\
\bottomrule
\end{longtable}

Содержимое \itemcell{}не будет перенесено в конец столбца, переполнено hbox.

Как мне настроить этот макрос, чтобы вернуть поведение по умолчанию?

решение1

pстолбцы допускают перенос строк, поэтому макрос вообще не нужен, просто используйте

\begin{longtable}{p{4cm}p{1.5cm}p{1.2cm}p{1.2cm}p{1.2cm}p{\dimexpr\columnwidth-9.1cm-12\tabcolsep\relax}}
\toprule
Title 1 & Title 2 & Title 3 & Title 4 & Title 5 & Title 6 \\
\midrule
a       & b       & c       & d       & e       &
This is a very long description which won't fit in 1 line, it should break, but it won't

And this is a second line\\
\bottomrule
\end{longtable}

в cстолбце вы можете локально использовать вложенную таблицу, чтобы разрешить несколько строк с ручным переносом строк, но ваше определение добавляет ложные пробелы, поскольку в нем отсутствует%

\newcommand{\itemcell}[1]{%
    \begin{tabular}[t]{@{}l@{}}#1\end{tabular}%%%%
}

Связанный контент