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.

If I want to write in text e.g. 1.1-1.5% and use \oldstylenums to get non-lining numbers, what would be the correct way of specifying the percent sign?

When I simply write the percent sign as


the percent sign seems too large and out-of-place next to non-lining numbers and lowercase letters. Is there some way of getting a smaller, "lowercase" percent sign or should the "capitalized" percent sign simply be considered correct?

share|improve this question
\oldstylenums{1.1} prints "incorrectly": only digits should be in the argument. –  egreg Feb 11 '13 at 15:55
Didn't old books put the % in a superscript? Similar to how they did decimals? –  Canageek Feb 12 '13 at 17:41

1 Answer 1

up vote 8 down vote accepted

I'd never use oldstyle digits in these cases. Moreover, their input with the standard fonts is very cumbersome:


is something I'd never stand (note that a period in the argument of \oldstylenum produces a funny symbol).

You could use fonts that have oldstyle digits to begin with, for instance the Latin Modern fonts as modified by Clea F. Reese:



1.1--1.2\smallpercent\quad 1.1--1.3\smallpercent

1.1--1.4\smallpercent\quad 1.1--1.5\smallpercent

1.1--1.6\smallpercent\quad 1.1--1.7\smallpercent

1.1--1.8\smallpercent\quad 1.1--1.9\smallpercent


enter image description here

Using \small doesn't seem right; but the overall appearance is a clear invitation not to use oldstyle figures for this purpose.

Instead of the package cfr-lm you can use eco:


Both allow for changing the style of digits mid document; cfr-lm is more powerful, eco has only \newstylenums.

share|improve this answer
Great, thanks! You can get rid of the weird decimals as explained here and I shorten the command using \newcommand, but I agree - there should be no such interventions in the content itself. Ideally the document template would detect that automatically (e.g. place new style numerals in tables and old style in text). –  kermit666 Feb 11 '13 at 21:09

Your Answer


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.