Eli Zaretskii | 19 Apr 10:00
Picon

Please help with the bidi Emacs

The initial version of Emacs that is supposed to support the
bidirectional editing is available as a branch of the emacs-unicode
version.  As of now, only the redisplay code has been modified to
support bidirectionality, and even that is still rudimentary and
probably doesn't work in many cases.  Someone already told me that it
crashes once the bidirectional display flag is turned on :-(

I wrote the underlying code that is used by the display engine to
produce visual-order glyphs from a logical-order buffer, but I don't
have enough resources to devote to work on this version of Emacs.

I'm asking for volunteers who would be prepared to try this version
and help debugging and fixing it until it is stable enough to be
useful to a fairly wide audience of users.

If people are interested, I will post here the details of accessing
this branch via CVS.

Thanks in advance.
Yair Friedman | 19 Apr 10:17

Re: Please help with the bidi Emacs


On 19 Apr 2004 10:00:20 +0200, 
Eli Zaretskii <eliz <at> elta.co.il> writes:

> I'm asking for volunteers who would be prepared to try this version
> and help debugging and fixing it until it is stable enough to be
> useful to a fairly wide audience of users.
>
> If people are interested, I will post here the details of accessing
> this branch via CVS.
>
Yes please!

I guess I need instruction on how to build Emacs on W32/MSVC also.
Thamer Mahmoud | 19 Apr 11:25
Picon

Re: Please help with the bidi Emacs


Eli Zaretskii <eliz <at> elta.co.il> writes:

> The initial version of Emacs that is supposed to support the
> bidirectional editing is available as a branch of the emacs-unicode
> version.  As of now, only the redisplay code has been modified to
> support bidirectionality, and even that is still rudimentary and
> probably doesn't work in many cases.  Someone already told me that it
> crashes once the bidirectional display flag is turned on :-(
>
> I wrote the underlying code that is used by the display engine to
> produce visual-order glyphs from a logical-order buffer, but I don't
> have enough resources to devote to work on this version of Emacs.
>
> I'm asking for volunteers who would be prepared to try this version
> and help debugging and fixing it until it is stable enough to be
> useful to a fairly wide audience of users.
>
> If people are interested, I will post here the details of accessing
> this branch via CVS.
>
> Thanks in advance.

Please do. I'm also CC'ing Arabeyes.org developer list, since pushing
for bidi support in Emacs is on their agenda, I'm sure they will be
interested in this.

Regards,
Thamer Mahmoud
(Continue reading)

Eli Zaretskii | 21 Apr 09:11
Picon

Re: Re: Please help with the bidi Emacs

> From: Yair Friedman <yairfr <at> icts-tech.com>
> Date: Mon, 19 Apr 2004 10:17:00 +0200
> >
> > If people are interested, I will post here the details of accessing
> > this branch via CVS.
> >
> Yes please!

Okay, see below (untested with this specific branch, but it's a
fairly generic CVS usage, so it should just work ;-).

> I guess I need instruction on how to build Emacs on W32/MSVC also.

You should be able to find these instructions in these 2 files, once
you check-out the sources from the CVS:

    INSTALL.CVS
    nt/INSTALL

Use the instructions in INSTALL.CVS modified as per what nt/INSTALL
says about the commands mentioned in INSTALL.CVS.

If you have problems building Emacs, emacs-devel <at> gnu.org is the place
to ask questions.  (If the problems seem to be specific to the bidi
version, please CC this list as well, for the benefit of other users
of that version.)

To check-out the emacs-bidi version:

  . Set up your CVS as explained in
(Continue reading)

Nadim Shaikli | 21 Apr 22:34
Picon
Favicon

Re: Please help with the bidi Emacs

--- Thamer Mahmoud <neokuwait <at> myrealbox.com> wrote:
> Eli Zaretskii <eliz <at> elta.co.il> writes:
> > The initial version of Emacs that is supposed to support the
> > bidirectional editing is available as a branch of the emacs-unicode
> > version.  As of now, only the redisplay code has been modified to
> > support bidirectionality, and even that is still rudimentary and
> > probably doesn't work in many cases.  Someone already told me that it
> > crashes once the bidirectional display flag is turned on :-(

Great, sounds like progress to me :-)

> > I wrote the underlying code that is used by the display engine to
> > produce visual-order glyphs from a logical-order buffer, but I don't
> > have enough resources to devote to work on this version of Emacs.
> >
> > I'm asking for volunteers who would be prepared to try this version
> > and help debugging and fixing it until it is stable enough to be
> > useful to a fairly wide audience of users.

I'm a bit lost - how does the 'emacs-bidi' tagged code in CVS differ
from the work TAKAHASHI Naoto[1] and Kenichi Handa had done ?  Have
all the efforts been unified now to what is in CVS (sure hope so).
Is there a unified emacs-bidi webpage (not sure if m17n's has been
updated of late).

> > If people are interested, I will post here the details of accessing
> > this branch via CVS.
> 
> Please do. I'm also CC'ing Arabeyes.org developer list, since pushing
> for bidi support in Emacs is on their agenda, I'm sure they will be
(Continue reading)

Kenichi Handa | 22 Apr 01:29

Re: Re: Please help with the bidi Emacs

In article <20040421203437.5761.qmail <at> web14919.mail.yahoo.com>, Nadim Shaikli
<shaikli <at> yahoo.com> writes:
> I'm a bit lost - how does the 'emacs-bidi' tagged code in CVS differ
> from the work TAKAHASHI Naoto[1] and Kenichi Handa had done ?  Have
> all the efforts been unified now to what is in CVS (sure hope so).
> Is there a unified emacs-bidi webpage (not sure if m17n's has been
> updated of late).

The work in the old emacs-bidi involved the following:
(1) Reordering characters (bidi.el)
(2) Caching re-ordered glyphs (bidi.c and xdisp.c)
(3) Reversing a line orientation (xterm.c), i.e. set the
beginning of line at the right edge of a window.

In the CVS version,
(1) Reordering and caching are replaced by Eli's new code.
(2) Reversing a line orientation is not yet mereged in.

I'll work on (2) soon, but for the moment, we must
concentrate on making (1) work.

---
Ken'ichi HANDA
handa <at> m17n.org
Alex Schroeder | 22 Apr 19:34
Face

Re: Re: Please help with the bidi Emacs

Nadim Shaikli <shaikli <at> yahoo.com> writes:

> Is there a unified emacs-bidi webpage (not sure if m17n's has been
> updated of late).

Feel free to use the Emacs Wiki for notes, announcements, etc.

http://www.emacswiki.org/cgi-bin/wiki/CategoryBiDi
http://www.emacswiki.org/cgi-bin/wiki/DisplayEngineForBiDi
http://www.emacswiki.org/cgi-bin/wiki/DisplayEngineForArabic

(And any other pages you want to create...)

Alex.
--

-- 
.O.  http://www.emacswiki.org/alex/
..O  Schroeder's fourth law:
OOO  None of your friends and coworkers share your taste in music.
Thamer Mahmoud | 24 Apr 11:28
Picon

Re: Please help with the bidi Emacs

Nadim Shaikli writes:
 >  Peering through the 'emacs-bidi'
 > mailing-list[2] archives, here is the info to check-out the emacs-bidi
 > version from CVS,
 > 
 >  + Set up your CVS as explained in
 >      http://savannah.gnu.org/cvs/?group=emacs
 > 
 >  + Type these commands (or their equivalent)
 >      $ export CVS_RSH="ssh"
 >      $ cvs -z3 -d:ext:anoncvs <at> savannah.gnu.org:/cvsroot/emacs \
 >            co -r emacs-bidi emacs
 > 

Also, to enable Bidi reordering by default, add the following to your
.emacs file:

(setq default-enable-bidi-display t) 

I've done some testing with this but no joy. I'm on X and I'm entering
Arabic characters through the XKB extension. Emacs crashes after few
seconds of usage (backtrace below). Looks like Emacs is only able to
successfully reorder 2 characters in a buffer before disappearing with 
the "Fatal error (6).Aborted" message showing up in my terminal window.

#0  0x40278081 in kill () from /lib/tls/libc.so.6
#1  0x080efd8c in abort () at emacs.c:417
#2  0x08094a30 in bidi_resolve_neutral (bidi_it=0xbfffdedc) at bidi.c:1438
#3  0x08094f87 in bidi_level_of_next_char (bidi_it=0xbfffdedc) at bidi.c:1549
#4  0x080952eb in bidi_get_next_char_visually (bidi_it=0xbfffdedc) at bidi.c:1725
(Continue reading)

Behdad Esfahbod | 25 Apr 15:52
Picon
Favicon

Re: Re: Please help with the bidi Emacs

On Sun, 25 Apr 2004, ahmad khalifa wrote:
> > >
> > >   if (!(type == STRONG_R
> > > 	|| type == STRONG_L
> > > 	|| type == WEAK_BN
> > > 	|| type == WEAK_EN
> > > 	|| type == WEAK_AN
> > > 	|| type == NEUTRAL_B
> > > 	|| type == NEUTRAL_S
> > > 	|| type == NEUTRAL_WS
> > > 	|| type == NEUTRAL_ON))
> > >     abort ();
> >
> >Can you tell why you think it needs more parentheses?  It basically
> >says
> >
> >   if (!(expression))
> >     abort ();
> >What's wrong with that, and why would an additional pair of enclosing
> >parens fix that?
>
> are you sure expression is evaluated correctly ? thats what the parens
> are for... 1 month ago i would have never thought that this would be a
> problem, but after debugging minibidi line by line, i found out that
> sometimes this happens, probably because ' || ' and ' == ' have the same
> evaluation priority or something.

Apparently not in this case.  And no, they don't have the same
priority.  The idiom is that something like this:

(Continue reading)

Nadim Shaikli | 29 Apr 06:59
Picon
Favicon

Re: Help bidi Emacs

--- Kenichi Handa <handa <at> m17n.org> wrote:
> Nadim Shaikli <shaikli <at> yahoo.com> writes:
> > I'm a bit lost - how does the 'emacs-bidi' tagged code in CVS differ
> > from the work TAKAHASHI Naoto[1] and Kenichi Handa had done ?  Have
> > all the efforts been unified now to what is in CVS (sure hope so).
> > Is there a unified emacs-bidi webpage (not sure if m17n's has been
> > updated of late).
> 
> The work in the old emacs-bidi involved the following:
> (1) Reordering characters (bidi.el)
> (2) Caching re-ordered glyphs (bidi.c and xdisp.c)
> (3) Reversing a line orientation (xterm.c), i.e. set the
> beginning of line at the right edge of a window.
> 
> In the CVS version,
> (1) Reordering and caching are replaced by Eli's new code.
> (2) Reversing a line orientation is not yet mereged in.
> 
> I'll work on (2) soon, but for the moment, we must
> concentrate on making (1) work.

OK, I'll start "testing" when time allows for it, but I agree with
Ahmad.K's assessment on that it will take us, non-developers, 10x
(if not more) time to debug things and submit patches.  Maybe a 
more concentrated effort on listing what needs to be tested to
better guide the developers on what exactly needs to be fixed.

I'm not sure how best to pursue this, but if you and other from the
m17n effort are a bit taken aback on the actual debug (and I'm sure
I'm wrong on this, so forgive me if I am) I can only assume we'd be
(Continue reading)


Gmane