[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Adding Tai Tham Script to GNU/Linux Distribution's Version of Emacs

From: Richard Wordingham
Subject: Adding Tai Tham Script to GNU/Linux Distribution's Version of Emacs
Date: Mon, 16 Mar 2015 07:47:34 +0000

> Date: Mon, 16 Mar 2015 05:43:07 +0200
> From: Eli Zaretskii <>
> To:
> Subject: Re: Adding Tai Tham Script to GNU/Linux Distribution's
>       Version of      Emacs
> Message-ID: <>

> Then what exactly is/was your problem with that script?  Your question
> said:
> > Is it 'simple' to add complex text layout (CTL) for the Tai Tham
> > script on non-Windows systems?
> Emacs does CTL on Unix by using 2 m17l libraries.  Here's a citation
> from INSTALL:
>   * Complex Text Layout support libraries
>   On GNU and Unix systems, Emacs needs the optional libraries
> "m17n-db", "libm17n-flt", "libotf" ...

> But you seem to have these libraries already, so I'm unsure what
> exactly is the problem you are having.

The primary problem is that m17n currently does not have support for the
Tai Tham script, not even at Version 1.7.0.  I therefore need to add
this to my copy of the m17n database, and, if I do an acceptable job,
offer this support for inclusion in the public m17n database.  I've
added a first attempt to my copy, but I see no evidence that Emacs is
attempting to use it. (I've enabled full m17n debugging by setting
environment variable MDEBUG_ALL, and get lots of output to the terminal
I launch Emacs from, including a record of my Tai Tham shaping rules
being read in.) Unfortunately, writing a test bed for m17n does not seem
simple - I had hoped to use Emacs as the test bed, as the rest of the system is
often the quickest test bed to build. (It's for Emacs that I want m17n
support - HarfBuzz provides support for browsers and word processing.)
I've asked for advice on purely m17n matters on the m17n help list.

> > Might the character categories be relevant?  They don't seem to be
> > set for Tai Tham characters, though they are set for Tai Viet
> > characters, which are slightly younger in Unicode.

> Which categories did you have in mind?  "Category" is too general a
> term here.

I meant category as being set by calls of modify-category-entry in
characters.el.  (The lisp function is defined in file category.c.)  The
clue is that somehow Emacs knows that text shaping is not needed for a
sequence of Thai consonants, and it is also true that it is not needed
for a sequence of Tai Tham consonants.  However, I don't know where the
triggering logic is.  It *could* be something like 'invoke shaping if
there is a combining character or Indian character present'.  I'm not
even sure what an 'Indian character' (category codes 'i' and 'I') is.
It might merely be a non-ASCII character supported by ISCII.  Another
clue is that shaping seems to be invoked for lone Tibetan consonants. 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]