To my utter delight, the new AFDKO now supports proper mark-to-base and mark-to-mark features -- not limited to TrueType 'attachment points', it works perfectly with CFF (Type 1s) as well. So I spend the weekend updating my accents font, removing all rligs that glued a myriad of specifically spaced accents to a few characters and replacing them with a single accent glyph. I even could use the free DTL OTMaster Light to proof them! (And I am utterly convinced the full version is worth its full price, because with that I could have done the positioning straight away!)
Here's the catch.
Traditionally, I positioned my accent glyphs after its base glyph, then manually kerned it into place. The positioned accents I created had, therefore, to be of zero width and on the left side of the zero line. After some initial problems, I worked out I still could position its anchor points on the base point per accent:
markClass [ @ALLTOPMARKS ] <anchor -250 500> @TOP_MARKS;
-- the entire accent glyph is centered horizontally inside a 500 unit wide rectangle. So all I had to do was for umpteen characters figure out where their (optical) center was, and set the position for their anchor:
position base [ g ] <anchor 240 500> mark @TOP_MARKS
<anchor 240 -250> mark @BOTTOM_MARKS;
Works like a charm in OTMaster. I could even work out vertical stacking of the accents (mark-to-mark). Now the strange thing is, when testing with InDesign CS4, vertical stacking works as advertised, but the horizontal position is off by an entire character width. If I type in
m <acute>
the acute appears the exact width of the 'm' to the right. I have confirmed this by typing in another 'm' right after the acute, and then the accent was placed perfectly -- on the next 'm'.
What are the conventions for combining accents? Should they have a non-zero width after all? (I think their widths would be discarded because they're positioned with the mark-to-base feature.) Should they be zero-width and on the right hand side of the null line? (That would imply that, lacking mark-to-base, one would type first the accent and then the base glyph -- which is, I admit, also a historical convention -- typewriter style.)
Or is OTMaster behaving correctly, and IDCS4 not?

