Uwe Brauer | 18 Nov 18:28
Picon

state of BIDI within stable GNU emacs (UTF8) nikud


Hello

After a long time I have to use GNU emacs to write some hebrew text
(most likely including nikud). 

    - I   am currently trying out  the  stable emacs 21.4 version
      (shipped with Debian  unstable). That  version has no   R2L
      support as far as I can see. Which version has, a snapshot
      version. 

    - Could the hebrew  text be saved as UTF8  (I would need that
      urgently)

    - I remember having seen   some emacs branch which  had  even
      nikud support, but   I forgot where, could  somebody please
      give me pointer.

Regards

Uwe Brauer 
Hossein Noorikhah | 21 Nov 00:26
Picon
Gravatar

Re: state of BIDI within stable GNU emacs (UTF8) nikud

Hi.
I want to know more about using Pango for text rendering that can
solve these kind of problems. I read in mailing list achieves that
Emacs developers have tried Pango for text rendering, but they found
it not suitable for Emcas. I want to know why? Is it too hard to make
it suitable for this job? I think it would be a nice job to do this,
integration with GNOME desktop, antialieased fonts, good
internationalization support, etc.
Thanks.
Eli Zaretskii | 21 Nov 05:46
Picon

Re: state of BIDI within stable GNU emacs (UTF8) nikud

> From: Uwe Brauer <oub <at> mat.ucm.es>
> Date: Fri, 18 Nov 2005 18:28:52 +0100
> 
> After a long time I have to use GNU emacs to write some hebrew text
> (most likely including nikud). 
> 
>     - I   am currently trying out  the  stable emacs 21.4 version
>       (shipped with Debian  unstable). That  version has no   R2L
>       support as far as I can see. Which version has, a snapshot
>       version. 

Sorry, there's still no support for bidi editing in any version of
Emacs, not even in the CVS.

>     - Could the hebrew  text be saved as UTF8  (I would need that
>       urgently)

Yes.

>     - I remember having seen   some emacs branch which  had  even
>       nikud support, but   I forgot where, could  somebody please
>       give me pointer.

I don't think anything like this exists.
Eli Zaretskii | 21 Nov 05:53
Picon

Re: state of BIDI within stable GNU emacs (UTF8) nikud


> Date: Mon, 21 Nov 2005 02:56:37 +0330 > From: Hossein Noorikhah <hossein.ir <at> gmail.com> > > I want to know more about using Pango for text rendering that can > solve these kind of problems. I read in mailing list achieves that > Emacs developers have tried Pango for text rendering, but they found > it not suitable for Emcas. I want to know why?
I once wrote here the reason: Pango, like fribidi, is a batch-mode reordering library: you hand it a buffer with text and it returns it reordered for display. By contrast, Emacs needs a reordering function that could be called repeatedly, and will on every call return the next character in the visual order. This is because the Emacs display engine walks the buffer one character at a time and decides how to display it based on data structures built by the application. I wrote such a sequential version of bidi reordering, and it was integrated into redisplay on a special branch of Emacs CVS. But no one had time to debug it and expand it, unfortunately.
TAKAHASHI Naoto | 21 Nov 06:26

Re: state of BIDI within stable GNU emacs (UTF8) nikud


Uwe Brauer writes: > - I remember having seen some emacs branch which had even > nikud support, but I forgot where, could somebody please > give me pointer.
This one? http://www.m17n.org/emacs-bidi/heb.png -- -- TAKAHASHI Naoto ntakahas <at> m17n.org http://www.m17n.org/ntakahas/
Uwe Brauer | 21 Nov 12:10
Picon

Re: state of BIDI within stable GNU emacs (UTF8) nikud


>>>>> " " == TAKAHASHI Naoto <ntakahas <at> m17n.org> writes: > Uwe Brauer writes: >> - I remember having seen some emacs branch which had even >> nikud support, but I forgot where, could somebody please >> give me pointer. > This one? > http://www.m17n.org/emacs-bidi/heb.png
Most likely, is it possible to obtain a copy of the source code?
Micha Feigin | 21 Nov 16:45
Picon
Picon

Re: Re: state of BIDI within stable GNU emacs (UTF8) nikud

On Mon, 21 Nov 2005 12:10:17 +0100
Uwe Brauer <oub <at> mat.ucm.es> wrote:

> >>>>> " " == TAKAHASHI Naoto <ntakahas <at> m17n.org> writes:
> 
>     > Uwe Brauer writes:
>    >> - I remember having seen   some emacs branch which  had  even
>    >> nikud support, but   I forgot where, could  somebody please
>    >> give me pointer.
> 
>     > This one?
> 
>     >   http://www.m17n.org/emacs-bidi/heb.png
> 
> Most likely, is it possible to obtain a copy of the source code?
> 

