[XeTeX] Polyglossia does not exist for Kannada - XeLaTex

Jonathan Kew jfkthame at googlemail.com
Sat Apr 18 12:50:14 CEST 2009


On 18 Apr 2009, at 07:17, Sreenivasa Guttal wrote:

> On Sat, Apr 18, 2009 at 12:08 AM, Jonathan Kew <jfkthame at googlemail.com 
> > wrote:
>
> On 17 Apr 2009, at 18:49, Sreenivasa Guttal wrote:
>
> > If I make defaultlangauge is non-english(kannada or sanskrit) and
> > \setmainfont, the other issues go away.
> > However, I the hyphen character is still not seen. That is the main
> > isssue now.
>
> Have you checked whether it is actually present in the font you're
> using? Have you looked for error/warning messages in the log?
>
>
> YES. The given font does not seem to support hyphen character.
> That is why I tried to redefine defaulthyphenchar, by including it  
> in english language. (with begin and end english). Somehow, this is  
> not working.

Of course not. As I wrote before (and as The TeXbook says),  
\defaulthyphenchar is an integer parameter of TeX. You can't magically  
assign some arbitrary token list to this.

If the font has some other character that you want to use for  
hyphenation, you can set its \hyphenchar to the (ASCII or Unicode)  
value, and this will be used when TeX hyphenates. (BTW, no need to  
mess with \defaulthyphenchar for this, just use the HyphenChar feature  
of fontspec when you define the font.)

>
> In summary, How do I get this hyphen character displayed when I  
> given font does not support it? This should solve my main problem.

If the font has a suitable character somewhere (e.g., U+2010), use the  
HyphenChar feature to specify it.

If the font has no suitable character at all, then you can't get  
automatic hyphenation to work with this font, as TeX does not have the  
ability to insert arbitrary commands such as font changes as part of  
automatic hyphenation. You could use explicit \discretionary commands  
that do a font switch, but auto-hyphenation based on patterns won't do  
that.

>
> > Another observation. I also see that other special charactrers like
> > `avagraha', `virama'(danda) are not displayed properly.
>
> Again, have you checked that the font you're using supports the
> characters involved?
>
> If I use these character by swithcing to a different language which  
> has support for these fonts, it does work.
> Neverthless, I do not know why such basic characters are not  
> supported by these fonts.

That's a question for the font developers. I guess they didn't think  
people would need them in Kannada. If they're wrong, you'll have to  
convince them to improve their fonts (or fix them yourself), or choose  
different fonts that properly support the character set you need.

I took a quick look at the Mallige and Kedage fonts available through  
Sourceforge; is that what you're using? They seem to have a number of  
problems: the glyph outlines in Mallige are extremely poorly drawn,  
and both fonts show some deviations from Unicode compliance. It looks  
like they encode a "danda" as U+003E ">", for example!

JK



More information about the XeTeX mailing list