Bug 139224 - words with zero-width non-joiners are marked as spelling errors
Summary: words with zero-width non-joiners are marked as spelling errors
Status: RESOLVED NOTABUG
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
6.4.3.2 release
Hardware: All Windows (All)
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: ZWNJ-ZWJ
  Show dependency treegraph
 
Reported: 2020-12-25 15:13 UTC by douglas mcilroy
Modified: 2022-11-10 12:13 UTC (History)
1 user (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description douglas mcilroy 2020-12-25 15:13:19 UTC
Description:
Splitting a ligature by inserting U+200C (zero width non-joiner) causes the word to be marked as a spelling error. This is understandable, but not helpful for spelling.

Comment: the marking does warn that the word will contain garbage if saved as .txt. That behavior on saving also seems unhelpful. Neither behavior is WYSIWIG.


Steps to Reproduce:
1.In Times New Roman font type "flower box"
2.Split the "fl" ligature by inserting U+200C
3.Click the cursor on "box"

Actual Results:
1. screen looks normal
2. screen looks normal
3. "flower" is marked as a misspelling

Expected Results:
No change in screen. 




Reproducible: Always


User Profile Reset: No



Additional Info:
[Information automatically included from LibreOffice]
Locale: en-US
Module: TextDocument
[Information guessed from browser]
OS: Windows (All)
OS is 64bit: no  -- Weird. System Settings says "64 bit operating system"
ABOUT LIBRE OFFICE
Version: 6.4.3.2 (x64)
Build ID: 747b5d0ebf89f41c860ec2a39efd7cb15b54f2d8
CPU threads: 2; OS: Windows 10.0 Build 19041; UI render: default; VCL: win; 
Locale: en-US (en_US); UI-Language: en-US
Calc: CL
Comment 1 Martin Srdoš 2020-12-29 18:34:26 UTC
Hello Douglas,

Thank you for reporting the bug.
I can't confirm the bug. After split by 200c spell check don't see a mistake. It seems you're using an old version of LibreOffice.
Could you please try to reproduce it with the latest version of LibreOffice
from https://www.libreoffice.org/download/libreoffice-fresh/ ?
I have set the bug's status to 'NEEDINFO'. Please change it back to
'UNCONFIRMED' if the bug is still present in the latest version.
Comment 2 douglas mcilroy 2020-12-29 22:50:41 UTC
I installed 7.0.4.2 and see the same behavior for the word "f?lower", where ? designates U+200C. Spell check flags it.

However, I now realize that my belief that "fl" with no insertion was a ligature is incorrect--a perception from a screen of insufficient resolution. 

A Help query about "ligature" comes up empty; and ligatures are not listed among Autocorrect features. I do not see a ligature arise from typing "flower". So I wonder whether LO ever produces a ligature automatically. If not, my reason for inserting a zero-width character evaporates, taking my complaint with it.
Comment 3 Martin Srdoš 2020-12-30 07:55:48 UTC
Today, it works like you say. With the 200c splitter there is the red wave underline. (there is more bugs about spell checking in bugzilla, and clicking cursor for the next word was not enough)
But, isn't it correct? If there is space (which is not visible, but it is there), then there is two words...
For me is problem that the "Toggle formating marks" don't see it.
By the way, in which sense someone use the 200c splitter?
What do you think about this?

So, I reproduced it in
Version: 7.2.0.0.alpha0+ (x64)
Build ID: c0eee433e079d8e3413f4691607e075b99af92b0
CPU threads: 4; OS: Windows 10.0 Build 19042; UI render: Skia/Raster; VCL: win
Locale: cs-CZ (cs_CZ); UI: en-US
Calc: threaded
Comment 4 QA Administrators 2021-06-29 03:48:46 UTC Comment hidden (obsolete)
Comment 5 douglas mcilroy 2021-07-11 16:38:24 UTC
I have become convinced that Libre Office does not make ligatures. That implies that I was chasing ghosts and, as I said in the last sentence of comment #3, my complaint is unwarranted. I deem it resolved.