Bug 53312 - Combining diacritics doubling characters
Summary: Combining diacritics doubling characters
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: graphics stack (show other bugs)
Version:
(earliest affected)
unspecified
Hardware: Other Windows (All)
: high major
Assignee: Not Assigned
URL:
Whiteboard: target:5.3.0
Keywords:
: 78206 88231 94317 (view as bug list)
Depends on: HarfBuzz
Blocks: Font-Rendering 54267
  Show dependency treegraph
 
Reported: 2012-08-10 02:13 UTC by Urmas
Modified: 2016-11-05 22:41 UTC (History)
9 users (show)

See Also:
Crash report or crash signature:


Attachments
Screenshot (1.09 KB, image/png)
2012-08-10 02:13 UTC, Urmas
Details
clip of attachment 118940 rendered with HarfBuzz common layout (79.66 KB, image/png)
2016-11-05 04:43 UTC, V Stuart Foote
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Urmas 2012-08-10 02:13:05 UTC
Created attachment 65364 [details]
Screenshot

Combining diacritics cause the base symbol to be shown doubled and with abnormal height.
Comment 1 Urmas 2012-09-07 10:14:35 UTC
*** Bug 54267 has been marked as a duplicate of this bug. ***
Comment 2 skadish1 2012-09-11 07:44:56 UTC
Hi, the bug I uploaded was marked as a duplicate of this one:
https://bugs.freedesktop.org/show_bug.cgi?id=54267

Just want to note that the duplicate contains extensive description of the problem and attachments that show what it does vividly (versus this page which is quite sparse). So to understand the bug please read the discussion at the duplicate.

I've changed the importance here to "high" because the program basically cannot be used for documents in languages that include diacriticals (whether Cyrillic as in the example here or RTL as in the examples on the duplicate bug page).

It would be great to get some positive feedback on this. In the meantime it isn't pleasant having to use Google Docs, which is greatly inferior to LibreOffice.
Comment 3 leighman 2012-09-15 21:37:57 UTC
Confirmed in master d7515f6

CC caolan for fonts
Comment 4 LRN 2012-11-15 18:05:28 UTC
I've experienced this bug as well (looks exactly the same way Urmas' screenshot shows).

Also might have found a workaround. I'll describe what i did, and let you sort it out.

1) I type in some cyrillic text (using Times New Roman 14, character style is Default, paragraph style is Plaintext).
2) I need to put an accent over a letter. I go into Insert->Special Character, choose "Combining Diacritical Marks", select U+0301, and press OK.
3) I experience the bug: the original letter i wanted to accent remains unaccented, however next to it (to the right, overlapping with the original letter) an accented variant is drawn. Duplicate, however, causes extra space to appear, as if it was a normal letter. Because of that, not only duplicate overlaps with the original, being shifted to the left, but there's a highly visible space to the right of it (wide enough to look like a real space).
Moving cursor by keyboard around the letter does not allow me to separate the letters - i can set cursor to be either before the original letter, or after the accented duplicate (that is, LO thinks them to be single entity).
However, with mouse i can select either the original letter only (setting the cursor before the original, pressing LMB and drawing to the right until the original is selected) or the duplicate only (setting the cursor after the original and the duplicate, pressing LMB and drawing to the left). Note that "select the duplicate" might sound misleading, as the selection is drawn in a space that _would_ have encompassed the duplicate, if duplicate wasn't shifted to the left to overlap with the original letter. That space captures the duplicate only partially.
4) If i select the original and cut it, U+0301 character is left there, and applies to the letter before the original one. If the original was the leftmost letter, U+0301 is actually drawn the same way it is in the character table.
If i select the duplicate and cut it, duplicate is removed, and i get to where i was initially, the (1).
If i paste the duplicate that i just cut out, duplicate reappears (that is, the character that i selected and cut was the U+0301 itself).

