office-gobmx/linguistic
László Németh 3a332d9f1c tdf#158885 cui offapi sw xmloff: fix hyphenation at stem boundary
Add new hyphenation option "Compound characters at line end",
equivalent of libhyphen's COMPOUNDLEFTHYPHENMIN, to limit bad
pattern based hyphenation of compound words using morphological
analysis of Hunspell.

* Add checkbox to Text Flow in paragraph formatting dialog window
* Store property in paragraph model:
  css::style::ParagraphProperties::ParaHyphenationCompoundMinLeadingChars
* Add ODF import/export (loext:hyphenation-compound-remain-char-count)
* Add ODF unit tests

Note: slower Hunspell based hyphenation is used only if
ParaHyphenationCompoundMinLeadingChars >= 3 (we assume that
libhyphen hyphenation patterns cover the smaller distances
correctly). Hunpell based hyphenation doesn't introduce
new hyphenation breaks, only detects the stem boundaries
from the libhyphen based hyphenation breaks.

Follow-up to commit c899d3608d
"tdf#158885 sw: don't hyphenate right after a stem boundary",
replacing hyphenation zone dependence with the new "Compound
characters at line end".

Note: preset COMPOUNDLEFTHYPHENMIN values aren't loaded yet
from hyphenation dictionaries.

Note: the suffix of the last stem of the compound is always
hyphenated, i.e. the distance limits only hyphenation
inside the stem, not inside its suffix or at the end of the
stem before the suffix.

Change-Id: I46a0288929a66f7453e3ff97fbc5a0c6a01f038f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164983
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
2024-03-20 13:04:09 +01:00
..
inc
qa Extended loplugin:ostr: linguistic 2023-11-20 07:26:24 +01:00
source tdf#158885 cui offapi sw xmloff: fix hyphenation at stem boundary 2024-03-20 13:04:09 +01:00
workben remove deprecated IsGermanPreReform property 2024-03-06 07:56:50 +01:00
CppunitTest_linguistic_restprotocol.mk Use officecfg instead of SvxLanguageToolOptions 2023-03-09 19:36:57 +00:00
IwyuFilter_linguistic.yaml Recheck modules [i-l]* with IWYU 2022-01-27 18:52:16 +01:00
JunitTest_linguistic_complex.mk
JunitTest_linguistic_unoapi.mk
Library_lng.mk officecfg,*: add Office::Security::Net::AllowInsecureProtocols 2023-11-09 16:51:31 +01:00
Makefile
Module_linguistic.mk linguistic: add REST API protocol unit test 2023-02-01 13:39:03 +00:00
README.md

Linguistics Components Manager

linguistic module handles the registered modules for spellchecker, hyphenator and thesaurus.