>> The only real solution is to completely redesign the layout engine, >> switching to a TeX-like paragraph handling algorithm. > > I admit to not knowing the internals of the formatting algorithm, > but I don't see why solving this problem requires the algorithm to > change. To solve it, internally groff could just do what it > currently advises the user to do: pretend the line is longer by the > amount of padding being added to each glyph. (groff already knows > this amount; to the user, it's not obvious, as the amount is > calculated based on parameters the user supplies.)
For backwards compatibility you no longer can change the behaviour of `.tkf', so this would be a *new* command (or maybe `.tfk' with a fifth parameter). > Granted, the issue is somewhat academic, as revamping the formatting > algorithm is already considered a higher priority than tweaking > .tkf, and there's no one available to do either one. This is true, unfortunately. However, given that groff is written in fairly clean and conservative C++ with quite a good object class hierarchy, implementing a new formatting algorithm shouldn't be too difficult for people who like the object-oriented approach. Werner