Some Private Use Area code points for chess pieces for use in chess diagrams.

This document lists some Private Use Area code points for chess pieces for use in chess diagrams.

This list, the code points being entirely the choice of the present author, is published by the present author. The code points chosen are only as consistent amongst end users as end users choose to make them. These code points are not a "standard". They are simply provided on the basis that a list is better than no list, in that the existence of a list will hopefully help in producing Unicode compatible representations of chess diagrams with those Unicode compatible representations compatible with each other.


The Unicode specification provides, in the Miscellaneous Symbols section, the following twelve chess symbols.

U+2654 WHITE CHESS KING
U+2655 WHITE CHESS QUEEN
U+2656 WHITE CHESS ROOK
U+2657 WHITE CHESS BISHOP
U+2658 WHITE CHESS KNIGHT
U+2659 WHITE CHESS PAWN
U+265A BLACK CHESS KING
U+265B BLACK CHESS QUEEN
U+265C BLACK CHESS ROOK
U+265D BLACK CHESS BISHOP
U+265E BLACK CHESS KNIGHT
U+265F BLACK CHESS PAWN

However, in order to set chess positions one needs to have some pieces upon a white square and some pieces upon a black square: a black square usually being denoted by diagonal lines from top left to bottom right surrounding the piece.

This list of code points is for symbols for producing chess diagrams, with all symbols being specified as being upon a square body, as with a metal type chess fount.

Code points U+E5B0 through to U+E5FF are used for these symbols.

The code points in the U+E5B0 through to U+E5B7 range are used to provide various edge pieces for the chess board.

The code points in the U+E5C0 through to U+E5FF range are used to provide a comprehensive set of symbols so that, as well as both black and white pieces upon both black and white squares together with an empty black square and an empty white square, there are also alternative characters for rooks, knights, bishops and queens and second alternative characters for queens. This will enable founts for ornate "Isle of Lewis" style chess pieces to be produced where the knights are men upon horseback and there are various designs. These various designs do not affect the play of the game at all, they are just decorative distinctions based upon the variations in the original solid chess pieces.

The Private Use Area code points are suitable for use with ordinary TrueType founts.


In order that readers who are using OpenType technology may use ZWJ sequences in order to design chess founts I am also including ZWJ sequences for each piece.

These ZWJ sequences each include a regular Unicode code and a Private Use Area chess zero width operator. Eight such chess zero width operators are defined. They are just a convenient way of telling a fount that the ligature mechanism is to be used so as to replace the regular Unicode glyph with a special chess glyph if one is available within the fount. However the result is not a ligature design but a different glyph, so the word operator is used in the name.

Code points U+E5B0 through to U+E5FF are used for these chess zero width operators.

These ZWJ sequences involve the use of the regular Unicode chess symbol codes, yet each such sequence also involves a Private Use Area code within the sequence. This would mean that using the sequence with a fount which recognizes all regular Unicode characters yet which does not recognize the ZWJ sequences in this document may well give a reasonable indication that a chess diagram is intended and, indeed, allow an observant person to deduce the total meaning of the diagram. Naturally, if that fount has some different set of characters in use for the Private Use Area code points or has a black rectangle appear as an unknown character, then the display will be less elegant than if the fount displays all Private Use Area characters as zero width. Naturally, if all of the regular Unicode chess symbols are implemented as being of equal width with each other, then the default effect will be better than if they are not of equal width with each other.

An issue is that these ZWJ sequences do not default to individual characters in the way that, say, a sequence of c ZWJ t would default to displaying c t. However, I feel that it is reasonable for me to publish Private Use definitions of ZWJ sequences which involve a regular Unicode character where the default of just the characters is not a correct display provided that at least one of the characters in the ZWJ sequence is itself a Private Use Area character. This means that the Private Use nature of the usage of such a ZWJ sequence in a plain text file would be apparent.

The code point for the ZWJ item is U+200D. The full name is ZERO WIDTH JOINER.


Here are the code point and chess diagram symbol pairings. Please note that I have provided the ZWJ sequences in the hope that they will be useful to people using OpenType technology. I have not used OpenType technology myself as of the date of this document. My specification of the ZWJ sequences is based upon reading documentation on the http://www.unicode.org website. However, I have included the ZWJ sequences in the hope that they will be useful to any readers knowledgable of OpenType technology who would like to try them out. In the event of any problems with the sequences stated, I would be pleased to receive notification by email.

I have added an additional symbol, of my own idea, the Herald.

