ConTeXt:交叉引用和设置头

ConTeXt:交叉引用和设置头

我尝试对\setuphead命令进行一些调整,以便让各节按我想要的方式显示。特别是,小节标题显示时不显示节号。

但是,当我\in引用此小节时,我希望看到整个数字,例如以下 MWE 中的 I.1。

\setuppapersize[A4][A4]
\setuphead[section][sectionsegments=section, conversion=Romannumerals]
\setuphead[subsection][margin=1cm, sectionsegments=subsection, conversion=numbers]
\starttext
\section{One}
\subsection[sec:oneone]{One-one}
Text
\subsection{One-two}
Text
\section{Two}
\subsection{Two-one}
Text reference to one-one should be I.1 and it is only 1 : \in[sec:oneone]
\subsection{Two-two}
Text
\stoptext

这在 ConTeXt 中可以实现吗?

答案1

在上下文中当然可以实现。上下文的主要问题是找出方法,因为文档很少,如果你找到例子,它们也很少解释底层概念。下面的方法似乎有效,但我不知道为什么必须使用sectionconversionset而不是conversion(在参考文献中没有给出罗马数字)。我也不明白的确切语法prefixsegments

\definestructureconversionset [myset]
 [
   Romannumerals,
   Romannumerals,
   Romannumerals,
 ]
 [numbers]
\setuphead [sectionconversionset=myset]
\setuppapersize[A4][A4]
\setuphead[section][sectionsegments=section]
\setuphead[subsection][margin=1cm, sectionsegments=subsection]
\setupreferencestructureprefix [subsection][default] [prefixsegments=section:*]
\starttext
\section{One}
\subsection[sec:oneone]{One-one}
Text
\subsection{One-two}
Text
\section{Two}
\subsection{Two-one}
Text reference to one-one should be I.1 and it is only 1 : \in[sec:oneone]
\subsection{Two-two}
Text
\stoptext 

在此处输入图片描述

附言:

\startsection我认为如果你使用/会更像上下文\stopsection

相关内容