Summary: | kde-no-chunk.xsl and kde-web.xsl do not work | ||
---|---|---|---|
Product: | [Frameworks and Libraries] frameworks-kdoctools | Reporter: | Thiago Sueto <herzenschein> |
Component: | general | Assignee: | Documentation Editorial Team <kde-doc-english> |
Status: | REPORTED --- | ||
Severity: | normal | CC: | aacid, ashark, kdelibs-bugs, luigi.toscano, ostroffjh |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Thiago Sueto
2023-03-09 22:14:49 UTC
I just ran into this again, and noticed something that might be relevant. Without the --stylesheet parameter, index.html produced by meinproc5 includes the snippet <link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"> within the <header>. (There are also other, similar links to other css files. Note (at least on my systrem) that file is actually in /usr/share/help/en/kdoctools5-common. However, when using --stylesheet /usr/share/kf5/kdoctools/customization/kde-web.xsl, that snippet becomes <link rel="stylesheet" type="text/css" href="../common/kde-default.css">. I have not yet lookied into the meinproc5 source to see how it congures this path, but that looks like it could be the reason no proper styling seems to be done at all. That's defined in the kde-web.xsl file itself, no? <xsl:param name="kde.common">../common/</xsl:param> <xsl:param name="html.stylesheet" select="concat($kde.common,'kde-default.css')"/> Why is that a problem? If "../common" is actually from kde-web.xsl, then we know meinproc5 is indeed using that file with the --stylesheet parameter. So, when the OP says "does not display properly" I'm very curious exactly what was wrong with the display. (see my theory below) I have no idea where that ../common directory is supposed to point, but I think it is being taken as relative to the location of the xsl file. Using the web developer tools in Firefox, it appears NO css files are being used to display the index.html produced when I use --stylesheet. If I change that ../common to point to the css as referenced in the index.html produced without --stylesheet, the styling from that css file is used. If I use kde-no-chunk.xsl I get the same result (in terms of styling) as using kde-web.xsl, but with chapters in different files, not all in one. So, --stylesheet IS doing something, but the reference css file is not being used, since it's not in the directory specified. So - is there any way to know what kde-web.xsl is trying to do by using ../common, which doesn't seem to point to any existing directory? That would certainly explain why there is no apparent styling applied. Note, on my system the stylesheets are in /usr/share/kf5/kdoctools/customization/ and the css files are in /usr/share/help/en/kdoctools5-common. kde-web is for the kde web, your computer is not setup the same way the kde web, so the paths are "wrong" for your setup but it's not necessarily a bug. [*] The kde web may have changed its setup and the paths are also wrong for it, that's a separate story and would be indeed a bug of the web setup :D I just found the following commit for kde-chunk.xsl. commit 1cd33b3cad5c9a38d39655a39aac911ed7b334f8 Author: Luigi Toscano <luigi.toscano@tiscali.it> Date: Sat Apr 26 02:44:12 2014 +0200 Enable common/ for a different prefix, adapt kde-chunk.xsl Common files are installed again as it was in kdelibs4, but under a different prefix (kdoctools5-common) to avoid conflicts with the "old" common directory from kdelibs4. kde-chunk.xsl has been adapted to use this new prefix. REVIEW: 117781 Does this change in prefix need to also be applied to kde-no-chunk.xsl and to kde-web.xsl? (the only two xsl files which have ../common) By the way - I am just running "firefox index.html" in the directory where the file is, not actually using a web server. Looking at the README in the customization folder of kdoctools, it looks like kde-no-chunk should only differ from kde-chunk (the default KDE style sheet) by using separate files per chapter instead of a single file, and kde-web is a simplified version with limited width. Other than those specific differences, I don't see why their reference to a common directory should differ. I hate to keep updating myself, but on further thought, I'd say only kde-no-chunk should get the same change that kde-chunk did, as both are most likely to be used on a local system, for use by khelpcenter. For kde-web, it should probably not specify any directory for the css, letting it be found in the same folder as the html itself. That would make more sense if you are actually hosting it in a web server. We probably want Luigi to comment since he did that change 10 years ago, but as far as i understand he's on holiday so let's wait a bit There is certainly no rush - this has been sitting for a while, it can sit longer :-) Let Luigi enjoy is holiday. That was long ago but I vaguely remember that kde-no-chunk had a few issues and I decided to postpone the fix because it was not trivial and the web version on docs.kde.org was used anyway for most cases. But I may be wrong. Can you remind me when is kde-nochunk.xsl used? |