Слишком много места после `\start...`

Слишком много места после `\start...`

У меня есть этот файл:

\newdimen\cslhangindent
\cslhangindent=1.5em
\definestartstop [cslreferences] [
        before={%
        \setupnarrower[left=\cslhangindent]
        \startnarrower[left]%
        \setupindenting[-\leftskip,yes,first]%
        \indentation%
      },
      after=\stopnarrower,
    ]

\starttext

\section{Some title}

\input ward

\section{References}

\startcslreferences

\dorecurse{10}{\dorecurse{10}{This is a Test. }\par}

\stopcslreferences

\stoptext

Пропуск после \section{References}больше, чем после \section{Some title}. Почему так? Если я удалю пустую строку после \startcslreferences, пропуски будут идентичны.

Есть ли способ решить эту проблему \definestartstop?

решение1

Проблема в \indentationоператоре, который немедленно заставляет разместить отступ, но вам нужен отступ только в начале абзаца, поэтому вместо этого используйте \doindentation.

\definemeasure[cslhangindent][1.5em]
\definestartstop
  [cslreferences]
  [before={%
     \setupnarrower[left=\measure{cslhangindent}]
     \startnarrower[left]%
     \setupindenting[-\leftskip,yes,first]%
     \doindentation%
   },
   after=\stopnarrower]

\starttext

\section{Some title}

\input ward

\section{References}

\startcslreferences

\dorecurse{10}{\dorecurse{10}{This is a Test. }\par}

\stopcslreferences

\stoptext

Связанный контент