Unicode

From RogueBasin
Jump to navigation Jump to search

What is Unicode

First there was ASCII. While no one wants to return to the pre-ascii days where no two computers would agree on what bit patterns constituted the letter 'A', all was not right in the world. Languages with non-Latin orthographies found that their fancy a-with-a-hat-on-top (i.e. â) could not be represented. At first, this was solved by taking the upper half of 8-bit character set to define accented characters. These high-order characters often also had various graphical symbols attached to them.

The trouble with standards is that there are so many to choose from. While the 100th character is always the same, the 200th character isn't the same from computer to computer. It depends on which Code page is loaded. Assumptions about Code pages being the same leads to strange gibberish being displayed rather than the correct accented character. Also, not all languages can fit even with the 128 extra characters of extended ASCII.

Unicode is an attempt to resolve this once and for all by using a larger character set (21 bits) with built in extensibility to allow it to map all known human glyphs into one consistent character set.

This process proceeded quite well until someone asked who the heck gets to actually draw the hundreds of thousands of characters that would make up a Unicode font. As a result, while it is guaranteed that the A with a squiggle on top will be defined as an A with squiggle on top on every computer under Unicode, it is not at all guaranteed that the user will be able to render it as anything other than a blank space.

Unicode in Roguelikes

Many roguelikes, including NetHack, have included options to take advantage of high order ASCII to get extra symbols, allowing them to draw walls with lines rather than # marks.

Unicode has the potential of letting roguelikes access these special glyphs in a platform independent manner. Unfortunately, Unicode, by its "embrace every known glyph" mentality, can't guarantee that the font that you are using actually has the glyph defined.

Roguelikes that use Unicode are:

External links