上下文中的节标题出现双点

上下文中的节标题出现双点

使用解决方案后这里对于文中不带点的引用,节标题将章节和节号之间的点加倍:

在此处输入图片描述

\setuphead[chapter][
    alternative=middle, 
    style={\tfb\bf},
    after={\blank[24pt]},
    ]


\defineprocessor[dostopper][right=.]
\defineprocessor[nostopper][right=]

\defineconversionset[stopperconversionyes][][dostopper->n]
\defineconversionset[stopperconversionnop][][nostopper->n]

\setuphead[section][sectionconversionset=stopperconversionyes]

%\setupreferencestructureprefix[section][default][prefixconversionset=stopperconversionnop]
\setupreferencestructureprefix[default][prefixconversionset=stopperconversionnop]

\starttext

\chapter{asdf}
\section[one]{First heading}

In \in{section}[one] we learn.

\stoptext

在这种情况下,它可以与章节配合使用;如果我在文本中不使用章节,它可以与章节配合使用。

答案1

如果我理解正确的话,您希望节号以点结尾,但引用不带点。在这种情况下,您只需调用键即可numbercommand添加所需的任何内容:\groupedcommand{}{.}非常方便,您无需定义特别指定宏只是为了添加一个点。

\setuphead[chapter][
    alternative=middle, 
    style={\tfb\bf},
    after={\blank[24pt]},
    ]

%\groupedcommand{#before}{#after}{#content}
\setuphead[section][numbercommand={\groupedcommand{}{.}}]
\starttext

\chapter{Capítulo}
\section[one]{Primer encabezado}

En la \in{sección}[one] aprenderemos.

\stoptext

在此处输入图片描述

答案2

另一个解决方案是维基百科

\def\Dot#1{#1.}
\setuphead[section][numbercommand=\Dot]
\setuplist[section][numbercommand=\Dot]
\setuplist[subsection][numbercommand=\Dot]
\setuplist[subsubsection][numbercommand=\Dot]

\starttext

\completecontent

\section{abc}
\subsection{def}

\stoptext

相关内容