Para algumas ocorrências de um ambiente “teorema”, podemos remover os parênteses — “(” e “)” — do argumento opcional do ambiente?
Para algumas ocorrências, podemos remover os parênteses -- (
e )
-- do theorem
argumento opcional de a?
Estou pronto para usar um comando como \nobracket
, conforme mostrado abaixo:
\documentclass{article}
\usepackage{amsthm}
\begin{document}
\nobrackets
\begin{theorem}[aaa]
For this theorem don't want bracket ()
\end{theorem}
\begin{theorem}[bbb]
For this theorem need bracket ()
\end{theorem}
\end{document}
Respostas
Mico
Na página 10 do guia do usuário do amsthm
pacote, encontram-se instruções sobre como criar um estilo de teorema que compartilhe a maioria das propriedades do plain
estilo de teorema padrão, exceto que nenhum parêntese é colocado ao redor do argumento opcional de um teorema.
A solução a seguir se baseia neste material.
\documentclass{article}
\usepackage{amsthm}
\theoremstyle{plain} % the default
\newtheorem{theorem}{Theorem}
\newtheoremstyle{noparens}% cf. p. 10 of user guide of 'amsthm' package
{}{}{\itshape}{}%
{\bfseries}{.}{ }%
{\thmname{#1}\thmnumber{ #2}\thmnote{ {\mdseries #3}}}
\theoremstyle{noparens} % switch to the new theorem style
\newtheorem{theoremnp}[theorem]{Theorem} % 'theoremnp' and 'theorem' share same counter
\begin{document}
\begin{theoremnp}[aaa]
For this theorem we don't want parentheses.
\end{theoremnp}
\begin{theorem}[bbb]
For this theorem we need parentheses.
\end{theorem}
\end{document}
egreg
Você precisa marcar de alguma forma quando não quiser os colchetes.
Com sua sintaxe proposta:
\documentclass{article}
\usepackage{amsthm}
\usepackage{lipsum} % for mock text
\newtheoremstyle{funny}
{}{}
{\itshape}
{}
{\bfseries}
{.}
{ }
{%
\thmname{#1}% the label
\thmnumber{ #2}% the number
\thmnote{ {\mdseries\iffunny(\fi#3\iffunny)\fi}}% the note
\global\funnytrue % restore the standard
}
\newif\iffunny
\newcommand{\nobrackets}{\global\funnyfalse}
\theoremstyle{funny}
\newtheorem{theorem}{Theorem}
\begin{document}
\lipsum[1][1-6]
\nobrackets
\begin{theorem}[aaa]
For this theorem we don't want parentheses.
\end{theorem}
\lipsum[2][1-6]
\begin{theorem}[bbb]
For this theorem we need parentheses.
\end{theorem}
\lipsum[3][1-6]
\end{document}
Com uma sintaxe melhor:
\documentclass{article}
\usepackage{amsthm}
\usepackage{lipsum} % for mock text
\newtheoremstyle{funny}
{}{}
{\itshape}
{}
{\bfseries}
{.}
{ }
{%
\thmname{#1}% the label
\thmnumber{ #2}% the number
\thmnote{ {\mdseries\iffunny(\fi#3\iffunny)\fi}}% the note
}
\newif\iffunny
\funnytrue
\theoremstyle{funny}
\newtheorem{theorem}{Theorem}
\newenvironment{theorem*}{\funnyfalse\theorem}{\endtheorem}
\begin{document}
\lipsum[1][1-6]
\begin{theorem*}[aaa]
For this theorem we don't want parentheses.
\end{theorem*}
\lipsum[2][1-6]
\begin{theorem}[bbb]
For this theorem we need parentheses.
\end{theorem}
\lipsum[3][1-6]
\end{document}
O que significa um erro “Não é possível encontrar o símbolo” ou “Não é possível resolver o símbolo”?