Potize s generovanim obsahu

Matous Jan Fialka fialka.tex at seznam.cz
Tue Jan 18 13:28:55 CET 2005


Dobry den,

inspirovan TBN jsem si napsal (opsal) makra na generovani obsahu, ale kdyz
se stane, ze se nadpis sekce ocitne jako prvni vec na strance po strankovem
zlomu, tak je tam cislo z minule strany. Nechapu proc. Nasledujici makro je
to, ktere, kdyz je na zacatku stranky, tak vypise (viz DEBUG: \the\pageno)
spatne cislo strany a tudis se mi spatne cislo strany dostane i do obsahu.

Makro \toc#1#2#3{...} jen zapisuje do souboru nejakou tu
\tocline{...}{...}{\the\pageno}, ale neuvadim jej, nebot chyba neni zjevne v
nem.

---CUT---
\catcode`@=11

\def\n at par{\everypar{\setbox0=\lastbox\everypar{}}}

\newcount\chapternum \chapternum=0
\newcount\subchapternum \subchapternum=0
\newcount\subsubchapternum \subsubchapternum=0
\newtoks\varsubsubchapter \varsubsubchapter={}

\def\subsubchapter #1 \par{
  \advance\subsubchapternum by1
  \varsubsubchapter={#1}
  \toc
    {\the\chapternum.\the\subchapternum.\the\subsubchapternum}
    {\the\varsubsubchapter}
    {\the\pageno}
  \basevskip\baselineskip
  \noindent
  \bgroup
    \b\the\chapternum.\the\subchapternum.\the\subsubchapternum\ifczech.\fi
    \space
    \the\varsubsubchapter DEBUG: \the\pageno
  \egroup
  \hfil\break
  \n at par
  \nobreak
}

% Jen pro doplneni i ten \basevskip

\def\basevskip{%
  \par\ifdim\prevdepth>\z@%
  \vskip-\prevdepth\fi\begingroup\afterassignment\bas at vskip\skip@=}
\def\bas at vskip{\vskip\skip@\endgroup\prevdepth\z@}

\catcode`@=12
---CUT---

Nasledujici makra by na to snad mohla mit vliv, ale nevim. Nemuzu na to
vubec prijit (\ifthishead a \ifthistail jsou moje interni promenne, nemely
by mit vliv na dany problem).

---CUT---
\def\plainoutput{\shipout\vbox{%
  \ifodd\pageno\moveright\else\moveleft\fi-\hpush%
  \vbox{\makeheadline\pagebody\makefootline}}%
  \global\thisheadtrue\global\thistailtrue%
  \advancepageno\ifnum\outputpenalty>-20000\else\dosupereject\fi}
---CUT---

Nemuzu na to prijit uz neprirozene dlouho, asi jsem musel oslepnout, ze tu
nejpis banalni chybu nevidim. Budu opravdu vdecny, kdyz mi nekdo sunda ty
klapky z oci.

S pozdravem a s diky,

--
Matou\v{s} Jan Fialka aka Nakladatelstv\'{i} Ligatura
-----------------------------------------------------
Private E-Mail:       < mjf [at] ligatura [dot] org >
Home Page:               [ http://www.ligatura.org/ ]
Linux User Number:    308523 Peace, TeX and GNU/Linux
-----------------------------------------------------



More information about the csTeX mailing list