On 5/8/2016 10:27 PM, Pablo Rodriguez wrote:
Dear list,
I have the following sample:
\startbuffer[demo]
<doc>
<p>Link not working:
<a href="http://a.b/c#d">http://a.b/c#d</a></p>
<p>Link not working:
<a href="http://a.b/c">http://a.b/c#d</a></p>
<p>Working link:
<a href="http://a.b/c#d">http://a.b/c</a></p>
</doc>
\stopbuffer
\starttext
\startxmlsetups xml:initialize
\xmlsetsetup{#1}{p|doc|a}{xml:*}
\xmlsetsetup{\xmldocument}{span[@label]}{xml:logo}
\stopxmlsetups
\xmlregistersetup{xml:initialize}
\startxmlsetups xml:doc
\xmlflush{#1}
\stopxmlsetups
\startxmlsetups xml:p
\xmlflush{#1}\par
\stopxmlsetups
\startxmlsetups xml:a
\mypersonalurl{\xmlflush{#1}}
\stopxmlsetups
\setupinteraction[state=start]
\def\mypersonalurl#1{\bgroup\tt\goto{%
\hyphenatedurl{#1}}[url(#1)]\egroup}%
\unexpanded\def\href#1#2{\goto{#2} [url(#1)]}
\xmlprocessbuffer{main}{demo}{}
\stoptext
Latest beta from 2016.05.08 17:30 doesn’t generate a clickable link with
the first two paragraphs. It seems to be caused by the presence of # in
the url.
The latest beta I have that generates three clickable links is
2016.01.14 09:55 (using LuaTeX-0.87.0).
From beta 2016.02.01 13:26 (and LuaTeX-0.88.0) the first two links
aren’t interactive. And this beta included a wrong rendering from # as
"\Ux {23}".
The wrong # conversion was corrected in beta from 2016.02.15 10:26 (and
LuaTeX-0.89.0), but links weren’t made interactive.
I hope the description helps. Could anyone confirm the issue?
It has to do with more robust ways to let special character travel
through the machinery
\startbuffer[demo]
<d>
<p>Case 1: <a href="http://a.b/c#d">http://a.b/c#d</a></p>
<p>Case 2: <a href="http://a.b/c" >http://a.b/c#d</a></p>
<p>Case 3: <a href="http://a.b/c#d">http://a.b/c </a></p>
</d>
\stopbuffer
\nopdfcompression
\startxmlsetups xml:initialize
\xmlsetsetup{#1}{*}{xml:*}
\stopxmlsetups
\xmlregistersetup{xml:initialize}
\startxmlsetups xml:d
\xmlflush{#1}
\stopxmlsetups
\startxmlsetups xml:p
\xmlflush{#1}
\blank
\stopxmlsetups
\startxmlsetups xml:a
\mypersonalurl
{\xmlatt{#1}{href}}
{\xmlflush{#1}}
{\xmlraw{#1}{.}}
\stopxmlsetups
\starttexdefinition unexpanded mypersonalurl #1#2#3
\dontleavehmode
\begingroup
\tt
\starttabulate[||||]
\NC url \NC #1 \NC \goto{\hyphenatedurl{#2}}[url(#1)] \NC \NR
\NC txt \NC #2 \NC \goto{\hyphenatedurl{#2}}[url(#2)] \NC \NR
\NC raw \NC #3 \NC \goto{\hyphenatedurl{#3}}[url(#3)] \NC \NR
\stoptabulate
\endgroup
\stoptexdefinition
\setupinteraction[state=start]
\starttext
% \enabletrackers[structures.referencing.analyzing]
\xmlprocessbuffer{main}{demo}{}
\stoptext
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | www.pragma-ade.com | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the
Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
archive : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___________________________________________________________________________________