It seems that only the english input get the spacing. Don't know why but the sign « ; » of the english input don't get the spacing. You put the value to .25em, looking in the french extension (who can't play with utf8) there's a .16667em value. It's seem's that the smallest is better because the caracter belong to the word, he's not between the two words.
you have to be more explicit; for instance, what do you mean with 'french input'
it's an attribute, not coupled to a language, but grouping should work ok; npsp is not intercepted (no problem to do that)
i can add all kind of thins but then need precise specs + test files
Realy sorry for my bads explanations (and for my bad english…). Here is a test file. I use the last ConTeXt, with lua. Let's resume : In french typography, : ; ? ! « and » must have a small nbsp (« — » too but it's too complicated, not always, so using a « ~ » is better). By « french input » I mean : when I type my source files I do put spaces (and in my case nbsp, because I add it to my keyboard) before those signs (it's the « natural » way we learn). Looking to my tests it seems that if there's a space in the source file, the spacing is not apply — and I guess the nbsp neither. So, what would be great is we had something that say : no mater what is in front of this punctuations (space, nbsp or nothing) just make them nbsp with the right spacing ! Guillemots may be treated differently : as you said the \quote are here for ; but If it's not a problem to leave "«" and "»" in the \setcharacterspacing [frenchpunctuation] it would be great too. Regards, Olivier. -- [Message tapé sur un clavier Bépo : http://www.clavier-dvorak.org ] Olivier nemolivier@gmail.com http://nemolivier.blogspot.com