I wrote: > do you mind outlining the solution in a few sentences? how do you want > to be able to find out that you are not in math but will be once > something (eg tha actual letter) triggered the \halign u part without > actually triggering it (with something like \relax which kills > ligaturing)? but by now i got a chance to looked at it. quite a nice idea but i don't think it is fully correct yet. you change \if@mmode at each \halign thus an \halign that doesn't generate math mode cells will have this setting throughout, eg something like \begin{tabular}[t]{..} will have broken text inside, wouldn't it? or do i overlook something? assuming that the analysis is right, what follows is that instead of changing \halign internally you would have to change those uses of \halign where it is needed (only) and that cuts through all existing macros and isn't transparent ie you can't simply get it done by a single package or inclusion of code in the kernel you actually have to change every second use of \halign > the approach used in the mathtext package proved to be stable enough: > i know a lot of people do use it for `transparent' cyrillic letters in > math, and i did not hear about bug for a long time now. the mechanism you don't see the problem unless you look closely at kerning and ligatures (and you use fonts that have them) but it may be the case that this is sufficiently rare with the type of characters it is used so far. with latin fonts i guess this would become far more visible. frank