3

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.

4

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).

4

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

enter image description here

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]

enter image description here

  • 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
  • 2
    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
2

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.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.