Code2001, a Plane 1 Unicode-based Font

(with experimental provisional scripts added to Plane 15)


Code2001 is a Plane 1 Unicode-based font (TTF).

The font is correctly encoded for Plane 1 per the latest TTF/OTF specifications. Both Apple and Microsoft now include specifications for cmap format 12 at their respective typography web sites. Code2001 works on Windows 2000, but may not work on older operating systems. Mac OS X supports Unicode's higher planes and Code2001 will work with certain applications (see below for further Mac information).

Constructive comments from users are most welcome. Please address comments about the font to James Kass.


In this version, the Fraktur and script special letter forms for Mathematics are (still) not completed, and many of them are wrong, rough, or inappropriate.

Download the newest version! (0.919) CODE2001.ZIP Updated April 2008

Code2001 is freeware, but must not be altered in any way. Embedding is enabled.

As with Code2000, Code2001 relies on font-smoothing (anti-aliasing) for screen display, it does not contain hinting instructions.

To turn on font-smoothing in Windows 2000, [Start] - [Control Panel] - [Display] - [Effects] - check the box which says “Smooth edges of screen fonts”.

Code2001 presently includes Old Persian Cuneiform, Deseret, Tengwar, Cirth, Old Italic, Gothic, Aegean Numbers, Cypriot Syllabary, Pollard Script, Old Persian Cuneiform, Phoenician, and Ugaritic. Provisional scripts are encoded in Private Use Areas, both in the Basic Multilingual Plane and Plane Fifteen. ISO-8859-01 is included for backwards compatibility (and because it is required by the specifications). As in the last few versions -- rough glyphs for many of the scripts which were recently added to Unicode are now found in the font. These rough, filler glyphs were added quickly in order to enable testing of these additions. These rough glyphs will be improved as time allows, meanwhile they should be better than those little squares.

Please note that scripts like Tengwar and Cirth are not yet part of any international standard. These scripts have been proposed for inclusion but lack approval. Users are warned that the Private Use Area code points will NOT be the final code points in which these scripts become approved. Furthermore, the proposals themselves often change. In an effort to keep this font avant-garde, when the proposals are amended, the code points of these provisional scripts in the font will need to be changed, too.

To learn about officially standardized scripts and get the latest information on any script’s status, please visit The Unicode Consortium's web site at: http://www.unicode.org

Information about scripts not yet approved can be found in the Unicode Roadmaps at:
http://www.unicode.org/roadmaps/

On the Unicode e-list, about 2020/10/04, there were letters exchanged regarding supplementary planes.

Here are excerpts from some of those letters with useful pointers:



Carl W. Brown wrote:

Look at http://msdn.microsoft.com/library/psdk/winbase/unicode_192r.htm

(...which has since been changed to:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/intl/unicode_192r.asp
...)

It explains how to turn on surrogates for W2K and some of the OpenType issues.



Apurva Joshi wrote:

Format 12 (segmented coverage) is required for surrogate fonts on Windows.

Such a font will need to contain a cmap subtable with:

Platform ID: 3
Platform specific encoding ID:10
Format: 12 (segmented coverage)

Details will be made available in the next OpenType spec update, which is due very soon.



Thanks to both Carl W. Brown and Apurva Joshi. The link to turn on surrogates in the Windows 2000 Registry enabled me to test this font in WordPad, and the updated OpenType specification made it possible to build the font correctly.

In Microsoft WordPad it is possible to enter surrogate pairs, although many keystrokes are required to generate just one character.

The surrogate pair for the DESERET CAPITAL LETTER LONG I (at U+10400) is U+D801 and U+DC00. In order to input this letter from the keyboard, convert the hexadecimal Unicode points to decimal numbers. U+D801 is #55297 and U+DC00 is #56320. Press and hold the ALT key and key in 55297 on the numeric key pad (not the numbers above the letter keys). Release the ALT key. Press and hold the ALT key again and key in 56320 on the numeric key pad. The DESERET CAPITAL LETTER LONG I should now display.

There is a better way to do this, of course.

Here is a Unicode plain text file saved in Microsoft WordPad. When surrogates are enabled in the registry, it is possible to view this file in WordPad by highlighting (selecting) the text and clicking [Format] - [Font], then choosing any font containing the necessary characters. plane1.txt contains short examples of Etruscan, Gothic, and Old Persian Cuneiform.

UPDATE:
Andrew “Bass” Shcheglov has provided a solution for displaying Plane One text in [older versions of] the Internet Explorer. Use NCRs (either decimal or hexadecimal) rather than UTF-8 encoding and set the charset to x-user defined in the HTML. Many thanks to Andrew for writing with this solution.

May 2007 - Leroy Vargas reports the Internet Explorer 7.0 supports Plane One charaters stored as UTF-8. This is welcome news, and, sure enough, MSIE7.0 seems to handle the UTF-8 just fine.


The Opera browser also displays Plane One text on Win NT-and-up!


Mac OS X supports Unicode's higher planes, too!


Windows style TrueType fonts, including fonts for Plane One, work on Mac OS X, version 10.1.

According to John H. Jenkins,

Install it in any of the usual locations for fonts; I put it in /Library/Fonts, myself. There are two caveats:

1) It will only work with Cocoa applications or ATSUI/MLTE-savvy applications.

2) You’ll need to have some way to input it. Unfortunately, the only way built into the system is to use the Unicode hex keyboard, which is activated with the International preferences; use the Keyboards tab. Once activated, the Unicode hex keyboard is available for any Unicode-capable application. Hold down the option key and type four hexadecimal digits. Since this is UTF-16, you’ll have to type the whole surrogate pair to get a plane one character. (Thus, holding down option and typing “dc01d800” will get you a single Deseret Alphabet letter.) It’s a bit of a pain and we’re working on better solutions.

As of September 2004, the Ukelele tool for keyboard layouts on Macs now supports the higher planes. Mac users may also be interested in KeyLayoutMaker. Thanks to Yves Codet for sending these links!



Some Plane One test pages:
http://www.code2000.net/deserettest.htm
http://www.code2000.net/gothictest.htm
http://www.code2000.net/oneplane.htm
http://www.i18nguy.com/unicode-example-plane1.html

My home page
Valid HTML 3.2!