아래 표에는 1개 이상의 행이 포함된 파일이 포함되어 있습니다. 행 수가 10000이면 다음 메시지가 출력에 표시되고 컴파일이 실패하게 됩니다. }를 삽입하지 않는 방법에 대한 아이디어가 있습니까?
! Missing } inserted.
<inserted text>
}
l.10001 0
6-Jun-2014 & Chq - \#9113 & 60.60 & & 3,564,175.18 \\
! Argument of \LT@max@sel has an extra }.
<inserted text>
\documentclass{article}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage{framed}
\usepackage{float}
\usepackage{lipsum}
\usepackage{import}
\usepackage{longtable}
\usepackage{tabu}
\usepackage[table]{xcolor} % loads also »colortbl«
\usepackage{pgf}
\usepackage[top=0.4in, bottom=0.5in, left=0.1in, right=0.1in, tmargin = 0.9in] {geometry}
\usepackage{lastpage}
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
% define lightgray
\definecolor{lightgray}{gray}{0.9}
\definecolor{darkgray}{gray}{0.5}
\definecolor{darkgreen}{RGB}{0,63,55}
\let\oldlongtabu\longtabu
\let\endoldlongtabu\endlongtabu
\newenvironment{newlongtabu}{\rowcolors{2}{white}{white}
\oldlongtabu} {\endlongtabu}
\renewenvironment{longtabu}{
\rowcolors{2}{white}{lightgray}
\oldlongtabu} {\endoldlongtabu}
\begin{document}
\newdimen\mylength
\setlength{\mylength}{7.0in}
{\small \tabulinesep=1.2mm
\begin{longtabu}to\textwidth{Xp{10.0cm}rrr}
\rowcolor{lightgray}
\textbf{col1} & \textbf{col2} & ~ & ~ & col5 \\
\rowcolor{white}\\
\endfirsthead
\rowcolor{lightgray}
\textbf{col1} & \textbf{col2} & ~ & ~ & co5 \\
\rowcolor{white}\\
\endhead
\endfoot
\endlastfoot
\input blah_short.tex
\end{longtabu}
}
\end{document}
blah_short에는 다음이 포함됩니다.
blah & blah & blah & blah & blah \\
blah & blah & blah & blah & blah \\
blah & blah & blah & blah & blah \\
blah & blah & blah & blah & blah \\
blah & blah & blah & blah & blah \\
blah & blah & blah & blah & blah \\
일반 행의 행 개수는 10000개를 넘습니다.
답변1
입력 파일을 11001개의 동일한 행으로 확장하면 Tabu에서 메모리 부족 오류가 발생합니다.
! TeX 용량을 초과했습니다. 죄송합니다. [주 메모리 크기=5000000]. 당신이 보여주는 오류보다는?
기본 longtable 코드는 본질적으로 임의의 길이 테이블(pdftex 및 pdf 형식에 의해 부과된 최대 문서 길이)에 대처하도록 설계되었습니다.
같은 것
\documentclass{article}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage{framed}
\usepackage{float}
\usepackage{lipsum}
\usepackage{import}
\usepackage{longtable}
\usepackage[table]{xcolor} % loads also »colortbl«
\usepackage{pgf}
\usepackage[top=0.4in, bottom=0.5in, left=0.1in, right=0.1in, tmargin = 0.9in] {geometry}
\usepackage{lastpage}
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
% define lightgray
\definecolor{lightgray}{gray}{0.9}
\definecolor{darkgray}{gray}{0.5}
\definecolor{darkgreen}{RGB}{0,63,55}
\begin{document}
\newdimen\mylength
\setlength{\mylength}{7.0in}
{\small
\begin{longtable}{p{5cm}p{10.0cm}rrr}
\rowcolor{lightgray}
\textbf{col1} & \textbf{col2} & ~ & ~ & col5 \\
\rowcolor{white}\\
\endfirsthead
\rowcolor{lightgray}
\textbf{col1} & \textbf{col2} & ~ & ~ & co5 \\
\rowcolor{white}\\
\endhead
\endfoot
\endlastfoot
\input blah_short.tex
\end{longtable}
}
\end{document}
답변2
필요한 경우 테이블을 만드는 동안 카운터를 longtabu
재정의하여 대규모 데이터 세트에 작업 공간을 제공할 수 있습니다 .LTChunkSize
\documentclass{article}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage{framed}
\usepackage{float}
\usepackage{lipsum}
\usepackage{import}
\usepackage{longtable}
\usepackage{tabu}
\usepackage[table]{xcolor} % loads also »colortbl«
\usepackage{pgf}
\usepackage[top=0.4in, bottom=0.5in, left=0.1in, right=0.1in, tmargin = 0.9in] {geometry}
\usepackage{lastpage}
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
% define lightgray
\definecolor{lightgray}{gray}{0.9}
\definecolor{darkgray}{gray}{0.5}
\definecolor{darkgreen}{RGB}{0,63,55}
\let\oldlongtabu\longtabu
\let\endoldlongtabu\endlongtabu
\newenvironment{newlongtabu}{\rowcolors{2}{white}{white}
\oldlongtabu} {\endlongtabu}
\renewenvironment{longtabu}{
\rowcolors{2}{white}{lightgray}
\oldlongtabu} {\endoldlongtabu}
\begin{document}
\newdimen\mylength
\setlength{\mylength}{7.0in}
{\small \tabulinesep=1.2mm
\begin{longtabu}to\textwidth{Xp{10.0cm}rrr}
\rowcolor{lightgray}
\textbf{col1} & \textbf{col2} & ~ & ~ & col5 \\
\rowcolor{white}\\
\endfirsthead
\rowcolor{lightgray}
\textbf{col1} & \textbf{col2} & ~ & ~ & co5 \\
\rowcolor{white}\\
\endhead
\endfoot
\endlastfoot
\setcounter{LTchunksize}{250000}
\input blah_short.tex
\end{longtabu}
}
\end{document}
그러면 \setcounter{LTchunksize}{250000}
250000개 레코드의 테이블 크기가 허용됩니다. 이것을 200000 라인 입력 파일 및 lualatex와 결합하면 컴파일하는 동안 몇 분 동안 1.2GB 메모리 공간을 볼 수 있습니다.