Hans Hagen a écrit :
Robert-André Mauchin wrote:
The best would be to get rid off \setcharacterspacing[frenchpunctuation] and adapt the frenchb Babel module from Daniel Flipo (source and explanation here http://daniel.flipo.free.fr/frenchb/ ), as a module (t-french modification), or when loading the language, but I really don't know how hard it would be since it handles a lot more than just punctuation marks.
no, active chars for such things are no solution and will not be supported in mkiv; setcharacterspacing is the way to go (and if it breaks that should be fixed instead); language support shoul dbe in the kernel anyway
Hans
I don't specifically talk about active chars (I don't really not what this is, I'm an user, not a coder), but instead of arbitrary adding a 0.25em before and 1em after the punctuation mark you should use the real nnbsp (U+202F) before and real normal space (U+0020) after. Why? Let me take your example again: {\setcharacterspacing[frenchpunctuation]a? aa? aaa? abba?} a\,? aa\,? aaa\,? abba\,? Surprise: the first line is longer than the second. It's because sizes of the U+0020 and U+202F depend on the font design, their size are not exactly 1em and 0.25em. Moreover, this is true that in french typography we should use a thin space before some punctuation mark, and a thin space in France *was* one fourth of an em. BUT due to modern digital typography, a thin space now correspond to something like one fifth of an em. In digital typography, the normal space, i.e. inter-word separation, i.e. "espace justifiante" in French, has generally a size around one fourth of an em, calculated by the engine (you know that better than me). The thin space is a bit more than a half of the inter-word separation, i.e. between 1/8 and 1/6 of an em. So I *really* believe that you should not define space before and after punctuation with "arbitrary" em spacing. There must be a way to do a "search and replace" with the correct glyphs (U+202F and U+0020) before and after punctuation marks.
language support should be in the kernel anyway
I agree of course, but although I believe this would encourage french "texers" to use Context, I don't think typography for a specific language is the priority for you&Taco right now. I wish you luck for the next beta release! Bob.