# Problem with XeTeX (LaTeX) and system fonts

I have started to use an enterprise specific class for LaTeX, but have got a problem with usage system fonts in Ubuntu. The class uses the fontspec package, I have therefore been instructed to use XeTeX (i.e. the command xelatex instead of latex or pdflatex). However, the command `xelatex testfile.tex` results in the following message:

``````! Package xkeyval Error: `TeX' undefined in families `Ligatures'.

See the xkeyval package documentation for explanation.
Type  H <return>  for immediate help.
...

?
``````

The class has previously been used on Mac and Windows and the font setup is as follows:

``````\newfontfamily\headfont{Arial}
\setromanfont{Georgia}
\setmainfont{Georgia}
\setsansfont[Scale=MatchLowercase]{Verdana}
``````

It has been suggested that since XeTeX makes use of system fonts and the class file has worked flawlessly on Mac and Windows, the problem might be that Arial is not a name used in Ubuntu. I have tried to exchange `Arial` with `Ubuntu Light` in the setup code above, but that have not been any improvement.

Any suggestions please on how to move forward?

UPDATE

Due to the comment from Joseph Wright, I started investigate the class file in more detail. I managed to get the command `xelatex quickstart.tex` to result in a PDF-file after having commented the line

``````\defaultfontfeatures{Ligatures=TeX,Mapping=tex-text}
``````

and having replaced Helvetica with Arial in the following line

``````\newfontfamily\enterprisetitlefont{Helvetica}
``````

(The parameter enterprisetitlefont is used in a re-definition of the maketitle command.)

After having seen the comment by egreg, I removed `Ligatures=TeX` from the `defaultfonfeatures` line and it worked fine.

I am using the latest TeX Live distribution available in the Ubuntu Software Center and the version is called "texlive 2009-15".

New questions:

• Has `Ligatures=TeX` replaced `Mapping=tex-text` in the very latest TeX distribution?
• Is there a better way to modify the original `defaultfonfeatures` line instead of simply removing `Ligatures=TeX`?
• How to get the `newfontfamily` command to work with Helvetica instead of Arial? What should be added to the class file?
-

## migrated from askubuntu.comSep 6 '12 at 11:52

This question came from our site for Ubuntu users and developers.

Can you provide a full MWE? For me, if I add the appropriate `\documentclass` and `\usepackage` lines then all is fine. – Joseph Wright Sep 6 '12 at 11:58
I suspect you have a quite old TeX distribution; the best would be to upgrade to TeX Live 2012. Meanwhile you could try with `Mapping=tex-text` instead of `Ligatures=TeX`. – egreg Sep 6 '12 at 12:34

The oldest `fontspec.sty` I have on my machine is dated 2011-02-26 (part of TeX Live 2010) and it already allows `Ligatures=TeX` as a better substitute of `Mapping=tex-text` (actually the two options do the same thing with XeLaTeX; the former was added for making `fontspec` compatible with LuaLaTeX).
Note that `\setromanfont` and `\setmainfont` are synonyms (the former is deprecated).
Thanks @egreg. My `fontspec.sty` is dated 2008-08-09! Regarding Arial, it is actually the Helvetica fonts that are missing on my systems. – mghg Sep 6 '12 at 16:32