summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt2
-rw-r--r--res/about/license.gmi3
-rw-r--r--res/fonts/NotoSansArabic-Regular.ttfbin0 -> 140400 bytes
-rw-r--r--res/fonts/NotoSansArabicUI-Regular.ttfbin0 -> 138624 bytes
-rw-r--r--src/ui/text.c8
-rw-r--r--src/ui/text.h3
6 files changed, 14 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c942c864..75883966 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -64,6 +64,7 @@ set (EMBED_RESOURCES
64 res/fonts/Literata-LightItalic-opsz=10.ttf 64 res/fonts/Literata-LightItalic-opsz=10.ttf
65 res/fonts/NanumGothic-Regular.ttf 65 res/fonts/NanumGothic-Regular.ttf
66 res/fonts/NotoEmoji-Regular.ttf 66 res/fonts/NotoEmoji-Regular.ttf
67 res/fonts/NotoSansArabicUI-Regular.ttf
67 res/fonts/NotoSansJP-Regular.ttf 68 res/fonts/NotoSansJP-Regular.ttf
68 res/fonts/NotoSansSC-Regular.ttf 69 res/fonts/NotoSansSC-Regular.ttf
69 res/fonts/Nunito-Bold.ttf 70 res/fonts/Nunito-Bold.ttf
@@ -188,6 +189,7 @@ set (SOURCES
188 res/about/about.gmi 189 res/about/about.gmi
189 res/about/help.gmi 190 res/about/help.gmi
190 res/about/lagrange.gmi 191 res/about/lagrange.gmi
192 res/about/license.gmi
191 res/about/version.gmi 193 res/about/version.gmi
192 ${CMAKE_CURRENT_BINARY_DIR}/resources.lgr 194 ${CMAKE_CURRENT_BINARY_DIR}/resources.lgr
193 ${CMAKE_CURRENT_BINARY_DIR}/embedded.c 195 ${CMAKE_CURRENT_BINARY_DIR}/embedded.c
diff --git a/res/about/license.gmi b/res/about/license.gmi
index d5ffe3c4..8c00f5d2 100644
--- a/res/about/license.gmi
+++ b/res/about/license.gmi
@@ -104,7 +104,8 @@ This application uses fonts licensed under the Open Font License.
104=> https://typeof.net/Iosevka/ Iosevka 104=> https://typeof.net/Iosevka/ Iosevka
105=> https://github.com/googlefonts/literata/blob/master/OFL.txt Literata 105=> https://github.com/googlefonts/literata/blob/master/OFL.txt Literata
106=> https://github.com/google/fonts/blob/master/ofl/nanumgothic/OFL.txt Nanum Gothic 106=> https://github.com/google/fonts/blob/master/ofl/nanumgothic/OFL.txt Nanum Gothic
107=> https://www.google.com/get/noto/help/cjk/ Noto Sans CJK JP 107=> https://www.google.com/get/noto/#sans-arab Noto Sans Arabic
108=> https://www.google.com/get/noto/help/cjk/ Noto Sans CJK (JP, SC)
108=> https://github.com/googlefonts/nunito/blob/master/OFL.txt Nunito 109=> https://github.com/googlefonts/nunito/blob/master/OFL.txt Nunito
109=> https://github.com/adobe-fonts/source-sans-pro/blob/release/LICENSE.md Source Sans Pro 110=> https://github.com/adobe-fonts/source-sans-pro/blob/release/LICENSE.md Source Sans Pro
110 111
diff --git a/res/fonts/NotoSansArabic-Regular.ttf b/res/fonts/NotoSansArabic-Regular.ttf
new file mode 100644
index 00000000..94eead4c
--- /dev/null
+++ b/res/fonts/NotoSansArabic-Regular.ttf
Binary files differ
diff --git a/res/fonts/NotoSansArabicUI-Regular.ttf b/res/fonts/NotoSansArabicUI-Regular.ttf
new file mode 100644
index 00000000..89b02b31
--- /dev/null
+++ b/res/fonts/NotoSansArabicUI-Regular.ttf
Binary files differ
diff --git a/src/ui/text.c b/src/ui/text.c
index 6aaf40f5..b4401abb 100644
--- a/src/ui/text.c
+++ b/src/ui/text.c
@@ -331,6 +331,7 @@ static void initFonts_Text_(iText *d) {
331 DEFINE_FONT_SET(fontNotoSansJPRegular_Embedded), 331 DEFINE_FONT_SET(fontNotoSansJPRegular_Embedded),
332 DEFINE_FONT_SET(fontNotoSansSCRegular_Embedded), 332 DEFINE_FONT_SET(fontNotoSansSCRegular_Embedded),
333 DEFINE_FONT_SET(fontNanumGothicRegular_Embedded), /* TODO: should use Noto Sans here, too */ 333 DEFINE_FONT_SET(fontNanumGothicRegular_Embedded), /* TODO: should use Noto Sans here, too */
334 DEFINE_FONT_SET(fontNotoSansArabicUIRegular_Embedded),
334 }; 335 };
335 iForIndices(i, fontData) { 336 iForIndices(i, fontData) {
336 iFont *font = &d->fonts[i]; 337 iFont *font = &d->fonts[i];
@@ -584,6 +585,13 @@ iLocalDef iFont *characterFont_Font_(iFont *d, iChar ch, uint32_t *glyphIndex) {
584 return japanese; 585 return japanese;
585 } 586 }
586 } 587 }
588 /* Maybe Arabic. */
589 if (ch >= 0x600) {
590 iFont *arabic = font_Text_(arabic_FontId + d->sizeId);
591 if (arabic != d && (*glyphIndex = glyphIndex_Font_(arabic, ch)) != 0) {
592 return arabic;
593 }
594 }
587#if defined (iPlatformApple) 595#if defined (iPlatformApple)
588 /* White up arrow is used for the Shift key on macOS. Symbola's glyph is not a great 596 /* White up arrow is used for the Shift key on macOS. Symbola's glyph is not a great
589 match to the other text, so use the UI font instead. */ 597 match to the other text, so use the UI font instead. */
diff --git a/src/ui/text.h b/src/ui/text.h
index d86754cc..58941974 100644
--- a/src/ui/text.h
+++ b/src/ui/text.h
@@ -75,7 +75,8 @@ enum iFontId {
75 japanese_FontId = emoji_FontId + max_FontSize, 75 japanese_FontId = emoji_FontId + max_FontSize,
76 chineseSimplified_FontId = japanese_FontId + max_FontSize, 76 chineseSimplified_FontId = japanese_FontId + max_FontSize,
77 korean_FontId = chineseSimplified_FontId + max_FontSize, 77 korean_FontId = chineseSimplified_FontId + max_FontSize,
78 max_FontId = korean_FontId + max_FontSize, 78 arabic_FontId = korean_FontId + max_FontSize,
79 max_FontId = arabic_FontId + max_FontSize,
79 80
80 /* Meta: */ 81 /* Meta: */
81 mask_FontId = 0xffff, 82 mask_FontId = 0xffff,