unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: David Kastrup <dak@gnu.org>
Cc: emacs-devel@gnu.org
Subject: Re: bidi-display-reordering is now non-nil by default
Date: Sun, 31 Jul 2011 05:03:31 -0400	[thread overview]
Message-ID: <E1QnRvn-0003vA-HI@fencepost.gnu.org> (raw)
In-Reply-To: <877h6yanje.fsf@fencepost.gnu.org> (message from David Kastrup on Sun, 31 Jul 2011 09:59:17 +0200)

> From: David Kastrup <dak@gnu.org>
> Date: Sun, 31 Jul 2011 09:59:17 +0200
> Cc: mew-int@mew.org

I've removed the mew list from the CC, as this doesn't seem to be
related to mew.

> > Yes, the name is always `.mew-summary'.  I've CCed the mew mailing
> > list so that the author of mew gets informed.  It should be
> > straightforward to add a proper call to `bidi-paragraph-direction'
> > within the next mew release.
> 
> I think that is a bottomless pit.  I consider it nonsensical to treat a
> block of aligned lines as one large paragraph where one would need to
> find out the paragraph direction of the whole.

The paragraph direction is determined by the paragraph beginning, not
by all of it.  The first "strong directional" character in the
paragraph, either a left-to-right character or a right-to-left
character, will determine the base direction of that paragraph.  E.g.,
a single Latin letter is all that's needed for determining that the
paragraph direction is left-to-right.

> It might be nice to have the same default paragraph direction in the
> whole "paragraph" for alignment purposes

Alignment is not the issue here; correct display as expected by users
is.

> but it is nonsensical to wait for the paragraph to complete.

Emacs doesn't wait for the paragraph to complete, to determine its
base direction.  All it needs is its beginning; one character is
enough.

The use case that Werner reported was with point being near the end of
a very large buffer that doesn't have paragraph breaks.  When point
was at the beginning of that same large buffer, cursor motion was
responsive enough.  That's because, when redisplay is called in the
middle of a paragraph, and bidi-paragraph-direction is nil, Emacs
searches back to the beginning of the paragraph to determine its
direction, and in this case it would search back to the beginning of
this very large buffer.

> With a bit of luck, the alignment uses display properties (because
> otherwise proportional fonts are raining on the parade), and in the
> presence of a :space display property or what our aligning properties
> were called

Unless I misunderstand you, the display properties are irrelevant to
the issue at hand, as is alignment in general.

> I think that the paragraph direction should be determined
> at the end of the first line, rather than the whole "paragraph".

As explained above, it is determined at the first strong directional
character, much sooner than the end of the first line.

> It might also be reasonable to set the paragraph boundary detection
> regexps to nil in buffers where no paragraphs will ever be found

How to detect these buffers?  If we can detect them reliably, we could
probably always set their paragraph direction to left-to-right, which
would be a better default than a locale-dependent one (see below).

> and let bidi revert to a (locale-dependent?) default direction for
> such buffers.

Experience shows that some people who need the bidirectional display
work in locales that have nothing to do with R2L scripts.  So I think
it would be a bad misfeature to do what you suggest (IIUC).  At least
we should consider better alternatives before we give up in this way.



  reply	other threads:[~2011-07-31  9:03 UTC|newest]

