나는 longtable에서 사용하고 있는 expl3 시퀀스에 일부 데이터를 가지고 있습니다. 모두 잘 작동하지만 인라인 맵 본문 뒤에 추가 빈 행이 나타납니다. MWE:
\documentclass{article}
\usepackage{expl3}
\usepackage{xparse}
\usepackage{longtable}
\ExplSyntaxOn
\NewDocumentCommand{\printData}{}
{
\begin{longtable}{l}
\hline
Minimal~Working~Example \\
\hline
\endhead
End \\
\hline
\endfoot
\clist_map_inline:nn
{comma,separated,list,of,data,also,fails,with,seq}
{
##1 \\
\hline
}
% Uncomment to fill the blank row
% Mystery row here! \\ \hline
\end{longtable}
}
\ExplSyntaxOff
\begin{document}
\printData
\end{document}
다음을 생성합니다.
\hline
인라인 지도의 마지막 루프가 바닥글로 곧바로 연결되어 닫히도록 하는 것이 목적입니다 . 저는 이전 버전의 texlive 및 pdflatex(Ubuntu 18.04부터)를 사용하고 있지만 이 오류는 뒷면에도 있습니다. 최신 버전이라고 가정하고 있으므로 오류가 내 것이라고 가정합니다.
답변1
그렇지 \clist_map_function:nN
않으면 셀이 시작됩니다. 반대로 \clist_map_function:nN
TeX가 셀의 시작으로 취하는 모든 것을 고려하기 전에 완전한 결과를 제공합니다.
테이블은 이런 종류의 문제의 원인으로 잘 알려져 있습니다.
\documentclass{article}
\usepackage{expl3}
\usepackage{xparse}
\usepackage{longtable}
\ExplSyntaxOn
\NewDocumentCommand{\printData}{}
{
\begin{longtable}{l}
\hline
Minimal~Working~Example \\
\hline
\endhead
End \\
\hline
\endfoot
\clist_map_function:nN {comma,separated,list,of,data} \aejh_entry:n
\end{longtable}
}
\cs_new_protected:Nn \aejh_entry:n { #1 \\ \hline }
\ExplSyntaxOff
\begin{document}
\printData
\end{document}