emacs-bidi
[Top][All Lists]
Advanced

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

Re: [emacs-bidi] Re: RTL support


From: Eli Zaretskii
Subject: Re: [emacs-bidi] Re: RTL support
Date: Wed, 23 Nov 2005 06:45:17 +0200

> Date: Tue, 22 Nov 2005 22:07:53 -0600
> From: Gregg Reynolds <address@hidden>
> Cc: address@hidden
> 
> >>1.  It was legacy, so Unicode had so support it.  Then they went
> >>    berserk with it.
> > 
> > 
> > From my POV, there are very good reasons to consistently encode
> > characters in the order in which they are written.  You don't want
> > visual layout for any other operation except display.  You might think
> > that display is the most important operation on text, but for large
> > bits of most software it isn't.
> 
> Two things.  One is, directionality a design choice, not a reflection of 
> some kind of objective reality.

That's true, and we decided here long time ago to store characters in
the logical order in Emacs buffers.  The reasons were not only that
most other software in the world made the same decision (and thus if
we want to be able to import text from outside we are better off with
logical order), but also which way would make common Emacs operations,
like searching, easier.

It is pointless to try to convince us now to change that design
decision.  Even if you come up with VERY convincing arguments (which
you didn't, as everything you wrote was on our table when we discussed
this back then), it will be a very hard job to make us revert that
decision.

> In other words "reasons to consistently encode characters in the order 
> in which they are written"  is essentially meaningless.

They are not meaningless, they describe a conscious design decision
that was made after much discussion and deliberations.  We came to the
conclusion that logical-order storage will make the rest of bidi
support easier.

> It boils down to an economic argument.  For Arabic, we need a) RTL 
> layout (a purely graphical matter); and b) shaping.  Both of these are 
> (relatively) inexpensive to implement.  Support for bidi reordering is a 
> nice enhancement, but it's a) expensive; and b) unecessary unless you 
> write in two or more languages in the same doc.

This is only true if we accept your assumption that text should be
stored within Emacs in visual order.  And we already rejected that
design.  So for us, bidi reordering during display is a must.

> Ask yourself a simple question.  Software like Emacs has been around for 
> what, 30 years?  It gained support for e.g. Japanese, Korean, etc. years 
> ago.  But the 1 billion + people in the world who need RTL support are 
> still waiting.  Why is that?

Because precious few out of those 1 billion were able or wishing to
help us integrate bidi reordering into Emacs display engine.

> The bidi algorithm is complex and generally yucky.

Nevertheless, I think I succeeded to conquer it for Emacs.
Unfortunately, I ran out of free time soon after that, so I need help
in getting this to a working, reliable support.  Then this support
could be extended by others to make Emacs bidi editor.

> Thought experiment: imagine a world in which nobody would implement
> English language software unless it had bidi support.

Such arguments are fruitless now, when the design decisions were made
long ago.




reply via email to

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