The MWE uses the default display for all suits except Hearts. I'd prefer to use \varheartsuit for it and elsewhere I use \symbolfamily\char"2666. But if that's directly subsituted it doesn't display. Do I need to declare a new math symbol or is there an easier way to add it?
\documentclass{article}%
\RequirePackage{fontspec}%
\newfontfamily\symbolfamily{Asana Math}
\RequirePackage[HTML, hyperref, x11names]{xcolor}
\RequirePackage[bookmarks, psdextra, unicode, colorlinks,%
allcolors=DeepSkyBlue4,%
hyperfootnotes=false, linktoc=all]{hyperref}%
\usepackage[symbols]{glossaries-extra}
\makeglossaries
\glsxtrnewsymbol % requires glossaries-extra.sty 'symbols' option
[description={the clubs}]
{*1clubs}% label (and sort value)
{\ensuremath{\clubsuit}}% symbol
\glsxtrnewsymbol % requires glossaries-extra.sty 'symbols' option
[description={the diamonds}]
{*2diamonds}% label (and sort value)
{\ensuremath{\color{red}\diamondsuit}}% symbol
\glsxtrnewsymbol % requires glossaries-extra.sty 'symbols' option
[description={the hearts}]
{*3hearts}% label (and sort value)
{\ensuremath{\color{red}\symbolfamily\char"2666}}% symbol
\glsxtrnewsymbol % requires glossaries-extra.sty 'symbols' option
[description={the spades}]
{*4spades}% label (and sort value)
{\ensuremath{\spadesuit}}% symbol
\renewcommand{\glspostdescription}{\dotfill}
\makeglossaries
\begin{document}
Some sample usage of operators:
\[
\gls{*1clubs}
\]
text \gls{*4spades}
\newpage
More sample usage:
\[
\gls{*1clubs}
\]
text \gls{*4spades}
text \gls{*3hearts}
\newpage
text \gls{*2diamonds}
\printglossaries
\end{document}
