Vermeiden Sie eine neue Seite vor einem bestimmten Abschnitt in ConTeXt

Vermeiden Sie eine neue Seite vor einem bestimmten Abschnitt in ConTeXt

Ich habe es aktiviert, in jedem Abschnitt eine leere Seite einzufügen:

\setuphead[section][page=yes]

Ich möchte, dass nach bestimmten Abschnitten keine leere Seite eingefügt wird:

Z.B.

\section{Section 1}%starts a new page after
bla...
\section{Section 2}% I need this section does not start a new page
bla...

Antwort1

Eine andere Möglichkeit könnte darin bestehen, einen neuen Abschnittsbefehl zu definieren:

\setuphead[section][page=yes]

\definehead[sectionnopage][section][page=no]

\starttext
Some text here.
\section[title=Section 1]
bla...
\sectionnopage[title=Section 2]
bla...
\stoptext

Antwort2

Sie können \disablepagebreaksden Abschnitt in einer Gruppe verwenden, aber ich weiß nicht, ob dies irgendwelche Nebenwirkungen hat.

\setuphead[section][page=yes]

\starttext

\section{Section 1}
bla...

{\disablepagebreaks\section{Section 2}}
bla...

\stoptext

Es scheint kein Gegenstück zu zu geben \disablepagebreaks. Es ist trotzdem möglich, eines zu definieren, aber denken Sie daran, dass dies nicht unterstützt wird und zu unerwarteten Fehlern führen kann.

\unprotect
\let\normal_page_breaks_process\page_breaks_process
\unexpanded\def\enablepagebreaks%
    {\let\page_breaks_process\normal_page_breaks_process}
\protect

\setuphead[section][page=yes]

\starttext

\section{Section 1}
bla...

\disablepagebreaks
\section{Section 2}
\enablepagebreaks
bla...

\stoptext

verwandte Informationen