Eli Zaretskii | 18 Apr 2011 16:54
Picon

Re: Bidirectional editing in Emacs -- main design decisions

> Date: Fri, 09 Oct 2009 23:18:00 +0200
> From: Eli Zaretskii <eliz <at> gnu.org>
> Cc: 
> 
> While there's a lot of turf to be covered yet, I thought I'd publish
> the main design decisions up to this point.

I don't know if someone follows these design decisions, but in case
people are interested, here's an update:

> 6. Reordering of strings from `display' properties
>    ...
>    Another, perhaps more serious implication of this design decision
>    is that strings from `display' properties are reordered separately
>    from the surrounding buffer text.  IOW, production of glyphs from
>    reordered buffer text is stopped when a `display' property is
>    found, the string that is the property's value is reordered and
>    displayed, and then the rest of text is reordered and its glyphs
>    produced.

After careful thought, I changed my mind about this part.  Whenever
the redisplay iterator finds text that is covered by a `display' text
property or by an overlay with a `display', `before-string', or
`after-string' property, it will not stop reordering.  Instead, it
will treat the entire run of text covered by the text property or
overlay as a single atomic entity, and will reorder it as if it were a
single special character whose name in Unicode is OBJECT REPLACEMENT
CHARACTER (u+FFFC).  This character's bidirectional category (Other
Neutral) and other properties are designed so that it can stand for
display features such as embedded images, and in particular it is
(Continue reading)

Eli Zaretskii | 19 Apr 2011 18:02
Picon

Re: Bidirectional editing in Emacs -- main design decisions

> From: Stefan Monnier <monnier <at> iro.umontreal.ca>
> Cc: emacs-devel <at> gnu.org,  emacs-bidi <at> gnu.org
> Date: Tue, 19 Apr 2011 10:11:33 -0300
> 
> It sounds very reasonable, but at the same time I don't understand in
> which way it differs from your earlier opinion that it should "stop
> reordering" (whose meaning is very unclear to me).

Well, that's my fault: "stop reordering" is simply misleading.

What I meant by that was that the reordering will completely process
all the text before (in the logical order) the part covered by a
display property, then process the display spec, and only then reorder
the text after the property.

So this buffer text

  ABCDE display XYZ

will be reordered as

  EDCBA display ZYX

instead of more sensible

  ZYX display EDCBA

under the new plan.
Eli Zaretskii | 25 Apr 2011 19:58
Picon

Re: Bidirectional editing in Emacs -- main design decisions

> From: Mohsen BANAN <list-general <at> mohsen.1.banan.byname.net>
> Date: Mon, 25 Apr 2011 10:31:57 -0700
> Cc: emacs-devel <at> gnu.org
> 
> My mixed language text generated with emacs
> displays inconsistently in firefox vs emacs24.
> 
> For example when I write:
> 
> اسم کوچک من محسن Mohsen و اسم خانوادگى من بنان
> Banan است.
> 
> 
> My first name is Mohsen محسن and my last name is
> Banan بنان.

Did you (setq bidi-display-reordering t) in the buffer where this is
displayed?  Without that, the bidirectional reordering does not
happen.  (Some day, this will be on by default, but not yet.)

_______________________________________________
emacs-bidi mailing list
emacs-bidi <at> gnu.org
https://lists.gnu.org/mailman/listinfo/emacs-bidi
Eli Zaretskii | 25 Apr 2011 20:59
Picon

Re: Bidirectional editing in Emacs -- main design decisions

> From: Mohsen BANAN <list-general <at> mohsen.1.banan.byname.net>
> Cc: Mohsen BANAN <list-general <at> mohsen.1.banan.byname.net>,  emacs-bidi <at> gnu.org,  emacs-devel <at> gnu.org
> Date: Mon, 25 Apr 2011 11:44:06 -0700
> 
> The problem is not with display of a pure Farsi
> line or a pure Latin line or a mixed Latin+Farsi
> line.
> 
> The problem is with Fasri+Latin line. 
> In that it displays one way in emacs and a 
> differnt way in firefox.
> 
> Your citation above of my email has somehow
> reproduced the problem.
> 
> So, right here we have it captured.
> 
> Look at the display of my original message 
> below:
> 
> اسم کوچک من محسن Mohsen و اسم خانوادگى من بنان
> Banan است.
> 
> Now look at the display of citation line above
> starting on the left with ' >>'  after the 
>   >> For example when I write:
> 
> You see how the Farsi piece (word sequence -- not
> character sequence) is flipped around "Mohsen".

(Continue reading)

Eli Zaretskii | 26 Apr 2011 00:00
Picon

Re: Now: Paragraph Direction Detection and Harmonization -- Was: Re: Bidirectional editing in Emacs -- main design decisions

> From: Mohsen BANAN <list-general <at> mohsen.1.banan.byname.net>
> Cc: Mohsen BANAN <list-general <at> mohsen.1.banan.byname.net>,  emacs-bidi <at> gnu.org,  emacs-devel <at> gnu.org
> Date: Mon, 25 Apr 2011 14:31:22 -0700
> 
> I am saying that emacs display is correct but that
> there are interoperability problems.

That could be, but it sounds like the solution to those problems
should be on the Firefox side.  Or maybe Firefox also has some
customization feature, like bidi-paragraph-direction in Emacs.

> For example, I think that it is worthwhile for
> emacs24 to have a good Conformance Statement for 
>  http://unicode.org/reports/tr9/

We already do, see etc/NEWS:

  Reordering of bidirectional text for display in Emacs is a "Full
  bidirectionality" class implementation of the Unicode Bidirectional
  Algorithm.

Is that what you meant by "conformance statement"?  If not, what is
it?

> The existence of -- Unicode Standard Annex #9 --
> Unicode Bidirectional Algorithm -- speaks to that
> requirement for harmonization.

If every application out there implements UAX#9 to the letter, there
shouldn't be interoperability problems.
(Continue reading)

Eli Zaretskii | 26 Apr 2011 20:00
Picon

Re: Persian/Farsi Transliteration Input Method for emacs24 -- quail-persian-translit.el

> From: Mohsen BANAN <list-general <at> mohsen.1.banan.byname.net>
> Cc: Eli Zaretskii <eliz <at> gnu.org>
> Date: Tue, 26 Apr 2011 00:56:20 -0700
> 
> 
> Attached below is a quail file that I have
> developed and have been using for a while.
> 
> It is a transliteration input method for
> Persian/Farsi.
> 
> I'd like for it to become part of emacs24.
> 
> Would you kindly please include it in emacs?

Thanks.  I think the two input methods should be in a single file
called simply persian.el (in leim/quail subdirectory of the Emacs
tree).

More importantly, I think these contributions are large enough to
require legal papers.  Chong, is that right?

> (provide 'quail-persian-translit)

Emacs input methods do not define themselves as features, so I think
this line should be deleted.
Eli Zaretskii | 26 Apr 2011 20:05
Picon

Re: Now: Paragraph Direction Detection and Harmonization -- Was: Re: Bidirectional editing in Emacs -- main design decisions

> From: Mohsen BANAN <list-general <at> mohsen.1.banan.byname.net>
> Cc: Mohsen BANAN <list-general <at> mohsen.1.banan.byname.net>,  emacs-bidi <at> gnu.org,  emacs-devel <at> gnu.org
> Date: Tue, 26 Apr 2011 00:56:12 -0700
> 
> 
> 3) A document titled:
> 
>      Perso-Arabic Script In the Halaal and Convivial Quadrant.

I'm not sure this document should be included in Emacs, but I'll leave
it to Chong and Stefan to decide on that.
Juanma Barranquero | 28 Apr 2011 03:21
Picon
Gravatar

Re: Requesting instructions for enabling bidi by default

On Thu, Apr 28, 2011 at 02:52, Mohsen BANAN
<list-general <at> mohsen.1.banan.byname.net> wrote:

> Would you please teach me on how to make
>  (setq bidi-display-reordering t)
> default for all buffers always.

Adding

(setq-default bidi-display-reordering t)

to your .emacs should be enough.

    Juanma

_______________________________________________
emacs-bidi mailing list
emacs-bidi <at> gnu.org
https://lists.gnu.org/mailman/listinfo/emacs-bidi

Gmane