¿Newclude (todavía) es un buen paquete para usar?

¿Newclude (todavía) es un buen paquete para usar?

Se me ocurrió este mismo MWE mientras intentaba organizar mi código en varios archivos de sección para acelerar la compilación de un artículo de diario ( section¡s, no chapters!):

\documentclass{article}
\usepackage{filecontents}
%\usepackage{newclude}
\begin{filecontents}{\jobname-ext.tex}
    \section{A section}
    \label{sec:A}
    References to this section \ref{sec:A} do not work.
\end{filecontents}
\begin{document}
    \begingroup
    \let\clearpage\relax
    \include{\jobname-ext}
    \endgroup

    \section{Another section}
    No page break after section \ref{sec:A}, please!
\end{document}

Sorprendentemente (al principio), el resultado carece de referencias correctas. Es menos sorprendente verProblema de referencia cruzada al utilizar el comando include t para incluir varios archivosyEtiqueta de referencia con archivo incluido y página transparente relajada., En particular,esta respuesta.

Ahora, mirando las preguntas anteriores así comoReactivar “\clearpage” en LaTeX después de desactivarlo con “\let\clearpage\relax”, ni una sola respuesta o comentario (o pregunta) menciona el newcludepaquete, que ofrece un \include*comando que no emite un archivo \clearpage. Me pregunto si este es un paquete adecuado para usar, ya que no se ha actualizado.desde 1999.

Aquí hay otro fragmento de código que funciona sin redefinir \clearpage:

\documentclass{article}
\usepackage{filecontents}
\usepackage{newclude}
\begin{filecontents}{\jobname-ext.tex}
    \section{A section}
    \label{sec:A}
    References to this section \ref{sec:A} DO work.
\end{filecontents}
\begin{document}
    \include*{\jobname-ext}

    \section{Another section}
    No page break after section \ref{sec:A}, please!
\end{document}

Y aquí hay dos más que no lo hacen:

\documentclass{article}
\makeatletter
\def\include#1{\relax
  \ifnum\@auxout=\@partaux
    \@latex@error{\string\include\space cannot be nested}\@eha
  \else \@include#1 \fi}
\def\@include#1 {%
  %\clearpage
  \if@filesw
    \immediate\write\@mainaux{\string\@input{#1.aux}}%
  \fi
  \@tempswatrue
  \if@partsw
    \@tempswafalse
    \edef\reserved@b{#1}%
    \@for\reserved@a:=\@partlist\do
      {\ifx\reserved@a\reserved@b\@tempswatrue\fi}%
  \fi
  \if@tempswa
    \let\@auxout\@partaux
    \if@filesw
      \immediate\openout\@partaux #1.aux
      \immediate\write\@partaux{\relax}%
    \fi
    \@input@{#1.tex}%
    %\clearpage
    \@writeckpt{#1}%
    \if@filesw
      \immediate\closeout\@partaux
    \fi
  \else
    \deadcycles\z@
    \@nameuse{cp@#1}%
  \fi
  \let\@auxout\@mainaux}
\makeatother
\usepackage{filecontents}
\begin{filecontents}{\jobname-ext.tex}
    \section{A section}
    \label{sec:A}
    References to this section \ref{sec:A} do not work.
\end{filecontents}
\begin{document}
    \include{\jobname-ext}

    \section{Another section}
    No page break after section \ref{sec:A}, please!
\end{document}

y

\documentclass{article}
\usepackage{xpatch}
\makeatletter
\patchcmd{\@include}{\clearpage}{}{}{error}
\patchcmd{\@include}{\clearpage}{}{}{error}
\makeatother
\usepackage{filecontents}
\begin{filecontents}{\jobname-ext.tex}
    \section{A section}
    \label{sec:A}
    References to this section \ref{sec:A} do not work.
\end{filecontents}
\begin{document}
    \include{\jobname-ext}

    \section{Another section}
    No page break after section \ref{sec:A}, please!
\end{document}

información relacionada