On Tue, Dec 17, 2024, G. Branden Robinson wrote: > One thing that itches me a little about using a diversion this way is > that I've documented glyphs as being drawn upward and to the right from > the text baseline. That's not happening here. So either I've > documented the formatter wrong or you're exercising an underspecified > part of the system.
As noted, I originally suspected the latter. > Your string definition has to add motions to place the glyph > correctly. So maybe when `char` or a similar request is > assembling its contents, it should check the node it's processing > to see if it is a diversion, and perform such adjustment itself. Putting the motions in the diversion was how I went about it first. When that didn't pan out, I went the string route, which was when I discovered the diversion needed an actual glyph in it in order to work as I hoped. > (Normally, outputting a diversion draws it downward from the current > drawing position and leaves the drawing position at its bottom-left > corner. When using a diversion as a glyph, we want to set it on the > text baseline, essentially drawing it upward, and leave the drawing > position at the diversion's bottom-RIGHT corner.) Is it worth fixing this, too? The uses of diversion glyphs are few. Documenting the anomalous drawing behaviour might be all that's required. -- Peter Schaffter https://www.schaffter.ca