From 3b71d537b446225bd11e4e46c3157e892d9ad6e0 Mon Sep 17 00:00:00 2001 From: Ben Harris Date: Tue, 26 Nov 2024 22:11:11 +0000 Subject: [PATCH] Convert ZVBI Private Use codepoints to compatibility aliases That saves 4K of font file, which is nice. --- bedstead.c | 42 +++++++++++++++++++++++------------------- 1 file changed, 23 insertions(+), 19 deletions(-) diff --git a/bedstead.c b/bedstead.c index ebb5e98..31b3f0e 100644 --- a/bedstead.c +++ b/bedstead.c @@ -2371,25 +2371,29 @@ static struct glyph { /* Private use area */ /* U+EE00--U+EE7F: zvbi mosaic graphics */ -#define M(x) {{(0x##x & 0x1f)|((0x##x & 0x40)>>1)}, U(EE##x), \ - (0x##x & 0x20 ? MOS6 : SEP6)} - M(00), M(01), M(02), M(03), M(04), M(05), M(06), M(07), - M(08), M(09), M(0A), M(0B), M(0C), M(0D), M(0E), M(0F), - M(10), M(11), M(12), M(13), M(14), M(15), M(16), M(17), - M(18), M(19), M(1A), M(1B), M(1C), M(1D), M(1E), M(1F), - M(20), M(21), M(22), M(23), M(24), M(25), M(26), M(27), - M(28), M(29), M(2A), M(2B), M(2C), M(2D), M(2E), M(2F), - M(30), M(31), M(32), M(33), M(34), M(35), M(36), M(37), - M(38), M(39), M(3A), M(3B), M(3C), M(3D), M(3E), M(3F), - M(40), M(41), M(42), M(43), M(44), M(45), M(46), M(47), - M(48), M(49), M(4A), M(4B), M(4C), M(4D), M(4E), M(4F), - M(50), M(51), M(52), M(53), M(54), M(55), M(56), M(57), - M(58), M(59), M(5A), M(5B), M(5C), M(5D), M(5E), M(5F), - M(60), M(61), M(62), M(63), M(64), M(65), M(66), M(67), - M(68), M(69), M(6A), M(6B), M(6C), M(6D), M(6E), M(6F), - M(70), M(71), M(72), M(73), M(74), M(75), M(76), M(77), - M(78), M(79), M(7A), M(7B), M(7C), M(7D), M(7E), M(7F), -#undef M +#define A(f,t) { .alias_of = t, U(EE ## f), IS_ALIAS | COMPAT } +#define S(f,t) A(f, "u1CE" #t) +#define C(f,t) A(f, "u1FB" #t) + /* */ S(01,51),S(02,52),S(03,53),S(04,54),S(05,55),S(06,56),S(07,57), + S(08,58),S(09,59),S(0A,5A),S(0B,5B),S(0C,5C),S(0D,5D),S(0E,5E),S(0F,5F), + S(10,60),S(11,61),S(12,62),S(13,63),S(14,64),S(15,65),S(16,66),S(17,67), + S(18,68),S(19,69),S(1A,6A),S(1B,6B),S(1C,6C),S(1D,6D),S(1E,6E),S(1F,6F), + /* */ C(21,00),C(22,01),C(23,02),C(24,03),C(25,04),C(26,05),C(27,06), + C(28,07),C(29,08),C(2A,09),C(2B,0A),C(2C,0B),C(2D,0C),C(2E,0D),C(2F,0E), + C(30,0F),C(31,10),C(32,11),C(33,12),C(34,13), C(36,14),C(37,15), + C(38,16),C(39,17),C(3A,18),C(3B,19),C(3C,1A),C(3D,1B),C(3E,1C),C(3F,1D), + S(40,70),S(41,71),S(42,72),S(43,73),S(44,74),S(45,75),S(46,76),S(47,77), + S(48,78),S(49,79),S(4A,7A),S(4B,7B),S(4C,7C),S(4D,7D),S(4E,7E),S(4F,7F), + S(50,80),S(51,81),S(52,82),S(53,83),S(54,84),S(55,85),S(56,86),S(57,87), + S(58,88),S(59,89),S(5A,8A),S(5B,8B),S(5C,8C),S(5D,8D),S(5E,8E),S(5F,8F), + C(60,1E),C(61,1F),C(62,20),C(63,21),C(64,22),C(65,23),C(66,24),C(67,25), + C(68,26),C(69,27), C(6B,28),C(6C,29),C(6D,2A),C(6E,2B),C(6F,2C), + C(70,2D),C(71,2E),C(72,2F),C(73,30),C(74,31),C(75,32),C(76,33),C(77,34), + C(78,35),C(79,36),C(7A,37),C(7B,38),C(7C,39),C(7D,3A),C(7E,3B), + A(00,"uni2003"),A(20,"uni2003"),A(35,"lfblock"),A(6A,"rtblock"),A(7F,"block"), +#undef A +#undef C +#undef S /* * Characters in the private use area are used for Bedstead glyphs -- 2.30.2