diff options
-rw-r--r-- | doc/build.scm | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/doc/build.scm b/doc/build.scm index c99bd505fd..5bc95d2517 100644 --- a/doc/build.scm +++ b/doc/build.scm @@ -29,6 +29,7 @@ (guix gexp) (guix git) (guix git-download) + (guix utils) (git) (gnu packages base) (gnu packages gawk) @@ -165,6 +166,35 @@ as well as images, OS examples, and translations." ;; Options passed to 'makeinfo --html'. '("--css-ref=https://www.gnu.org/software/gnulib/manual.css")) +(define guile-lib/htmlprag-fixed + ;; Guile-Lib with a hotfix for (htmlprag). + (package + (inherit guile-lib) + (source (origin + (inherit (package-source guile-lib)) + (modules '(( guix build utils))) + (snippet + '(begin + ;; When parsing + ;; "<body><blockquote><p>foo</p>\n</blockquote></body>", + ;; 'html->shtml' would mistakenly close 'blockquote' right + ;; before <p>. This patch removes 'p' from the + ;; 'parent-constraints' alist to fix that. + (substitute* "src/htmlprag.scm" + (("^[[:blank:]]*\\(p[[:blank:]]+\\. \\(body td th\\)\\).*") + "")) + #t)))) + (arguments + (substitute-keyword-arguments (package-arguments guile-lib) + ((#:phases phases '%standard-phases) + `(modify-phases ,phases + (add-before 'check 'skip-known-failure + (lambda _ + ;; XXX: The above change causes one test failure among + ;; the htmlprag tests. + (setenv "XFAIL_TESTS" "htmlprag.scm") + #t)))))))) + (define* (syntax-highlighted-html input #:key (name "highlighted-syntax") @@ -174,7 +204,7 @@ as well as images, OS examples, and translations." to (1) add them a link to SYNTAX-CSS-URL, and (2) highlight the syntax of all its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')." (define build - (with-extensions (list guile-lib guile-syntax-highlight) + (with-extensions (list guile-lib/htmlprag-fixed guile-syntax-highlight) (with-imported-modules '((guix build utils)) #~(begin (use-modules (htmlprag) |