1

LuaTeX and XeTeX are passing on a warning on from the fontspec package, and I'm not sure whether I should worry. The following minimal code will generate the warning:

\documentclass{report}
\usepackage{fontspec}
\setmainfont[Script=Cyrillic]{Arial}
\begin{document}
\end{document}

The warning is

fontspec warning: "script-not-exist"
Font 'Arial' does not contain script 'Cyrillic'.

Replacing 'Arial' with, for example, 'Charis SIL', results in no warning.

I believe I've traced the problem back to fc-list/ fontconfig. In the output of fc-list for the Arial font, I get the following 'capabilities' line:

 capability: "otlayout:arab otlayout:hebr otlayout:latn"(s)

This line does not mention Cyrillic (which would be the code 'cyrl', according to the \newfontscript{Cyrillic}{cyrl} line in fontspec-xetex.sty). Fonts for which I do not get this warning, such as Charis SIL, explicitly mention Cyrillic in their capabilities lines:

capability: "ttable:Silf  otlayout:DFLT otlayout:cyrl otlayout:latn"(s)

Unfortunately, documentation of this "capability" line in the output of fc-list is limited to the line

capability  String  List of layout capabilities in the font

(that from https://www.freedesktop.org/software/fontconfig/fontconfig-user.html and a couple other places on the web)

My question is basically, should I worry about this warning message? Arial (and Charis) list 'ru', the ISO 639-1 code for Russian, in the 'lang' field. Just what is this "layout" capability for the Cyrillic script that Charis SIL supports, but Arial apparently does not, and why does it matter?

BTW, this is with the TeX Live 2017 distro.

Mike Maxwell
  • 547
  • 4
  • 11
  • I think that "layout capability" refers to things like ligatures, contextual alternates (like adjusting the height of a colon or emdash when in smallcaps mode), diacritic placement, and kerning. There's some superficial discussion [here](http://www.adobe.com/products/type/opentype.html) and [here](https://mpdf.github.io/fonts-languages/opentype-layout-otl.html) which you've probably already found when searching. Your particular problem may or may not be a spurious warning, and may or may not have been fixed in `fontconfig` by [this PR](https://github.com/wspr/fontspec/pull/252) – drammock Jan 17 '18 at 22:53
  • Thanks, drammock; I had not found those two references, which do help--I just wish there were an explanation (presumably in the documentation for fontconfig) or a confirmation that the things you refer to are what 'layout capability' means! I also found this: http://www.microsoft.com/typography/otspec/featurelist.htm, linked from the second link you mention, which goes into more detail. The only mention of Cyrillic there is the petite/small caps thing; afaik, Arial doesn't have small caps, so maybe that's why it doesn't claim 'layout capabilities'. – Mike Maxwell Jan 18 '18 at 19:17
  • If I understand correctly, it takes more than just the presence of small-caps glyphs (or precomposed digraphs for ligatures, or whatever); "layout capability" also means that contextual rules have been built in to the font so that the ligatures / positioning adjustments happen automatically when the context occurs --- provided that the software bothers to interpret and execute those contextual rules, which some do (like XeLaTeX and most Adobe design software) and others don't (like many plain text editors). – drammock Jan 18 '18 at 19:30

0 Answers0