当我尝试在 TeXstudio 中“构建和查看”或“编译”standalone
文件时,出现了一些意外行为。mysubfile.tex
结果是预期的行为:
- 打开 TeXstudio 的新会话
- 打开仅有的
mysubfile.tex
(位于仅包含此文件的文件夹中mymainfile.tex
) - 构建并查看(或编译)
- 产生的消息输出:
- 并
mysubfile.pdf
生成仅裁剪的文本“一些子文件文本”。
正如预期的那样。
但以下结果是意外行为:
如果我随后mymainfile.tex
在 TeXstudio 中打开,重新选择mysubfile.tex
窗口,然后构建和查看,那么:
mymainfile.pdf
:
我明白了相同的输出即使我随后mymainfile.tex
在 TeXstudio 中关闭,删除项目文件夹中生成的所有文件(以便只保留mymainfile.tex
和mysubfile.tex
),然后构建和查看mysubfile.tex
。什么!?TeXStudio 不知何故意识到这不是一个新的会话。
我查看了 TeXstudio 命令配置
问题 1:TeXstudio 如何决定通过哪个文件名(mymainfile
或mysubfile
)传递给 pdflatex%
问题2:我该如何修复这个问题,以便当我mysubfile.tex
选择窗口构建和查看时,mysubfile
将其传递给 pdflatex 而不是mymainfile
?
我的主文件.tex
\documentclass{article}
\usepackage{standalone}
\begin{document}
My main file text.
\input{mysubfile.tex}
\end{document}
我的子文件
\documentclass{standalone}
\begin{document}
Some subfile text
\end{document}
答案1
从 2.8.10 版本开始,用于设置显式根文档的加速键不再起作用。
但是,TeXStudio 支持魔术注释(在文档开头)
% !TeX root = FILENAME.tex
允许设置使用的文件选项 > 根文档 > 自动检测已启用。
因此,基本上,根文档解析顺序是
- 明确设置的文件,如设置选项 > 根文档 > 将当前文档设置为显式根
- 魔术注释指示的文件
% !TeX root
。 - 通过分析当前打开的文件检测到的根文件。
答案2
选择subfile.tex
> ALT + O + M > 构建和查看。