fleqn.clo y fleqn.sty

fleqn.clo y fleqn.sty

Por favor, eche un vistazo a este MWE:

\documentclass{JHEP}

\usepackage{fleqn}

 \author{me} 
 \abstract{a}
 \title{t}

\begin{document}
\begin{equation}
a = b+1
\end{equation}
\end{document}

como sea que funcione, recibí una advertencia

ingresando fleqn.cloen lugar de obsoletofleqn.sty

¿Cuál es la diferencia entre .clo y .sty? Si lo uso fleqncomo opción de clase de documento en lugar del paquete, se ignora. ¿Por qué?

Mi última pregunta, también recibí una advertencia.

Ha solicitado la clase de documento JHEP, pero la clase de documento proporciona JHEP3.

usando esta clase. ¿Porqué es eso?

JHEPaquí

Respuesta1

Este es (aparte de un banner inicial que es irrelevante) el contenido de fleqn.sty:

\@obsoletefile{fleqn.clo}{fleqn.sty}
\input{fleqn.clo}
\endinput

Esto se proporciona porque es posible que algunas personas aún tengan documentos LaTeX 2.09 con una \documentstylelínea inicial, donde los paquetes se daban como opción para este comando y necesitaban, para ello, la .styextensión.

No cargue este archivo si está utilizando una clase especializada como JHEPla que está destinada a envíos a una revista. O la clase brinda soporte para la fleqnopción o no, en cuyo caso los administradores de la revista no estarán contentos si la usa.

En realidad, la clase soporta la opción, porque tiene

\DeclareOption{fleqn}{\@OImess{}}   %\input{fleqn.clo}} IGNORED ...

seguido por

\newcommand\@OImess[1]{\JHEP@ignol{OPTION '\CurrentOption'#1}}

que simplemente le dirá que la opción se ignora. Cargar fleqn.clode todos modos probablemente resultaría en algo malo.

Finalmente la advertencia que recibes es porque la clase tiene nombre JHEP.cls, pero tiene

\ProvidesClass{JHEP3} [2003/01/03 v3.1.2 LaTeX document class - F.N.]

Por tanto, es culpa de ellos.

Respuesta2

No hay ninguna diferencia aparte de la advertencia. Antes de LaTeX2e (es decir, antes de 1993), la sintaxis de látex 2.09 era

\documentclass[fleqn,longtable,12pt]{article}

no había separación \documentclasso \usepackage.

Entonces, al convertir de LaTeX2.09 a LaTeX2e, la mayoría de las "opciones" antiguas se convirtieron en paquetes que se cargaban como

\usepackage{longtable}

Pero las opciones integradas ( 12pty fleqnaquí) permanecieron como opciones. La gente a menudo se equivocaba, por lo que fleqn.styse agregó para que cualquiera de las sintaxis funcionara, pero con una advertencia.

información relacionada