sidenotes `module` afeta a página de título no OpTeX

sidenotes `module` afeta a página de título no OpTeX

Eu estava verificando esta solução de Max Chernoffhttps://tex.stackexchange.com/a/689656/14423sobre alinhamento vertical em notas de margem OpTeXe funciona perfeitamente. Agora, estou tentando com os comandos \tit, \author, \maketoce \parte notei que não importa onde eu os coloque, tal solução os afeta fazendo com que as páginas correspondentes tenham espaço para notas de margem:

\report
\fontfam[EB Garamond]

\margins/2 a4 (1,3,2,2)in

\typosize[10/11.5]

\parindent=0pt
\parskip=1ex

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%PART
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcount\partnum
\eoldef\part#1{\vfil\break
   \incr\partnum \_chapnum=0 \_chapx % reset counters
   \vglue100pt
   \incr\tocrefnum \dest[toc:\the\tocrefnum] % destination from TOC and outlines
   \centerline{\typosize[20/]\bf Part \the\partnum:\quad #1} % Title
   \_ewref\_Xtoc{{0}{part}{}{}#1} % TOC line, \part has level 0
   {\nopagenumbers \vfil\break}   % single page without pageno
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\tit My Title
\author By Me

\eject
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Table of contents
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\nonum\notoc\sec Contents
\maketoc
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%sidenotes, requiere sidenote.lua y sidenote.opm
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\addto\_begoutput{%
    \ifodd\pageno%
        \sidenote_side\right%
    \else%
        \sidenote_side\left%
    \fi%
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\load[sidenote]

\part First part

\chap My first chap
AAA

\lorem[1.]\sidenote{\lorem[1.]}

\lorem[2.]\sidenote{\lorem[2.]}

\def\_par{\let\_par=\par}
\lorem[3]\sidenote{\lorem[3.]}

\lorem[4.]\sidenote{\lorem[4.]}

\lorem[5.]\sidenote{\lorem[5.]}
\lorem[6.]\sidenote{\lorem[6.]}
\lorem[7.]\sidenote{\lorem[7.]}

\vfill\eject

\part Second part

\chap My second chapter

\sidenote_number=199
\def\sidenote_makemark{%
    \leavevmode%
    \raise 0.7ex%
    \hbox{\typosize[8/8]\romannumeral\sidenote_number}%
}

\def\sidenote_makeleft#1{%
    \hsize=2in\relax%
    \leftskip=0pt plus 1fill\relax%
    \rightskip=1in\relax%
    \it%
    \sidenote_makemark%
    #1%
    \vskip 1cm\relax%
}

\lorem[1.]\sidenote{\lorem[1.]}

\lorem[2.]\sidenote{\lorem[2.]}

\def\_par{\let\_par=\par}
\lorem[3]\sidenote{\lorem[3.]}

\lorem[4.]\sidenote{\lorem[4.]}

\lorem[5.]\sidenote{\lorem[5.]}
\lorem[6.]\sidenote{\lorem[6.]}
\lorem[7.]\sidenote{\lorem[7.]}

\bye

E isso produz isto:

Título

toc

FP

sp

Suspeito que não seja trivial, mas o que é necessário para que essas páginas não tenham espaço para notas marginais?

PS: Começo a pensar que também seria desejável que páginas destinadas a agradecimentos, bibliografia ou índice também não tivessem espaço para notas de margem.

Responder1

O problema aqui vem do \marginscomando e não depende diretamente das notas laterais (embora as notas laterais geralmente exijam margens irregulares para ter espaço suficiente). A solução é definir as margens iguais onde desejado:

\fontfam[EB Garamond]
\report

% Offset two-sided left/right margins by default
\margins/2 a4 (1,3,2,2)in

% Switch to equal single-sided margins
\def\evenmargins{%
    \margins/1 a4 (1,1,,)in
}

% Define a *really* basic "part" heading
\eoldef\part#1{
    \vfil\break
    {
        \evenmargins
        \centerline{\typosize[20/]\bf Part #1}

        {\noindent \it\lorem[1]}

        {\nopagenumbers \vfil\break}
    }
}

% Front matter
{
    \evenmargins
    \tit My Title
    \author By Me

    \vfill

    \nonum\notoc\sec Contents
    \maketoc

    \vfil\eject
}

% Document body
\part One

\chap One

\lorem[1-7]

\part Two

\chap Two

\lorem[1-7]

\bye

saída

Aqui, definimos um \evenmarginscomando que definirá as margens iguais em ambos os lados. Para garantir que ele se aplique apenas localmente, use-o dentro de um grupo que termine com uma quebra de página.

informação relacionada