diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/markdown/markdown.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/markdown/markdown.sty | 53 |
1 files changed, 39 insertions, 14 deletions
diff --git a/Master/texmf-dist/tex/latex/markdown/markdown.sty b/Master/texmf-dist/tex/latex/markdown/markdown.sty index a6c17ab3c2f..da080d33d5b 100644 --- a/Master/texmf-dist/tex/latex/markdown/markdown.sty +++ b/Master/texmf-dist/tex/latex/markdown/markdown.sty @@ -782,27 +782,52 @@ \catcode`\#=12 \def\next##1##2##3##4{ \endgroup - \tl_set:Nx - \l_tmpa_tl - { \str_range:nnn { ##3 } { 1 } { 1 } } - \str_if_eq:NNTF - \l_tmpa_tl - \c_hash_str + \tl_set:Nn \l_tmpa_tl { ##1 } + \tl_set:Nn \l_tmpb_tl { ##2 } + \bool_set:Nn + \l_tmpa_bool + { + \tl_if_eq_p:NN + \l_tmpa_tl + \l_tmpb_tl + } + \tl_set:Nn \l_tmpa_tl { ##4 } + \bool_set:Nn + \l_tmpb_bool { - \exp_args:No - \markdownLaTeXRendererRelativeLink - { \str_range:nnn { ##3 } { 2 } { -1 } } + \tl_if_empty_p:N + \l_tmpa_tl + } + \bool_if:nTF + { + \l_tmpa_bool && \l_tmpb_bool + } + { + \markdownLaTeXRendererAutolink { ##2 } { ##3 } }{ - \markdownLaTeXRendererAbsoluteLink { ##1 } { ##2 } { ##3 } { ##4 } + \markdownLaTeXRendererDirectOrIndirectLink { ##1 } { ##2 } { ##3 } { ##4 } } } \next } +\def\markdownLaTeXRendererAutolink#1#2{% + \tl_set:Nx + \l_tmpa_tl + { \str_range:nnn { #2 } { 1 } { 1 } } + \str_if_eq:NNTF + \l_tmpa_tl + \c_hash_str + { + \exp_args:No + \ref + { \str_range:nnn { #2 } { 2 } { -1 } } + }{ + \url { #2 } + } +} \ExplSyntaxOff -\def\markdownLaTeXRendererAbsoluteLink#1#2#3#4{% - #1\footnote{\ifx\empty#4\empty\else#4: \fi\texttt<\url{#3}\texttt>}} -\def\markdownLaTeXRendererRelativeLink#1{% - \ref{#1}} +\def\markdownLaTeXRendererDirectOrIndirectLink#1#2#3#4{% + #1\footnote{\ifx\empty#4\empty\else#4: \fi\url{#3}}} \newcount\markdownLaTeXRowCounter \newcount\markdownLaTeXRowTotal \newcount\markdownLaTeXColumnCounter |