From fb0024b8301a612926beca585cc36f4b2dd5d479 Mon Sep 17 00:00:00 2001 From: Luke Stein <44452336+lukestein@users.noreply.github.com> Date: Mon, 19 Jan 2026 09:19:16 -0500 Subject: [PATCH 1/2] fix: include ellipsis and several additional punctuation characters for explicit hyphen detection --- lib/Epub/Epub/hyphenation/HyphenationCommon.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/Epub/Epub/hyphenation/HyphenationCommon.cpp b/lib/Epub/Epub/hyphenation/HyphenationCommon.cpp index 99584fde..4c02266d 100644 --- a/lib/Epub/Epub/hyphenation/HyphenationCommon.cpp +++ b/lib/Epub/Epub/hyphenation/HyphenationCommon.cpp @@ -125,6 +125,12 @@ bool isExplicitHyphen(const uint32_t cp) { case 0xFE58: // small em dash case 0xFE63: // small hyphen-minus case 0xFF0D: // fullwidth hyphen-minus + case 0x002F: // Solidus (slash) + case 0x005C: // Backslash + case 0x005F: // Underscore + case 0x00B7: // Middle dot + case 0x2026: // Ellipsis + case 0x22EF: // Midline horizontal ellipsis return true; default: return false; From fdcb587e382f84beb138fbdca53d35c6a0891246 Mon Sep 17 00:00:00 2001 From: Luke Stein <44452336+lukestein@users.noreply.github.com> Date: Wed, 21 Jan 2026 07:59:20 -0500 Subject: [PATCH 2/2] Remove allowing break after slash (solidus) to protect dates --- lib/Epub/Epub/hyphenation/HyphenationCommon.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/Epub/Epub/hyphenation/HyphenationCommon.cpp b/lib/Epub/Epub/hyphenation/HyphenationCommon.cpp index 4c02266d..a7f312da 100644 --- a/lib/Epub/Epub/hyphenation/HyphenationCommon.cpp +++ b/lib/Epub/Epub/hyphenation/HyphenationCommon.cpp @@ -125,7 +125,6 @@ bool isExplicitHyphen(const uint32_t cp) { case 0xFE58: // small em dash case 0xFE63: // small hyphen-minus case 0xFF0D: // fullwidth hyphen-minus - case 0x002F: // Solidus (slash) case 0x005C: // Backslash case 0x005F: // Underscore case 0x00B7: // Middle dot