Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Let us see the following code:

\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}

enter image description here

And \textrm, which should be better than an obsolete \rm (I know the differences of using them) doesn't work as one can expect. Is it an argument for using \rm from time to time?

share|improve this question
7  
With enumitem, you could use \begin{enumerate}[label=\upshape(\roman*)]. –  egreg Dec 31 '13 at 9:56
    
BTW: both the memoir class and the KOMA-Script classes issue warnings if any of those deprecated commands is used. KOMA-Script announced that it will even remove the definitions for those commands in one of the next releases... –  cgnieder Dec 31 '13 at 13:32
    
oh no, please do learn to use enumerate instead of misusing itemize like this. There are others reading this site, and we'd rather not have them getting the idea that this is a good methodology. –  daleif Dec 31 '13 at 13:58
1  
@egreg, I'd even go as far as redefining the setting controling [(i)] (the shortlabels option) to include the \upshape or \textnormal{...} –  daleif Dec 31 '13 at 14:01

3 Answers 3

up vote 26 down vote accepted

No, \rm is deprecated and should not be used in a LaTeX2e document (ConTeXt and plain are of course different). What is happening here is deliberate. Issuing \textrm means that the current font family should be roman, not sanserif or monospaced. However, it does not alter the current shape (upright/italic/slanted) or weight (light/medium/heavy): that's the entire point of the LaTeX2e 'New Font Selection Scheme'. In contrast, \rm sets a fixed font: upright, roman, medium weight.

What you therefore are looking for here is altering the font shape, not the family: \textup is the command you are after (cf. \textit, \textsl). Of course, in a real case you should be applying this as an change to the general theorem style not just on an ad hoc basis.

share|improve this answer
1  
Not part of the answer, but do you really want upright here? Every published work I've ever looked at in detail uses italic for list numbering. –  Joseph Wright Dec 31 '13 at 8:52
2  
If the client wants to... And he has a good sense of beauty of mathematical text, in general... –  Przemysław Scherwentke Dec 31 '13 at 8:57
1  
I tend to agree with @PrzemysławScherwentke, sometimes it just looks wrong with those items in italic. As long as one is consistent... –  daleif Dec 31 '13 at 14:00
    
@JosephWright -- some publishers prefer upright item labels. (the ams is one such.) but a better way to do it is to use \upshape. just take a look at amsart and friends. –  barbara beeton Dec 31 '13 at 16:12
    
@barbarabeeton I did say 'that I've looked at in detail': as you might imagine, that's primarily chemistry publishers. –  Joseph Wright Dec 31 '13 at 16:32

No, if you want to be sure the item labels are in "\rm style", you should use

{\normalfont(i)}

Of course, as @egreg pointed out, you might want to use enumitem and redefine the item labels globally, since local changes like this one are non-systematic and non-error-prone. Therefore the following in your preamble might help:

\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}
share|improve this answer

One important factor derived from Joseph Wright's answer, which should be emphasized: \textrm, \textbf, \textit, etc. are not simple equivalents of plain \rm, \bf, \it, etc. in local mode. Moreover: their meanings are of different types in LaTeX (e.g. family vs. shape).

share|improve this answer
    
Well, you mix \textrm and \rmfamily. The \text.. commands take argument as in \textrm{Ahoj}, whereas \rmfamily is the proper "new" version of \rm, as in {\rmfamily Ahoj}. I put "new" in quotation marks since NFSS is already quite old. –  tohecz Dec 31 '13 at 13:32
    
@tohecz Indeed: I forgot adding the information of local behaviour. –  Przemysław Scherwentke Dec 31 '13 at 13:37

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.