From: Ben Harris Date: Wed, 15 Jan 2025 20:50:22 +0000 (+0000) Subject: Extend 'cv84' to most characters based on lower-case 't' X-Git-Tag: bedstead-3.251~30 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~bjharris/git?a=commitdiff_plain;h=34e4cf780e91096d5d5c6c997af0872eabb949b6;p=bedstead.git Extend 'cv84' to most characters based on lower-case 't' That's 12 additional glyphs, and I thought 't' would be one of the simpler ones. Still, it automatically works with 'ss01' and 'ss02' as well. --- diff --git a/bedstead.c b/bedstead.c index 59a04e9..824fcae 100644 --- a/bedstead.c +++ b/bedstead.c @@ -792,13 +792,16 @@ static struct glyph { {"\37\04\04\04\04\04\04\02\04", U(0162) }, /* Tcedilla */ {"\00\00\37\04\04\04\04\02\04", 0xf19b, "uni0162.c2sc" }, {"\04\04\16\04\04\05\02\02\04", U(0163) }, /* tcedilla */ + {"\00\04\16\04\04\05\02\02\04", -1, "uni0163.small" }, ALIAS("uni0163.sc", "uni0162.c2sc"), {"\12\04\37\04\04\04\04\00\00", 0x0164, "Tcaron" }, {"\11\11\34\10\10\10\04\00\00", 0x0165, "tcaron" }, + {"\01\11\34\10\10\10\04\00\00", -1, "tcaron.small" }, ALIAS("tcaron.sc", "Tcaron"), {"\37\04\04\16\04\04\04\00\00", 0x0166, "Tbar" }, {"\00\00\37\04\16\04\04\00\00", 0xf1cd, "Tbar.c2sc" }, {"\04\16\04\16\04\04\02\00\00", 0x0167, "tbar" }, + {"\00\04\16\04\16\04\02\00\00", -1, "tbar.small" }, ALIAS("tbar.sc", "Tbar.c2sc"), {"\16\00\21\21\21\21\16\00\00", 0x016a, "Umacron" }, {"\00\16\00\21\21\21\17\00\00", 0x016b, "umacron" }, @@ -849,6 +852,7 @@ static struct glyph { ALIAS("uni01A7.c2sc", "uni01A8"), {"\00\00\36\01\16\20\17\00\00", U(01A8) }, /* tone 2 (reversed s) */ {"\04\04\16\04\04\04\02\14\00", U(01AB) }, /* Left-hook T */ + {"\00\04\16\04\04\04\02\14\00", -1, "uni01AB.small" }, {"\02\04\16\04\04\04\02\00\00", U(01AD) }, /* Hooktop T */ {"\16\21\05\02\15\20\37\00\00", U(01BB) }, /* Barred two */ {"\04\04\04\04\04\04\04\04\04", U(01C0) }, /* Pipe */ @@ -960,8 +964,10 @@ static struct glyph { {"\02\04\04\04\04\16\04\04\10", U(0284) }, /* Hooktop barred dotless j */ {"\02\04\04\04\04\16\24\24\10", U(0286) }, /* Curly-tail esh */ {"\00\00\10\04\04\04\16\04\04", U(0287) }, /* Turned t */ + {"\00\00\10\04\04\04\16\04\00", -1, "uni0287.small" }, ALIAS("uni0287.sc", "uniA7B1.c2sc"), {"\04\04\16\04\04\04\04\04\02", U(0288) }, /* Right-tail t */ + {"\00\04\16\04\04\04\04\04\02", -1, "uni0288.small" }, {"\00\00\12\37\12\12\06\00\00", U(0289) }, /* Barred u */ {"\00\00\33\12\21\21\16\00\00", U(028A) }, /* upsilon */ {"\00\00\32\11\11\12\14\00\00", U(028B) }, /* Cursive v */ @@ -994,7 +1000,9 @@ static struct glyph { {"\04\04\17\25\26\25\15\01\06", U(02A4) }, /* dezh ligature */ {"\04\04\17\25\26\26\17\05\02", U(02A5) }, /* dz-curl ligature */ {"\20\20\37\24\22\21\16\00\00", U(02A6) }, /* ts ligature */ + {"\00\20\37\24\22\21\16\00\00", -1, "uni02A6.small" }, {"\11\12\36\12\12\12\06\02\04", U(02A7) }, /* tesh ligature */ + {"\01\12\36\12\12\12\06\02\04", -1, "uni02A7.small" }, {"\20\30\23\24\24\24\16\05\02", U(02A8) }, /* tc-curl ligature */ {"\10\20\20\36\25\25\25\01\06", U(02A9) }, /* feng ligature */ {"\30\10\13\14\12\11\36\00\00", U(02AA) }, /* ls ligature */ @@ -1398,14 +1406,17 @@ static struct glyph { {"\37\04\04\04\04\04\04\00\04", U(1E6C) }, /* Tdotbelow */ {"\00\00\37\04\04\04\04\00\04", 0xf1b2, "uni1E6C.c2sc" }, {"\04\04\16\04\04\04\02\00\04", U(1E6D) }, /* tdotbelow */ + {"\00\04\16\04\04\04\02\00\04", -1, "uni1E6D.small" }, ALIAS("uni1E6D.sc", "uni1E6C.c2sc"), {"\37\04\04\04\04\04\04\00\16", U(1E6E) }, /* Tmacronbelow */ {"\00\00\37\04\04\04\04\00\16", 0xf1b3, "uni1E6E.c2sc" }, {"\04\04\16\04\04\04\02\00\16", U(1E6F) }, /* tmacronbelow */ + {"\00\04\16\04\04\04\02\00\16", -1, "uni1E6F.small" }, ALIAS("uni1E6F.sc", "uni1E6E.c2sc"), {"\37\04\04\04\04\04\00\04\12", U(1E70) }, /* Tcircumflexbelow */ {"\00\00\37\04\04\04\00\04\12", 0xf1b4, "uni1E70.c2sc" }, {"\04\04\16\04\04\02\00\04\12", U(1E71) }, /* tcircumflexbelow */ + {"\00\04\16\04\04\02\00\04\12", -1, "uni1E71.small" }, ALIAS("uni1E71.sc", "uni1E70.c2sc"), {"\21\21\21\21\21\21\16\00\12", U(1E72) }, /* Udieresisbelow */ {"\00\00\21\21\21\21\16\00\12", 0xf1b5, "uni1E72.c2sc" }, @@ -1450,6 +1461,7 @@ static struct glyph { ALIAS("uni1E95.sc", "uni1E94.c2sc"), {"\20\20\36\21\21\21\21\00\16", U(1E96) }, /* hmacronbelow */ {"\25\04\16\04\04\04\02\00\00", U(1E97) }, /* tdieresis */ + {"\21\04\16\04\04\04\02\00\00", -1, "uni1E97.small" }, {"\16\21\22\22\21\21\26\00\00", U(1E9E) }, /* Germandbls */ {"\00\00\16\21\22\21\26\00\00", 0xf1c1, "uni1E9E.c2sc" }, {"\04\12\21\21\37\21\21\00\04", U(1EA0) }, /* Adotbelow */ @@ -2742,7 +2754,13 @@ static struct alt_sub_override { #define CV61(VAR2) VAR2("ugrave",".roundjoined") #define CV74(VAR2) VAR2("j", ".serif") #define CV79(VAR2) VAR2("ocircumflex", ".large") -#define CV84(VAR2) VAR2("t", ".small") +#define CV84(VAR2) VAR2("t", ".small") VAR2("uni0163", ".small") \ + VAR2("tcaron", ".small") VAR2("tbar", ".small") \ + VAR2("uni01AB", ".small") VAR2("uni0287", ".small") \ + VAR2("uni0288", ".small") VAR2("uni02A6", ".small") \ + VAR2("uni02A7", ".small") VAR2("uni1E6D", ".small") \ + VAR2("uni1E6F", ".small") VAR2("uni1E71", ".small") \ + VAR2("uni1E97", ".small") #define CV96(VAR2) VAR2("ccedilla", ".angular") static struct gsub_feature {