我想使用\component
ConTeXt 中的和相关命令,而且它似乎很合适。但是,我希望为给定组件设置多个参数,例如
\startcomponent X
\sometexcommand{name} % where name is a parameter that varies the component
\stopcomponent
实现这一点的一种方法可能是将 Lua 变量设置为副作用,但我想知道是否有办法直接将参数传递给组件,例如
\component[X][name=123]
然后使用类似\structureuservariable{name}
如果某个组件不适合这样做,是否有合理的替代方案?
答案1
组件不接受参数,但是模块做。
另存为t-X.tex
(t-
代表第三方)
\startmodule X
\sometexcommand{\currentmoduleparameter{name}} % where name is a parameter that varies the component
\stopmodule
并在主文档中使用该模块。
\starttext
\usemodule[X][name=123]
\stoptext
这当然不会编译,因为\sometexcommand
未定义。