[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Highlighting cursor for char before
From: |
Eli Zaretskii |
Subject: |
Re: Highlighting cursor for char before |
Date: |
Wed, 27 Oct 2021 22:04:49 +0300 |
> From: Alexandre Garreau <galex-713@galex-713.eu>
> Cc: emacs-devel@gnu.org
> Date: Wed, 27 Oct 2021 20:49:47 +0200
>
> To me, in LTR, currently with the current behavior, in both insert and
> ovrwt mode, that block is underlining “the place where will appear the
> character I type” (first assertion), and that’s its meaning. It also
> underlines the character that will be deleted if I press Suppr or C-d
> (second assertion), but since most of the time I use DEL, that’s
> irrelevant, because the character that would be deleted if I press DEL is
> not the one underlined.
>
> In RTL, currently, the second assertion holds, but the first doesn’t…
Only if you type RTL text inside a paragraph whose base direction is
left-to-right. If you type RTL text in a paragraph with right-to-left
base direction, both assertions hold.
> > It is complex, yes. That's what I tried to explain.
>
> Isn’t it just a matter of taking the current behavior and reversing the
> way the block is drawed compared to the cursor position (the position
> between two chars that we would see if the cursor was just a line)?
I don't think I understand what you mean by "reversing" here. The
function that decides where to draw the cursor is set-cursor_from_row;
please study it before talking about these details, because otherwise
we won't have a common understanding on which to build any meaningful
discussion.
> and still: is that in xdisp.c?
Most of it, yes.
> > And I don't think it makes sense to display the cursor on the
> > character before point, because it will be terrible in bidirectional
> > context.
>
> Why so?
Because no other program does that.