The purpose of the Herald character is that that symbol may, if desired, be placed adjacent to the chess diagram so as to indicate whether it is white to move or black to move. The use of the Herald is entirely optional. I envisage that in ornate founts the Herald could be designed so as to have a baton raised in the air or could have a scroll open as if reading from it in order to signify that that side is to make the next move. In order to provide a comprehensive set of symbols, I am also including a Herald who is passive, so that, if fount designers so choose and end users of founts so choose, two Heralds, one active and one passive could accompany each chess diagram. A passive Herald could have a lowered baton or a closed scroll as desired, or whatever, so as to clearly distinguish between an active Herald and a passive Herald. A passive Herald implies that the next move is to be made by the other side, though a passive Herald should not be used without an active Herald for the other side being used adjacent to the same diagram. The Heralds are free standing, without being upon a square of either colour.

The presumption is that all of these chess diagram symbols are square, including the body of each unit used for the borders of the chess board, even if the printable area of the border is less wide than a square. The phrase "upon a white square" may be interpreted as desired: one possibility is just a blank surround, another possibility is an unfilled square. The phrase "upon a black square" may be interpreted as desired: one possibility is a solid filled square, another possibility is a series of diagonal lines from upper left to lower right, another possibility is a scrollwork design, perhaps based upon circles and Bézier curves.

In producing this list of code points I have decided to use the order of the pieces in regular Unicode. I have included code points for chess pieces upon white squares and for chess pieces upon black squares. In addition, for the alternative pieces I have included code points for the pieces as free standing, so that code points for free standing pieces exist, in case any particular fount designer chooses to implement "upon a white square" other than as surrounded entirely by space.

Regular Unicode provides the following chess symbols, which may be interpreted as free standing chess pieces in a fount which provides free standing chess pieces, chess pieces upon white squares and chess pieces upon black squares.

U+2654 WHITE CHESS KING
U+2655 WHITE CHESS QUEEN
U+2656 WHITE CHESS ROOK
U+2657 WHITE CHESS BISHOP
U+2658 WHITE CHESS KNIGHT
U+2659 WHITE CHESS PAWN
U+265A BLACK CHESS KING
U+265B BLACK CHESS QUEEN
U+265C BLACK CHESS ROOK
U+265D BLACK CHESS BISHOP
U+265E BLACK CHESS KNIGHT
U+265F BLACK CHESS PAWN

The ZWJ sequences also make use of the following regular Unicode code points from the Geometric shapes section.

U+25A0 BLACK SQUARE
U+25A1 WHITE SQUARE
U+25A4 SQUARE WITH HORIZONTAL FILL
U+25A5 SQUARE WITH VERTICAL FILL
U+25F0 WHITE SQUARE WITH UPPER LEFT QUADRANT
U+25F1 WHITE SQUARE WITH LOWER LEFT QUADRANT
U+25F2 WHITE SQUARE WITH LOWER RIGHT QUADRANT
U+25F3 WHITE SQUARE WITH UPPER RIGHT QUADRANT
U+25B6 BLACK RIGHT-POINTING TRIANGLE
U+25B7 WHITE RIGHT-POINTING TRIANGLE

These are used so that a display of a chess diagram using the ZWJ sequences below with a Unicode fount but without the sequences below defined within the fount will hopefully produce a sensible display.

Please note that the ZWJ sequences for the Heralds are such that an active Herald will default to a king of the correct colour and a passive Herald will default to a pawn of the correct colour.

The two pennants are included with the thought that they might be useful when stating the names of the two players so as to indicate which player plays with the white pieces and which player plays with the black pieces.

 

U+E5B0 CHESS BOARD UPPER LEFT CORNER U+25F2 ZWJ U+E5BE
U+E5B1 CHESS BOARD UPPER RIGHT CORNER U+25F1 ZWJ U+E5BE
U+E5B2 CHESS BOARD LOWER LEFT CORNER U+25F3 ZWJ U+E5BE
U+E5B3 CHESS BOARD LOWER RIGHT CORNER U+25F0 ZWJ U+E5BE
U+E5B4 CHESS BOARD UPPER EDGE SQUARE U+25A4 ZWJ U+E5BE
U+E5B5 CHESS BOARD LEFT EDGE SQUARE U+25A5 ZWJ U+E5BE
U+E5B6 CHESS BOARD RIGHT EDGE SQUARE U+25A5 ZWJ U+E5BF
U+E5B7 CHESS BOARD LOWER EDGE SQUARE U+25A4 ZWJ U+E5BF
U+E5B8 CHESS ZERO WIDTH UPON A WHITE SQUARE OPERATOR  
U+E5B9 CHESS ZERO WIDTH ALTERNATIVE UPON A WHITE SQUARE OPERATOR  
U+E5BA CHESS ZERO WIDTH SECOND ALTERNATIVE UPON A WHITE SQUARE OPERATOR  
U+E5BB CHESS ZERO WIDTH UPON A BLACK SQUARE OPERATOR  
U+E5BC CHESS ZERO WIDTH ALTERNATIVE UPON A BLACK SQUARE OPERATOR  
U+E5BD CHESS ZERO WIDTH SECOND ALTERNATIVE UPON A BLACK SQUARE OPERATOR  
U+E5BE CHESS ZERO WIDTH ALTERNATIVE FREE STANDING OPERATOR  
U+E5BF CHESS ZERO WIDTH SECOND ALTERNATIVE FREE STANDING OPERATOR  

 

