diff --git a/src/xpdev/unicode.c b/src/xpdev/unicode.c
index 8955cfca37bbff5e7e2a154d628caf885a70dce4..171d970cb3bc9065da61835a2a8fd4af499ead30 100644
--- a/src/xpdev/unicode.c
+++ b/src/xpdev/unicode.c
@@ -49,38 +49,38 @@
 // If the value at that index is 0, no translation is needed (1:1 mapping).
 enum unicode_codepoint cp437_unicode_tbl[] =
 {
-	/* 0x00 */ 0,
-	/* 0x01 */ 0x263A,
-	/* 0x02 */ 0x263B,
-	/* 0x03 */ 0x2665,
-	/* 0x04 */ 0x2666,
-	/* 0x05 */ 0x2663,
-	/* 0x06 */ 0x2660,
-	/* 0x07 '\a' */	UNICODE_TERM_CTRL_CHAR_CODE(0x2022),
-	/* 0x08 '\b' */	UNICODE_TERM_CTRL_CHAR_CODE(0x25D8),
-	/* 0x09 '\t' */	UNICODE_TERM_CTRL_CHAR_CODE(0x25CB),
-	/* 0x0A '\n' */	UNICODE_TERM_CTRL_CHAR_CODE(0x25D9),
-	/* 0x0B */ 0x2642,
-	/* 0x0C '\f' */	UNICODE_TERM_CTRL_CHAR_CODE(0x2640),
-	/* 0x0D '\r' */	UNICODE_TERM_CTRL_CHAR_CODE(0x266A),
-	/* 0x0E */ 0x266B,
-	/* 0x0F */ 0x263C,
-	/* 0x10 */ 0x25BA,
-	/* 0x11 */ 0x25C4,
-	/* 0x12 */ 0x2195,
-	/* 0x13 */ 0x203C,
-	/* 0x14 */ 0x00B6,
-	/* 0x15 */ 0x00A7,
-	/* 0x16 */ 0x25AC,
-	/* 0x17 */ 0x21A8,
-	/* 0x18 */ 0x2191,
-	/* 0x19 */ 0x2193,
-	/* 0x1A */ 0x2192,
-	/* 0x1B '\e' */ UNICODE_TERM_CTRL_CHAR_CODE(0x2190),
-	/* 0x1C */ 0x221F,
-	/* 0x1D */ 0x2194,
-	/* 0x1E */ 0x25B2,
-	/* 0x1F */ 0x25BC,
+	/* 0x00 */ UNICODE_UNDEFINED,
+	/* 0x01 */ UNICODE_WHITE_SMILING_FACE,
+	/* 0x02 */ UNICODE_BLACK_SMILING_FACE,
+	/* 0x03 */ UNICODE_BLACK_HEART_SUIT,
+	/* 0x04 */ UNICODE_BLACK_DIAMOND_SUIT,
+	/* 0x05 */ UNICODE_BLACK_CLUB_SUIT,
+	/* 0x06 */ UNICODE_BLACK_SPADE_SUIT,
+	/* 0x07 '\a' */	UNICODE_TERM_CTRL_CHAR_CODE(UNICODE_BULLET),
+	/* 0x08 '\b' */	UNICODE_TERM_CTRL_CHAR_CODE(UNICODE_INVERSE_BULLET),
+	/* 0x09 '\t' */	UNICODE_TERM_CTRL_CHAR_CODE(UNICODE_WHITE_CIRCLE),
+	/* 0x0A '\n' */	UNICODE_TERM_CTRL_CHAR_CODE(UNICODE_INVERSE_WHITE_CIRCLE),
+	/* 0x0B */ UNICODE_MALE_SIGN,
+	/* 0x0C '\f' */	UNICODE_TERM_CTRL_CHAR_CODE(UNICODE_FEMALE_SIGN),
+	/* 0x0D '\r' */	UNICODE_TERM_CTRL_CHAR_CODE(UNICODE_EIGHTH_NOTE),
+	/* 0x0E */ UNICODE_BEAMED_EIGHTH_NOTES,
+	/* 0x0F */ UNICODE_WHITE_SUN_WITH_RAYS,
+	/* 0x10 */ UNICODE_BLACK_RIGHT_POINTING_POINTER,
+	/* 0x11 */ UNICODE_BLACK_LEFT_POINTING_POINTER,
+	/* 0x12 */ UNICODE_UP_DOWN_ARROW,
+	/* 0x13 */ UNICODE_DOUBLE_EXCLAMATION_MARK,
+	/* 0x14 */ UNICODE_PILCROW_SIGN,
+	/* 0x15 */ UNICODE_SECTION_SIGN,
+	/* 0x16 */ UNICODE_BLACK_RECTANGLE,
+	/* 0x17 */ UNICODE_UP_DOWN_ARROW_WITH_BASE,
+	/* 0x18 */ UNICODE_UPWARDS_ARROW,
+	/* 0x19 */ UNICODE_DOWNWARDS_ARROW,
+	/* 0x1A */ UNICODE_RIGHTWARDS_ARROW,
+	/* 0x1B '\e' */ UNICODE_TERM_CTRL_CHAR_CODE(UNICODE_LEFTWARDS_ARROW),
+	/* 0x1C */ UNICODE_RIGHT_ANGLE,
+	/* 0x1D */ UNICODE_LEFT_RIGHT_ARROW,
+	/* 0x1E */ UNICODE_BLACK_UP_POINTING_TRIANGLE,
+	/* 0x1F */ UNICODE_BLACK_DOWN_POINTING_TRIANGLE,
 	/* 0x20-0x7E	(1:1 with US-ASCII and CP437) */
 	0,
 	0,
@@ -178,61 +178,61 @@ enum unicode_codepoint cp437_unicode_tbl[] =
 	0,
 	0,
 	/* 0x7F (DEL) */ UNICODE_TERM_CTRL_CHAR_CODE(0x2302),
-	/* 0x80 */ 0x00C7,
-	/* 0x81 */ 0x00FC,
-	/* 0x82 */ 0x00E9,
-	/* 0x83 */ 0x00E2,
-	/* 0x84 */ 0x00E4,
-	/* 0x85 */ 0x00E0,
-	/* 0x86 */ 0x00E5,
-	/* 0x87 */ 0x00E7,
-	/* 0x88 */ 0x00EA,
-	/* 0x89 */ 0x00EB,
-	/* 0x8A */ 0x00E8,
-	/* 0x8B */ 0x00EF,
-	/* 0x8C */ 0x00EE,
-	/* 0x8D */ 0x00EC,
-	/* 0x8E */ 0x00C4,
-	/* 0x8F */ 0x00C5,
-	/* 0x90 */ 0x00C9,
-	/* 0x91 */ 0x00E6,
-	/* 0x92 */ 0x00C6,
-	/* 0x93 */ 0x00F4,
-	/* 0x94 */ 0x00F6,
-	/* 0x95 */ 0x00F2,
-	/* 0x96 */ 0x00F8,
-	/* 0x97 */ 0x00F9,
-	/* 0x98 */ 0x00FF,
-	/* 0x99 */ 0x00D6,
-	/* 0x9A */ 0x00DC,
-	/* 0x9B */ 0x00A2,
-	/* 0x9C */ 0x00A3,
-	/* 0x9D */ 0x00A5,
-	/* 0x9E */ 0x20A7,
-	/* 0x9F */ 0x0192,
-	/* 0xA0 */ 0x00E1,
-	/* 0xA1 */ 0x00ED,
-	/* 0xA2 */ 0x00F3,
-	/* 0xA3 */ 0x00FA,
-	/* 0xA4 */ 0x00F1,
-	/* 0xA5 */ 0x00D1,
-	/* 0xA6 */ 0x00AA,
-	/* 0xA7 */ 0x00BA,
-	/* 0xA8 */ 0x00BF,
-	/* 0xA9 */ 0x2310,
-	/* 0xAA */ 0x00AC,
-	/* 0xAB */ 0x00BD,
-	/* 0xAC */ 0x00BC,
-	/* 0xAD */ 0x00A1,
-	/* 0xAE */ 0x00AB,
-	/* 0xAF */ 0x00BB,
-	/* 0xB0 */ 0x2591,
-	/* 0xB1 */ 0x2592,
-	/* 0xB2 */ 0x2593,
-	/* 0xB3 */ 0x2502,
-	/* 0xB4 */ 0x2524,
-	/* 0xB5 */ 0x2561,
-	/* 0xB6 */ 0x2562,
+	/* 0x80 */ UNICODE_LATIN_CAPITAL_LETTER_C_WITH_CEDILLA,
+	/* 0x81 */ UNICODE_LATIN_SMALL_LETTER_U_WITH_DIAERESIS,
+	/* 0x82 */ UNICODE_LATIN_SMALL_LETTER_E_WITH_ACUTE,
+	/* 0x83 */ UNICODE_LATIN_SMALL_LETTER_A_WITH_CIRCUMFLEX,
+	/* 0x84 */ UNICODE_LATIN_SMALL_LETTER_A_WITH_DIAERESIS,
+	/* 0x85 */ UNICODE_LATIN_SMALL_LETTER_A_WITH_GRAVE,
+	/* 0x86 */ UNICODE_LATIN_SMALL_LETTER_A_WITH_RING_ABOVE,
+	/* 0x87 */ UNICODE_LATIN_SMALL_LETTER_C_WITH_CEDILLA,
+	/* 0x88 */ UNICODE_LATIN_SMALL_LETTER_E_WITH_CIRCUMFLEX,
+	/* 0x89 */ UNICODE_LATIN_SMALL_LETTER_E_WITH_DIAERESIS,
+	/* 0x8A */ UNICODE_LATIN_SMALL_LETTER_E_WITH_GRAVE,
+	/* 0x8B */ UNICODE_LATIN_SMALL_LETTER_I_WITH_DIAERESIS,
+	/* 0x8C */ UNICODE_LATIN_SMALL_LETTER_I_WITH_CIRCUMFLEX,
+	/* 0x8D */ UNICODE_LATIN_SMALL_LETTER_I_WITH_GRAVE,
+	/* 0x8E */ UNICODE_LATIN_CAPITAL_LETTER_A_WITH_DIAERESIS,
+	/* 0x8F */ UNICODE_LATIN_CAPITAL_LETTER_A_WITH_RING_ABOVE,
+	/* 0x90 */ UNICODE_LATIN_CAPITAL_LETTER_E_WITH_ACUTE,
+	/* 0x91 */ UNICODE_LATIN_SMALL_LETTER_AE,
+	/* 0x92 */ UNICODE_LATIN_CAPITAL_LETTER_AE,
+	/* 0x93 */ UNICODE_LATIN_SMALL_LETTER_O_WITH_CIRCUMFLEX,
+	/* 0x94 */ UNICODE_LATIN_SMALL_LETTER_O_WITH_DIAERESIS,
+	/* 0x95 */ UNICODE_LATIN_SMALL_LETTER_O_WITH_GRAVE,
+	/* 0x96 */ UNICODE_LATIN_SMALL_LETTER_U_WITH_CIRCUMFLEX,
+	/* 0x97 */ UNICODE_LATIN_SMALL_LETTER_U_WITH_GRAVE,
+	/* 0x98 */ UNICODE_LATIN_SMALL_LETTER_Y_WITH_DIAERESIS,
+	/* 0x99 */ UNICODE_LATIN_CAPITAL_LETTER_O_WITH_DIAERESIS,
+	/* 0x9A */ UNICODE_LATIN_CAPITAL_LETTER_U_WITH_DIAERESIS,
+	/* 0x9B */ UNICODE_CENT_SIGN,
+	/* 0x9C */ UNICODE_POUND_SIGN,
+	/* 0x9D */ UNICODE_YEN_SIGN,
+	/* 0x9E */ UNICODE_PESETA_SIGN,
+	/* 0x9F */ UNICODE_LATIN_SMALL_LETTER_F_WITH_HOOK,
+	/* 0xA0 */ UNICODE_LATIN_SMALL_LETTER_A_WITH_ACUTE,
+	/* 0xA1 */ UNICODE_LATIN_SMALL_LETTER_I_WITH_ACUTE,
+	/* 0xA2 */ UNICODE_LATIN_SMALL_LETTER_O_WITH_ACUTE,
+	/* 0xA3 */ UNICODE_LATIN_SMALL_LETTER_U_WITH_ACUTE,
+	/* 0xA4 */ UNICODE_LATIN_SMALL_LETTER_N_WITH_TILDE,
+	/* 0xA5 */ UNICODE_LATIN_CAPITAL_LETTER_N_WITH_TILDE,
+	/* 0xA6 */ UNICODE_FEMININE_ORDINAL_INDICATOR,
+	/* 0xA7 */ UNICODE_MASCULINE_ORDINAL_INDICATOR,
+	/* 0xA8 */ UNICODE_INVERTED_QUESTION_MARK,
+	/* 0xA9 */ UNICODE_REVERSED_NOT_SIGN,
+	/* 0xAA */ UNICODE_NOT_SIGN,
+	/* 0xAB */ UNICODE_VULGAR_FRACTION_ONE_HALF,
+	/* 0xAC */ UNICODE_VULGAR_FRACTION_ONE_QUARTER,
+	/* 0xAD */ UNICODE_INVERTED_EXCLAMATION_MARK,
+	/* 0xAE */ UNICODE_LEFT_POINTING_DOUBLE_ANGLE_QUOTATION_MARK,
+	/* 0xAF */ UNICODE_RIGHT_POINTING_DOUBLE_ANGLE_QUOTATION_MARK,
+	/* 0xB0 */ UNICODE_LIGHT_SHADE,
+	/* 0xB1 */ UNICODE_MEDIUM_SHADE,
+	/* 0xB2 */ UNICODE_DARK_SHADE,
+	/* 0xB3 */ UNICODE_BOX_DRAWINGS_LIGHT_VERTICAL,
+	/* 0xB4 */ UNICODE_BOX_DRAWINGS_LIGHT_VERTICAL_AND_LEFT,
+	/* 0xB5 */ UNICODE_BOX_DRAWINGS_VERTICAL_SINGLE_AND_LEFT_DOUBLE,
+	/* 0xB6 */ UNICODE_BOX_DRAWINGS_VERTICAL_DOUBLE_AND_LEFT_SINGLE,
 	/* 0xB7 */ 0x2556,
 	/* 0xB8 */ 0x2555,
 	/* 0xB9 */ 0x2563,
@@ -274,38 +274,38 @@ enum unicode_codepoint cp437_unicode_tbl[] =
 	/* 0xDD */ 0x258C,
 	/* 0xDE */ 0x2590,
 	/* 0xDF */ 0x2580,
-	/* 0xE0 */ 0x03B1,
-	/* 0xE1 */ 0x00DF,
-	/* 0xE2 */ 0x0393,
-	/* 0xE3 */ 0x03C0,
-	/* 0xE4 */ 0x03A3,
-	/* 0xE5 */ 0x03C3,
-	/* 0xE6 */ 0x00B5,
-	/* 0xE7 */ 0x03C4,
-	/* 0xE8 */ 0x03A6,
-	/* 0xE9 */ 0x0398,
-	/* 0xEA */ 0x03A9,
-	/* 0xEB */ 0x03B4,
-	/* 0xEC */ 0x221E,
-	/* 0xED */ 0x03C6,
-	/* 0xEE */ 0x03B5,
-	/* 0xEF */ 0x2229,
-	/* 0xF0 */ 0x2261,
-	/* 0xF1 */ 0x00B1,
-	/* 0xF2 */ 0x2265,
-	/* 0xF3 */ 0x2264,
-	/* 0xF4 */ 0x2320,
-	/* 0xF5 */ 0x2321,
-	/* 0xF6 */ 0x00F7,
-	/* 0xF7 */ 0x2248,
-	/* 0xF8 */ 0x00B0,
-	/* 0xF9 */ 0x2219,
-	/* 0xFA */ 0x00B7,
-	/* 0xFB */ 0x221A,
-	/* 0xFC */ 0x207F,
-	/* 0xFD */ 0x00B2,
-	/* 0xFE */ 0xFFED, //0x25A0,
-	/* 0xFF */ 0x00A0
+	/* 0xE0 */ UNICODE_GREEK_SMALL_LETTER_ALPHA,
+	/* 0xE1 */ UNICODE_GREEK_SMALL_LETTER_BETA, // or UNICODE_LATIN_SMALL_LETTER_SHARP_S
+	/* 0xE2 */ UNICODE_GREEK_SMALL_LETTER_GAMMA,
+	/* 0xE3 */ UNICODE_GREEK_SMALL_LETTER_PI,
+	/* 0xE4 */ UNICODE_GREEK_CAPITAL_LETTER_SIGMA,
+	/* 0xE5 */ UNICODE_GREEK_SMALL_LETTER_SIGMA,
+	/* 0xE6 */ UNICODE_GREEK_SMALL_LETTER_MU, // or UNICODE_MICRO_SIGN
+	/* 0xE7 */ UNICODE_GREEK_SMALL_LETTER_TAU,
+	/* 0xE8 */ UNICODE_GREEK_CAPITAL_LETTER_PHI,
+	/* 0xE9 */ UNICODE_GREEK_SMALL_LETTER_THETA, // or UNICODE_GREEK_CAPITAL_LETTER_THETA
+	/* 0xEA */ UNICODE_GREEK_CAPITAL_LETTER_OMEGA,
+	/* 0xEB */ UNICODE_GREEK_SMALL_LETTER_DELTA,
+	/* 0xEC */ UNICODE_INFINITY,
+	/* 0xED */ UNICODE_GREEK_SMALL_LETTER_PHI,
+	/* 0xEE */ UNICODE_GREEK_SMALL_LETTER_EPSILON,
+	/* 0xEF */ UNICODE_INTERSECTION,
+	/* 0xF0 */ UNICODE_IDENTICAL_TO, // A.K.A. "TRIPLE BAR"
+	/* 0xF1 */ UNICODE_PLUS_MINUS_SIGN,
+	/* 0xF2 */ UNICODE_GREATER_THAN_OR_EQUAL_TO,
+	/* 0xF3 */ UNICODE_LESS_THAN_OR_EQUAL_TO,
+	/* 0xF4 */ UNICODE_TOP_HALF_INTEGRAL,
+	/* 0xF5 */ UNICODE_BOTTOM_HALF_INTEGRAL,
+	/* 0xF6 */ UNICODE_DIVISION_SIGN,
+	/* 0xF7 */ UNICODE_ALMOST_EQUAL_TO,
+	/* 0xF8 */ UNICODE_DEGREE_SIGN,
+	/* 0xF9 */ UNICODE_BULLET_OPERATOR,
+	/* 0xFA */ UNICODE_MIDDLE_DOT,
+	/* 0xFB */ UNICODE_SQUARE_ROOT, // or UNICODE_CHECK_MARK
+	/* 0xFC */ UNICODE_SUPERSCRIPT_LATIN_SMALL_LETTER_N,
+	/* 0xFD */ UNICODE_SUPERSCRIPT_TWO,
+	/* 0xFE */ UNICODE_HALFWIDTH_BLACK_SQUARE, // or UNICODE_BLACK_SQUARE
+	/* 0xFF */ UNICODE_NO_BREAK_SPACE
 };
 
 size_t unicode_width(enum unicode_codepoint u)
