\startluacode local classes = fonts.protrusions.classes local vectors = fonts.protrusions.vectors classes.rik = { vector = 'rik', factor = 1, } vectors.rik = table.merged ( vectors.quality, { [0x0054] = { 0.35, 0 }, -- T }) \stopluacode
That, of course, works (I would use 0.175 for Libertinus) but as you point out does not distinguish roman and italic.
Perhaps instead of protrusion there is something that can be done with the bounding box of specific characters.
--
Rik