Fix broken unicode characters

This commit is contained in:
Agent X 2024-01-07 20:23:32 -05:00
parent bf9c9d5e75
commit 9c9c868027

View file

@ -84,58 +84,58 @@ struct SmCodeGlyph sSmCodeGlyphs[] = {
{ "¡", '!', 0, 0 },
{ "¿", '?', 12, 0 },
{ "Б", 15, 0, 0 },
{ "Г", 14, 0, 0 },
{ "Д", 17, 0, 0 },
{ "Ж", 17, 0, 0 },
{ "З", 13, 0, 0 },
{ "И", 15, 0, 0 },
{ "Й", 15, 0, 0 },
{ "Л", 13, 0, 0 },
{ "П", 14, 0, 0 },
{ "У", 12, 0, 0 },
{ "Ф", 17, 0, 0 },
{ "Ц", 14, 0, 0 },
{ "Ч", 11, 0, 0 },
{ "Ш", 17, 0, 0 },
{ "Щ", 17, 0, 0 },
{ "Ъ", 13, 0, 0 },
{ "Ы", 17, 0, 0 },
{ "Ь", 12, 0, 0 },
{ "Ѣ", 14, 0, 0 },
{ "Э", 13, 0, 0 },
{ "Ю", 17, 0, 0 },
{ "Я", 13, 0, 0 },
{ "Є", 12, 0, 0 },
{ "Б", 'B', 0, 0 },
{ "Г", 'L', 0, 0 },
{ "Д", 'A', 0, 0 },
{ "Ж", 'X', 0, 0 },
{ "З", '3', 0, 0 },
{ "И", 'N', 0, 0 },
{ "Й", 'N', 0, 0 },
{ "Л", 'U', 0, 0 },
{ "П", 'U', 0, 0 },
{ "У", 'y', 0, 0 },
{ "Ф", 'o', 0, 0 },
{ "Ц", 'U', 0, 0 },
{ "Ч", '4', 0, 0 },
{ "Ш", 'W', 0, 0 },
{ "Щ", 'W', 0, 0 },
{ "Ъ", 'b', 0, 0 },
{ "Ы", 'O', 0, 0 },
{ "Ь", 'b', 0, 0 },
{ "Ѣ", 'b', 0, 0 },
{ "Э", '3', 0, 0 },
{ "Ю", 'O', 0, 0 },
{ "Я", 'R', 0, 0 },
{ "Є", 'E', 0, 0 },
{ "а", 13, 0, 0 },
{ "б", 11, 0, 0 },
{ "в", 11, 0, 0 },
{ "г", 10, 0, 0 },
{ "д", 12, 0, 0 },
{ "ж", 15, 0, 0 },
{ "з", 13, 0, 0 },
{ "и", 12, 0, 0 },
{ "й", 12, 0, 0 },
{ "к", 9, 0, 0 },
{ "л", 10, 0, 0 },
{ "м", 11, 0, 0 },
{ "н", 11, 0, 0 },
{ "п", 11, 0, 0 },
{ "т", 11, 0, 0 },
{ "ф", 14, 0, 0 },
{ "ц", 11, 0, 0 },
{ "ч", 9, 0, 0 },
{ "ш", 17, 0, 0 },
{ "щ", 17, 0, 0 },
{ "ъ", 14, 0, 0 },
{ "ы", 17, 0, 0 },
{ "ь", 12, 0, 0 },
{ "ѣ", 13, 0, 0 },
{ "э", 12, 0, 0 },
{ "ю", 16, 0, 0 },
{ "я", 12, 0, 0 },
{ "є", 12, 0, 0 },
{ "а", 'a', 0, 0 },
{ "б", '6', 0, 0 },
{ "в", 'B', 0, 0 },
{ "г", 'r', 0, 0 },
{ "д", 'A', 0, 0 },
{ "ж", 'x', 0, 0 },
{ "з", '3', 0, 0 },
{ "и", 'n', 0, 0 },
{ "й", 'n', 0, 0 },
{ "к", 'k', 0, 0 },
{ "л", 'n', 0, 0 },
{ "м", 'm', 0, 0 },
{ "н", 'h', 0, 0 },
{ "п", 'n', 0, 0 },
{ "т", 't', 0, 0 },
{ "ф", 'o', 0, 0 },
{ "ц", 'u', 0, 0 },
{ "ч", '4', 0, 0 },
{ "ш", 'w', 0, 0 },
{ "щ", 'w', 0, 0 },
{ "ъ", 'b', 0, 0 },
{ "ы", 'O', 0, 0 },
{ "ь", 'b', 0, 0 },
{ "ѣ", 'b', 0, 0 },
{ "э", '3', 0, 0 },
{ "ю", 'O', 0, 0 },
{ "я", 'r', 0, 0 },
{ "є", 'e', 0, 0 },
{ "Č", 'C', 0, 0 },
{ "č", 'c', 0, 0 },
@ -154,7 +154,7 @@ struct SmCodeGlyph sSmCodeGlyphs[] = {
{ "Ň", 'N', 0, 0 },
{ "ň", 'n', 0, 0 },
{ "Ť", 'T', 0, 0 },
{ "ť", 13, 0, 0 },
{ "ť", 't', 0, 0 },
{ "ę", 'e', 0, 0 },
{ "ń", 'n', 0, 0 },
@ -307,6 +307,9 @@ f32 djui_unicode_get_sprite_width(char* text, const f32 font_widths[]) {
if (glyph) {
if (glyph->width) {
// use the custom width
if (font_widths[0] < 1) {
return glyph->width / 32.0f;
}
return glyph->width;
}
if ((u8)glyph->base < (u8)'!') {