commit: 200818b99d2f874ad9e885861704a53d29f4e619 Author: Ulrich Müller <ulm <AT> gentoo <DOT> org> AuthorDate: Fri Jan 3 19:11:04 2020 +0000 Commit: Ulrich Müller <ulm <AT> gentoo <DOT> org> CommitDate: Tue Jan 7 08:53:02 2020 +0000 URL: https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=200818b9
devbook.xsl: ID attributes should contain only valid characters. Keep only characters that HTML 4 allows in ID attributes (but exclude the colon as well). Note that HTML 5 is more sloppy and would permit characters outside of the ASCII range, but these won't be valid in URI fragment identifiers (RFC 3986). Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org> devbook.xsl | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/devbook.xsl b/devbook.xsl index 2a5dea2..9d3d5f0 100644 --- a/devbook.xsl +++ b/devbook.xsl @@ -280,7 +280,10 @@ <xsl:param name="data"/> <xsl:variable name="lcletters">abcdefghijklmnopqrstuvwxyz--</xsl:variable> <xsl:variable name="ucletters">ABCDEFGHIJKLMNOPQRSTUVWXYZ<xsl:text> </xsl:text>,</xsl:variable> - <xsl:value-of select="translate(normalize-space($data),$ucletters,$lcletters)"/> + <xsl:variable name="lcdata" select="translate(normalize-space($data), $ucletters, $lcletters)"/> + <!-- Delete anything but letters, digits, hyphen, dot, underscore --> + <xsl:variable name="allowed">abcdefghijklmnopqrstuvwxyz0123456789-._</xsl:variable> + <xsl:value-of select="translate($lcdata, translate($lcdata, $allowed, ''), '')"/> </xsl:template> <xsl:template match="uri">