Thread overview: 232+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-28 17:21 bidi-display-reordering is now non-nil by default Eli Zaretskii
2011-07-28 18:51 ` David Kastrup
2011-07-28 20:35   ` Juanma Barranquero
2011-07-30 22:55 ` Werner LEMBERG
2011-07-31  3:06   ` Eli Zaretskii
2011-07-31  6:21     ` Werner LEMBERG
2011-07-31  6:29       ` Eli Zaretskii
2011-07-31  6:44         ` Werner LEMBERG
2011-07-31  7:01           ` Eli Zaretskii
2011-07-31  7:36             ` Werner LEMBERG
2011-07-31  6:17   ` Eli Zaretskii
2011-07-31  6:27     ` Werner LEMBERG
2011-07-31  6:40       ` Eli Zaretskii
2011-07-31  6:51         ` Werner LEMBERG
2011-07-31  7:59           ` David Kastrup
2011-07-31  9:03             ` Eli Zaretskii [this message]
2011-07-31  9:15               ` David Kastrup
2011-07-31  9:34                 ` Eli Zaretskii
2011-07-31  9:54                   ` David Kastrup
2011-07-31 10:18                     ` Eli Zaretskii
2011-07-31 10:35                       ` David Kastrup
2011-07-31 12:01                         ` Eli Zaretskii
2011-07-31 13:23                           ` David Kastrup
2011-07-31 13:43                             ` Eli Zaretskii
2011-07-31 11:07                   ` Lars Magne Ingebrigtsen
2011-07-31 12:22                     ` Eli Zaretskii
2011-07-31 13:25                       ` David Kastrup
2011-07-31 13:38                         ` Lars Magne Ingebrigtsen
2011-07-31 13:54                           ` David Kastrup
2011-07-31 13:59                             ` Eli Zaretskii
2011-07-31 14:26                               ` David Kastrup
2011-07-31 15:44                                 ` Eli Zaretskii
2011-08-01  1:14                                   ` Mohsen BANAN
2011-08-01  2:54                                     ` Eli Zaretskii
2011-08-03  2:39                                       ` Mohsen BANAN
2011-08-03  8:56                                         ` Eli Zaretskii
2011-08-01 15:51                                     ` Lars Ingebrigtsen
2011-08-03  2:56                                       ` Mohsen BANAN
2011-08-03 18:45                                         ` Lars Magne Ingebrigtsen
2011-08-03 19:30                                           ` Eli Zaretskii
2011-08-04  3:23                                             ` Stephen J. Turnbull
2011-08-04  5:16                                               ` Eli Zaretskii
2011-08-04  6:55                                                 ` Kenichi Handa
2011-08-04 10:12                                                   ` Eli Zaretskii
2011-08-09  6:11                                                     ` Kenichi Handa
2011-08-09  7:00                                                       ` Eli Zaretskii
2011-08-04 10:04                                                 ` Stephen J. Turnbull
2011-08-04 10:36                                                   ` Eli Zaretskii
2011-08-04 13:55                                                     ` Stephen J. Turnbull
2011-08-04 14:04                                                       ` David Kastrup
2011-08-04 14:59                                                         ` Eli Zaretskii
2011-08-04 14:53                                                       ` Eli Zaretskii
2011-08-04 16:55                                                         ` Stephen J. Turnbull
2011-08-04 17:07                                                           ` Stephen J. Turnbull
2011-08-04 17:43                                                           ` Eli Zaretskii
2011-08-05  3:38                                                             ` Stephen J. Turnbull
2011-08-05  5:46                                                               ` David Kastrup
2011-08-05  6:40                                                               ` Eli Zaretskii
2011-08-05  8:00                                                                 ` Stephen J. Turnbull
2011-08-04 13:59                                                 ` Stefan Monnier
2011-08-04 14:56                                                   ` Eli Zaretskii
2011-08-05  3:41                                             ` Michael Welsh Duggan
2011-08-05  6:56                                               ` Eli Zaretskii
2011-08-05 17:56                                             ` Chong Yidong
2011-08-05 18:10                                               ` Eli Zaretskii
2011-08-05 18:45                                                 ` Chong Yidong
2011-08-05 20:30                                                   ` Eli Zaretskii
2011-08-05 21:54                                                     ` Chong Yidong
2011-08-06  2:01                                                       ` Jason Rumney
2011-08-06  7:07                                                       ` Eli Zaretskii
2011-08-07 17:21                                                         ` Chong Yidong
2011-08-07 19:32                                                           ` Eli Zaretskii
2011-08-09 16:07                                                             ` Chong Yidong
2011-08-09 16:23                                                               ` Eli Zaretskii
2011-08-09 16:30                                                                 ` David Kastrup
2011-08-09 17:12                                                                   ` Eli Zaretskii
2011-08-09 17:26                                                                     ` David Kastrup
2011-08-09 17:34                                                                       ` Eli Zaretskii
2011-08-09 18:00                                                                         ` David Kastrup
2011-08-10  0:24                                                                           ` Richard Stallman
2011-08-11  5:38                                                                         ` Stephen J. Turnbull
2011-08-09 22:26                                                                 ` Chong Yidong
2011-08-10  1:03                                                                   ` Stefan Monnier
2011-08-10  1:14                                                                     ` David Kastrup
2011-08-10  4:50                                                                       ` Eli Zaretskii
2011-08-10 16:07                                                                         ` Chong Yidong
2011-08-10 16:40                                                                           ` Eli Zaretskii
2011-08-10 16:52                                                                             ` Chong Yidong
2011-08-10 17:13                                                                               ` Eli Zaretskii
2011-08-11  2:45                                                                               ` Mohsen BANAN
2011-08-10  3:07                                                                     ` Eli Zaretskii
2011-08-10 13:20                                                                       ` Stefan Monnier
2011-08-10 13:39                                                                         ` Eli Zaretskii
2011-08-10  3:04                                                                   ` Eli Zaretskii
2011-08-10  5:36                                                                     ` David Kastrup
2011-08-10 13:22                                                                     ` Stefan Monnier
2011-08-17 22:21                                                           ` Lars Magne Ingebrigtsen
2011-08-17 22:25                                                             ` Lars Magne Ingebrigtsen
2011-08-17 23:14                                                               ` Lars Magne Ingebrigtsen
2011-08-18  7:23                                                                 ` Eli Zaretskii
2011-08-18  7:00                                                               ` Eli Zaretskii
2011-09-10 19:11                                                                 ` Lars Magne Ingebrigtsen
2011-09-10 19:30                                                                   ` Eli Zaretskii
2011-09-10 19:33                                                                     ` Lars Magne Ingebrigtsen
2011-08-06 15:51                                                       ` Lars Magne Ingebrigtsen
2011-08-06 16:16                                                         ` David Kastrup
2011-08-06 16:17                                                         ` Eli Zaretskii
2011-08-06 19:21                                                       ` Mohsen BANAN
2011-07-31 13:54                         ` Eli Zaretskii
2011-08-02 15:34                           ` Stefan Monnier
2011-08-02 16:09                             ` Lars Magne Ingebrigtsen
2011-08-02 16:42                               ` David Kastrup
2011-08-02 16:48                                 ` Lars Magne Ingebrigtsen
2011-08-02 18:27                                 ` James Cloos
2011-08-02 16:50                               ` Eli Zaretskii
2011-08-02 17:01                             ` Eli Zaretskii
2011-08-01 15:45         ` Chong Yidong
2011-08-01 17:44           ` Eli Zaretskii
2011-08-01 20:33             ` Lars Ingebrigtsen
2011-08-02  5:06               ` Eli Zaretskii
2011-08-02  7:20                 ` David Kastrup
2011-08-02  7:43                   ` Eli Zaretskii
2011-08-02 10:27                     ` Štěpán Němec
2011-08-02 11:33                       ` Eli Zaretskii
2011-08-02 13:37                 ` Lars Magne Ingebrigtsen
2011-08-02 17:10                   ` Eli Zaretskii
2011-08-02 17:35                     ` Lars Magne Ingebrigtsen
2011-08-02 19:44                       ` Eli Zaretskii
2011-08-03  3:04                         ` محسن بنان
2011-08-03  5:11                           ` James Cloos
2011-08-03  5:52                             ` Mohsen BANAN
2011-08-03  9:28                             ` Eli Zaretskii
2011-08-03 12:08                               ` James Cloos
2011-08-03 12:57                                 ` Eli Zaretskii
2011-08-03 13:06                                   ` James Cloos
2011-08-03 13:48                                     ` Eli Zaretskii
2011-08-03 14:10                                       ` James Cloos
2011-08-03 16:08                                         ` Eli Zaretskii
2011-08-03 17:20                                           ` Mohsen BANAN
2011-08-03  8:42                           ` Eli Zaretskii
2011-08-03 19:26                             ` main
2011-08-02 15:43           ` Stefan Monnier
  -- strict thread matches above, loose matches on Subject: below --
2011-08-15  8:04 Andrey Paramonov
2011-08-15  9:10 ` Eli Zaretskii
2011-08-15  9:24   ` David Kastrup
2011-08-15 10:20     ` Eli Zaretskii
2011-08-15 10:46       ` David Kastrup
2011-08-15 11:10         ` Eli Zaretskii
2011-08-15 11:27           ` David Kastrup
2011-08-15 11:56             ` Eli Zaretskii
2011-08-15 12:56               ` David Kastrup
2011-08-15 13:07                 ` Eli Zaretskii
2011-08-15 13:59     ` Stefan Monnier
2011-08-15 14:18       ` David Kastrup
2011-08-15 16:57         ` Stefan Monnier
2011-08-15 17:12         ` Eli Zaretskii
2011-08-15 16:55       ` Eli Zaretskii
2011-08-15 18:13         ` Stefan Monnier
2011-08-17 20:34           ` Lars Magne Ingebrigtsen
2011-08-18 16:14           ` Eli Zaretskii
2011-08-22  6:02             ` Eli Zaretskii
2011-08-22 19:35               ` Stefan Monnier
2011-08-23  8:05                 ` Eli Zaretskii
2011-08-23 18:19                   ` Stefan Monnier
2011-08-23 19:03                     ` Eli Zaretskii
2011-08-23 19:17                       ` Stefan Monnier
2011-08-24  6:35                         ` Eli Zaretskii
2011-08-24  9:02                         ` Eli Zaretskii
2011-08-24 14:51                           ` Stefan Monnier
2011-08-24 16:55                             ` Eli Zaretskii
2011-08-25  4:38                               ` Stefan Monnier
2011-08-25  6:12                                 ` Eli Zaretskii
2011-08-26  3:55                                   ` Stefan Monnier
2011-08-26  7:31                                     ` Eli Zaretskii
2011-08-27  2:53                                       ` Stefan Monnier
2011-08-27  8:16                                         ` Eli Zaretskii
2011-08-28  2:52                                           ` Stefan Monnier
2011-08-28  6:03                                             ` Eli Zaretskii
2011-08-29 14:46                                               ` Stefan Monnier
2011-08-25 10:50                                 ` Eli Zaretskii
2011-08-22 19:37               ` Stefan Monnier
2011-08-22 21:35                 ` Štěpán Němec
2011-08-23  1:13                   ` Stefan Monnier
2011-08-23  9:58                     ` Štěpán Němec
2011-08-23 18:24                       ` Stefan Monnier
2011-08-23 19:14                         ` Štěpán Němec
2011-08-23  8:40                 ` Eli Zaretskii
2011-08-15 18:28         ` Chong Yidong
2011-08-15 20:41           ` Eli Zaretskii
2011-08-16  1:11             ` Stefan Monnier
2011-08-16  2:02             ` Chong Yidong
2011-08-16  6:47               ` Eli Zaretskii
2011-08-16  7:07                 ` David Kastrup
2011-08-16  9:25                   ` Eli Zaretskii
2011-08-16 10:01                     ` David Kastrup
2011-08-16 10:37                       ` Eli Zaretskii
2011-08-16  7:40                 ` Andreas Schwab
2011-08-16  7:54                   ` David Kastrup
2011-08-16  9:20                     ` Eli Zaretskii
2011-08-16  9:40                       ` David Kastrup
2011-08-16 10:01                         ` Eli Zaretskii
2011-08-16 14:10                           ` Stefan Monnier
2011-08-16  9:03                   ` Eli Zaretskii
2011-08-16  9:10                     ` Andreas Schwab
2011-08-16  9:55                       ` Eli Zaretskii
2011-08-16  9:03                   ` Eli Zaretskii
2011-08-16 14:03                 ` Stefan Monnier
2011-08-16 14:48                   ` Eli Zaretskii
2011-08-16 15:48                 ` Chong Yidong
2011-08-16 17:50                   ` Eli Zaretskii
2011-08-16 22:24                     ` Chong Yidong
2011-08-17  6:30                       ` Eli Zaretskii
2011-08-17  9:34                         ` Juri Linkov
2011-08-17 10:05                           ` Eli Zaretskii
2011-08-17 22:32                         ` Chong Yidong
2011-08-18  8:21                           ` Eli Zaretskii
2011-08-18 17:13                             ` Chong Yidong
2011-08-18 17:45                               ` Eli Zaretskii
2011-08-18 22:44                                 ` Chong Yidong
2011-08-19  3:16                                   ` Stefan Monnier
2011-08-19  7:25                                     ` Eli Zaretskii
2011-08-19 20:00                                       ` Chong Yidong
2011-08-19 19:29                                     ` Chong Yidong
2011-08-19  7:13                                   ` Eli Zaretskii
2011-08-19 19:43                                     ` Chong Yidong
2011-08-20  7:39                                       ` Eli Zaretskii
2011-08-19 14:51                                   ` Lars Magne Ingebrigtsen
2011-08-19 15:12                                     ` Eli Zaretskii
2011-08-15  9:27   ` Andrey Paramonov
2011-08-16 10:02 Andrey Paramonov
2011-08-16 10:40 ` Eli Zaretskii
2011-08-16 11:27   ` Andrey Paramonov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=E1QnRvn-0003vA-HI@fencepost.gnu.org \
    --to=eliz@gnu.org \
    --cc=dak@gnu.org \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).