We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issue
Relates to #2017 regarding the hard-coded minWord = 5 value, but it's however a different type of issue here:
minWord = 5
The logic is not UTF-8 compliant:
sile/core/hyphenator-liang.lua
Lines 58 to 63 in b2cc084
string.len
hyphenationmin
text:lower()
string.lower
SU.map
Proofs / Minimal examples
The second case here, with minWord at 6, would be expected not to hyphenate "léris":
> SILE.showHyphenationPoints("léris", "fr") lé-ris > SILE._hyphenators["fr"].minWord 5 > SILE._hyphenators["fr"].minWord = 6 > SILE.showHyphenationPoints("léris", "fr") lé-ris > -- OOPS. "léris" is 5-character long (but 6-byte long) > SILE._hyphenators["fr"].minWord = 7 > SILE.showHyphenationPoints("léris", "fr") léris
We override a pattern below, but it doesn't work with an uppercase input (bypassing the exception).
> SILE.call("hyphenator:add-exceptions", { lang="fr" }, { "légè-rement" })% Override as exception > SILE.showHyphenationPoints("légèrement", "fr") légè-rement > SILE.showHyphenationPoints("LÉGÈREMENT", "fr") LÉGÈ-RE-MENT > -- OOPS, expected "LÉGÈ-REMENT"
The text was updated successfully, but these errors were encountered:
Successfully merging a pull request may close this issue.
Issue
Relates to #2017 regarding the hard-coded
minWord = 5
value, but it's however a different type of issue here:The logic is not UTF-8 compliant:
sile/core/hyphenator-liang.lua
Lines 58 to 63 in b2cc084
string.len
is not UTF8-safe, so the minWord value is likely not honored as it oughthyphenationmin
text:lower()
is not UTF8-safestring.lower
call a bit later in aSU.map
(... and aren't we performing the lowercase operation again?somehow acceptable)Proofs / Minimal examples
The second case here, with minWord at 6, would be expected not to hyphenate "léris":
We override a pattern below, but it doesn't work with an uppercase input (bypassing the exception).
The text was updated successfully, but these errors were encountered: