[XeTeX] no-break space

Jonathan Kew jonathan_kew at sil.org
Sat Sep 4 09:59:22 CEST 2004


On 4 Sep 2004, at 8:28 am, Yves Codet wrote:

> Hello.
>
> No-break space doesn't appear in XeTeX's output with font Devanagari 
> MT, as you can see if you typeset the attached file: there's a 
> no-break space before each punctuation. I know the font doesn't 
> include that character, but is there a workaround?

You could make the no-break space into an active character and then 
handle it at the TeX macro level, something like:

	\catcode"00A0=\active
	\def^^^^00a0{\nobreak\ }

Actually, an alternative would be to define it as \char32 (the regular 
ASCII space):

	\catcode"00A0=\active
	\def^^^^00a0{\char32\relax}

This works (and doesn't allow a line-break) because calling for \char32 
is *not* equivalent to a space in the input file. A space in the input 
becomes inter-word "glue" in TeX, whereas \char32 is just another 
character to be printed using the current font, like any other normal 
letter or punctuation (it just happens to be the "space" character).

HTH,

Jonathan



More information about the XeTeX mailing list