# Access a Character from the Private Use Area of a font in LuaLaTex

I am trying to access a character from the private use area of the font Aegean. It is supposed to be the second character-variant of the letter 𐊬 (U+10293), but using the font-feature doesn’t yield any results. The \char-command also doesn’t work here. MWE:

\documentclass{scrartcl}
\usepackage{fontspec}

\newfontfamily\lycian{Aegean}

\begin{document}

{\lycian 𐊬 \fontspec{Aegean}[CharacterVariant=2] 𐊬

\char"10293

\char"1105dc}
\end{document}


Any ideas how I can get the character displayed? Here is a screenshot from FontForge to view the font (there is no sign of the character-variant in the picture [»U+xxxxx.cv01« e.g.], but it is the case with other characters, and the above MWE hasn’t worked for them either).

You clarified in the comment that you are using v13.00 of the font and want the second variant of CV06. You can get that by loading aegean.otf with the options [Script=Lycian, CharacterVariant={6:2}].

\documentclass{article}
\tracinglostchars=2 % Warn if the font does not contain a character!
\usepackage{fontspec}

\pagestyle{empty}

\defaultfontfeatures{ Renderer=HarfBuzz,
Scale=MatchLowercase,
Ligatures=TeX }
\newfontfamily\lycianfont{Aegean.otf}[Script=Lycian] % Requires v13.00

\begin{document}
{\lycianfont
\symbol{"10293}
𐊓
𐊓
}
\end{document}


If you copy and paste from this document, you will get 𐊓 𐊓 𐊓.

The zip file from the Unicode Fonts for Ancient Scripts website should come with a document (in both PDF and ODT format) that lists every variant in the font. Otherwise, you can inspect the substitution tables in FontForge, under Elements > Font Info > Substitutions.

First, you seem to be using an older version of the font. The latest version of Aegean, in OTF format, is available here. However, this version has a more-restrictive license and claims to be free only “for personal use.”

With the version of the font you’re using, some investigation shows that the variant you want is actually Stylistic Alternative 2 for the Lycian script, or can also be accessed through \symbol.

\documentclass{article}
\tracinglostchars=2 % Warn if the font does not contain a character!
\usepackage{fontspec}

\pagestyle{empty}

\defaultfontfeatures{ Renderer=HarfBuzz,
Scale=MatchLowercase,
Ligatures=TeX }
\newfontfamily\aegean{Aegean.ttf}[Script=Lycian] % Requires v6.14

\begin{document}
{\aegean
\symbol{"10293}
𐊓 (\symbol{"F0286})
}
\end{document}


As of 2020, version 13.0 of the font no longer uses the Private Use Area for this symbol, but supports the Unicode character 𐅃 (U+10143).

\documentclass{article}
\tracinglostchars=2 % Warn if the font does not contain a character!
\usepackage{fontspec}

\pagestyle{empty}

\defaultfontfeatures{ Renderer=HarfBuzz,
Scale=MatchLowercase,
Ligatures=TeX }
\newfontfamily\aegean{Aegean.otf}[Script=Lycian] % Requires v13.00

\begin{document}
{\aegean
\symbol{"10293}
\symbol{"10143} (𐅃)
}
\end{document}


This means that you can patch an installation with only the older font to support the 𐅃 character with

\usepackage{newunicodechar}
\newunicodechar{𐅃}{{\aegean\symbol{"F0286}}}


By the way, the way to check for glyph substitutions in FontForge is either to go into the substitution tables within Glyph Info, or to select View > Substitutions and go through the possible tables.

• Oh, yes, I was using the newer font, but I linked the old one! I checked with the newer version of the font, an ran your code, and it worked; but I need to access a character variant which is, according to the glyph info, called glyph4069, not u10143. Is it possible to access this glyph? – Kubo Jul 18 at 10:56
• @Kubo Okay, that’s CV06, variant 2. I’ve updated my answer accordingly. – Davislor Jul 18 at 17:37