emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Kyle Meyer <kyle@kyleam.com>
To: Adam Porter <adam@alphapapa.net>, emacs-orgmode@gnu.org
Cc: Colin Baxter <m43cap@yandex.com>
Subject: Re: ox.html causes w3c xhtml validation
Date: Sun, 15 Mar 2020 21:54:49 +0000	[thread overview]
Message-ID: <87r1xt8es6.fsf@kyleam.com> (raw)
In-Reply-To: <871rpt1hod.fsf@alphapapa.net>

Adam Porter <adam@alphapapa.net> writes:

> Colin Baxter <m43cap@yandex.com> writes:
>
>> In my opinion, if it can't be fixed then the changes should be
>> removed. Surely, we cannot have an org-mode that knowingly
>> exports/publishes something that causes a validation error!
>
> Looking at the error message, the fix might be very simple:
>
>   The most common cause of this error is unencoded ampersands in URLs as
>   described by the WDG in "Ampersands in URLs".

Hmm, perhaps it is as simple as encoding the ampersand.  That won't work
with inline javascript, if I'm understanding correctly the link I gave
in my reply.  *But*, despite being embedded javascript, the librejs
magnet link happens within a comment, so I suppose it really just comes
down to how librejs treats it.  Poking around in librejs (525e3a5), it
seems it is clever and will s/&amp;/&/:

    // Match by link on first parameter (legacy)
    if (licenses[key]["Magnet link"] === first.replace("&amp;","&") ||
        licenses[key]["URL"] === first.replace("&amp;","&")) {
          return [true, `Recognized license: "${licenses[key]['Name']}".`];

Colin, could you try exporting with the change below and see if that
resolves your validation issues?  It'd also be great if you could check
whether librejs is still happy after that change.

-- >8 --
diff --git a/lisp/ox-html.el b/lisp/ox-html.el
index 9a1dd44b5..5c2b766e9 100644
--- a/lisp/ox-html.el
+++ b/lisp/ox-html.el
@@ -232,7 +232,7 @@ (defconst org-html-special-string-regexps
 
 (defconst org-html-scripts
   "<script type=\"text/javascript\">
-// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&dn=gpl-3.0.txt GPL-v3-or-Later
+// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
 <!--/*--><![CDATA[/*><!--*/
      function CodeHighlightOn(elem, id)
      {
@@ -510,12 +510,12 @@ (defcustom org-html-infojs-options
 
 (defcustom org-html-infojs-template
   "<script type=\"text/javascript\" src=\"%SCRIPT_PATH\">
-// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&dn=gpl-3.0.txt GPL-v3-or-Later
+// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
 // @license-end
 </script>
 
 <script type=\"text/javascript\">
-// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&dn=gpl-3.0.txt GPL-v3-or-Later
+// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
 <!--/*--><![CDATA[/*><!--*/
 %MANAGER_OPTIONS
 org_html_manager.setup();  // activate after the parameters are set

  reply	other threads:[~2020-03-15 21:55 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-15 17:45 ox.html causes w3c xhtml validation Colin Baxter
2020-03-15 18:35 ` Colin Baxter
2020-03-15 19:45 ` Kyle Meyer
2020-03-15 19:56   ` Colin Baxter
2020-03-15 20:34     ` Adam Porter
2020-03-15 21:54       ` Kyle Meyer [this message]
2020-03-16  6:50         ` Colin Baxter
2020-03-16  8:38         ` Colin Baxter
2020-03-17  5:15           ` Kyle Meyer
2020-03-17  7:43             ` Colin Baxter
2020-03-15 22:40     ` Arne Babenhauserheide
2020-03-15 23:59       ` Kyle Meyer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r1xt8es6.fsf@kyleam.com \
    --to=kyle@kyleam.com \
    --cc=adam@alphapapa.net \
    --cc=emacs-orgmode@gnu.org \
    --cc=m43cap@yandex.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).