# Small caps for the math mode

How do I make "E" in this equation a small cap?

$x^E$

-
Hmm, why isn't $x^E$ just good enough? It typesets E in the smaller script style. –  Andrey Vihrov Mar 9 '11 at 13:32
@Andrey: It'll give an "E" in math italic. –  Hendrik Vogt Mar 9 '11 at 13:46
I think it's best to keep questions reserved for the actual questions. Your edit is an answer, so it would be best if you post it as an answer to your own question (and remove your EDIT from the question). –  Hendrik Vogt Mar 9 '11 at 13:50
@Hendrik: normally I'd say it's fine to edit the question with a simple "Thanks, here's what I went with:..." But in this case the poster's final solution is much different from the only posted (and accepted) answer. So yes, it would be better for @Oldrich to put his solution in his own answer. –  Matthew Leingang Mar 9 '11 at 14:32
@Andrey Vihrov: E in the $x^E$ is still far too big and aggressive for me. –  Oldrich Svec Mar 10 '11 at 5:54

To switch fonts in math mode you often use a command like \mathit (for italic) or \mathrm (for roman). But there's no \mathsc command. So just use \textsc.

$x^{\textsc{e}}$


Note that \textsc{E} will give a capital E that is roughly the same height as the normal shape capital E. In general, if you want a small capital E, use \textsc{e}.

-
Is there a reason why you wouldn't simply use $x^{\textsc{e}}$? –  Niel de Beaudrap Mar 9 '11 at 12:48
@Niel: the reason I didn't was that I didn't know you could do that! For some reason I thought that \textsc would require LR mode. I've edited to reflect your simplification. –  Matthew Leingang Mar 9 '11 at 12:54
Thanks, this works fine –  Oldrich Svec Mar 9 '11 at 13:08

The above mentioned $x^{\textsc{e}}$ works in basic situations, but it has the drawback that the font used will depend on the current text font in the environment. For example, \texttt{ ... $x^{\textsc{e}}$ ... } typesets the small capital E in the typewriter font. This is usually undesirable for a mathematical symbol. The problem is most prominent when the surrounding text is bold (such as in a heading): there are no bold extended small caps fonts in the standard Computer Modern font collection, hence the e in \section{ ... $x^{\textsc{e}}$ ... } will come out as bold lower case. So, if you want a general-purpose macro, it is better to use

$x^{\normalfont\textsc{e}}$


You can define

\newcommand{\mathsc}[1]{{\normalfont\textsc{#1}}}

-
With amsmath a better way would be \text{\normalfont\scshape#1} (assuming, by way of contradiction, that the OP really has a problem, which it isn't). –  egreg Jul 23 '12 at 16:54
The poster of the original question most likely does not have a problem any more, given that it is over a year old. However, other people may have problems. Note that this question turns up as the #1 Google hit for “latex math small caps”, so it is worthwhile to document any relevant info here. And yes, I encountered this very problem in a real-world situation, it is not made up. –  Emil Jeřábek Jul 23 '12 at 17:29

My final solution which works fine is

\newcommand{\xE}{\ensuremath{ x^{\mbox{\tiny{E}}} }}

-