----- Forwarded message from [EMAIL PROTECTED] -----

To: Paul Rohr <[EMAIL PROTECTED]>
Cc: [EMAIL PROTECTED]
Subject: Re: selections and combining characters
References: <[EMAIL PROTECTED]>
From: Havoc Pennington <[EMAIL PROTECTED]>
Date: 23 Apr 2002 23:35:39 -0400
In-Reply-To: <[EMAIL PROTECTED]>
Message-ID: <[EMAIL PROTECTED]>
Lines: 30
User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.1
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii


Paul Rohr <[EMAIL PROTECTED]> writes:
> For the sake of completeness, I should also ask:
> 
>   How should selections work for combining characters?
>

It sure makes sense to me to take the Pango implementation and use it,
so that AbiWord document selections won't work randomly differently
than those in the dialogs and other widgetry. ;-)

IIRC basically Pango uses grapheme boundaries as defined by the
Unicode spec (I implemented all the horrible text boundary
algorithms), and then allows language-specific engines to override.
PangoLogAttr::is_cursor_position is the right flag I think.

The language-specific engines are the part that will in particular
suck massively if AbiWord reimplements them, because it will create
all kinds of weird little behavior differences between AbiWord
document area and the widgets in the dialogs and other apps.

Conceivably you want to use the Windows Uniscribe stuff or whatever on
win32 in addition to using Pango on UNIX, with the same rationale, but 
that could be challenging to impossible to implement, I haven't looked
into it...

Anyhow if nothing else there are several threads on this topic in the
gtk-devel-list or gtk-i18n-list archives I'm pretty sure.

Havoc

----- End forwarded message -----

Reply via email to