Problema con mi plantilla

Problema con mi plantilla

Para todos mis documentos, creé un archivo template.tex que se importa en todos mis archivos. Pero dice que tengo esos problemas:

/home/rperrod/rp/PERSO/LaTeX/Test/template/t.tex:20: Undefined control sequence. [  \setlength{\footheight}{10mm}]
/home/rperrod/rp/PERSO/LaTeX/Test/template/t.tex:20: LaTeX Error: Missing \begin{document}. [  \setlength{\footheight}{10mm}]
/home/rperrod/rp/PERSO/LaTeX/Test/template/t.tex:25: Undefined control sequence. [  \allowdisplaybreaks]

Aquí está mi archivo de prueba:

    \documentclass[a4paper, 12pt]{article}
    
      \usepackage[english, french]{babel}
      \usepackage{fancyhdr}
      \usepackage{geometry}
      \usepackage{varwidth}
      
    %----------- My template file ---------
      
      \geometry{
        a4paper,
        left=16mm,
        top=16mm,
        bottom=16mm,
        right=16mm
      }
    
      \pagestyle{fancy}
      \fancyhf{}
      \setlength{\headheight}{10mm}
      \lhead{\textsc{Some Text}}
      \rhead{\textsc{SOME} Text}
      \setlength{\footheight}{10mm}
      \rfoot{\thepage}
      \date{}
      \author{}
    
      \allowdisplaybreaks
    
    %-----------------------------------
    
      \title{I'm a giraffe}
    
    \begin{document}
    
      \maketitle\thispagestyle{fancy}
    
      Lorem ipsum
    
      \section{Colorado}
    
      \newpage
    
      \newpage
    
      \section{Says}
    
      \newpage
    
      \section{Giraaaaaaaaaaaaaaaffe}
    
    \end{document}

¿Dónde está el problema? Acabo de copiar esto de mi amigo y para él funciona. ¿Olvidé cierto paquete?

Respuesta1

Es mejor incluir headheighty footskip(no footheight) en la definición de geometría, en lugar de separarlo con\setlength .

\documentclass[a4paper, 12pt]{artículo}

  \usepackage[english, french]{babel}
  \usepackage{fancyhdr}
  \usepackage{geometry}
  \usepackage{varwidth}
  \usepackage{amsmath}
  
%----------- My template file ---------
  
  \geometry{
    a4paper,
    left=16mm,
    top=16mm,
    bottom=16mm,
    right=16mm,
    headheight=10mm,
    footskip=10mm,
  }

  \pagestyle{fancy}
  \fancyhf{}
  \lhead{\textsc{Some Text}}
  \rhead{\textsc{SOME} Text}
  \rfoot{\thepage}
  \date{}
  \author{}

  \allowdisplaybreaks

%-----------------------------------

  \title{I'm a giraffe}

\begin{document}

  \maketitle\thispagestyle{fancy}

  Lorem ipsum

  \section{Colorado}

  \newpage

  \newpage

  \section{Says}

  \newpage

  \section{Giraaaaaaaaaaaaaaaffe}

\end{document}

Respuesta2

El formato de los mensajes de error que muestra es engañoso ya que oculta qué comando no está definido.

El primer error es

! Undefined control sequence.
<argument> \footheight 
                       
l.23       \setlength{\footheight}{10mm}
                                        
? 

Si comenta la línea 23 y vuelve a ejecutarla, obtendrá

! Undefined control sequence.
l.28       \allowdisplaybreaks
                              

Que es un comando amsmathque no se ha cargado, así que agrega

\usepackage{amsmath}

tu tambien obtienes

Package french.ldf Warning: OT1 encoding should not be used for French.
(french.ldf)                Add \usepackage[T1]{fontenc} to the preamble
(french.ldf)                of your document; reported on input line 35.

Así que, juntando todo eso, no hay advertencias ni errores de:

\documentclass[a4paper, 12pt]{article}
    
      \usepackage[T1]{fontenc}
      \usepackage[english, french]{babel}
      \usepackage{fancyhdr}
      \usepackage{geometry}
      \usepackage{varwidth}
      \usepackage{amsmath}

    %----------- My template file ---------
      
      \geometry{
        a4paper,
        left=16mm,
        top=16mm,
        bottom=16mm,
        right=16mm
      }
    
      \pagestyle{fancy}
      \fancyhf{}
      \setlength{\headheight}{10mm}
      \lhead{\textsc{Some Text}}
      \rhead{\textsc{SOME} Text}
%      \setlength{\footheight}{10mm}
      \rfoot{\thepage}
      \date{}
      \author{}
    
      \allowdisplaybreaks
    
    %-----------------------------------
    
      \title{I'm a giraffe}
    
    \begin{document}
    
      \maketitle\thispagestyle{fancy}
    
      Lorem ipsum
    
      \section{Colorado}
    
      \newpage
    
      \newpage
    
      \section{Says}
    
      \newpage
    
      \section{Giraaaaaaaaaaaaaaaffe}
    
    \end{document}

información relacionada