Hi everybody, I have the following org-snippet:
--------------------------------------------------------------- This is an example #+BEGIN_SRC sml -r -l "(*(ref:%s)*)" -n val x = 1 fun f y = x + y (*(ref:f)*) val x = 2 val y = 3 val z = f(x+y) (*(ref:callf)*) #+END_SRC - Line [[(f)]] defines a function that, when called, evaluates body *x+y* in environment where *x* maps to *1* and *y* maps to the argument ------------------------------------------------------------------ The HTML that it generates creates invalid HTML (one parser used by my university refuses to accept it :) I have inspected the code and this is where it fails: Note how there is no space between " and class in the <a> element: <li>Line <a href="#coderef-f"class="coderef" onmouseover="CodeHighlightOn(this, 'coderef-f');" onmouseout="CodeHighlightOff(this, 'coderef-f');">2</a> defines a function that, when called, evaluates body <b>x+y</b> in environment where <b>x</b> maps to <b>1</b> and <b>y</b> maps to the argument</li> I am running version 9.0.3 of org. I believe this patch will solve the issue. It simply adds a space before the class attribute. diff --git a/lisp/ox-html.el b/lisp/ox-html.el index a741142..9b40cc9 100644 --- a/lisp/ox-html.el +++ b/lisp/ox-html.el @@ -3058,7 +3058,7 @@ INFO is a plist holding contextual information. See (let ((fragment (concat "coderef-" (org-html-encode-plain-text path)))) (format "<a href=\"#%s\"%s%s>%s</a>" fragment - (format "class=\"coderef\" onmouseover=\"CodeHighlightOn(this, \ + (format " class=\"coderef\" onmouseover=\"CodeHighlightOn(this, \ '%s');\" onmouseout=\"CodeHighlightOff(this, '%s');\"" fragment fragment) attributes -- --dmg --- Daniel M. German http://turingmachine.org