U+E5C0 CHESS EMPTY WHITE SQUARE U+25A1 ZWJ U+E5BE
U+E5C1 WHITE CHESS KING UPON A WHITE SQUARE U+2654 ZWJ U+E5B8
U+E5C2 WHITE CHESS QUEEN UPON A WHITE SQUARE U+2655 ZWJ U+E5B8
U+E5C3 WHITE CHESS ROOK UPON A WHITE SQUARE U+2656 ZWJ U+E5B8
U+E5C4 WHITE CHESS BISHOP UPON A WHITE SQUARE U+2657 ZWJ U+E5B8
U+E5C5 WHITE CHESS KNIGHT UPON A WHITE SQUARE U+2658 ZWJ U+E5B8
U+E5C6 WHITE CHESS PAWN UPON A WHITE SQUARE U+2659 ZWJ U+E5B8
U+E5C7 WHITE CHESS HERALD ACTIVE U+2654 ZWJ U+E5BF
U+E5C8 WHITE CHESS ALTERNATIVE QUEEN U+2655 ZWJ U+E5BE
U+E5C9 WHITE CHESS SECOND ALTERNATIVE QUEEN U+2655 ZWJ U+E5BF
U+E5CA WHITE CHESS ALTERNATIVE QUEEN UPON A WHITE SQUARE U+2655 ZWJ U+E5B9
U+E5CB WHITE CHESS ALTERNATIVE ROOK UPON A WHITE SQUARE U+2656 ZWJ U+E5B9
U+E5CC WHITE CHESS ALTERNATIVE BISHOP UPON A WHITE SQUARE U+2657 ZWJ U+E5B9
U+E5CD WHITE CHESS ALTERNATIVE KNIGHT UPON A WHITE SQUARE U+2658 ZWJ U+E5B9
U+E5CE WHITE CHESS SECOND ALTERNATIVE QUEEN UPON A WHITE SQUARE U+2655 ZWJ U+E5BA
U+E5CF WHITE CHESS HERALD PASSIVE U+2659 ZWJ U+E5BF
     
U+E5D0 CHESS BLANK SPACE SQUARE U+25A1 ZWJ U+E5BF
U+E5D1 BLACK CHESS KING UPON A WHITE SQUARE U+265A ZWJ U+E5B8
U+E5D2 BLACK CHESS QUEEN UPON A WHITE SQUARE U+265B ZWJ U+E5B8
U+E5D3 BLACK CHESS ROOK UPON A WHITE SQUARE U+265C ZWJ U+E5B8
U+E5D4 BLACK CHESS BISHOP UPON A WHITE SQUARE U+265D ZWJ U+E5B8
U+E5D5 BLACK CHESS KNIGHT UPON A WHITE SQUARE U+265E ZWJ U+E5B8
U+E5D6 BLACK CHESS PAWN UPON A WHITE SQUARE U+265F ZWJ U+E5B8
U+E5D7 BLACK CHESS HERALD ACTIVE U+265A ZWJ U+E5BF
U+E5D8 BLACK CHESS ALTERNATIVE QUEEN U+265B ZWJ U+E5BE
U+E5D9 BLACK CHESS SECOND ALTERNATIVE QUEEN U+265B ZWJ U+E5BF
U+E5DA BLACK CHESS ALTERNATIVE QUEEN UPON A WHITE SQUARE U+265B ZWJ U+E5B9
U+E5DB BLACK CHESS ALTERNATIVE ROOK UPON A WHITE SQUARE U+265C ZWJ U+E5B9
U+E5DC BLACK CHESS ALTERNATIVE BISHOP UPON A WHITE SQUARE U+265D ZWJ U+E5B9
U+E5DD BLACK CHESS ALTERNATIVE KNIGHT UPON A WHITE SQUARE U+265E ZWJ U+E5B9
U+E5DE BLACK CHESS SECOND ALTERNATIVE QUEEN UPON A WHITE SQUARE U+2654 ZWJ U+E5BA
U+E5DF BLACK CHESS HERALD PASSIVE U+265F ZWJ U+E5BF
     
