我正在尝试稍微增加嵌套项目之间的间距。我不想更改项目之间的间距,只想更改项目中第一个项目之前和最后一个项目之后的间距。
after
和关键字before
似乎对最外层的项目化有用,但对嵌套的项目化无效。这是故意的吗?
下面是一个 MWE,它夸大了间距,以使其更清晰:
% ConTeXt 2016.05.19 13:43
\setupitemgroup[itemize][1][before={\blank[3*big]},after={\blank[3*big]}]
\setupitemgroup[itemize][2][before={\blank[3*big]},after={\blank[3*big]}]
\starttext
Text above
\startitemize
\item Big gap above? Yes
\startitemize
\item Big gap above? No
\item Big gap below? No
\stopitemize
\item Big gap below? Yes
\stopitemize
Text below
\stoptext
这将产生以下内容:
上面显示\blank[3*big]
fromafter
和before
关键字对最外层起作用,但对嵌套项目化没有效果。
我想要的可能吗?我尝试深入研究strc-itm.mkvi
,大概知道发生了什么,但我还是 ConTeXt 新手,所以我真的不知道我在寻找什么。
答案1
您必须使用以下方法将条目间距模式更改为 2 以外的其他模式:
% 0 = before/after
% 1 = between unless before
% 2 = between (default)
\c_strc_itemgroups_spacing_mode=0
我不太清楚这些功能到底是干什么的。它们没有文档记录,也没有高级接口。试试看吧。
\setupitemgroup[itemize][1][before={\blank[3*big]},after={\blank[3*big]}]
\setupitemgroup[itemize][2][before={\blank[3*big]},after={\blank[3*big]}]
\unprotect
% 0 = before/after
% 1 = between unless before
% 2 = between (default)
\c_strc_itemgroups_spacing_mode=0
\protect
\starttext
Text above
\startitemize
\item Big gap above? Yes
\startitemize
\item Big gap above? No
\item Big gap below? No
\stopitemize
\item Big gap below? Yes
\stopitemize
Text below
\stoptext