On OS-X/Mac (in natively based Cocoa text) the problem is solved by having a "split caret".
In situations where the logical position of the insertion point between characters map to two locations (in the rendered text) -- e.g. at the boundary of a RTL/LTR block, the "usual" line-high vertical insertion bar is visually split into a top-half that indicates where LTR text will (appear to visually) be inserted and a bottom-half that indicates where RTL text will (appear to visually be) inserted. That is the caret simultaneously occupies two positions in the rendering.
On Nov 12, 2012, at 2:19 PM, Philippe Verdy <verdy_p_at_wanadoo.fr> wrote:
> Carets in bidirectional texts CAN be oriented (meaning that they are not necessarily BETWEEN characters, but possibly BEFORE and/or AFTER them).
>
> Have you seen how the caret behaves in Java applications ? It shows an extra triangular arrow head, oriented to the left or right, and connected to the top of the vertical line. And it is then really appearing NEARBY the character it designates in the indicated direction.
>
> For more complex scripts, the form of the caret could be more complex (if we could position within an Hangul syllabic square, it would have to take the form of a corner indicating where in the composition square is the previous character, the corner being at the position where the syllable will be modified by the insertion of an additional character.
>
> Carets are not necessarily a simple line or block.
>
> 2012/11/12 QSJN 4 UKR <qsjn4ukr_at_gmail.com>
> I have a little advise for the text editor designers. I think i am
> either the stupidest or the smartest man in the universe if i write it
> :(
> A caret is a flashing line, block, or other picture in the client area
> of a window, it indicates the place (between two characters) at which
> text will be inserted (or the edge of the text to be selected or
> deleted). What does it mean? Between? There is no "between" in the
> bidirectional text, the previous and the next character are not
> necessary nearby!
Received on Mon Nov 12 2012 - 14:03:13 CST
This archive was generated by hypermail 2.2.0 : Mon Nov 12 2012 - 14:03:14 CST