U+E5E0 CHESS EMPTY BLACK SQUARE U+25A0 ZWJ U+E5BE
U+E5E1 WHITE CHESS KING UPON A BLACK SQUARE U+2654 ZWJ U+E5BB
U+E5E2 WHITE CHESS QUEEN UPON A BLACK SQUARE U+2655 ZWJ U+E5BB
U+E5E3 WHITE CHESS ROOK UPON A BLACK SQUARE U+2656 ZWJ U+E5BB
U+E5E4 WHITE CHESS BISHOP UPON A BLACK SQUARE U+2657 ZWJ U+E5BB
U+E5E5 WHITE CHESS KNIGHT UPON A BLACK SQUARE U+2658 ZWJ U+E5BB
U+E5E6 WHITE CHESS PAWN UPON A BLACK SQUARE U+2659 ZWJ U+E5BB
U+E5E7 WHITE CHESS ALTERNATIVE ROOK U+2656 ZWJ U+E5BE
U+E5E8 WHITE CHESS ALTERNATIVE BISHOP U+2657 ZWJ U+E5BE
U+E5E9 WHITE CHESS ALTERNATIVE KNIGHT U+2658 ZWJ U+E5BE
U+E5EA WHITE CHESS ALTERNATIVE QUEEN UPON A BLACK SQUARE U+2655 ZWJ U+E5BC
U+E5EB WHITE CHESS ALTERNATIVE ROOK UPON A BLACK SQUARE U+2656 ZWJ U+E5BC
U+E5EC WHITE CHESS ALTERNATIVE BISHOP UPON A BLACK SQUARE U+2657 ZWJ U+E5BC
U+E5ED WHITE CHESS ALTERNATIVE KNIGHT UPON A BLACK SQUARE U+2658 ZWJ U+E5BC
U+E5EE WHITE CHESS SECOND ALTERNATIVE QUEEN UPON A BLACK SQUARE U+2655 ZWJ U+E5BD
U+E5EF WHITE CHESS PENNANT UPON A POLE U+25B7 ZWJ U+E5BE
     
U+E5F0 CHESS ORNATE MOTIF SQUARE U+25A0 ZWJ U+E5BF
U+E5F1 BLACK CHESS KING UPON A BLACK SQUARE U+265A ZWJ U+E5BB
U+E5F2 BLACK CHESS QUEEN UPON A BLACK SQUARE U+265B ZWJ U+E5BB
U+E5F3 BLACK CHESS ROOK UPON A BLACK SQUARE U+265C ZWJ U+E5BB
U+E5F4 BLACK CHESS BISHOP UPON A BLACK SQUARE U+265D ZWJ U+E5BB
U+E5F5 BLACK CHESS KNIGHT UPON A BLACK SQUARE U+265E ZWJ U+E5BB
U+E5F6 BLACK CHESS PAWN UPON A BLACK SQUARE U+265F ZWJ U+E5BB
U+E5F7 BLACK CHESS ALTERNATIVE ROOK U+265C ZWJ U+E5BE
U+E5F8 BLACK CHESS ALTERNATIVE BISHOP U+265D ZWJ U+E5BE
U+E5F9 BLACK CHESS ALTERNATIVE KNIGHT U+265E ZWJ U+E5BE
U+E5FA BLACK CHESS ALTERNATIVE QUEEN UPON A BLACK SQUARE U+265B ZWJ U+E5BC
U+E5FB BLACK CHESS ALTERNATIVE ROOK UPON A BLACK SQUARE U+265C ZWJ U+E5BC
U+E5FC BLACK CHESS ALTERNATIVE BISHOP UPON A BLACK SQUARE U+265D ZWJ U+E5BC
U+E5FD BLACK CHESS ALTERNATIVE KNIGHT UPON A BLACK SQUARE U+265E ZWJ U+E5BC
U+E5FE BLACK CHESS SECOND ALTERNATIVE QUEEN UPON A BLACK SQUARE U+265B ZWJ U+E5BD
U+E5FF BLACK CHESS PENNANT UPON A POLE U+25B6 ZWJ U+E5BE

Hopefully the code points in this document will be useful in producing founts for chess diagrams, with the founts being compatible with Unicode.

William Overington

18 June 2002


 

This file is accessible as follows.

http://www.users.globalnet.co.uk/~ngo/chess.htm