all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: rms@gnu.org
Cc: emacs-bidi@gnu.org, emacs-devel@gnu.org
Subject: Re: Bidirectional editing in Emacs -- main design decisions
Date: Sun, 11 Oct 2009 22:12:54 +0200	[thread overview]
Message-ID: <838wfhk7uh.fsf@gnu.org> (raw)
In-Reply-To: <E1MwtzW-000711-74@fencepost.gnu.org>

> From: Richard Stallman <rms@gnu.org>
> CC: emacs-devel@gnu.org, emacs-bidi@gnu.org
> Date: Sun, 11 Oct 2009 04:41:22 -0400
> 
> move-to-left-margin shows what it means to be at the left margin.
> It is a matter of matching the paragraph regexps after the right
> amount of whitespace as specified by the value of `left-margin'.

Would it be sufficient to account for any arbitrary amount of
horizontal whitespace between the beginning of the line and the
paragraph regexps?  If so, that is an almost trivial modification of
the code I already have.

My problem was with potentially more complicated situations, since
paragraph regexps may in principle be anything.

I also have issues with a paragraph that is separated from the
previous one by just the amount of indentation, like this:

  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
          bbbbbbbbbbbbbbbbbbbbbbbbbbbb
          bbbbbbbbbbbbbbbbbbbbbbbbbbbb

Are you suggesting that Emacs should recompute the paragraph direction
of the two lines with b's, and the result could be a different base
direction from that used by the two preceding lines with a's?  I think
that such direction changes will annoy users of bidirectional scripts.
What are the use-cases where such paragraphs are useful?

> When `left-margin' is nonzero, a line which fails to start with that much
> whitespace also starts a paragraph.

You mean, a line which starts with more indentation, or a line that
starts with less?  Like this:

      aaaaaaaaaaaaaaaaaaaaaa
      aaaaaaaaaaaaaaaaaaaaaa
  xxxxxxxxxxxxxxxxxxxxxxxxxx
      yyyyyyyyyyyyyyyyyyyyyy

Should the "xxx" line be considered a new paragraph?

> To be fully correct, it ought to detect paragraphs correctly when
> `left-margin' is nonzero.  I think that won't be hard to do.

Maybe it will be not hard -- once I make move-to-column,
current-column, and the rest of indent.c work with bidirectional
text.  Right now, it's badly broken, because it assumes buffer
positions increase linearly with screen positions.  Even vertical
cursor motion and C-e does not work correctly, because of that.

  reply	other threads:[~2009-10-11 20:12 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-09 21:18 Bidirectional editing in Emacs -- main design decisions Eli Zaretskii
2009-10-09 21:55 ` joakim
2009-10-09 22:29   ` Eli Zaretskii
2009-10-09 22:42     ` joakim
2009-10-10  7:08       ` Eli Zaretskii
2009-10-10  7:28         ` joakim
2009-10-10  8:20           ` Eli Zaretskii
2009-10-09 22:41 ` Eli Zaretskii
2009-10-10  9:16   ` Richard Stallman
2009-10-10 11:38     ` Eli Zaretskii
2009-10-11  8:41       ` Richard Stallman
2009-10-11 20:12         ` Eli Zaretskii [this message]
2009-10-11 21:11           ` Eli Zaretskii
2009-10-12 10:11           ` Richard Stallman
2009-10-12 18:40             ` Eli Zaretskii
2009-10-10 13:44 ` Sascha Wilde
2009-10-10 14:06   ` Eli Zaretskii
2009-10-10 15:54     ` Sascha Wilde
2009-10-10 14:57 ` Ehud Karni
2009-10-10 16:38   ` Eli Zaretskii
2009-10-10 15:13 ` Jason Rumney
2009-10-10 16:06   ` Eli Zaretskii
2009-10-10 16:29     ` Jason Rumney
2009-10-10 17:18 ` James Cloos
2009-10-10 18:33   ` Eli Zaretskii
2011-04-18 14:54 ` Eli Zaretskii
2011-04-19 13:11   ` Stefan Monnier
2011-04-19 16:02     ` Eli Zaretskii
2011-04-20  3:15       ` Stefan Monnier
2011-04-25 17:31       ` Mohsen BANAN
2011-04-25 17:58         ` Eli Zaretskii
2011-04-25 18:44           ` Mohsen BANAN
2011-04-25 18:59             ` Eli Zaretskii
2011-04-25 21:31               ` Now: Paragraph Direction Detection and Harmonization -- Was: " Mohsen BANAN
2011-04-25 22:00                 ` Eli Zaretskii
2011-04-26  7:56                   ` Mohsen BANAN
2011-04-26 18:05                     ` Eli Zaretskii
2011-04-27 21:58                       ` Now: Paragraph Direction Detection and Harmonization Mohsen BANAN
2011-04-26 18:24                   ` Mohsen BANAN
2011-04-26 19:23                     ` Eli Zaretskii
2011-04-26  1:22                 ` Now: Paragraph Direction Detection and Harmonization -- Was: Re: Bidirectional editing in Emacs -- main design decisions Stephen J. Turnbull
2011-04-28  0:52           ` Requesting instructions for enabling bidi by default Mohsen BANAN
2011-04-28  1:21             ` Juanma Barranquero

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

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

  git send-email \
    --in-reply-to=838wfhk7uh.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=emacs-bidi@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=rms@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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.