openSUSE / suse-xsl

DocBook XSL Stylesheets for SUSE branding
Other
11 stars 10 forks source link

unfortunate hyphenation of file names #339

Open ghost opened 7 years ago

ghost commented 7 years ago

This might be a dupe, did not look too closely...

screenshot

(discovered by Padraig/Shane, in the SES 5 docs)

tomschr commented 7 years ago

@sknorr If I remember correctly, we did that on purpose some time ago. This was not the case before. Links and filenames used the special hyphenation algorithm from suse2013/fo/hyphenate-url.xsl.

However, we did that for a reason. I think, it had something to do with ZERO WIDTH SPACE (U+200B) which FOP couldn't interpret correctly. Maybe that has changed now.

We should really package the latest FOP version soon...

ghost commented 7 years ago

Hm, I don't remember anything about FOP not rendering 0-width spaces incorrectly... Maybe this was even before my time..? (Admittedly, remembering stuff is not always my strong suit.)

tomschr commented 7 years ago

I don't remember anything about FOP not rendering 0-width spaces incorrectly... Maybe this was even before my time..?

Yes, it seems so. I've found commit 689d0e91 (Jul 4 2013!) which says:

Implemented different behaviour for XEP and FOP:
[..]
* FOP: does not recognize ZWS at all. Therefor, hyphenation is *enabled*
  and the hyphenation algorithm is NOT used. Furthermore, parameter
  ulink.properties is set to hyphenate=true, hyphenate-character=​
  This does not look really nice, but it gives at least some help.

Not sure about the FOP version, but it could be 1.0.

tomschr commented 1 year ago

This is still valid, but a systemic issue. If we enable the hyphenation algorithm in filenames and URLs, it will search for possible hyphenation spots (slashes, underscores, ampersands, etc.). However, very long filenames which consists of only characters cannot are not hyphenated correctly. In such a case, the writers has to do add the ZERO WIDTH SPACE manually. Or we don't hyphenate---with the above result.