Skip to content
New issue

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

Default_Ignorable_Code_Point in hyphenation? #230

Open
sommerluk opened this issue Nov 23, 2016 · 1 comment
Open

Default_Ignorable_Code_Point in hyphenation? #230

sommerluk opened this issue Nov 23, 2016 · 1 comment

Comments

@sommerluk
Copy link

Some characters in Unicode have the property Default_Ignorable_Code_Point. This includes characters like the ZWNJ zero width non-joiner U+200C. Most format characters have this property. With CTL and OpenType support available in Scribus, the usage of these characters will increase.

These characters have yet a special treatment in spell checking since #215. The question is how to treat these characters in hyphenation. Currently, the automatic hyphenation does not work as expected when characters like ZWNJ are present. Example: The German word “Auflage” should be hyphenated “Auf-la-ge”, and this works correctly in Scribus when no ZWNJ is there. But when there is a ZWNJ between “Auf” and “lage” then the first hyphenation point is not found. It’s only “Aufla-ge”.

Possible solution:

  • Do nothing. (At least the current situation does not create much harm.)
  • Support Default_Ignorable_Code_Point characters as expected. Might have more overhead (mapping of character positions) but might be the best solution. At scribus/text/specialchars.cpp there is bool specialChars::isIgnorableCodePoint(uint ch) that might be usefull.
@sommerluk
Copy link
Author

Might be related to #145

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants