10 导言区中钩子无法生效?

发布于 2025-02-11 15:57:33

配置

Win11; TeXLive2024; VSCode; PDFLaTeX.

问题描述

从模板命令封装的角度出发,我欲定义一个带钩子(hook)的“API”命令 \my,使用户在导言区能够控制某些行为。

但事实是,\my 在导言区中无法调用hook,而放到正文区中则可以。

为啥呢。

尝试过的操作

本人明白从需求的角度出发、能有不用hook的简单方法,但该贴的重心即在讨论hook的行为.
  • 将hook的内容放在cls文件中:如上述描述所示
  • 将hook的内容直接放在导言区:如上述描述所示
  • \my的定义方式由\newcommand改为\newif:如上述描述所示

另外,lthooks-doc.pdf中也未找到相关解释(当然,不排除错读漏读)。

MWE

以控制列表环境的行为为例:

\documentclass{article}
\usepackage{enumitem}

\newcommand{\my}{}
\AddToHook{cmd/my/after}{
    \setlist{label=\roman*}
}

\my

\begin{document}

\begin{enumerate}
\item{tips 1}
\item{tips 2}
\end{enumerate}

\end{document}

查看更多

关注者
0
被浏览
207
Sagittarius Rover
Sagittarius Rover 2025-02-11
我要成为Typst糕手/(ㄒoㄒ)/~~

maybe related(不太确定)...

image.png

1 个回答

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览