Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Problem mit Registerhaltigkeitseingabe (mit Minimalbeispiel)

6 views
Skip to first unread message

Markus Gail

unread,
May 22, 2021, 6:19:17 AM5/22/21
to
Hallo!

Das nachfolgende Minimalbeispiel funktioniert problemlos mit TeXLive-2015
und -2016, ab TeXLive-2019 gibt es Probleme mit der Kapitelüberschrift.

Bei einem Buchprojekt kommt die Fehlermeldung, daß das fehlende \endcsname
eingefügt wurde. Beim Minimalbeispiel kommt \undefined control sequence.

Ich fürchte, ich habe zuwenig Ahnung, um das in Ordnung zu bringen. Kann
jemand helfen?

Danke!

Gruß
M.


%!TEX encoding = UTF-8 Unicode

\documentclass[11pt]{book}

\usepackage{lipsum}



%% Registerhaltigkeit

\makeatletter

\newbox\tmpboxa
\newbox\tmpboxb
\newdimen\tmpdimena
\renewcommand*{\@makechapterhead}[1]{%
\use@chapter@o@preamble%
\setbox\tmpboxa=\vbox{\@@makechapterhead{#1}}%
\tmpdimena=\ht\tmpboxa \advance\tmpdimena by\dp\tmpboxa
\advance\tmpdimena by.9999\normalbaselineskip
\divide\tmpdimena by\normalbaselineskip
\multiply\tmpdimena by\normalbaselineskip
\vbox to\tmpdimena{\unvbox\tmpboxa\vfill\vbox to0pt{\hbox{\
\hskip3cm}\vss}}%
\use@preamble{chapter@u}\nobreak%
\nointerlineskip

}

\def\@sect#1#2#3#4#5#6[#7]#8{%
\ifnum #2>\c@secnumdepth
\let\@svsec\@empty
\else
\refstepcounter{#1}%
\protected@edef\@svsec{\@seccntformat{#1}\relax}%
\fi
\setbox\tmpboxa=\vbox{%
\@tempskipa #5\relax
\ifdim \@tempskipa>\z@
\begingroup
#6{%
\@hangfrom{\hskip #3\relax\@svsec}%
\interlinepenalty \@M #8\@@par}%
\endgroup
\else
\def\@svsechd{%
#6{\hskip #3\relax
\@svsec #8}%
}%
\fi
}%
\tmpdimena=\ht\tmpboxa \advance\tmpdimena by\dp\tmpboxa
\advance\tmpdimena by\normalbaselineskip
\divide\tmpdimena by\normalbaselineskip
\multiply\tmpdimena by\normalbaselineskip
\vbox to\tmpdimena{\vfill\unvbox\tmpboxa\vbox
to0pt{\hbox{\ \hskip 3cm}\vss}}%
\csname #1mark\endcsname{#7}%
\addcontentsline{toc}{#1}{%
\ifnum #2>\c@secnumdepth \else
\protect\numberline{\csname the#1\endcsname}%
\fi
#7}%
\@xsect{#5}\nointerlineskip}

\def\@xsect#1{%
\@tempskipa #1\relax
\ifdim \@tempskipa>\z@
\par \nobreak
\setbox\tmpboxa=\vbox{\vskip \@tempskipa}%
\tmpdimena=\ht\tmpboxa \advance\tmpdimena by\dp\tmpboxa
\advance\tmpdimena by.5\normalbaselineskip
\divide\tmpdimena by\normalbaselineskip
\multiply\tmpdimena by\normalbaselineskip
\vbox to\tmpdimena{\vbox
to0pt{\hbox{}\vss}\unvbox\tmpboxa\vfill}%
\@afterheading
\else
\@nobreakfalse
\global\@noskipsectrue
\everypar{%
\if@noskipsec
\global\@noskipsecfalse
{\setbox\z@\lastbox}%
\clubpenalty\@M
\begingroup \@svsechd \endgroup
\unskip
\@tempskipa #1\relax
\hskip -\@tempskipa
\else
\clubpenalty \@clubpenalty
\everypar{}%
\fi}%
\fi
\ignorespaces}

\makeatother

%% Registerhaltigkeit Ende


\begin{document}

\chapter{Lorem ipsum}

\section{Dolor sit amet}

\lipsum

\chapter{Lorem ipsum}

\section{Dolor sit amet}

\lipsum

\end{document}


Ulrike Fischer

unread,
May 22, 2021, 6:42:00 AM5/22/21
to
Am Sat, 22 May 2021 10:19:15 -0000 (UTC) schrieb Markus Gail:

> Hallo!
>
> Das nachfolgende Minimalbeispiel funktioniert problemlos mit TeXLive-2015
> und -2016, ab TeXLive-2019 gibt es Probleme mit der Kapitelüberschrift.
>
> Bei einem Buchprojekt kommt die Fehlermeldung, daß das fehlende \endcsname
> eingefügt wurde. Beim Minimalbeispiel kommt \undefined control sequence.
>
> Ich fürchte, ich habe zuwenig Ahnung, um das in Ordnung zu bringen. Kann
> jemand helfen?

>
> \use@chapter@o@preamble%


Der Befehl gehört(e) zu scrbook, dein Beispiel, das book benutzt,
funktioniert mit Sicherheit auch nicht in texlive 2015.

Falls das echte Dokument scrbook verwendet, kann das vielleicht
funktioniert haben, aber das KOMA intern sich massiv geändert hat,
würde ich nicht darauf bauen, dass es das immer noch tut.

Der Code muss wahrscheinlich grundlegend neu geschrieben werden.



--
Ulrike Fischer
http://www.troubleshooting-tex.de/

Markus Gail

unread,
May 22, 2021, 6:48:46 AM5/22/21
to
On 22. May 2021 at 12:41:57 CEST, "Ulrike Fischer" <ne...@nililand.de>
wrote:

>> Das nachfolgende Minimalbeispiel funktioniert problemlos mit TeXLive-2015
>> und -2016, ab TeXLive-2019 gibt es Probleme mit der Kapitelüberschrift.
>>
>> Bei einem Buchprojekt kommt die Fehlermeldung, daß das fehlende \endcsname
>> eingefügt wurde. Beim Minimalbeispiel kommt \undefined control sequence.
>>
>> Ich fürchte, ich habe zuwenig Ahnung, um das in Ordnung zu bringen. Kann
>> jemand helfen?
>
>>
>> \use@chapter@o@preamble%
>
>
> Der Befehl gehört(e) zu scrbook, dein Beispiel, das book benutzt,
> funktioniert mit Sicherheit auch nicht in texlive 2015.


Stimmt, hatte ich im Minimalbeispiel vergessen zu ändern.

Für mein Buchprojekt verwende ich scrbook.


> Falls das echte Dokument scrbook verwendet, kann das vielleicht
> funktioniert haben, aber das KOMA intern sich massiv geändert hat,
> würde ich nicht darauf bauen, dass es das immer noch tut.
>
> Der Code muss wahrscheinlich grundlegend neu geschrieben werden.


Mmh, das wäre schade.

Trotzdem danke für die schnelle Rückmeldung!

Gruß
M.


Marcus Gloeder

unread,
Dec 11, 2021, 12:29:34 AM12/11/21
to
Am 22.05.21 12:19, schrieb Markus Gail
>%% Registerhaltigkeit
>[ziemlich viel Code]
>%% Registerhaltigkeit Ende

Hallo alle zusammen,

gibt es eigentlich einen einfachen Befehl, der beispielsweise über
\usepackage ladbar ist und der über Optionen zur Einstellung eines
Grundlinienrasters verfügt?

Aus Interesse
Marcus

--
PMs an: m.gl...@gmx.de
0 new messages