Now, the workaround:
1) Select the U+0301
2) Change paragraph style to Default (for selection -> for the whole paragraph selected character is in)
3) Rightclick on the selected character, Clear Direct Formatting
4) Cut the selected U+0301 character.
5) Undo, until you get to where you started
6) Delete the letter you were trying to put accent on (i.e. press Backspace)
7) Type the letter again
8) Paste the U+0301 character back.
9) Observe that accent works as intended this time (no duplicates).

(5) is not really necessary - the character that you cut out can be pasted anywhere, and will work correctly. But you, presumably, don't want to give the paragraph Default style, so we cancel.
(6) and (7) is because the character in the buffer will work everywhere - except on the original letter you were trying to accent. You need to remove it and type it in again.

If you select the original letter, as well as U+0301, the U+0301 character will apply cleanly to the original letter the moment you clear direct formatting, and you would not be able to select and cut it (well, actually, you can - if you paste it as the leftmost character in a paragraph, you'll be able to select it with SHIFT+Left).

The character in the buffer will remain valid as long as soffice is running. If you kill it and restart it again, you'll have to do the workaround again.
Comment 5 Linus Drumbler 2013-02-20 22:01:48 UTC
REPRODUCIBLE on Windows 7, LibreOffice 4.0.0 portable.
Comment 6 Linus Drumbler 2013-02-20 22:02:49 UTC
Another workaround is to type both the base and the combining character using the Insert Special Characters dialogue, which will insert both normally. Still, this should really be fixed.
Comment 7 Urmas 2013-02-21 08:06:02 UTC
Apparently the diacritic is doubled when there is a span style change between the base character and it. The extra space is caused by the span style change after diacritic and following text.
Comment 8 Linus Drumbler 2013-02-25 23:58:30 UTC
Version changed to unspecified, since it does not appear to be unique.
Comment 9 Regina Henschel 2014-07-22 00:46:48 UTC
*** Bug 78206 has been marked as a duplicate of this bug. ***
Comment 10 Urmas 2015-01-09 17:10:37 UTC
*** Bug 88231 has been marked as a duplicate of this bug. ***
Comment 11 Yan Pas 2015-01-10 19:40:29 UTC
3 years passed. Nothing changed. There is even still no way to disable ligatures. It's a pitty
Comment 12 Phil Krylov 2016-02-07 13:00:07 UTC
I can't reproduce it now. Most combining diacritics issues appear to be fixed for me in this build:

Version: 5.0.4.2
Build ID: 2b9802c1994aa0b7dc6079e128979269cf95bc78
Locale: en-US (en.UTF-8)
OS X
Comment 13 Yan Pas 2016-02-07 13:15:09 UTC
Notice that it is windows-only bug, and you was testing it on OS X
Comment 14 Phil Krylov 2016-02-07 13:23:27 UTC
(In reply to Yan Pashkovsky from comment #13)
> Notice that it is windows-only bug, and you was testing it on OS X

Yes, but I have seen it under OS X in earlier versions, and now it's disappeared.
Comment 15 Phil Krylov 2016-02-07 13:25:09 UTC
*** Bug 94317 has been marked as a duplicate of this bug. ***
Comment 16 Maroussia73 2016-08-07 15:26:41 UTC
I have this problem since I'm using libreoffice, OR openoffice, on windows XP, 7, 10 and the bug IS STILL NOT FIXED !

It's absolutely critical for me and for many people who need to write cyrillic with accents. 
Please do something...
Comment 17 Phil Krylov 2016-08-07 16:24:09 UTC
(In reply to Maroussia73 from comment #16)
> I have this problem since I'm using libreoffice, OR openoffice, on windows
> XP, 7, 10 and the bug IS STILL NOT FIXED !
> 
> It's absolutely critical for me and for many people who need to write
> cyrillic with accents. 
> Please do something...

We are all waiting until Bug 89870 is fixed and merged in release... Hopefully soon.
Comment 18 Maroussia73 2016-08-08 20:47:28 UTC
Thank you Phil for your answer. I've red the bug report you are refering to, but I'm not sure I understand it well.
"On Windows 10 LO 5.0.x can access 'liga' and 'kern' feature, but in LO 5.1.1 they are “disabled”, what’s wrong?"
Does it means that version "Windows 10 LO 5.0.x" did NOT have the bug? If so, I would be happy to retrograde for a while... 
If there is even ONE version of LO, even old, that does NOT have the bug...
Comment 19 Maroussia73 2016-08-08 22:23:39 UTC
... Unfortunately, no. The bug is present in 5.0.6 and even in 5.0.2.4   :(
Comment 20 Maroussia73 2016-08-08 22:25:02 UTC
(In reply to Maroussia73 from comment #19)
> ... Unfortunately, no. The bug is present in 5.0.6 and even in 5.0.4.2   :(
Comment 21 Maroussia73 2016-08-08 22:25:22 UTC Comment hidden (obsolete)
Comment 22 Phil Krylov 2016-08-08 22:45:35 UTC
(In reply to Maroussia73 from comment #18)
> Thank you Phil for your answer. I've red the bug report you are refering to,
> but I'm not sure I understand it well.
> "On Windows 10 LO 5.0.x can access 'liga' and 'kern' feature, but in LO
> 5.1.1 they are “disabled”, what’s wrong?"
> Does it means that version "Windows 10 LO 5.0.x" did NOT have the bug? If
> so, I would be happy to retrograde for a while... 
> If there is even ONE version of LO, even old, that does NOT have the bug...

No, the bug description says "Unify text layout to use HarfBuzz on all platforms". It means that the bug with double glyph rendering will be fixed as soon as LibreOffice starts using HarfBuzz text layout engine on Windows.
Comment 23 Maroussia73 2016-08-11 13:10:07 UTC
> No, the bug description says "Unify text layout to use HarfBuzz on all
> platforms". It means that the bug with double glyph rendering will be fixed
> as soon as LibreOffice starts using HarfBuzz text layout engine on Windows.

Thank you for the answer. Well, as I need to use these diacritics for my courses now, I bought another 4 years academic subscribtion to Microsoft Office :( 
Maybe within 4 years the bug will be fixed. Maybe...
Comment 24 ⁨خالد حسني⁩ 2016-11-04 12:53:58 UTC
I need a test file to check if this is fixed or not.
Comment 25 V Stuart Foote 2016-11-05 04:42:12 UTC
See attachment 118940 [details] from duplicate bug 94317

This is resolved fixed.
Comment 26 V Stuart Foote 2016-11-05 04:43:37 UTC
Created attachment 128503 [details]
clip of attachment 118940 [details] rendered with HarfBuzz common layout
Comment 27 Maroussia73 2016-11-05 22:04:45 UTC
Resolved??? Hooorah !!!
When the version of Openoffice without bug will be available?
Comment 28 V Stuart Foote 2016-11-05 22:30:40 UTC
(In reply to Maroussia73 from comment #27)
> Resolved??? Hooorah !!!
> When the version of Openoffice without bug will be available?

Available for developmental testing already in nightly development builds.

Will release at LibreOffice 5.3.0 (~ 30 January 2017) with beta1 available (~21 November 2016).

=-ref-=
[1] http://dev-builds.libreoffice.org/daily/master/
[2] https://wiki.documentfoundation.org/ReleasePlan/5.3
Comment 29 Maroussia73 2016-11-05 22:41:58 UTC
(In reply to V Stuart Foote from comment #28)
> (In reply to Maroussia73 from comment #27)
> > Resolved??? Hooorah !!!
> > When the version of Openoffice without bug will be available?
> 
> Available for developmental testing already in nightly development builds.
> 
> Will release at LibreOffice 5.3.0 (~ 30 January 2017) with beta1 available
> (~21 November 2016).
> 
> =-ref-=
> [1] http://dev-builds.libreoffice.org/daily/master/
> [2] https://wiki.documentfoundation.org/ReleasePlan/5.3

Great ! Fingers crossed !