amsthm - Erro de número ausente

amsthm - Erro de número ausente

(Fiz uma pesquisa rápida e não encontrei esta pergunta feita anteriormente, mas se alguém souber que isso foi perguntado e respondido anteriormente, ficaria grato se fosse apontado na direção certa.)

Faço parte de um grupo que está prestes a escrever um documento extenso que provavelmente dependerá muito do pacote amsthm. Infelizmente recebo um "Erro de número ausente" ao definir (e usar) novos estilos. Atualmente tenho principalmente problemas com a seguinte definição de um novo estilo de definição:

\newtheoremstyle{definition}% name
{9pt}           %       Space above, empty = 'usual value'
{9pt}           %       Space below
{}              %       Body font
{0cm}           %       Indent amount (empty = no indent, \parindent = para indent)
{\bfseries}     %       Thm head font
{\ }            %       Punctuation after thm head
{}              %       Space after thm head: \newline = linebreak
{}              %       Thm head spec`

\theoremstyle{definition}
\newtheorem{definition}{Definition}[section]

Quando uso esse estilo, recebo um erro de número faltante, mas se uso \newlinena definição do estilo, não recebo o erro de número faltante. Por causa disso, não acho que o erro tenha origem em um conflito de pacotes, mas não conheço muito das partes mais técnicas do LaTex, então é bem possível que eu esteja errado (eu diria que é provável).

Se alguém tiver uma resposta/ideia de como resolvê-lo, ficaria muito feliz em ouvir!

Responder1

O seguinte MWE produzirá o resultado desejado:

\documentclass{article}
\usepackage{amsthm}
\newtheoremstyle{definition}% name
{9pt}           %       Space above, empty = 'usual value'
{9pt}           %       Space below
{}              %       Body font
{0cm}           %       Indent amount (empty = no indent, \parindent = para indent)
{\bfseries}     %       Thm head font
{\ }            %       Punctuation after thm head
{ }             %       Space after thm head: \newline = linebreak
{}              %       Thm head spec

\theoremstyle{definition}
\newtheorem{definition}{Definition}[section]

\begin{document}
\begin{definition}
foo
\end{definition}
\end{document}

Observe o oitavo argumento não vazio de \newtheoremstyle. São permitidos:

  • \newlinepara uma quebra de linha
  • { }para um espaço normal entre palavras
  • um comprimento à escolha do usuário

Deixar este argumento vazio resultará no Missing numbererro descrito.

informação relacionada