Lección 15

Analizando los errores

Esta lección muestra los errores comunes en los documentos LaTeX, lo que significan y como tratarlos.

A diferencia de un típico procesador de textos, LaTeX dispone de un ciclo Editar/Ejecutar/Ver similar al de los compiladores de los lenguajes de programación; al igual que en programación, el usuario puede cometer errores al escribir su documento y por consiguiente, necesitará tratar con los mensajes de error dados por el sistema.

Esta página da ejemplos de algunos de los errores más comunes.

Cada ejemplo viene acompañado de una explicación sobre la forma del mensaje de error.

Puede ser instructivo el probar los ejemplos, pero también el editarlos para intentar solucionar los errores presentes en el documento y verificar si es capaz de resolverlos.

pdflatex not found

Un primer error muy común con el que se encuentra mucha gente al comenzar es:

'pdflatex' is not recognized as an internal or external command,
operable program or batch file.

en Windows o

bash: pdflatex: command not found

en Linux.

No se trata de un error de TeX sino de un error del sistema operativo que indica que TeX no está instalado, o que no ha sido encontrado. Un error común es el de instalar un editor de TeX como TeXworks o TeXShop pero sin instalar un sistema TeX como TeX Live o MiKTeX.

Anatomía de un mensaje de error de TeX

\documentclass{article}
\usepackage[T1]{fontenc}

\newcommand\mycommand{\textbold{hmmm}}

\begin{document}

Mi comando es usado aquí \mycommand.

\end{document}

El ejemplo anterior da lugar a un mesaje de varias líneas en el archivo log.

! Undefined control sequence.
\mycommand ->\textbold 
                       {hmmm}
l.8 My command is used here \mycommand
                                      .
? 

Note que TeX no ve el error en la parte en la que se realiza la definición; de hecho si el comado \mycommand hubiese sido definido, pero no usado, no habríamos obtenido ningún error. Así que aunque se indique que el error es en la línea 8, el «verdadero» error se encuentra en la definición de la línea 4, por consiguiente es importante leer el mensaje de error completo.

Tenga en cuenta que algunos editores muestran «resúmenes» de una línea de cada error encontrado. Esto puede ser particularmente engañoso si el error se muestra como:

line 8: undefined command: ...\mycommand

ya que lleva a pensar que el comando \mycommand no está definido.

Error en el uso de llaves {}

\documentclass{article}
\usepackage[T1]{fontenc}

\usepackage[leqno}{amsmath}

\begin{document}

\end{document}

En este ejemplo el error es debido al uso de } para cerrar los argumentos opcionales. La llave de cierre hace que LaTeX no pueda pasar los argumentos y usted obtiene un error interno no muy útil:

! Argument of \@fileswith@ptions has an extra }.

Aunque la descripción del error no sea muy útil, las dos siguientes líneas indican de forma más precisa la localización del error, al utilizar el salto de línea para indicar hasta que punto TeX ha llegado:

l.4 \usepackage[leqno}
                      {amsmath}

Archivos no encontrados

\documentclass{article}
\usepackage[T1]{fontenc}

\usepackage{amsmathz}

\begin{document}

\end{document}

En este ejemplo se produce el error:

! LaTeX Error: File `amsmathz.sty' not found.

Nota: el mismo error puede ser debido a dos causas diferentes: un simple error tipográfico (como en este ejemplo) que puede ser corregido escribiendo correctamente el nombre del paquete; o un archivo que no se encuentra y necesita ser instalado en el sistema.

Líneas en blanco en el modo matemático display

\documentclass{article}
\usepackage[T1]{fontenc}

\begin{document}

Some text
\begin{equation}

  1=2

\end{equation}

\end{document}

Produce el ligeramente misterioso error

! Missing $ inserted.

Pero resolverlo es muy simple, las líneas en blanco no están permitidas en los entornos matemáticos por lo que deben ser eliminadas.

Ejercicios

Escriba pequeños documentos con diferentes errores y fíjese en la forma de los mensajes de error.