diff --git a/src/xpdev/unicode_defs.h b/src/xpdev/unicode_defs.h
index 44a118bb40da8ef144ececd0f47790244448e9d8..2497ccb4343a7f5a73b5c6791a5111bbfd115b13 100644
--- a/src/xpdev/unicode_defs.h
+++ b/src/xpdev/unicode_defs.h
@@ -39,6 +39,8 @@
 enum unicode_codepoint {
 	UNICODE_UNDEFINED = 0x0000,	// UNICODE_NULL() is defined
 
+	UNICODE_NEXT_LINE = 0x0085,
+	UNICODE_REVERSE_LINE_FEED = 0x008D,
 	UNICODE_NO_BREAK_SPACE = 0x00A0,
 	UNICODE_INVERTED_EXCLAMATION_MARK = 0x00A1,
 	UNICODE_CENT_SIGN = 0x00A2,
@@ -47,12 +49,21 @@ enum unicode_codepoint {
 	UNICODE_YEN_SIGN = 0x00A5,
 	UNICODE_BROKEN_BAR = 0x00A6,
 	UNICODE_SECTION_SIGN = 0x00A7,
+	UNICODE_FEMININE_ORDINAL_INDICATOR = 0x00AA,
+	UNICODE_LEFT_POINTING_DOUBLE_ANGLE_QUOTATION_MARK = 0x00AB,
+	UNICODE_NOT_SIGN = 0x00AC,
 
 	UNICODE_DEGREE_SIGN = 0x00B0,
 	UNICODE_PLUS_MINUS_SIGN = 0x00B1,
 	UNICODE_SUPERSCRIPT_TWO = 0x00B2,
 	UNICODE_ACUTE_ACCENT = 0x00B4,
+	UNICODE_MICRO_SIGN = 0x00B5,
 	UNICODE_PILCROW_SIGN = 0x00B6,	// Paragraph mark
+	UNICODE_MIDDLE_DOT = 0x00B7,
+	UNICODE_MASCULINE_ORDINAL_INDICATOR = 0x00BA,
+	UNICODE_RIGHT_POINTING_DOUBLE_ANGLE_QUOTATION_MARK = 0x00BB,
+	UNICODE_VULGAR_FRACTION_ONE_QUARTER = 0x00BC,
+	UNICODE_VULGAR_FRACTION_ONE_HALF = 0x00BD,
 
 	UNICODE_INVERTED_QUESTION_MARK = 0x00BF,
 
@@ -121,6 +132,7 @@ enum unicode_codepoint {
 	UNICODE_LATIN_SMALL_LETTER_THORN = 0x00FE,
 	UNICODE_LATIN_SMALL_LETTER_Y_WITH_DIAERESIS = 0x00FF,
 	UNICODE_LATIN_CAPITAL_LETTER_Y_WITH_DIAERESIS = 0x0178,
+	UNICODE_LATIN_SMALL_LETTER_F_WITH_HOOK = 0x0192,
 
 	UNICODE_GREEK_CAPITAL_LETTER_HETA = 0x0370,
 	UNICODE_GREEK_SMALL_LETTER_HETA = 0x0371,
@@ -237,10 +249,39 @@ enum unicode_codepoint {
 	UNICODE_ZERO_WIDTH_JOINER = 0x200D,
 	UNICODE_EM_DASH = 0x2014,
 	UNICODE_BULLET = 0x2022,
+	UNICODE_HORIZONTAL_ELLIPSIS = 0x2026,
+	UNICODE_LINE_SEPARATOR = 0x2028,
 	UNICODE_DOUBLE_EXCLAMATION_MARK = 0x203c,
 	UNICODE_OVERLINE = 0x203E,
+	UNICODE_SUPERSCRIPT_LATIN_SMALL_LETTER_N = 0x207F,
+	UNICODE_PESETA_SIGN = 0x20A7,
 
+	UNICODE_LEFTWARDS_ARROW = 0x2190,
+	UNICODE_UPWARDS_ARROW = 0x2191,
+	UNICODE_RIGHTWARDS_ARROW = 0x2192,
+	UNICODE_DOWNWARDS_ARROW = 0x2193,
+	UNICODE_LEFT_RIGHT_ARROW = 0x2194,
+	UNICODE_UP_DOWN_ARROW = 0x2195,
+
+	UNICODE_UP_DOWN_ARROW_WITH_BASE = 0x21A8,
+
+	UNICODE_BULLET_OPERATOR = 0x2219,
 	UNICODE_SQUARE_ROOT = 0x221A,
+	UNICODE_INFINITY = 0x221E,
+	UNICODE_RIGHT_ANGLE = 0x221F,
+
+	UNICODE_INTERSECTION = 0x2229,
+
+	UNICODE_ALMOST_EQUAL_TO = 0x2248,
+
+	UNICODE_IDENTICAL_TO = 0x2261,
+	UNICODE_LESS_THAN_OR_EQUAL_TO = 0x2264,
+	UNICODE_GREATER_THAN_OR_EQUAL_TO = 0x2265,
+
+	UNICODE_REVERSED_NOT_SIGN = 0x2310,
+
+	UNICODE_TOP_HALF_INTEGRAL = 0x2320,
+	UNICODE_BOTTOM_HALF_INTEGRAL = 0x2321,
 
 	UNICODE_LEFT_POINTING_ANGLE_BRACKET = 0x2329,
 	UNICODE_RIGHT_POINTING_ANGLE_BRACKET = 0x232A,
@@ -251,22 +292,14 @@ enum unicode_codepoint {
 
 	UNICODE_BOX_DRAWINGS_LIGHT_HORIZONTAL = 0x2500,
 	UNICODE_BOX_DRAWINGS_HEAVY_HORIZONTAL = 0x2501,
+	UNICODE_BOX_DRAWINGS_LIGHT_VERTICAL = 0x2502,
+	UNICODE_BOX_DRAWINGS_HEAVY_VERTICAL	= 0x2503,
 	UNICODE_BOX_DRAWINGS_LIGHT_TRIPLE_DASH_HORIZONTAL = 0x2504,
 	UNICODE_BOX_DRAWINGS_HEAVY_TRIPLE_DASH_HORIZONTAL = 0x2505,
-	UNICODE_BOX_DRAWINGS_LIGHT_QUADRUPLE_DASH_HORIZONTAL = 0x2508,
-	UNICODE_BOX_DRAWINGS_HEAVY_QUADRUPLE_DASH_HORIZONTAL = 0x2509,
-	UNICODE_BOX_DRAWINGS_LIGHT_DOUBLE_DASH_HORIZONTAL = 0x254C,
-	UNICODE_BOX_DRAWINGS_HEAVY_DOUBLE_DASH_HORIZONTAL = 0x254D,
-	UNICODE_BOX_DRAWINGS_LIGHT_LEFT	= 0x2574,
-	UNICODE_BOX_DRAWINGS_LIGHT_RIGHT = 0x2576,
-	UNICODE_BOX_DRAWINGS_HEAVY_LEFT	= 0x2578,
-	UNICODE_BOX_DRAWINGS_HEAVY_RIGHT = 0x257A,
-	UNICODE_BOX_DRAWINGS_LIGHT_LEFT_AND_HEAVY_RIGHT	= 0x257C,
-	UNICODE_BOX_DRAWINGS_HEAVY_LEFT_AND_LIGHT_RIGHT	= 0x257E,
-	UNICODE_BOX_DRAWINGS_LIGHT_VERTICAL	= 0x2502,
-	UNICODE_BOX_DRAWINGS_HEAVY_VERTICAL	= 0x2503,
 	UNICODE_BOX_DRAWINGS_LIGHT_TRIPLE_DASH_VERTICAL	= 0x2506,
 	UNICODE_BOX_DRAWINGS_HEAVY_TRIPLE_DASH_VERTICAL	= 0x2507,
+	UNICODE_BOX_DRAWINGS_LIGHT_QUADRUPLE_DASH_HORIZONTAL = 0x2508,
+	UNICODE_BOX_DRAWINGS_HEAVY_QUADRUPLE_DASH_HORIZONTAL = 0x2509,
 	UNICODE_BOX_DRAWINGS_LIGHT_QUADRUPLE_DASH_VERTICAL = 0x250A,
 	UNICODE_BOX_DRAWINGS_HEAVY_QUADRUPLE_DASH_VERTICAL = 0x250B,
 	UNICODE_BOX_DRAWINGS_LIGHT_DOWN_AND_RIGHT = 0x250C,
@@ -308,16 +341,16 @@ enum unicode_codepoint {
 	UNICODE_BOX_DRAWINGS_2530 = 0x2530,
 	UNICODE_BOX_DRAWINGS_2531 = 0x2531,
 	UNICODE_BOX_DRAWINGS_LEFT_LIGHT_AND_RIGHT_DOWN_HEAVY = 0x2532,
-	UNICODE_BOX_DRAWINGS_HEAVY_DOWN_AND_HORIZONTAL	= 0x2533,
-	UNICODE_BOX_DRAWINGS_LIGHT_UP_AND_HORIZONTAL	= 0x2534,
-	UNICODE_BOX_DRAWINGS_LEFT_HEAVY_AND_RIGHT_UP_LIGHT	= 0x2535,
-	UNICODE_BOX_DRAWINGS_RIGHT_HEAVY_AND_LEFT_UP_LIGHT	= 0x2536,
-	UNICODE_BOX_DRAWINGS_UP_LIGHT_AND_HORIZONTAL_HEAVY	= 0x2537,
-	UNICODE_BOX_DRAWINGS_UP_HEAVY_AND_HORIZONTAL_LIGHT	= 0x2538,
-	UNICODE_BOX_DRAWINGS_RIGHT_LIGHT_AND_LEFT_UP_HEAVY	= 0x2539,
-	UNICODE_BOX_DRAWINGS_LEFT_LIGHT_AND_RIGHT_UP_HEAVY	= 0x253A,
+	UNICODE_BOX_DRAWINGS_HEAVY_DOWN_AND_HORIZONTAL = 0x2533,
+	UNICODE_BOX_DRAWINGS_LIGHT_UP_AND_HORIZONTAL = 0x2534,
+	UNICODE_BOX_DRAWINGS_LEFT_HEAVY_AND_RIGHT_UP_LIGHT = 0x2535,
+	UNICODE_BOX_DRAWINGS_RIGHT_HEAVY_AND_LEFT_UP_LIGHT = 0x2536,
+	UNICODE_BOX_DRAWINGS_UP_LIGHT_AND_HORIZONTAL_HEAVY = 0x2537,
+	UNICODE_BOX_DRAWINGS_UP_HEAVY_AND_HORIZONTAL_LIGHT = 0x2538,
+	UNICODE_BOX_DRAWINGS_RIGHT_LIGHT_AND_LEFT_UP_HEAVY = 0x2539,
+	UNICODE_BOX_DRAWINGS_LEFT_LIGHT_AND_RIGHT_UP_HEAVY = 0x253A,
 	UNICODE_BOX_DRAWINGS_HEAVY_UP_AND_HORIZONTAL = 0x253B,
-	UNICODE_BOX_DRAWINGS_LIGHT_VERTICAL_AND_HORIZONTAL	= 0x253C,
+	UNICODE_BOX_DRAWINGS_LIGHT_VERTICAL_AND_HORIZONTAL = 0x253C,
 	UNICODE_BOX_DRAWINGS_LEFT_HEAVY_AND_RIGHT_VERTICAL_LIGHT = 0x253D,
 	UNICODE_BOX_DRAWINGS_RIGHT_HEAVY_AND_LEFT_VERTICAL_LIGHT = 0x253E,
 	UNICODE_BOX_DRAWINGS_VERTICAL_LIGHT_AND_HORIZONTAL_HEAVY = 0x253F,
@@ -333,20 +366,30 @@ enum unicode_codepoint {
 	UNICODE_BOX_DRAWINGS_RIGHT_LIGHT_AND_LEFT_VERTICAL_HEAVY = 0x2549,
 	UNICODE_BOX_DRAWINGS_LEFT_LIGHT_AND_RIGHT_VERTICAL_HEAVY = 0x254A,
 	UNICODE_BOX_DRAWINGS_HEAVY_VERTICAL_AND_HORIZONTAL = 0x254B,
+	UNICODE_BOX_DRAWINGS_LIGHT_DOUBLE_DASH_HORIZONTAL = 0x254C,
+	UNICODE_BOX_DRAWINGS_HEAVY_DOUBLE_DASH_HORIZONTAL = 0x254D,
 	UNICODE_BOX_DRAWINGS_LIGHT_DOUBLE_DASH_VERTICAL	= 0x254E,
 	UNICODE_BOX_DRAWINGS_HEAVY_DOUBLE_DASH_VERTICAL	= 0x254F,
-	UNICODE_BOX_DRAWINGS_LIGHT_ARC_DOWN_AND_RIGHT	= 0x256D,
-	UNICODE_BOX_DRAWINGS_LIGHT_ARC_DOWN_AND_LEFT	= 0x256E,
-	UNICODE_BOX_DRAWINGS_LIGHT_ARC_UP_AND_LEFT	= 0x256F,
+	UNICODE_BOX_DRAWINGS_VERTICAL_SINGLE_AND_LEFT_DOUBLE = 0x2561,
+	UNICODE_BOX_DRAWINGS_VERTICAL_DOUBLE_AND_LEFT_SINGLE = 0x2562,
+	UNICODE_BOX_DRAWINGS_LIGHT_ARC_DOWN_AND_RIGHT = 0x256D,
+	UNICODE_BOX_DRAWINGS_LIGHT_ARC_DOWN_AND_LEFT = 0x256E,
+	UNICODE_BOX_DRAWINGS_LIGHT_ARC_UP_AND_LEFT = 0x256F,
 	UNICODE_BOX_DRAWINGS_LIGHT_ARC_UP_AND_RIGHT	= 0x2570,
 	UNICODE_BOX_DRAWINGS_LIGHT_DIAGONAL_UPPER_RIGHT_TO_LOWER_LEFT = 0x2571,
 	UNICODE_BOX_DRAWINGS_LIGHT_DIAGONAL_UPPER_LEFT_TO_LOWER_RIGHT = 0x2572,
 	UNICODE_BOX_DRAWINGS_LIGHT_DIAGONAL_CROSS = 0x2573,
+	UNICODE_BOX_DRAWINGS_LIGHT_LEFT	= 0x2574,
 	UNICODE_BOX_DRAWINGS_LIGHT_UP = 0x2575,
+	UNICODE_BOX_DRAWINGS_LIGHT_RIGHT = 0x2576,
 	UNICODE_BOX_DRAWINGS_LIGHT_DOWN	= 0x2577,
+	UNICODE_BOX_DRAWINGS_HEAVY_LEFT	= 0x2578,
 	UNICODE_BOX_DRAWINGS_HEAVY_UP = 0x2579,
+	UNICODE_BOX_DRAWINGS_HEAVY_RIGHT = 0x257A,
 	UNICODE_BOX_DRAWINGS_HEAVY_DOWN	= 0x257B,
+	UNICODE_BOX_DRAWINGS_LIGHT_LEFT_AND_HEAVY_RIGHT	= 0x257C,
 	UNICODE_BOX_DRAWINGS_LIGHT_UP_AND_HEAVY_DOWN = 0x257D,
+	UNICODE_BOX_DRAWINGS_HEAVY_LEFT_AND_LIGHT_RIGHT	= 0x257E,
 	UNICODE_BOX_DRAWINGS_HEAVY_UP_AND_LIGHT_DOWN = 0x257F,
 
 	UNICODE_LOWER_ONE_EIGHTH_BLOCK	= 0x2581,
@@ -364,10 +407,33 @@ enum unicode_codepoint {
 	UNICODE_LEFT_ONE_QUARTER_BLOCK = 0x258E,
 	UNICODE_LEFT_ONE_EIGHTH_BLOCK = 0x258F,
 	UNICODE_RIGHT_HALF_BLOCK = 0x2590,
+	UNICODE_LIGHT_SHADE = 0x2591,
+	UNICODE_MEDIUM_SHADE = 0x2591,
+	UNICODE_DARK_SHADE = 0x2592,
 	UNICODE_RIGHT_ONE_EIGHTH_BLOCK = 0x2595,
 	UNICODE_UPPER_ONE_EIGHTH_BLOCK = 0x2594,
 
 	UNICODE_BLACK_SQUARE = 0x25A0,
+	UNICODE_BLACK_RECTANGLE = 0x25AC,
+	UNICODE_BLACK_UP_POINTING_TRIANGLE = 0x25B2,
+	UNICODE_BLACK_RIGHT_POINTING_POINTER = 0x25BA,
+	UNICODE_BLACK_DOWN_POINTING_TRIANGLE = 0x25BC,
+	UNICODE_BLACK_LEFT_POINTING_POINTER = 0x25C4,
+	UNICODE_WHITE_CIRCLE = 0x25CB,
+	UNICODE_INVERSE_BULLET = 0x25D8,
+	UNICODE_INVERSE_WHITE_CIRCLE = 0x25D9,
+
+	UNICODE_WHITE_SMILING_FACE = 0x263A,
+	UNICODE_BLACK_SMILING_FACE = 0x263B,
+	UNICODE_WHITE_SUN_WITH_RAYS = 0x263C,
+	UNICODE_FEMALE_SIGN = 0x2640,
+	UNICODE_EIGHTH_NOTE = 0x266A,
+	UNICODE_BEAMED_EIGHTH_NOTES = 0x266B,
+	UNICODE_MALE_SIGN = 0x2642,
+	UNICODE_BLACK_HEART_SUIT = 0x2665,
+	UNICODE_BLACK_DIAMOND_SUIT = 0x2666,
+	UNICODE_BLACK_CLUB_SUIT = 0x2663,
+	UNICODE_BLACK_SPADE_SUIT = 0x2660,
 
 	UNICODE_CHECK_MARK = 0x2713,
 	UNICODE_HEAVY_CHECK_MARK = 0x2714,