|
From: maxwell <ma...@um...> - 2012-08-23 21:03:17
|
I've been using jEdit for several years now, and recently I'm noticing a changed behavior when editing Unicode (UTF-8) files. Specifically, the cursor used to treat combining characters (like accent marks--U+0301 "Combining Acute Accent", for example) as separate characters. That is, if I had a sequence of a base character + combining character, the cursor would treat each separately: I could select one or the other, run the "Display Character Code" on each one individually, delete one or the other individually, etc. Now only the separate deletion works, and that only for the <Backspace> key (assigned to "Delete Previous Character", not the <Delete> key (assigned to "Delete Next Character"). That is, the <Backspace> key will remove the diacritic, but it's not possible to use the <Delete> key to remove the base character, leaving the diacritic behind. I have verified that this is *not* a situation where the character in question is actually a Unicode precomposed character. For example, if I do "Display Character Code" on an 'a' + combining acute, I get U+0061 (ASCII 'a'), not U+00E1. Further, if I type a space character and then a combining acute, the combining acute appears on screen, but pressing the <Delete> key with the cursor positioned to the left of the space character deletes *both* the space character and the following acute. And the acute character is not "visible" to the "Display Character Code" unless it's the only character on the line. I don't see any option in the Utilities | Global Options dialog that would change this. In particular, changing the "Edit mode" in the "Buffer Options" dialog box from "text" to "perl" to "c++" doesn't change this behavior (I haven't tried all the other modes, but I doubt they'd make a difference). This incorrect behavior occurs using jEdit v4.5.1, Java 1.6.0_33, and Windows 7. The behavior is correct (the combining characters are treated correctly, as individual characters) in jEdit v4.5pre1 under Linux (KDE). I don't have any easy way to compare the behavior of 4.5.1 vs. 4.5pre1 on the same OS, nor 4.5.1 (not pre) on Windows vs. Linux. I guess if someone can compare 4.5.1 with 4.5pre1 on the same OS, or 4.5.1 on two different OSs, this would at least help find where the problem is. Mike Maxwell |