Sempre \textrm, nunca \rm? Um contra-exemplo?

Sempre \textrm, nunca \rm? Um contra-exemplo?

Vejamos o seguinte código:

\documentclass{article}
\begin{document}
\newtheorem{theorem}{Theorem}

\begin{theorem}
TFAE
\begin{itemize}
\item[(i)]
$0<1$;
\item[(ii)]
$1>0$.
\end{itemize}
\end{theorem}

But I want (i)'s Roman:

\begin{theorem}
TFAE
\begin{itemize}
\item[\textrm{(i)}]
$0<1$;
\item[\textrm{(ii)}]
$1>0$.
\end{itemize}
\end{theorem}

Alas, still italic, but\ldots

\begin{theorem}
TFAE
\begin{itemize}
\item[\rm(i)]
$0<1$;
\item[\rm(ii)]
$1>0$.
\end{itemize}
\end{theorem}

\end{document}

insira a descrição da imagem aqui

E \textrm, que deveria ser melhor que um obsoleto \rm(conheço as diferenças de usá-los) não funciona como se poderia esperar. É um argumento para usar \rmde vez em quando?

Responder1

Não, \rmestá obsoleto e não deve ser usado em um documento LaTeX2e (ConTeXt e plain são obviamente diferentes). O que está acontecendo aqui é deliberado. Emitir \textrmsignifica que a família de fontes atual deve ser romana, não sanserif ou monoespaçada. No entanto, isso acontecenãoalterar a forma atual (vertical/itálico/inclinada) ou peso (leve/médio/pesado): esse é o objetivo do 'Novo esquema de seleção de fontes' do LaTeX2e. Em contrapartida, \rmdefine uma fonte fixa: vertical, romana, peso médio.

O que você está procurando aqui é alterar o formato da fonte, não a família: \textupé o comando que você procura (cf. \textit, \textsl). É claro que, em um caso real, você deveria aplicar isso como uma mudança no estilo do teorema geral, não apenas em um casoAd hocbase.

Responder2

Não, se você quiser ter certeza de que os rótulos dos itens estão no " \rmestilo", você deve usar

{\normalfont(i)}

Claro, como @egreg apontou, você pode querer usar enumiteme redefinir os rótulos dos itens globalmente, uma vez que mudanças locais como esta não são sistemáticas e não estão sujeitas a erros. Portanto, o seguinte no seu preâmbulo pode ajudar:

\documentclass{article}

\usepackage{enumitem}
\setlist[enumerate,1]{label={\normalfont(\roman*)}}

\newtheorem{theorem}{Theorem}

\begin{document}

\begin{theorem}
TFAE
\begin{enumerate}
\item
$0<1$;
\item
$1>0$.
\end{enumerate}
\end{theorem}

\end{document}

Responder3

Um fator importante derivado da resposta de Joseph Wright, que deve ser enfatizado: \textrm, \textbf, \textit, etc. não são equivalentes simples de \rm, \bf, \it, etc. simples no modo local. Além disso: seus significados são de tipos diferentes em LaTeX (por exemplo, família versus forma).

informação relacionada