I can't make lualatex generate small caps font when I use MinionPro as my main font:


\author{Arthur Author}

\newthought{This is a smart new thought} and it shines.
\setmainfont{MinionPro}[SmallCapsFont = {MinionPro},%
             SmallCapsFeatures = {RawFeature={+smcp} }]
\newthought{This is a stupid new thought} and it sucks.


\newthought of tufte-book uses \textsc, and it works for the default font, but doesn't when MinionPro is selected. In the example above "This is a smart new thought" is rendered in small-caps, but "This is a stupid new thought" is rendered in normal MinionPro font (not small-caps).

What do I do wrong?

I tracked it down to the minimum test case. Small-caps and MinionPro do not work with \textls of microtype




\setmainfont{MinionPro}%[Renderer = Basic]

\textls{\scshape{This is a stupid new thought}} and it sucks.


As it is This is a stupid new thought appears in normal font, not small-caps.

If [Render = Basic] is not commented out, This is a stupid new thought is in small-caps, but Th is rendered as Th ligature, with h in lower-case.

  • 1
    It seems to be a problem with microtype and luaotfload, the chosen fontname seems invalid when letterspacing is involved. – egreg Jul 11 '14 at 15:41
  • 1
    If I add Renderer=Basic it almost works, but the Th is wrong. – egreg Jul 11 '14 at 15:45
  • 1
    tufte-book loads fontspec when lualatex is used. – dmakarov Jul 11 '14 at 15:56
  • 1
    @darthbith the format changed when TeXLive 2014 came out. The older ordering still works but the preferred form is to list the font name first and then whatever options you want. I'm guessing the thinking was that it makes it easier to see the typeface you're using at a glance and I agree -- I often have complicated options and multiple typefaces and looking to the ends of the line to find the name is annoying. – bfootdav Jul 11 '14 at 16:25
  • 1
    @dmakarov Can’t reproduce. Please post the output of luaotfload-tool -V, luaotfload-tool --find="MinionPro", and otfinfo -i FILENAME where FILENAME is the full path to the file output by the previous command. – Philipp Gesang Jul 11 '14 at 17:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.