summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/hvqrurl/latex/hvqrurl.sty
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/hvqrurl/latex/hvqrurl.sty')
-rw-r--r--macros/latex/contrib/hvqrurl/latex/hvqrurl.sty39
1 files changed, 29 insertions, 10 deletions
diff --git a/macros/latex/contrib/hvqrurl/latex/hvqrurl.sty b/macros/latex/contrib/hvqrurl/latex/hvqrurl.sty
index af29f1a446..29ddf89c21 100644
--- a/macros/latex/contrib/hvqrurl/latex/hvqrurl.sty
+++ b/macros/latex/contrib/hvqrurl/latex/hvqrurl.sty
@@ -1,4 +1,4 @@
-%% $Id: hvqrurl.sty 872 2024-02-06 16:11:47Z herbert $
+%% $Id: hvqrurl.sty 901 2024-05-26 07:18:06Z herbert $
%%
%% This file is distributed under the terms of the LaTeX Project Public
%% License from CTAN archives in directory macros/latex/base/lppl.txt.
@@ -7,19 +7,25 @@
% Copyright 2019,21,23,24 Herbert Voss hvoss@tug.org
%%
\ProvidesPackage{hvqrurl}[%
- 2024/02/06 v.0.07 (Herbert Voss) Supports qr images into the margin (hv)]
+ 2024/05/26 v.0.09 (Herbert Voss) Supports qr images into the margin (hv)]
%
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{url}
\RequirePackage{xcolor}
\RequirePackage{marginnote}
-\RequirePackage{qrcode}
+%\RequirePackage{qrcode}
\RequirePackage{xkeyval}
-\newif\if@no@hyperref \@no@hyperreffalse
+\newif\if@hv@forget
+\@hv@forgetfalse
+\DeclareOption{forget}{\@hv@forgettrue}
+
+\newif\if@no@hyperref
+\@no@hyperreffalse
\DeclareOption{nohyperref}{\@no@hyperreftrue}
\ProcessOptions
+\if@hv@forget\RequirePackage[forget]{qrcode}\else\RequirePackage{qrcode}\fi
\if@no@hyperref\else\RequirePackage{hyperref}\fi
\newlength\qr@url@qrheight
@@ -33,6 +39,8 @@
\define@key{hvqr}{linktext}[]{\def\qr@url@linktext{#1}}
\define@boolkey{hvqr}[hv@]{qrreverse}[true]{}
+\newcommand*\qr@url@qr@nolink{nolink}
+
\setkeys{hvqr}{qrheight,qrcolor=black,qradjust,qrlevel,qrlink=link,
qrreverse=false,linktext={}}% the default setting
@@ -46,10 +54,6 @@
\newcommand*\hvqr@@url[2][]{%
\begingroup
\providecommand*\qr@blank{0}%
- \ifx\relax#1\relax \else\hvqrset{#1}\fi
- % Set options for package qrcode
- \expandafter\qrset\expandafter{\qr@url@qrlink,height=\qr@url@qrheight,level=\qr@url@qrlevel}%
- \ifhv@qrreverse\reversemarginpar\fi
\if@tempswa
\ifx\@empty\qr@url@linktext % alternative link text?
\edef\hv@foo{\detokenize\expandafter{#2}}%
@@ -62,9 +66,24 @@
\href{\hv@fooA}{\hv@fooB}%
\fi
\fi
- \edef\reserved@a{\noexpand\marginnote{\noexpand\color{qr@url@qrcolor}\noexpand\qrcode{%
+% \endgroup
+% \begingroup
+ \ifx\relax#1\relax \else\hvqrset{#1}\fi
+ % Set options for package qrcode
+ \expandafter\qrset\expandafter{\qr@url@qrlink,height=\qr@url@qrheight,level=\qr@url@qrlevel}%
+ \ifhv@qrreverse\reversemarginpar\fi
+ \if@no@hyperref
+ \color{qr@url@qrcolor}%
+ \else
+ \ifx\qr@url@qrlink\qr@url@qr@nolink
+ \color{qr@url@qrcolor}%
+ \else
+ \hypersetup{urlcolor=qr@url@qrcolor}%
+ \fi
+ \fi
+ \edef\reserved@a{\noexpand\marginnote{\noexpand\qrcode{%
\detokenize\expandafter{#2}}}[\qr@url@qradjust]}%
- \reserved@a
+ \reserved@a
\endgroup
}