# ConTeXt: Using Unicode symbols for bullets

I'm having trouble figuring out how to use ▸ (AKA BLACK RIGHT-POINTING SMALL TRIANGLE) as the bullet in my itemized lists in ConTeXt.

My first thought is that this should work:

\setupitemize[1][compact][symbol={▸}]

\starttext

\startitemize
\item This is an item in a list
\item So is this
\stopitemize

\stoptext


It doesn't seem to. I also tried this:

\definesymbol[1][{▸}]


What am I doing wrong?

Edit I am still stuck, and now I'm wondering if it's because there is something wrong with my typescript. I have this code:

\starttypescript [sans] [roboto]
\definefontsynonym [Sans]           [Roboto Condensed Light]
\definefontsynonym [SansBold]       [Roboto Condensed Bold]
\definefontsynonym [SansItalic]     [Roboto Condensed Light Italic]
\definefontsynonym [SansBoldItalic] [Roboto Condensed Bold Italic]
\stoptypescript

\definetypeface[roboto][rm][sans][roboto][default]
\definetypeface[roboto][ss][sans][roboto][default]
\definetypeface[roboto][tt][mono][modern][default]
\definetypeface[roboto][mm][math][iwona] [default]

\setupbodyfont[roboto,ss,10pt]


The bullet I want is defined in Lucida, which I have on the system as well, but I tried this and it seems to also override the body font with Lucida:

\definefontfallback [lucida_fallback] [Lucida] [0x25B8] [force=no]

\definefontsynonym [Fallback] [roboto] [fallbacks=lucida_fallback]

\definefont [Roboto] [Fallback]

\setupbodyfont[Roboto,ss,10pt]


So I'm not seeing how to integrate the information in this answer with the advice in the (previously accepted) answer below. I don't think simplefonts by itself does what I want because I really want the light variant of the font to be the default rather than the regular weight.

If you want just this one symbol, the fallback mechanism may be a bit overblown. You can use the \getglyph command:

\definesymbol [1] [\getglyph{name:xits-math}{\char"25B6}]

\starttext

\startitemize
\item This is an item in a list
\item So is this
\stopitemize

\stoptext


(I don't have the lucida font, but I think this is the symbol you want).

You need a font that has that symbol (and also use the proper way of defining symbols, if I'm not mistaken). Here's an example that does work, defining a fallback (Lucida) with the main font being Roboto Condensed Light.

\usemodule[simplefonts]
\setmainfont[Roboto Condensed Light]
\setmainfontfallback[Lucida]
[%range={0x00000-0xFFFFFF},% If you want to avoid thinking, the whole range
range=0x025B8,% Just the ▸ symbol
force=no,rscale=auto]

\definesymbol[blacktriangle][▸]
\setupitemize[1][packed][symbol=blacktriangle]

\starttext

\startitemize
\item This is an item in a list
\item So is this
\stopitemize

\stoptext


If your font doesn't have that symbol, you can always use (Con)TeX(t) commands to create the symbol, like \definesymbol[blacktriangle][$\blacktriangleright$]. If the glyph is present in the font, you can always use \Uchar (or traditional \char) to input it. For instance, with Minion Pro

\definesymbol[blacktriangle][\Uchar"E0B8]


• Is it possible to do this without changing the main font? I would like to continue using the one I have defined. – Daniel Lyons Jun 3 '15 at 15:24
• It is possible to switch fonts just for the bullet and switch back? I imagine the symbol arg doesn't like that. – Daniel Lyons Jun 3 '15 at 16:19
• You can use the fallback mechanism for fonts to set a different font for the symbol. – Wolfgang Schuster Jun 3 '15 at 17:08
• @Metafox That's your call; I know nothing about ConTeXt. – Manuel Jun 3 '15 at 18:53
• I've edited the question because I'm still having trouble seeing how to make it happen. – Daniel Lyons Jun 4 '15 at 6:19

To set a different font for certain characters in your document you can use the \definefallbackfamily command together with the \definefontfamily command.

\definefallbackfamily [roboto] [ss] [Latin Modern Math] [range=0x025B6]
\definefontfamily     [roboto] [ss] [Roboto] [tf=style:light,it=style:lightitalic] % bf=style:regular,bi=style:italic
\definefontfamily     [roboto] [mm] [Latin Modern Math]

\definesymbol[blacktriangle][▶︎]

\setupbodyfont[roboto,10pt]

\starttext

Regular {\it Italic} {\bf Bold} {\bi Bolditalic}

\startitemize[blacktriangle]
\item This is an item in a list
\item So is this
\stopitemize

\stoptext


This method allows you also set to use a different font for the regular and italic alternatives of your typeface.