The first sweep matched a character class that swallowed the digit, so a bare B1 slipped through while B1-2 was caught. Searching the whole A-Z space instead of guessing prefixes turned up 130-odd more: B0 through B6, C2, C3, D1, H2, M6, P7, P8, T2, W2, plus GP-04, KB-01, OD-1, PM-1, PM-3, SEC-01, TR-4, TR-7, UI-11, UI-12, XC-8 and API-3. Kept deliberately: 41 B4 01 is a byte signature, "N0" a format string, #L119-L128 a source anchor, LS4/LS6 are linkshells, and A=FF B=0C G=41 R=C2 explains a colour-channel order. Those look like codes and are not. Also translated the eight German comments left in the theme files and ImGuiUtil. Seven of them described what a palette does to which channel, which is worth reading -- just not in a second language in an otherwise English codebase.
27 lines
1.4 KiB
C#
27 lines
1.4 KiB
C#
namespace HellionChat;
|
|
|
|
// Reduced CJK fallback coverage for the v1.5.3 NotoSansCjk fallback merge.
|
|
// Before that the fallback merged over the full `Ranges` array (Default + endonyms),
|
|
// duplicating the Latin/Default work already done by the global/Japanese fonts.
|
|
// This is the trimmed remainder the fallback is actually the sole source for:
|
|
// - Hangul Syllables (AC00-D7A3): no other merged font ships Korean glyphs.
|
|
// - The full CJK Unified Ideographs (Han) block: at UseHellionFont=true the global
|
|
// font is Inter-Light (no CJK), so the fallback is the SOLE Han source. The JpRange
|
|
// overlap is harmless (MergeMode: the Japanese font wins for shared kanji).
|
|
// Deliberately excluded: ONLY the ASCII/Latin Default block (0x20-0xFF), which the
|
|
// global font already owns -- that doubled Latin merge is the waste being removed.
|
|
// Kept as plain start/end pairs so it is unit-testable without the unsafe ImGui
|
|
// glyph-range builder (mirrors FontSizeResolver's split-for-test rationale).
|
|
internal static class CjkFallbackRange
|
|
{
|
|
// Hangul Syllables + the full CJK Unified Ideographs (Han) block. Rationale: see
|
|
// class comment. Plain start/end pairs so it stays unit-testable.
|
|
internal static readonly ushort[] Pairs =
|
|
[
|
|
0xAC00,
|
|
0xD7A3, // Hangul Syllables
|
|
0x4E00,
|
|
0x9FFF, // CJK Unified Ideographs (full Han) -- sole source at UseHellionFont
|
|
];
|
|
}
|