From 4608945cc6b9516a8aa5cf0314dfa6ae5f632f8c Mon Sep 17 00:00:00 2001 From: Matthew Mondor Date: Sun, 11 Jun 2023 21:12:00 +0000 Subject: [PATCH] AnalogTerm2: Add a default mapping for "thin space" and "narrow NBSP". --- mmsoftware/analogterm2/TODO.txt | 5 ++++- mmsoftware/analogterm2/src/font.c | 2 ++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/mmsoftware/analogterm2/TODO.txt b/mmsoftware/analogterm2/TODO.txt index 3b38bf9..560ac1e 100644 --- a/mmsoftware/analogterm2/TODO.txt +++ b/mmsoftware/analogterm2/TODO.txt @@ -40,7 +40,7 @@ https://en.wikipedia.org/wiki/Box-drawing_character - Overwrite/clear selections before freeing them - ≣ † ☆ ツ ⌘›🍺∴ ( ͡° ͜ʖ ͡°) ƒ ︵ ₂ 😈 θ ƒ › ʼ ƒ ∂ ʻ μ › ∫ ◇ ♪ - ► ə β ə ſ ρ ə ∴ ♪ 😱 † 😳 › ▛ ᵗ * ‽ ℣ Ω ⌘ + ► ə β ə ſ ρ ə ∴ ♪ 😱 † 😳 › ▛ ᵗ * ‽ ℣ Ω ⌘   - Verify if dead key support is incomplete for ISO-8859-4 and ISO-8859-10. There were special characters that were unicode since the start but also could have punctuation. And others that used two at a time... It might @@ -241,3 +241,6 @@ https://vt100.net/docs/vt3xx-gp/ XTerm optionally has partial support for these but is rarely compiled with those features by default. +- Interesting concepts for unknown glyph boxes: + https://github.com/unicode-org/last-resort-font + https://www.fontspace.com/unicode-bmp-fallback-sil-font-f13379 diff --git a/mmsoftware/analogterm2/src/font.c b/mmsoftware/analogterm2/src/font.c index 5b5e757..cf844d6 100644 --- a/mmsoftware/analogterm2/src/font.c +++ b/mmsoftware/analogterm2/src/font.c @@ -136,12 +136,14 @@ static uint32_t remap_default[][2] = { { 0x021A, 0x0162 }, /* ISO-8859-16 T comma -> T cedilla */ { 0x021B, 0x0163 }, /* ISO-8859-16 t comma -> t cedilla */ { 0x1D27, 0x039B }, /* Capital lambda */ + { 0x2009, ' ' }, /* Thin space */ { 0x2010, '-' }, /* Hyphen */ { 0x2013, '-' }, /* " */ { 0x2014, 0x1FB78 }, /* Long dash */ { 0x2015, 0x1FB78 }, /* " */ { 0x2019, 0xB4 }, /* Close single quote */ { 0x2032, 0xB4 }, /* " */ + { 0x202F, 0xA0 }, /* Narrow NBSP */ { 0x2033, 0x201D }, /* Straight double quote */ { 0x226A, 0xAB }, /* Much less than */ { 0x226B, 0xBB }, /* Much greater than */ -- 2.9.0