软件包无法加载到独立子文件中

软件包无法加载到独立子文件中

我正在尝试启动我的第一个模块化 Latex 文件,并使用 Latex 的 Wikibook。我不知道我是否做错了什么,但我尝试查找有关它的信息,但没有找到任何东西。

我正在使用独立包,但子文件中的包未加载。在这种情况下,包\usepackage[showframe]{geometry}未加载。仅当我将其包含在主文件或 sty 文件中时,包才会加载。我做错了什么?

这些是我的文件:

主文本

\documentclass{book}
\usepackage{standalone}
\usepackage{mystyle}

\begin{document}
\input{./tex/dev.tex}
\end{document}

开发环境

\documentclass{standalone}
\usepackage{../mystyle}

\usepackage[showframe]{geometry}

\begin{document}

\begin{multicols}{2}
\begin{align}
    f(x) &= x^2+uv+u^3xy
\end{align}
\end{multicols}
\end{document}

mystyle.sty

\ProvidesPackage{mystyle}

\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{mathrsfs}
\usepackage{amsfonts}
\usepackage{tikz}
\usepackage{multicol}

\newcommand{\Tau}{\mathcal{T}}
\renewcommand{\r}{\mathbb{R}}
\newcommand{\q}{\mathbb{Q}}

答案1

根据standalone文档:

可以在主文档中使用独立包来跳过包含文件中的所有额外前言。主文件必须加载子文件所需的所有包和设置。

因此,需要加载主文件全部子文件所需的包。我的建议是将 放在\usepackage[showframe]{geometry}mystyle.sty

答案2

我遇到了同样的问题。Peter 的答案仍然有效,但截至今天,版本 v1.3a 有一个替代解决方案:subpreambles=true包选项standalone文档第 6.2 节说:

独立包在加载时默认删除所有子文件前言(“子前言”)。但是,如果使用子前言选项加载包,则所有子前言都存储在名为“〈maintex 文件名〉.sta”(代表独立包)的辅助文件中。该文件随后在下一次 LaTeX 运行开始时加载或处理(即在加载独立包的前言中的位置)。

相关内容