Sure, at
http://www.m17n.org/emacs-bidi/

> 
> 
> _______________________________________________
> emacs-bidi mailing list
> emacs-bidi <at> gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-bidi
>  
>  +++++++++++++++++++++++++++++++++++++++++++
>  This Mail Was Scanned By Mail-seCure System
>  at the Tel-Aviv University CC.
> 

 
 +++++++++++++++++++++++++++++++++++++++++++
 This Mail Was Scanned By Mail-seCure System
 at the Tel-Aviv University CC.
Gregg Reynolds | 21 Nov 22:21

Re: state of BIDI within stable GNU emacs (UTF8) nikud


Eli Zaretskii wrote: >>From: Uwe Brauer <oub <at> mat.ucm.es> >>Date: Fri, 18 Nov 2005 18:28:52 +0100 >> >>After a long time I have to use GNU emacs to write some hebrew text >>(most likely including nikud). >> >> - I am currently trying out the stable emacs 21.4 version >> (shipped with Debian unstable). That version has no R2L >> support as far as I can see. Which version has, a snapshot >> version. > > > Sorry, there's still no support for bidi editing in any version of > Emacs, not even in the CVS. > >
Sure there is! Well, sort of. Emacs correctly shapes Arabic *words* (including diacritics) RTL, but sentences run LTR. Sometimes you have to C-l to get it to redraw the shapes. It works surprisingly well for many browse/edit tasks; it's not that hard to get used to reading Arabic that way. The advantage is of course that you can use all the standard Emacs functionality on Arabic text. I dunno if it would work this way for Hebrew. I use emacs (v 22.0.50.2, also one of the 21.3 versions) all the time for editing (not composing, except for short bits) Arabic plaintext. I had to create an Arabic Quail package to get an Arabic keyboard layout, e.g. (require 'quail) (quail-define-package "arabic-ar-AR" "arabic-ar-AR" "aar<" t "arabic-ar character input method with Arabic keyboard layout Doubling the postfix separates the letter and postfix: e.g. a'' -> a' " nil t nil nil nil nil nil nil nil nil t) (quail-define-rules ("f" ?ب) ;; baa ("j" ?ت) ;; taa ("e" ?ث) ;; thaa etc. ) BTW, you know that Vim supports RTL? But without bidi reordering. Hope that helps, gregg
Eli Zaretskii | 21 Nov 23:15
Picon

Re: state of BIDI within stable GNU emacs (UTF8) nikud

> Date: Mon, 21 Nov 2005 15:21:55 -0600
> From: Gregg Reynolds <gar <at> arabink.com>
> CC: Uwe Brauer <oub <at> mat.ucm.es>, emacs-bidi <at> gnu.org
> 
> > Sorry, there's still no support for bidi editing in any version of
> > Emacs, not even in the CVS.
> 
> Sure there is!  Well, sort of.  Emacs correctly shapes Arabic *words* 
> (including diacritics) RTL, but sentences run LTR.  Sometimes you have 
> to C-l to get it to redraw the shapes.

Is this on MS-Windows, by any chance?  Because if it is, then Emacs
has nothing to do with this: it's the Windows function used to display
a word, it reorders the logical into visual order automatically.  But
as soon as you move the cursor with C-f or the arrow keys, the
characters are displayed in their logical order, LTR.  That's not bidi
support, it's not even close.

> BTW, you know that Vim supports RTL?  But without bidi reordering.

Yes, I know.
Martin Duerst | 22 Nov 02:30
Picon

Re: state of BIDI within stable GNU emacs (UTF8) nikud

At 13:53 05/11/21, Eli Zaretskii wrote:

 >I once wrote here the reason: Pango, like fribidi, is a batch-mode
 >reordering library: you hand it a buffer with text and it returns it
 >reordered for display.
 >
 >By contrast, Emacs needs a reordering function that could be called
 >repeatedly, and will on every call return the next character in the
 >visual order.  This is because the Emacs display engine walks the
 >buffer one character at a time and decides how to display it based on
 >data structures built by the application.

It looks to me like you could just use fribidi or so, with an
additional layer that caches the batch-mode results and returns
them one-by-one. You'd want to cache quite a bit of stuff even
in a character walking implementation, I guess, although there
are probably some shortcuts you can make (haven't thought about
that yet in detail).

 >I wrote such a sequential version of bidi reordering, and it was
 >integrated into redisplay on a special branch of Emacs CVS.  But no
 >one had time to debug it and expand it, unfortunately.

Can you give a definitive pointer (ideally URI) to that branch?
Thanks!

Regards,    Martin. 

Gmane