Proposal to add standardized variation sequences for chess notation

Richard Wordingham richard.wordingham at
Sat Apr 8 08:49:45 CDT 2017

On Wed, 5 Apr 2017 14:08:03 +0100
Michael Everson <everson at> wrote:

> On 5 Apr 2017, at 04:50, Richard Wordingham
> <richard.wordingham at> wrote:
> >> Why would anyone make a font that supports the variants for
> >> drawing chessboards (which require the encoded characters
> >> 2654..265F) not put in glyphs for those?   
> > 
> > A stop-gap font based on poor glyphs comes to mind.  
> For pity’s sake. Yes, people can make and distribute crappy fonts.
> What are you on about? This is not serious criticism and what you
> suggest is no realistic scenario. 
> > Is this a sequence for the GSUB table or for the cmap table?    
> It’s the OpenType table. I said this already, twice. The entries are:
> 	sub uni2654 uniFE00 by uni2654FE00 ;
> 	sub uni2654 uniFE01 by uni2654FE01 ;
> 	sub uni2655 uniFE00 by uni2655FE00 ;
> 	sub uni2655 uniFE01 by uni2655FE01 ;
> and so on.
> > The font I have in mind would have no entry for U+2654 in its cmap
> > format 4 subtable but would, following the proposal you put up on
> > Saturday, have entries for <U+2654, U+FE00> and <U+2654, U+FE01> in
> > its cmap format 14 subtable.  
> OK, to hell with the cmap format 14 table. I don’t know what this is.
> I didn’t edit any such a table. I have text in my proposal about that
> because I took it from a proposal for Variation Sequences by Ken
> Lunde. I thought that was the same as the mechanism which I used to
> create the tables in my font, which worked, and worked well. I have
> implemented it. I would use my fonts (with variation selectors) in
> print and I would distribute the fonts. 
> PLEASE LOOK. You have said that you would add <U+2654, U+FE00> and
> <U+2654, U+FE01> and that’s JUST what I have in my opentype table. So
> you and I are doing the same thing. 

It may look like the same thing, but it is potentially quite
different.  I have created a TrueType, not OpenType, font (except that
it has an OS/2 table) 'Bad Chess' to demonstrate
( that one does not need a
GSUB table or similar to define a glyph mapping for variation
sequences.  Examine the font itself if you find this hard to believe.
There is no character to glyph map for variation selectors.
Unfortunately, I took so long to start creating such fonts that I
didn't have time to create glyphs. Instead, I reused some free (as in
speech) glyphs to demonstrate the effects.

My original hope was that it would map the variation sequences
<U+2654, U+FE00> and <U+2654, U+FE01> to glyphs without having a map
for U+2654.  However, if there is no character to glyph map for U+2654,
both Firefox and MS Edge choose to use other fonts for the sequences,
even though they will then naturally fall back to a map for U+2654,
ignoring the variation selector. When I added a map to a glyph for
U+2654, then the sequences worked, but then the font is honour-bound to
have a reasonable glyph for use in 'notation' text, not just for
chessboards. (The 'Bad Chess' font is currently a dishonourable proof
of principle font.)

Note that when Format 14 cmap subtables are understood, it does not
matter whether font ligatures are heeded by the renderer.  This
contrasts with the suggestion that square + occupying piece be encoded
as a ligature of square and occupying piece, which depends for
legibility on the ligation actually happening.

> > This approach is entirely consistent with the conception of
> > variation sequences as pseudo-encoding.  
> No, it’s a way of showing a particular glyph for an underlying base
> character. 

I was referring to the mechanics of converting a code to a glyph, not
the issue of whether, if at all, a glyph family should be encoded.

> > I could make such a font (for one chesspiece), but it would take at
> > least an evening.  
> I’ve done it for three fonts already, Ludus, Condal, and William’s
> Quest font. 

Did you create the glyphs for the chess pieces de novo, or merely adapt
them to show occupied squares?  Licences are an issue if one wishes to
share fonts.


More information about the Unicode mailing list