\includestandalone 无法编译 \section 或 \subsection 命令

\includestandalone 无法编译 \section 或 \subsection 命令

主文本

\documentclass{scrartcl}

\usepackage{standalone}

\begin{document}
\section{A}

\includestandalone{Subfile}
\end{document}

子文件.tex

\documentclass[crop=false,float=true,class=scrartcl]{standalone}

\usepackage{standalone}

\begin{document}
\textbf{b}
\subsection{B}
\end{document}

结果

  • Subfile.tex 运行良好。
  • Main.tex 可以找到 Subfile.tex
  • 首次使用\section或 时出现 Main.tex 错误\subsection
  • 如果\input改用,Main.tex 可以正常工作。
  • 用 shell 逃逸进行测试,无济于事。

Shell 逃逸

使用 arara 进行 shell 逃逸尝试:

%  arara: lmkclean  
%  arara: pdflatex: {   draft: yes, shell: yes }  
%  arara: pdflatex: { synctex: yes, shell: yes }  
%  arara: lmkclean
\documentclass[crop=false,float=true,class=scrartcl]{standalone}

持续收到错误

(./子文件.tex

!LaTeX 错误:出现错误 — — 可能缺少 \item。

l.11 \subsection{B}

答案1

发生此错误的原因是子文件内容被装箱,这会导致分段命令出现问题。如果您更改,\includestandalone{Subfile}则会\mbox{\input{Subfile}}出现相同的错误。

按照\includestandalone独立图表的用途,它将内容装箱。实际上,它添加了一个 .tex-Driver,\includegraphics以便它也可以添加 TeX 代码作为“图形”。这会添加一个框。

其实没有办法解决这个问题。我建议改用\input\include。使用后者,您可以\includeonly{..}在序言中使用部分编译。

相关内容