我添加了自己的textmf.cnf
,并设置为在 中TEXMFCNF
指向它。 可以正确找到它。我的:export TEXMFCNF=path:
.zshrc
kpsewhich
texmf.cnf
stack_size=150000
当我跑步时latexmk -synctex=1 -interaction=nonstopmode -file-line-error -xelatex main.tex
我有./main.tex:6: TeX capacity exceeded, sorry [parameter stack size=20000].
当我在包中使用此功能并导入到 TeX 文件中时,出现错误:
\renewcommand*{\titlepage}[2]{
\begin{titlepage}
\newgeometry{
top=10mm,
bottom=10mm,
left=10mm,
right=10mm
}
\begin{center}
Федеральное государственное автономное\\
образовательное учреждение\\
высшего образования\\
<<СИБИРСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ>>\\[5mm]
Институт космических и информационных технологий\\
кафедра <<Прикладная информатика>>\\
\vfill
{\Large\textbf{ОТЧЁТ ПО ЛАБОРАТОРНОЙ РАБОТЕ}}\\[3mm]
#1\\
\end{center}
\vfill
\begin{tabular}{l c m{0.01\textwidth} l}
Преподаватель & \rule{3cm}{0.1pt} & & #2 \\[20mm]
Студент группы КИ 20-14б, № з/к 1234567 & \rule{3cm}{0.1pt} & & С.~С.~Студентов \\
\end{tabular}
\vfill
\begin{center}
Красноярск {\the\year}
\end{center}
\end{titlepage}
\restoregeometry
}
答案1
该错误与param_size
以下内容无关stack_size
:
param_size = 20000 % simultaneous macro parameters, also applies to MP
你是非常除非你有一个无限循环会消耗掉所有可用的堆栈空间,否则不太可能需要这么大的堆栈。在这种情况下,扩大堆栈不会有帮助。
答案2
这是使用 LaTeX 编程时的基本概念\begin{env}
,即在某个时候执行命令\env
。
你基本上是在做
\renewcommand{\titlepage}{...\titlepage...}
\titlepage
这将超出任何给定的内存量,因为它是一个无限循环,在内存中积累标记并且永不结束;在文档中执行时进入循环。
改为做\newcommand{\mytitlepage}{...}
。