emacs-bidi
[Top][All Lists]
Advanced

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

[emacs-bidi] Re: Emacs bidi


From: Alex Schroeder
Subject: [emacs-bidi] Re: Emacs bidi
Date: Sat, 10 Nov 2001 01:59:33 +0100
User-agent: Gnus/5.090004 (Oort Gnus v0.04) Emacs/21.1 (i686-pc-linux-gnu)

"Stephen J. Turnbull" <address@hidden> writes:

>>>>>> "Alex" == Alex Schroeder <address@hidden> writes:
> 
>     Alex> I just checked the "On-line proceedings for m17n2000" and
>     Alex> found your name on the list of speakers.  I'm currently
>     Alex> starting to work on Emacs bidi.  One place where this takes
>     Alex> place is the emacs-bidi mailing list.  Is there a similar
>     Alex> place for XEmacs bidi work?
> 
> xemacs-beta will do.  Nobody's picked up on it yet; we have no Arabic-
> writing users AFAIK and very few Hebrew writers.  If something gets
> started, we could have a separate list.  However, presumably bidi will
> involve surgery on Mule and redisplay.  We would probably make a CVS
> branch, with intent to merge fairly quickly.  So it would be best to
> keep the general developer community informed, and xemacs-beta is
> currently the best channel for that.

Ok, I'll just keep you XEmacs guys informed of what's going on
emacs-bidi from time to time.

Eli Zaretskii is writing code for the redisplay which will take bidi
into account while redisplaying.  It is based on UAX#9 but uses a
character-by-character-approach just like current Emacs redisplay:
Based on the current position in the buffer, the "next" character is
fetched.  Instead of just incrementing the position, Eli does some
scanning, caching, jumping and direction reversing such that the
"next" character for redisplay is indeed the next character in visual
order (in the window), but not necessarily the next character in
logical order (in the buffer).  UAX#9 is the Unicode Standard Annex #9
Technical Report and is available at
http://www.unicode.org/unicode/reports/tr9/.

TAKAHASHI Naoto and HANDA Kenichi are writing code to display Arabic
from Unicode and ISO-8859-6 correctly.  Those encodings use only one
character for the various glyphs (start, middle, end, isolated form),
so the display code needs to know about some basic Arabic rules to get
this right.  This is done using font-lock to identify the region of
interest and compose-region to compose any number of characters into
another character.  There's a screenshot available at
http://www.m17n.org/ntakahas/arabic.png.

I myself am just getting into this.  :) At the moment I'm writing code
to create categories usable for bidi according to UAX#9.  Currently I
use one such categories for each bidi type in UAX#9.  I use a table
derived from UnicodeData.txt (available from www.unicode.org) to get
all bidi types for UCS characters, and then I use tables from Dave
Love's ucs-tables.el to use this information for all 8859 charsets.  I
assume that -- as more unification tables from UCS to the various
other charsets become available -- the bidi categories can be for more
and more charsets.  This code is available from the emacs-bidi
archives, http://mail.gnu.org/pipermail/emacs-bidi/.  The next thing
on the list is a function to revert the bidi-algorithm: To derive a
logical form given the visual form.  We assume that such a thing may
be valuable when treating text pasted from other applications where
the original logical ordering (and all the explicit bidi marks) got
lost.

Alex.
-- 
http://www.emacswiki.org/



reply via email to

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