导入与父文件同名的文件时超出 TeX 容量

导入与父文件同名的文件时超出 TeX 容量

我可以发誓这以前是有效的,因为我没有更改我的 makefile 或文件名。现在,在对 texlive 进行更新后,当父文件(名为 )index.tex尝试从下层文件夹(碰巧也被称为 )进行子导入时,我收到错误index.tex

>ls -l index.tex
index.tex

>ls -l folder/index.tex
folder/index.tex

我确信这以前是可行的,因为在我的源代码树中多年来都是这样。现在它编译失败了。这是一个 MWE

文件名为index.tex

\documentclass[11pt]{report}%        
\usepackage{standalone}   
\usepackage{import}

\begin{document}   
\subimport{folder/}{index} 
\end{document}

在子文件夹中,folder/我有一个子文件index.tex

%file  folder/index.tex
\documentclass[12pt]{article}%
\usepackage{standalone} 
\standalonetrue

\begin{document} 
test
\end{document}

当我编译父级时index.tex,我得到了这个

lualatex index.tex
This is LuaTeX, Version 0.95.0 (TeX Live 2016) 
 restricted system commands enabled.
(./index.tex
LaTeX2e <2016/03/31> patch level 3
Babel <3.9r> and hyphenation patterns for 1 language(s) loaded.
(/usr/local/texlive/2016/texmf-dist/tex/latex/base/report.cls
.
.
(/usr/local/texlive/2016/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty))
(/usr/local/texlive/2016/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg))
ABD: EveryShipout initializing macros (./index.tex (./index.tex (./index.tex
(./index.tex (./index.tex (./index.tex (./index.tex (./index.tex (./index.tex
(./index.tex (./index.tex (./index.tex (./index.tex (./index.tex
! TeX capacity exceeded, sorry [text input levels=15].
<argument> index 

l.8 \subimport{folder/}{index}

 326 words of node memory still in use:
   1 hlist, 1 rule, 1 dir, 5 glue, 39 glue_spec, 2 write, 1 pdf_colorstack node
s
   avail lists: 2:15,3:1,4:1,5:4,7:2,8:1,9:3
!  ==> Fatal error occurred, no output PDF file produced!
Transcript written on index.log.

我可以通过将孩子重命名为index_1.tex 名字不再相同来解决这个问题。

我的问题是:父文件和子文件可以同名吗?

我使用 index.tex 做很多事情,并使用 standalone 将所有文件拉到一个文档中。我现在不想重命名所有文件并更改 makefile。这以前有用吗?(否则我的树以前是如何构建的?)

使用 texlive 2016,刚刚进行了完整更新。

答案1

这是记录的行为(至少从 TL14 开始就没有改变过):

根据您的 TEX 系统的配置方式,如果当前目录或 TEXINPUTS 路径中存在与导入文件同名的文件,则将优先读取该文件而不是导入目录中的文件。

为了避免这种情况,您必须使用带星号的命令版本:

为了避免在导入文件时搜索 TEXINPUTS 路径,请使用命令的“星号”版本:“\import*”和“\subimport*”。

这可能会产生副作用,因为导入的文档将不再在 texmf 树中找到文件。例如,在这里你遇到了fd-files 的问题: https://tex.stackexchange.com/a/309504/2388。因此,您必须选择对您来说更重要的功能。

相关内容