summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2023-04-05 20:01:20 +0000
committerKarl Berry <karl@freefriends.org>2023-04-05 20:01:20 +0000
commit609c33069313159275d5ca40618aecdace382e2c (patch)
treee8ff66ae6e4a8d5ddcf7f7a3a209aace17ab0e8f
parent4e2ef99b906502fbcb098bc6c1f487657ee43b58 (diff)
osda (5apr23)
git-svn-id: svn://tug.org/texlive/trunk@66774 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/osda/README.md79
-rw-r--r--Master/texmf-dist/doc/latex/osda/example.pngbin0 -> 162079 bytes
-rw-r--r--Master/texmf-dist/doc/latex/osda/osda.pdfbin0 -> 192843 bytes
-rw-r--r--Master/texmf-dist/source/latex/osda/osda.dtx867
-rw-r--r--Master/texmf-dist/source/latex/osda/osda.ins65
-rw-r--r--Master/texmf-dist/tex/latex/osda/osda.sty352
-rwxr-xr-xMaster/tlpkg/bin/tlpkg-ctan-check2
-rw-r--r--Master/tlpkg/tlpsrc/collection-publishers.tlpsrc1
-rw-r--r--Master/tlpkg/tlpsrc/osda.tlpsrc0
9 files changed, 1365 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/osda/README.md b/Master/texmf-dist/doc/latex/osda/README.md
new file mode 100644
index 00000000000..03de404407e
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/osda/README.md
@@ -0,0 +1,79 @@
+# latex-osda
+
+This LaTeX package contains commands useful for papers that are published in the
+Proceedings of the Workshop on Open-Source Design Automation (OSDA).
+
+This package automatically places a copyright notice as an un-numbered
+footnote on the title page of a document that calls ``\maketitle``, indicating
+the information on the workshop where the paper was presented, along with
+additional information on the host conference, the license under which the
+document is published, and a link to the corresponding web page of the paper.
+The generated copyright notice contains a logo of the workshop, and a QR code
+that points to the paper's web page (to lead to further material). For cases
+when the copyright notice is not automatically set in the title page's
+footnote, the copyright notice can be set manually as well.
+
+![An example that shows the footnote on the title page](example.png)
+
+## Usage
+
+For the most basic use case, we just load the package, while giving a basic
+set of package options: the year of the workshop, the license under which the
+document is published, start/end pages of the paper in the workshop
+proceedings, a paper URL under which further information on the paper is
+available, and a Digital Object Identifier (DOI) that uniquely identifies the
+publication. The following listing shows the command to load the package
+with options that generates the copyright notice visible in the example image
+above.
+
+```
+\usepackage[
+ 2023,
+ cc-by,
+ pages={1}{6},
+ url=https://osda.ws/r/aaVHo,
+ doi=10.1000/182,
+]{osda}
+```
+
+Please consult the package documentation for more detailed instructions on how
+to use the package.
+
+
+## Geneate the LaTeX package
+
+To generate the LaTeX package ``osda.sty``, simply run the following command:
+
+```
+latex osda.ins
+```
+
+## Generate the documentation
+
+To generate a PDF ``osda.pdf`` with the package documentation, please run the following
+command:
+
+```
+pdflatex osda.dtx
+```
+
+## License information
+
+Copyright 2023 by Christian Krieg (christian@osda.ws)
+
+This work (excluding the OSDA logo) may be distributed and/or modified under the
+conditions of the LaTeX Project Public License, either version 1.3 of this
+license or (at your option) any later version. The latest version of this
+license is in http://www.latex-project.org/lppl.txt and version 1.3 or later is
+part of all distributions of LaTeX version 2005/12/01 or later.
+
+This work has the LPPL maintenance status `maintained'.
+
+The Current Maintainer of this work is Christian Krieg.
+
+This work consists of the files osda.dtx and osda.ins and the derived file
+osda.sty.
+
+The OSDA logo is a trademark of Christian Krieg and may only be used and/or
+distributed in order to refer to the Workshop on Open-Source Design Automation.
+Any other use is subject to prior written permission.
diff --git a/Master/texmf-dist/doc/latex/osda/example.png b/Master/texmf-dist/doc/latex/osda/example.png
new file mode 100644
index 00000000000..4f8b01b361a
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/osda/example.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/osda/osda.pdf b/Master/texmf-dist/doc/latex/osda/osda.pdf
new file mode 100644
index 00000000000..51bdfa0b02c
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/osda/osda.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/osda/osda.dtx b/Master/texmf-dist/source/latex/osda/osda.dtx
new file mode 100644
index 00000000000..b0ad170e905
--- /dev/null
+++ b/Master/texmf-dist/source/latex/osda/osda.dtx
@@ -0,0 +1,867 @@
+% \iffalse meta-comment
+%
+% osda.ins
+% Copyright 2023 by Christian Krieg (christian@osda.ws)
+%
+% This work (excluding the OSDA logo) may be distributed and/or modified under
+% the conditions of the LaTeX Project Public License, either version 1.3 of this
+% license or (at your option) any later version. The latest version of this
+% license is in http://www.latex-project.org/lppl.txt and version 1.3 or later
+% is part of all distributions of LaTeX version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is Christian Krieg.
+%
+% This work consists of the files osda.dtx and osda.ins
+% and the derived file osda.sty.
+%
+% The OSDA logo is a trademark of Christian Krieg and may only be used and/or
+% distributed in order to refer to the Workshop on Open-Source Design
+% Automation. Any other use is subject to prior written permission.
+%
+% \fi
+%
+% \iffalse
+%<*driver>
+\ProvidesFile{osda.dtx}
+%</driver>
+%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+%<package>\ProvidesPackage{osda}
+%<*package>
+ [2023/04/03 v1.2.0 OSDA copyright notice generator]
+%</package>
+%
+%<*driver>
+\documentclass{ltxdoc}
+\usepackage{parskip}
+\usepackage{hyperref}
+\usepackage{listings}
+\lstset
+{
+ language=[LaTeX]TeX,
+ basicstyle=\linespread{1}\small\ttfamily,
+ commentstyle=\linespread{1}\small\itshape,
+ keywordstyle=\linespread{1}\small\bfseries,
+ escapeinside={(*@}{@*)},
+ frame=single, numbers=left,
+ xleftmargin=15pt,
+ xrightmargin=5pt,
+ numbersep=5pt,
+ breaklines=true,
+ moredelim=**[is][\ttfamily\bfseries\color{red}]{(*}{*)},
+}
+\usepackage[
+ 2023,
+ cc-by,
+ pages={1}{6},
+ url=https://osda.ws/r/0slLz,
+ doi=10.1000/182,
+]{osda}
+\usepackage{cleveref}
+\PassOptionsToClass{a4paper}{article}
+\AtBeginDocument{\OnlyDescription}
+\AtBeginDocument{\CodelineIndex\EnableCrossrefs\RecordChanges}
+\AtBeginDocument{\RecordChanges}
+\AtEndDocument{\DocInput{osda.dtx}}
+\AtEndDocument{\PrintChanges}
+%%\AtEndDocument{\PrintIndex}
+\begin{document}
+\end{document}
+%</driver>
+% \fi
+%
+% \CheckSum{0}
+%
+% \CharacterTable
+% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+% Digits \0\1\2\3\4\5\6\7\8\9
+% Exclamation \! Double quote \" Hash (number) \#
+% Dollar \$ Percent \% Ampersand \&
+% Acute accent \' Left paren \( Right paren \)
+% Asterisk \* Plus \+ Comma \,
+% Minus \- Point \. Solidus \/
+% Colon \: Semicolon \; Less than \<
+% Equals \= Greater than \> Question mark \?
+% Commercial at \@ Left bracket \[ Backslash \\
+% Right bracket \] Circumflex \^ Underscore \_
+% Grave accent \` Left brace \{ Vertical bar \|
+% Right brace \} Tilde \~}
+%
+%
+% \changes{v1.0.0}{2023/03/30}{Initial version}
+% \changes{v1.1.0}{2023/04/03}{Adding 'auto' option}
+% \changes{v1.2.0}{2023/04/03}{Updating README}
+%
+% \GetFileInfo{osda.sty}
+%
+% \DoNotIndex{\newcommand,\newenvironment,\providecommand,\def}
+%
+% \def\F{F}
+%
+% \title{The \textsf{osda} package: \\
+% OSDA Copyright Notice Generator\thanks{This document
+% corresponds to \textsf{osda}~\fileversion, dated \filedate.}
+% }
+% \author{Christian Krieg\\ Workshop on Open-Source Design Automation (OSDA) \\
+% \texttt{christian@osda.ws}
+% }
+% \date{April 03, 2023}
+%
+% \newcommand{\Example}{\vspace{1em}\noindent\textbf{Example:}\vspace{1em}}
+%
+% \maketitle
+%
+% \section{Introduction}
+%
+% This package automatically places a copyright notice as an un-numbered
+% footnote on the title page of a document that calls |\maketitle|, indicating
+% the information on the workshop where the paper was presented, along with
+% additional information on the host conference, the license under which the
+% document is published, and a link to the corresponding web page of the paper.
+% The generated copyright notice contains a logo of the workshop, and a QR code
+% that points to the paper's web page (to lead to further material). For cases
+% when the copyright notice is not automatically set in the title page's
+% footnote, the copyright notice can be set manually as well.
+%
+% \section{Usage}
+%
+% For the most basic use case, we just load the package, while giving a basic
+% set of package options: the year of the workshop, the license under which the
+% document is published, start/end pages of the paper in the workshop
+% proceedings, a paper URL under which further information on the paper is
+% available, and a Digital Object Identifier (DOI) that uniquely identifies the
+% publication. \Cref{lst:usage-example} shows the command to load the package
+% with options that generates the copyright notice visible on the title page of
+% this document.
+%
+% \begin{lstlisting}[gobble=6,float=tb,label=lst:usage-example,caption={An
+% example for the most-frequent use case to use this package}]
+% \usepackage[
+% 2023,
+% cc-by,
+% pages={1}{6},
+% url=https://osda.ws/r/0slLz,
+% doi=10.1000/182,
+% ]{osda}
+% \end{lstlisting}
+%
+% When loading the package, the |\maketitle| command is re-defined such that
+% when it is called, an un-numbered footnote is automatically placed at the
+% title page. Besides the package options, all key/value pairs given in the
+% sections below can be passed as options to the package when loaded.
+%
+% \DescribeMacro{\osdafootnote}
+% For documents that do not define |\maketitle|, the footnote can be explicitly
+% set with |\osdafootnote| as shown in \Cref{lst:usage-footnote}.
+% |\osdafootnote| accepts all options as the package when loaded (i.e., all
+% presets and all key/value pairs given below).
+
+%
+% \begin{lstlisting}[gobble=6,label=lst:usage-footnote,caption={
+% Explicitly generating an un-numbered footnote containing the copyright
+% notice}]
+% \osdafootnote
+% \end{lstlisting}
+%
+% \DescribeMacro{\osdanotice}
+% For cases where the copyright notice shall not be placed in a footnote, but in
+% body text or some other paragraph, the package also provides the command
+% |\osdanotice|, which renders the copyright notice at the place from where it
+% is called (see \Cref{lst:usage-notice}). |\osdanotice| accepts all options as
+% the package when loaded (i.e., all presets and all key/value pairs given
+% below).
+%
+% \begin{lstlisting}[gobble=6,label=lst:usage-notice,caption={
+% Place the copyright notice here}]
+% \osdanotice
+% \end{lstlisting}
+%
+% \DescribeMacro{\osdaset}
+% Alternatively to the method given in \Cref{lst:usage-example}, we can load the
+% package without options, and explicitly set the values with |\osdaset|, as
+% shown in \Cref{lst:usage-osdaset}. |\osdaset| accepts all options as
+% the package when loaded (i.e., all presets and all key/value pairs given
+% below).
+
+%
+% \begin{lstlisting}[gobble=6,float=tb,label=lst:usage-osdaset,caption={Explicitly
+% setting package options}]
+% \usepackage[auto=false]{osda}
+% \osdaset{
+% 2023,
+% cc-by,
+% pages={1}{6},
+% url=https://osda.ws/r/0slLz,
+% doi=10.1000/182,
+% }
+% \end{lstlisting}
+%
+% \section{Package Options}
+%
+% \subsection{Automatically setting a footnote}
+%
+% \DescribeMacro{auto}
+% The default behavior when loading this package is that an unnumbered footnote
+% containing a copyright notice is automatically inclued when |\maketitle| is
+% called. If this behavior is not desired, it can be switched off setting the
+% |auto| package option to |false| (see \Cref{lst:option-auto}).
+%
+% \begin{lstlisting}[gobble=6, label=lst:option-auto, caption={Do not
+% automatically place a footnote with a copyright notice}]
+% \usepacakge[auto=false]{osda}
+% \end{lstlisting}
+%
+% \subsection{Workshop information}
+%
+% \DescribeMacro{<year>}
+% This option defines presets for all relevant options to the values valid for
+% the year the workshop was held:
+%
+% \begin{itemize}
+% \item{|proceedings/title|}
+% \item{|workshop/counter|}
+% \item{|workshop/longname|}
+% \item{|workshop/acronym|}
+% \item{|location/city|}
+% \item{|location/country|}
+% \item{|date/month|}
+% \item{|date/day|}
+% \item{|date/year|}
+% \item{|hostconference/longname|}
+% \item{|hostconference/acronym|}
+% \end{itemize}
+%
+% We replace |<year>| with the actual year when the paper was presented. An
+% example is given in \Cref{lst:option-year}.
+%
+% \begin{lstlisting}[gobble=6, label=lst:option-year, caption={Setting all
+% workshop-related options for the year 2023}]
+% \osdaset{2023}
+% \end{lstlisting}
+%
+% \subsection{Paper license}
+%
+% \DescribeMacro{cc-by}
+% \DescribeMacro{cc-by-sa}
+% \DescribeMacro{cc-by-nc-sa}
+% \DescribeMacro{cc-by-nc-nd}
+% \DescribeMacro{cc-by-arXiv}
+% \DescribeMacro{cc0}
+% These options define the license under which the paper is published. In the
+% example given in \Cref{lst:option-license}, the paper license is set to |CC0|.
+% The options are presets that set the values of the corresponding license
+% options:
+%
+% \begin{itemize}
+% \item{|license/long|}
+% \item{|license/short|}
+% \item{|license/version|}
+% \item{|license/url|}
+% \end{itemize}
+%
+% \begin{lstlisting}[gobble=6, label=lst:option-license, caption={Setting the
+% paper's license to CC0}]
+% \osdaset{cc0}
+% \end{lstlisting}
+%
+% \subsection{Pages}
+%
+% \DescribeMacro{pages}
+% This option sets the page numbers of the paper as published in the workshop
+% proceedings. We provide start and end page as |pages={<start>}{<end>}|, which
+% sets the follwoing options:
+%
+% \begin{itemize}
+% \item{|proceedings/startpage|}
+% \item{|proceedings/endpage|}
+% \end{itemize}
+%
+% An example is given in \Cref{lst:option-pages}.
+%
+% \begin{lstlisting}[gobble=6, label=lst:option-pages, caption={Setting the
+% paper's page numbers as given by the workshop proceedings}]
+% \osdaset{pages={16}{22}}
+% \end{lstlisting}
+%
+% \subsection{Paper URL}
+%
+% \DescribeMacro{url}
+% This option specifies the URL that leads to a web page at the workshop's
+% website, where additional information and material related to the paper can be
+% found (\Cref{lst:option-url} shows an example). Setting |url| updates the
+% value of the following key:
+%
+% \begin{itemize}
+% \item{|paper/url|}
+% \end{itemize}
+%
+%
+% \begin{lstlisting}[gobble=6, label=lst:option-url, caption={Setting the
+% paper's URL to its web page on the workshop website}]
+% \osdaset{url=https://osda.ws/r/0slLz}
+% \end{lstlisting}
+%
+% \subsection{Digital Object Identifier (DOI)}
+%
+% \DescribeMacro{doi}
+% This option specifies the paper's Digital Object Identifier (DOI) which is
+% issued on publication. Setting |doi| updates the value of the following key:
+%
+% \begin{itemize}
+% \item{|paper/doi|}
+% \end{itemize}
+%
+% \section{Configuration Options}
+%
+% In the \Cref{tbl:package-options}, we document all configuration options that
+% can be set either when loading the package with |usepackage|, or when using
+% |\osdafootnote|, |\osdanotice|, and |\osdaset|. This package uses |pgfkeys|
+% for managing the keys, and for processing key/value pairs.
+%
+% \begin{table}
+% \caption{Package options}
+% \label{tbl:package-options}
+% \begin{tabular}{lp{7cm}}
+% Key & Description \\
+% \hline
+% \hline
+%
+% |auto|
+% & Enabling/Disabling auto-setting an un-numbered footnote
+% containing a copyright notice when calling |\maketitle|. Default: |true|
+% \\
+%
+% \hline
+%
+% |paper/url|
+% & A URL that points to the web page of the paper on the workshop website.
+% It can be used to provide additional information and/or supplementing
+% material. Also, the link to the workshop website proves that the paper is
+% authentic.
+% \\
+%
+% |paper/doi|
+% & The digital object identifier that is issued to the paper on
+% publication
+% \\
+%
+% |url| & A short cut to |paper/url| \\
+% |doi| & A short cut to |paper/doi| \\
+%
+% \hline
+%
+% |license/long|
+% & The long form of the name of the license under whose terms the paper is
+% published
+% \\
+%
+% |license/short|
+% & The short form, or acronym, of the paper's license
+% \\
+%
+% |license/version|
+% & The version of the paper's license
+% \\
+%
+% |license/url|
+% & A URL that points to the paper's license terms
+% \\
+% \hline
+%
+% |proceedings/title|
+% & The title of the workshop's proceedings
+% \\
+%
+% |proceedings/startpage|
+% & The first page of the paper in the proceedings
+% \\
+%
+% |proceedings/endpage|
+% & The first page of the paper in the proceedings
+% \\
+% |pages|
+% & A shortcut to |proceedings/startpage| and |proceedings/endpage|
+% that takes two arguments (e.g., |pages={26}{31}|)
+% \\
+%
+% \hline
+%
+% |workshop/counter|
+% & Specifies the number of the workshop's edition (e.g., |3rd|)
+% \\
+%
+% |workshop/longname|
+% & The long name of the workshop
+% \\
+%
+% |workshop/acronym|
+% & The workshop's acronym
+% \\
+%
+% \hline
+%
+% |location/city|
+% & The city in which the workshop took place
+% \\
+%
+% |location/country|
+% & The country in which the workshop took place
+% \\
+%
+% \hline
+%
+% |date/month|
+% & The month in which the workshop took place
+% \\
+%
+% |date/day|
+% & The day on which the workshop took place
+% \\
+%
+% |date/year|
+% & The year in which the workshop took place
+% \\
+%
+% \hline
+%
+% |hostconference/longname|
+% & The long name of the conference at which the workshop was co-hosted
+% \\
+%
+% |hostconference/acronym|
+% & The acronym of the conference at which the workshop was co-hosted
+% \\
+% \end{tabular}
+% \end{table}
+%
+%
+% \StopEventually{}
+%
+% \section{Implementation}
+%
+% \subsection{Initialization macros}
+%
+% Here, the package dependencies are defined, along with setting up the packages
+% once loaded.
+%
+% \begin{macrocode}%%
+\RequirePackage[hang,flushmargin]{footmisc}%
+\RequirePackage{flushend}%
+\RequirePackage{ifthen}%
+\RequirePackage{qrcode}%
+\RequirePackage{xcolor}%
+\RequirePackage{hyperref}%
+\hypersetup{%
+ colorlinks = true,%
+ allcolors = black,%
+}%
+\RequirePackage{tikz}%
+\RequirePackage{pgfopts}%
+
+% \end{macrocode}
+% \begin{macro}{\osdaset}
+%
+% |\osdaset|
+%
+% Command to set options for this package.
+%
+% Usage:
+%
+% |\osdaset{key1=value1, key2=value2, ...}|
+%
+% Example:
+%
+% \begin{verbatim}
+% \osdaset{
+% paper/url=https://osda.ws,
+% license/long = XYZ license,
+% license/short = XYZ,
+% license/version = 1.0,
+% license/url = https://xyz.org/license
+% }
+% \end{verbatim}
+% \begin{macrocode}
+%
+\newcommand{\osdaset}[1]{\pgfkeys{/osda/.cd,#1}}
+%
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
+
+%%
+%% Specify booleans
+%%
+\newif\ifosda@auto
+%%
+%% Define keys to manage package and command options
+%%
+\pgfkeys {
+ /osda/.cd,
+ paper/url/.store in = \osda@paper@url,
+ url/.forward to = /osda/paper/url,
+ paper/doi/.store in = \osda@paper@doi,
+ doi/.forward to = /osda/paper/doi,
+ license/version/.store in = \osda@license@version,
+ license/url/.store in = \osda@license@url,
+ license/long/.store in = \osda@license@long,
+ license/short/.store in = \osda@license@short,
+ proceedings/title/.store in = \osda@proceedings@title,
+ proceedings/startpage/.store in = \osda@proceedings@startpage,
+ proceedings/endpage/.store in = \osda@proceedings@endpage,
+ pages/.code 2 args={\osdaset{proceedings/startpage=#1,proceedings/endpage=#2}},
+ workshop/counter/.store in = \osda@workshop@counter,
+ workshop/longname/.store in = \osda@workshop@longname,
+ workshop/acronym/.store in = \osda@workshop@acronym,
+ location/city/.store in = \osda@location@city,
+ location/country/.store in = \osda@location@country,
+ date/month/.store in = \osda@date@month,
+ date/day/.store in = \osda@date@day,
+ date/year/.store in = \osda@date@year,
+ hostconference/longname/.store in = \osda@hostconference@longname,
+ hostconference/acronym/.store in = \osda@hostconference@acronym,
+}
+%%
+%% Set boolean flags
+%%
+\pgfkeys {
+ /osda/.cd,
+ auto/.is if=osda@auto,
+}
+%
+% \end{macrocode}
+%%
+%% Specify default values
+%%
+% \begin{macrocode}
+%
+\pgfkeys {
+ /osda/.cd,
+ auto = true,
+ license/version = ,
+ license/url = ,
+ license/long = \textbf{\textcolor{red}{{Please specify a license}}},
+ license/short = ,
+ proceedings/startpage = ,
+ proceedings/endpage = ,
+ paper/url = https://please.specify.the/url/here,
+ paper/doi = ,
+}
+%
+% \end{macrocode}
+%%
+%% Define some useful styles
+%%
+% \begin{macrocode}
+%
+\pgfkeys {
+ /osda/.cd,
+ %
+ % Default values for specific editions of OSDA
+ %
+ 2023/.style={
+ proceedings/title = Proceedings of the 3rd Workshop on Open-Source Design Automation (OSDA),
+ workshop/counter = 3rd,
+ workshop/longname = Workshop on Open-Source Design Automation,
+ workshop/acronym = OSDA,
+ location/city = Antwerp,
+ location/country = Belgium,
+ date/month = April,
+ date/day = 17,
+ date/year = 2023,
+ hostconference/longname = {Design, Automation, and Test in Europe Conference},
+ hostconference/acronym = DATE,
+ },
+ %
+ % Licenses
+ %
+ cc-by/.style={
+ license/version = 4.0,
+ license/url = https://creativecommons.org/licenses/by/4.0,
+ license/long = Creative Commons Attribution license,
+ license/short = CC BY,
+ },
+ cc-by-sa/.style={
+ license/version = 4.0,
+ license/url = https://creativecommons.org/licenses/by-sa/4.0,
+ license/long = Creative Commons Attribution-ShareAlike license,
+ license/short = CC BY-SA,
+ },
+ cc-by-nc-sa/.style={
+ license/version = 4.0,
+ license/url = https://creativecommons.org/licenses/by-nc-sa/4.0,
+ license/long = Creative Commons Attribution-Noncommercial-ShareAlike license,
+ license/short = CC BY-NC-SA,
+ },
+ cc-by-nc-nd/.style={
+ license/version = 4.0,
+ license/url = https://creativecommons.org/licenses/by-nc-nd/4.0,
+ license/long = Creative Commons Attribution-Noncommercial-NoDerivatives license,
+ license/short = CC BY-NC-ND,
+ },
+ arXiv/.style={
+ license/version = 1.0,
+ license/url = https://arxiv.org/licenses/nonexclusive-distrib/1.0,
+ license/long = {arXiv.org perpetual, non-exclusive license},
+ license/short =,
+ },
+ cc0/.style={
+ license/version =,
+ license/url = https://creativecommons.org/share-your-work/public-domain/cc0,
+ license/long = Public Domain license,
+ license/short = CC0,
+ },
+}
+%
+% \end{macrocode}
+%%
+%% We now process the options passed to the package.
+%%
+% \begin{macrocode}
+%
+\ProcessPgfOptions{/osda}
+%
+% \end{macrocode}
+%%
+%% The margin defines the space between the logo's right/QR code's left side and
+%% the text of the copyright notice
+%%
+% \begin{macrocode}
+%
+\newlength{\osda@margin}
+%
+% \end{macrocode}
+%
+% \begin{macro}{\WrapLR}
+%%
+%% |\WrapLR|
+%%
+%% Command to place two figures wrapped around text; we use it here for the OSDA
+%% logo and the QR code that links to the paper in the acknowledgments box in the
+%% footnote of the title page
+%%
+%% Usage:
+%%
+%% \WrapLR{\includegraphics[height=1.2in]{example-image-a}}%
+%% {\includegraphics[height=1.2in]{example-image-b}}%
+%% {\noindent Text to wrap around images}
+%%
+%% Adapted from: https://tex.stackexchange.com/a/455612
+%%
+%%
+% \begin{macrocode}
+%
+\newcommand*{\WrapLR}[3]% #1=left image, #2=right image, #3=text (1 paragraph)
+{\bgroup
+ \sbox0{\raisebox{-\height}{#1}}% align tops
+ \sbox1{\raisebox{-\height}{#2}}% measure width and height (depth)
+ \sbox2{\raisebox{\depth}{\makebox[\columnwidth]{\usebox0\hfill\usebox1}}}% total height
+ \par\noindent\usebox2\vspace{\dimexpr \ht\strutbox-\ht2-\baselineskip-\parskip}\par% overlay pictures
+ \setlength{\osda@margin}{2ex}
+ \dimen0=\dimexpr \wd0+.5\osda@margin\relax% indent
+ \dimen1=\dimexpr \columnwidth-\wd0-\wd1-\osda@margin\relax% width
+ \edef\shape{\the\dimen0 \the\dimen1}% set up \parshape arguments in loop
+ \dimen2=\ht\strutbox
+ \dimen4=\dimexpr \ht2-.5\baselineskip\relax
+ \count1=2
+ \loop\ifdim\dimen2<\dimen4
+ \advance\dimen2 by \baselineskip
+ \ifdim\dimen2>\dp0\relax% end of left image
+ \dimen0=0pt
+ \dimen1=\dimexpr \columnwidth-\wd1-.5\osda@margin\relax
+ \fi
+ \ifdim\dimen2>\dp1\relax% end of right image
+ \dimen1=\dimexpr \columnwidth-\wd0-.5\osda@margin\relax
+ \fi
+ \advance\count1 by 1
+ \edef\shape{\shape\space\the\dimen0 \the\dimen1}%
+ \repeat
+ \edef\shape{\the\count1 \space\shape\space 0pt \the\columnwidth}%
+ \parshape=\shape
+ #3\par
+\egroup}
+%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\blfootnote}
+%
+%% |\blfootnote|
+%%
+%% Set footnotes without marks
+%%
+%% Usage:
+%%
+%% |\blfootnote{footnotetext}|
+%%
+%% From: https://tex.stackexchange.com/a/30726
+%%
+% \begin{macrocode}
+%
+\newcommand\blfootnote[1]{%
+ \begingroup
+ \renewcommand\thefootnote{}\footnote{#1}%
+ \addtocounter{footnote}{-1}%
+ \endgroup
+}
+%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\osdalogo}
+%%
+%% |\osdalogo|
+%%
+%% Draws the OSDA logo at a given height
+%%
+%% Usage:
+%%
+%% |\osdalogo{height}|
+%%
+%% Example:
+%%
+%% |\osdalogo{2\baselineskip}|
+%%
+% \begin{macrocode}
+%
+\usetikzlibrary{svg.path}
+\newcommand{\osdalogo}[1]{\scalebox{1}[-1]{\resizebox*{!}{#1}{%
+\begin{tikzpicture}%
+ \pgfpathsvg{m 41.493525,114.88969 c -4.235403,-0.0951 -5.244524,4.38987 -4.853967,7.74446 0.06465,11.92294 -0.129872,23.85884 0.09828,35.77361 0.660896,3.83742 4.80625,4.07909 7.908947,3.87335 36.559883,0 73.119765,0 109.679645,0 4.2354,0.0951 5.24452,-4.38987 4.85397,-7.74445 -0.0647,-11.92294 0.12987,-23.85884 -0.0983,-35.77361 -0.6609,-3.83742 -4.80625,-4.07909 -7.90895,-3.87336 -36.55988,0 -73.119759,0 -109.679642,0 z m 15.406294,9.3338 c 7.083699,-0.16814 13.650363,5.59034 14.408423,12.6354 0.773555,-7.32725 7.848415,-13.19963 15.192447,-12.61203 5.305345,0.24729 10.291595,3.68656 12.407418,8.55802 -4.449622,-0.0531 -9.052306,0.10604 -13.406456,-0.0794 -0.839139,-2.90692 -5.235964,-3.40946 -6.707523,-0.76424 -1.678739,2.40924 0.506129,6.05789 3.422128,5.71655 1.497283,-0.0812 2.873132,-1.15803 3.311785,-2.59192 4.718573,0 9.43715,0 14.155724,0 0.08339,-2.35529 -0.165262,-4.8569 0.121518,-7.12255 5.339507,-5.05446 14.506947,-4.9329 19.710957,0.26069 2.32206,2.20209 3.8742,5.19535 4.33608,8.36202 0.90939,-7.27195 8.02238,-12.99336 15.31906,-12.32891 7.37799,0.33186 13.674,7.07245 13.50245,14.45591 0.0496,5.18443 -2.94531,10.24647 -7.51324,12.69897 -1.2907,-3.10635 -2.86729,-6.27677 -3.98135,-9.34353 2.57226,-2.09161 1.63297,-6.69649 -1.5515,-7.61542 -3.0763,-1.19911 -6.61783,1.86093 -5.86635,5.08096 0.22078,1.22057 0.97501,2.33122 2.02814,2.98654 -1.33651,3.06304 -2.67302,6.12607 -4.00953,9.18911 -4.21173,-2.03739 -7.27498,-6.23733 -7.9282,-10.87014 -0.9141,7.33051 -8.13486,13.07383 -15.48271,12.31672 -3.21287,-0.24801 -6.32487,-1.6114 -8.68532,-3.8051 0,-2.30873 0,-4.61746 0,-6.92619 -1.727782,7.19313 -9.563391,12.09549 -16.787442,10.50764 -4.612862,-0.86727 -8.678534,-4.13841 -10.513216,-8.45867 4.434157,0.0533 9.021826,-0.10629 13.360463,0.0794 0.820198,2.82501 5.042639,3.41435 6.604149,0.92056 1.808231,-2.33495 -0.226145,-6.10845 -3.171246,-5.87992 -1.550448,0.0211 -3.007434,1.11568 -3.459292,2.59898 -4.701352,0 -9.402702,0 -14.104054,0 -0.258707,-1.27682 -0.309266,-2.11823 -0.532659,-0.32786 -1.436394,7.22593 -9.014468,12.43124 -16.274501,11.17924 -7.328434,-0.91683 -13.068091,-8.13653 -12.311164,-15.48257 0.464997,-7.3576 7.032469,-13.43953 14.405011,-13.33826 z m 52.620561,9.99112 c -0.96292,0.0502 -2.60046,0.17595 -2.09755,1.57043 0.0567,2.29818 -0.11186,4.73381 0.0816,6.94851 2.876,1.60884 6.79391,-0.92082 6.51013,-4.20444 -0.0576,-2.3593 -2.13312,-4.35301 -4.49417,-4.3145 z m -52.58387,5.3e-4 c -3.299763,-0.14891 -5.665574,3.88662 -3.923721,6.69319 1.479497,2.95488 6.158026,3.05141 7.757886,0.15973 1.863071,-2.9074 -0.372921,-6.91859 -3.834165,-6.85292 z}%
+ \pgfusepath{fill}%
+ \pgfusepath{stroke}%
+\end{tikzpicture}%
+}}}
+%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\osdanotice}
+%%
+%% |\osdanotice|
+%%
+%% This command sets the OSDA copyright notice, taking a URL as argument to set
+%% links to the paper's web page, and to create a QR code from.
+%%
+%% Usage:
+%%
+%% |\osdanotice{url}|
+%%
+%% Example:
+%%
+%% |\osdanotice{https://osda.ws}|
+%%
+% \begin{macrocode}
+%
+\newcommand{\osdanotice}[1][]{
+\osdaset{#1}
+\WrapLR%
+ {\href{\osda@paper@url}{\osdalogo{1.8\baselineskip}}}
+ {\qrcode[height=3.8\baselineskip,level=L,version=1]{\osda@paper@url}}
+ {\noindent%
+ This work was presented at the \emph{\osda@workshop@counter{}
+ \osda@workshop@longname{} (\osda@workshop@acronym) \osda@date@year{}},
+ \ifthenelse{\isundefined{\osda@hostconference@longname}}{%
+ }{%
+ co-hosted with \emph{\osda@hostconference@longname} %
+ \ifthenelse{\isundefined{\osda@hostconference@acronym}}{%
+ }{%
+ \emph{(\osda@hostconference@acronym)}
+ }%
+ \ifthenelse{\isundefined{\osda@date@year}}{%
+ }{%
+ \emph{\osda@date@year}
+ }%
+ }%
+ in \osda@location@city{}, \osda@location@country{}, on
+ \osda@date@month{} \osda@date@day{}, \osda@date@year{}. For further
+ information and material, please visit the paper's web page on the
+ workshop website at \href{\osda@paper@url}{\textbf{\osda@paper@url}}
+ (just scan the QR code on the right).
+ %
+ % Copyright and license information
+ %
+ The copyright is retained by the authors.
+ This work is licensed under the terms of the
+ \osda@license@long
+ \ifthenelse{\isundefined{\osda@license@short} \or \equal{\osda@license@short}{}}{%
+ }{ %
+ (\osda@license@short)%
+ }%
+ \ifthenelse{\isundefined{\osda@license@version} \or \equal{\osda@license@version}{}}{%
+ }{, %
+ version \osda@license@version%
+ }%
+ \ifthenelse{\isundefined{\osda@license@url} \or \equal{\osda@license@url}{}}{%
+ }{, %
+ see \href{\osda@license@url}{\osda@license@url}%
+ }%
+ %
+ .
+ \emph{\osda@proceedings@title},
+ Pages \osda@proceedings@startpage--\osda@proceedings@endpage, \osda@date@year.
+ \ifthenelse{\isundefined{\osda@paper@doi} \or \equal{\osda@paper@doi}{}}{%
+ }{%
+ DOI: \href{https://doi.org/\osda@paper@doi}{\osda@paper@doi}%
+ }%
+ }%
+}
+%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\osdafootnote}
+%%
+%% |\osdafootnote|
+%%
+%% This command sets the OSDA copyright notice in an un-numbered footnote.
+%%
+%% Usage:
+%%
+%% |\osdafootnote{url}|
+%%
+%% Example:
+%%
+%% |\osdafootnote{https://osda.ws}|
+%%
+% \begin{macrocode}
+%
+\newcommand{\osdafootnote}[1][]{
+ \osdaset{#1}
+ \blfootnote{\osdanotice\vspace{-1.5\baselineskip}}%
+
+}
+%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\maketitle}
+%%
+%% |\maketitle|
+%%
+%% Re-defining the \maketitle command to automatically place the copyright notice
+%% once the paper title is generated
+%%
+% \begin{macrocode}
+%
+%\let\maketitle@orig\maketitle
+%\renewcommand{\maketitle}{%
+% \ifthenelse{\boolean{\ifosda@auto}}{%
+% \maketitle@orig\osdafootnote%
+% }{%
+% \maketitle@orig%
+% }%
+%}
+\let\maketitle@orig\maketitle
+\renewcommand{\maketitle}{%
+ \ifosda@auto%
+ \maketitle@orig\osdafootnote%
+ \else%
+ \maketitle@orig%
+ \fi%
+}
+%
+% \end{macrocode}
+% \end{macro}
+\endinput
diff --git a/Master/texmf-dist/source/latex/osda/osda.ins b/Master/texmf-dist/source/latex/osda/osda.ins
new file mode 100644
index 00000000000..a76841c47b8
--- /dev/null
+++ b/Master/texmf-dist/source/latex/osda/osda.ins
@@ -0,0 +1,65 @@
+%% osda.ins
+%% Copyright 2023 by Christian Krieg <christian@osda.ws>
+%%
+%% This work (excluding the OSDA logo) may be distributed and/or modified under
+%% the conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Christian Krieg.
+%%
+%% This work consists of the files osda.dtx and osda.ins
+%% and the derived file osda.sty.
+%%
+%% The OSDA logo is a trademark of Christian Krieg and may only be used and/or
+%% distributed in order to refer to the Workshop on Open-Source Design
+%% Automation. Any other use is subject to prior written permission.
+
+\input docstrip.tex
+\keepsilent
+
+\usedir{tex/latex/osda}
+
+\preamble
+
+This is a generated file.
+
+Copyright (C) 2023 by Christian Krieg <christian@osda.ws>
+
+This work (excluding the OSDA logo) may be distributed and/or modified under the
+conditions of the LaTeX Project Public License, either version 1.3
+of this license or (at your option) any later version.
+The latest version of this license is in
+ http://www.latex-project.org/lppl.txt
+and version 1.3 or later is part of all distributions of LaTeX
+version 2005/12/01 or later.
+
+The OSDA logo is a trademark of Christian Krieg and may only be used and/or
+distributed in order to refer to the Workshop on Open-Source Design Automation.
+Any other use is subject to prior written permission.
+
+\endpreamble
+
+\generate{\file{osda.sty}{\from{osda.dtx}{package}}}
+
+\obeyspaces
+\Msg{*************************************************************}
+\Msg{* *}
+\Msg{* To finish the installation you have to move the following *}
+\Msg{* file into a directory searched by TeX: *}
+\Msg{* *}
+\Msg{* osda.sty *}
+\Msg{* *}
+\Msg{* To produce the documentation run the file osda.dtx *}
+\Msg{* through LaTeX. *}
+\Msg{* *}
+\Msg{* Happy TeXing! *}
+\Msg{* *}
+\Msg{*************************************************************}
+
+\endbatchfile
diff --git a/Master/texmf-dist/tex/latex/osda/osda.sty b/Master/texmf-dist/tex/latex/osda/osda.sty
new file mode 100644
index 00000000000..c7f20dd87e6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/osda/osda.sty
@@ -0,0 +1,352 @@
+%%
+%% This is file `osda.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% osda.dtx (with options: `package')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2023 by Christian Krieg <christian@osda.ws>
+%%
+%% This work (excluding the OSDA logo) may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% The OSDA logo is a trademark of Christian Krieg and may only be used and/or
+%% distributed in order to refer to the Workshop on Open-Source Design Automation.
+%% Any other use is subject to prior written permission.
+%%
+\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+\ProvidesPackage{osda}
+ [2023/04/03 v1.2.0 OSDA copyright notice generator]
+
+
+\RequirePackage[hang,flushmargin]{footmisc}%
+\RequirePackage{flushend}%
+\RequirePackage{ifthen}%
+\RequirePackage{qrcode}%
+\RequirePackage{xcolor}%
+\RequirePackage{hyperref}%
+\hypersetup{%
+colorlinks = true,%
+allcolors = black,%
+}%
+\RequirePackage{tikz}%
+\RequirePackage{pgfopts}%
+
+\newcommand{\osdaset}[1]{\pgfkeys{/osda/.cd,#1}}
+
+%%
+%% Specify booleans
+%%
+\newif\ifosda@auto
+%%
+%% Define keys to manage package and command options
+%%
+\pgfkeys {
+ /osda/.cd,
+ paper/url/.store in = \osda@paper@url,
+ url/.forward to = /osda/paper/url,
+ paper/doi/.store in = \osda@paper@doi,
+ doi/.forward to = /osda/paper/doi,
+ license/version/.store in = \osda@license@version,
+ license/url/.store in = \osda@license@url,
+ license/long/.store in = \osda@license@long,
+ license/short/.store in = \osda@license@short,
+ proceedings/title/.store in = \osda@proceedings@title,
+ proceedings/startpage/.store in = \osda@proceedings@startpage,
+ proceedings/endpage/.store in = \osda@proceedings@endpage,
+ pages/.code 2 args={\osdaset{proceedings/startpage=#1,proceedings/endpage=#2}},
+ workshop/counter/.store in = \osda@workshop@counter,
+ workshop/longname/.store in = \osda@workshop@longname,
+ workshop/acronym/.store in = \osda@workshop@acronym,
+ location/city/.store in = \osda@location@city,
+ location/country/.store in = \osda@location@country,
+ date/month/.store in = \osda@date@month,
+ date/day/.store in = \osda@date@day,
+ date/year/.store in = \osda@date@year,
+ hostconference/longname/.store in = \osda@hostconference@longname,
+ hostconference/acronym/.store in = \osda@hostconference@acronym,
+}
+%%
+%% Set boolean flags
+%%
+\pgfkeys {
+ /osda/.cd,
+ auto/.is if=osda@auto,
+}
+%%
+%% Specify default values
+%%
+\pgfkeys {
+ /osda/.cd,
+ auto = true,
+ license/version = ,
+ license/url = ,
+ license/long = \textbf{\textcolor{red}{{Please specify a license}}},
+ license/short = ,
+ proceedings/startpage = ,
+ proceedings/endpage = ,
+ paper/url = https://please.specify.the/url/here,
+ paper/doi = ,
+}
+%%
+%% Define some useful styles
+%%
+\pgfkeys {
+ /osda/.cd,
+ %
+ % Default values for specific editions of OSDA
+ %
+ 2023/.style={
+ proceedings/title = Proceedings of the 3rd Workshop on Open-Source Design Automation (OSDA),
+ workshop/counter = 3rd,
+ workshop/longname = Workshop on Open-Source Design Automation,
+ workshop/acronym = OSDA,
+ location/city = Antwerp,
+ location/country = Belgium,
+ date/month = April,
+ date/day = 17,
+ date/year = 2023,
+ hostconference/longname = {Design, Automation, and Test in Europe Conference},
+ hostconference/acronym = DATE,
+ },
+ %
+ % Licenses
+ %
+ cc-by/.style={
+ license/version = 4.0,
+ license/url = https://creativecommons.org/licenses/by/4.0,
+ license/long = Creative Commons Attribution license,
+ license/short = CC BY,
+ },
+ cc-by-sa/.style={
+ license/version = 4.0,
+ license/url = https://creativecommons.org/licenses/by-sa/4.0,
+ license/long = Creative Commons Attribution-ShareAlike license,
+ license/short = CC BY-SA,
+ },
+ cc-by-nc-sa/.style={
+ license/version = 4.0,
+ license/url = https://creativecommons.org/licenses/by-nc-sa/4.0,
+ license/long = Creative Commons Attribution-Noncommercial-ShareAlike license,
+ license/short = CC BY-NC-SA,
+ },
+ cc-by-nc-nd/.style={
+ license/version = 4.0,
+ license/url = https://creativecommons.org/licenses/by-nc-nd/4.0,
+ license/long = Creative Commons Attribution-Noncommercial-NoDerivatives license,
+ license/short = CC BY-NC-ND,
+ },
+ arXiv/.style={
+ license/version = 1.0,
+ license/url = https://arxiv.org/licenses/nonexclusive-distrib/1.0,
+ license/long = {arXiv.org perpetual, non-exclusive license},
+ license/short =,
+ },
+ cc0/.style={
+ license/version =,
+ license/url = https://creativecommons.org/share-your-work/public-domain/cc0,
+ license/long = Public Domain license,
+ license/short = CC0,
+ },
+}
+%%
+%% We now process the options passed to the package.
+%%
+\ProcessPgfOptions{/osda}
+%%
+%% The margin defines the space between the logo's right/QR code's left side and
+%% the text of the copyright notice
+%%
+\newlength{\osda@margin}
+%%
+%% |\WrapLR|
+%%
+%% Command to place two figures wrapped around text; we use it here for the OSDA
+%% logo and the QR code that links to the paper in the acknowledgments box in the
+%% footnote of the title page
+%%
+%% Usage:
+%%
+%% \WrapLR{\includegraphics[height=1.2in]{example-image-a}}%
+%% {\includegraphics[height=1.2in]{example-image-b}}%
+%% {\noindent Text to wrap around images}
+%%
+%% Adapted from: https://tex.stackexchange.com/a/455612
+%%
+%%
+\newcommand*{\WrapLR}[3]% #1=left image, #2=right image, #3=text (1 paragraph)
+{\bgroup
+ \sbox0{\raisebox{-\height}{#1}}% align tops
+ \sbox1{\raisebox{-\height}{#2}}% measure width and height (depth)
+ \sbox2{\raisebox{\depth}{\makebox[\columnwidth]{\usebox0\hfill\usebox1}}}% total height
+ \par\noindent\usebox2\vspace{\dimexpr \ht\strutbox-\ht2-\baselineskip-\parskip}\par% overlay pictures
+ \setlength{\osda@margin}{2ex}
+ \dimen0=\dimexpr \wd0+.5\osda@margin\relax% indent
+ \dimen1=\dimexpr \columnwidth-\wd0-\wd1-\osda@margin\relax% width
+ \edef\shape{\the\dimen0 \the\dimen1}% set up \parshape arguments in loop
+ \dimen2=\ht\strutbox
+ \dimen4=\dimexpr \ht2-.5\baselineskip\relax
+ \count1=2
+ \loop\ifdim\dimen2<\dimen4
+ \advance\dimen2 by \baselineskip
+ \ifdim\dimen2>\dp0\relax% end of left image
+ \dimen0=0pt
+ \dimen1=\dimexpr \columnwidth-\wd1-.5\osda@margin\relax
+ \fi
+ \ifdim\dimen2>\dp1\relax% end of right image
+ \dimen1=\dimexpr \columnwidth-\wd0-.5\osda@margin\relax
+ \fi
+ \advance\count1 by 1
+ \edef\shape{\shape\space\the\dimen0 \the\dimen1}%
+ \repeat
+ \edef\shape{\the\count1 \space\shape\space 0pt \the\columnwidth}%
+ \parshape=\shape
+ #3\par
+\egroup}
+%% |\blfootnote|
+%%
+%% Set footnotes without marks
+%%
+%% Usage:
+%%
+%% |\blfootnote{footnotetext}|
+%%
+%% From: https://tex.stackexchange.com/a/30726
+%%
+\newcommand\blfootnote[1]{%
+ \begingroup
+ \renewcommand\thefootnote{}\footnote{#1}%
+ \addtocounter{footnote}{-1}%
+ \endgroup
+}
+%%
+%% |\osdalogo|
+%%
+%% Draws the OSDA logo at a given height
+%%
+%% Usage:
+%%
+%% |\osdalogo{height}|
+%%
+%% Example:
+%%
+%% |\osdalogo{2\baselineskip}|
+%%
+\usetikzlibrary{svg.path}
+\newcommand{\osdalogo}[1]{\scalebox{1}[-1]{\resizebox*{!}{#1}{%
+\begin{tikzpicture}%
+ \pgfpathsvg{m 41.493525,114.88969 c -4.235403,-0.0951 -5.244524,4.38987 -4.853967,7.74446 0.06465,11.92294 -0.129872,23.85884 0.09828,35.77361 0.660896,3.83742 4.80625,4.07909 7.908947,3.87335 36.559883,0 73.119765,0 109.679645,0 4.2354,0.0951 5.24452,-4.38987 4.85397,-7.74445 -0.0647,-11.92294 0.12987,-23.85884 -0.0983,-35.77361 -0.6609,-3.83742 -4.80625,-4.07909 -7.90895,-3.87336 -36.55988,0 -73.119759,0 -109.679642,0 z m 15.406294,9.3338 c 7.083699,-0.16814 13.650363,5.59034 14.408423,12.6354 0.773555,-7.32725 7.848415,-13.19963 15.192447,-12.61203 5.305345,0.24729 10.291595,3.68656 12.407418,8.55802 -4.449622,-0.0531 -9.052306,0.10604 -13.406456,-0.0794 -0.839139,-2.90692 -5.235964,-3.40946 -6.707523,-0.76424 -1.678739,2.40924 0.506129,6.05789 3.422128,5.71655 1.497283,-0.0812 2.873132,-1.15803 3.311785,-2.59192 4.718573,0 9.43715,0 14.155724,0 0.08339,-2.35529 -0.165262,-4.8569 0.121518,-7.12255 5.339507,-5.05446 14.506947,-4.9329 19.710957,0.26069 2.32206,2.20209 3.8742,5.19535 4.33608,8.36202 0.90939,-7.27195 8.02238,-12.99336 15.31906,-12.32891 7.37799,0.33186 13.674,7.07245 13.50245,14.45591 0.0496,5.18443 -2.94531,10.24647 -7.51324,12.69897 -1.2907,-3.10635 -2.86729,-6.27677 -3.98135,-9.34353 2.57226,-2.09161 1.63297,-6.69649 -1.5515,-7.61542 -3.0763,-1.19911 -6.61783,1.86093 -5.86635,5.08096 0.22078,1.22057 0.97501,2.33122 2.02814,2.98654 -1.33651,3.06304 -2.67302,6.12607 -4.00953,9.18911 -4.21173,-2.03739 -7.27498,-6.23733 -7.9282,-10.87014 -0.9141,7.33051 -8.13486,13.07383 -15.48271,12.31672 -3.21287,-0.24801 -6.32487,-1.6114 -8.68532,-3.8051 0,-2.30873 0,-4.61746 0,-6.92619 -1.727782,7.19313 -9.563391,12.09549 -16.787442,10.50764 -4.612862,-0.86727 -8.678534,-4.13841 -10.513216,-8.45867 4.434157,0.0533 9.021826,-0.10629 13.360463,0.0794 0.820198,2.82501 5.042639,3.41435 6.604149,0.92056 1.808231,-2.33495 -0.226145,-6.10845 -3.171246,-5.87992 -1.550448,0.0211 -3.007434,1.11568 -3.459292,2.59898 -4.701352,0 -9.402702,0 -14.104054,0 -0.258707,-1.27682 -0.309266,-2.11823 -0.532659,-0.32786 -1.436394,7.22593 -9.014468,12.43124 -16.274501,11.17924 -7.328434,-0.91683 -13.068091,-8.13653 -12.311164,-15.48257 0.464997,-7.3576 7.032469,-13.43953 14.405011,-13.33826 z m 52.620561,9.99112 c -0.96292,0.0502 -2.60046,0.17595 -2.09755,1.57043 0.0567,2.29818 -0.11186,4.73381 0.0816,6.94851 2.876,1.60884 6.79391,-0.92082 6.51013,-4.20444 -0.0576,-2.3593 -2.13312,-4.35301 -4.49417,-4.3145 z m -52.58387,5.3e-4 c -3.299763,-0.14891 -5.665574,3.88662 -3.923721,6.69319 1.479497,2.95488 6.158026,3.05141 7.757886,0.15973 1.863071,-2.9074 -0.372921,-6.91859 -3.834165,-6.85292 z}%
+ \pgfusepath{fill}%
+ \pgfusepath{stroke}%
+\end{tikzpicture}%
+}}}
+%%
+%% |\osdanotice|
+%%
+%% This command sets the OSDA copyright notice, taking a URL as argument to set
+%% links to the paper's web page, and to create a QR code from.
+%%
+%% Usage:
+%%
+%% |\osdanotice{url}|
+%%
+%% Example:
+%%
+%% |\osdanotice{https://osda.ws}|
+%%
+\newcommand{\osdanotice}[1][]{
+\osdaset{#1}
+\WrapLR%
+ {\href{\osda@paper@url}{\osdalogo{1.8\baselineskip}}}
+ {\qrcode[height=3.8\baselineskip,level=L,version=1]{\osda@paper@url}}
+ {\noindent%
+ This work was presented at the \emph{\osda@workshop@counter{}
+ \osda@workshop@longname{} (\osda@workshop@acronym) \osda@date@year{}},
+ \ifthenelse{\isundefined{\osda@hostconference@longname}}{%
+ }{%
+ co-hosted with \emph{\osda@hostconference@longname} %
+ \ifthenelse{\isundefined{\osda@hostconference@acronym}}{%
+ }{%
+ \emph{(\osda@hostconference@acronym)}
+ }%
+ \ifthenelse{\isundefined{\osda@date@year}}{%
+ }{%
+ \emph{\osda@date@year}
+ }%
+ }%
+ in \osda@location@city{}, \osda@location@country{}, on
+ \osda@date@month{} \osda@date@day{}, \osda@date@year{}. For further
+ information and material, please visit the paper's web page on the
+ workshop website at \href{\osda@paper@url}{\textbf{\osda@paper@url}}
+ (just scan the QR code on the right).
+ %
+ % Copyright and license information
+ %
+ The copyright is retained by the authors.
+ This work is licensed under the terms of the
+ \osda@license@long
+ \ifthenelse{\isundefined{\osda@license@short} \or \equal{\osda@license@short}{}}{%
+ }{ %
+ (\osda@license@short)%
+ }%
+ \ifthenelse{\isundefined{\osda@license@version} \or \equal{\osda@license@version}{}}{%
+ }{, %
+ version \osda@license@version%
+ }%
+ \ifthenelse{\isundefined{\osda@license@url} \or \equal{\osda@license@url}{}}{%
+ }{, %
+ see \href{\osda@license@url}{\osda@license@url}%
+ }%
+ %
+ .
+ \emph{\osda@proceedings@title},
+ Pages \osda@proceedings@startpage--\osda@proceedings@endpage, \osda@date@year.
+ \ifthenelse{\isundefined{\osda@paper@doi} \or \equal{\osda@paper@doi}{}}{%
+ }{%
+ DOI: \href{https://doi.org/\osda@paper@doi}{\osda@paper@doi}%
+ }%
+ }%
+}
+%%
+%% |\osdafootnote|
+%%
+%% This command sets the OSDA copyright notice in an un-numbered footnote.
+%%
+%% Usage:
+%%
+%% |\osdafootnote{url}|
+%%
+%% Example:
+%%
+%% |\osdafootnote{https://osda.ws}|
+%%
+\newcommand{\osdafootnote}[1][]{
+ \osdaset{#1}
+ \blfootnote{\osdanotice\vspace{-1.5\baselineskip}}%
+
+}
+%%
+%% |\maketitle|
+%%
+%% Re-defining the \maketitle command to automatically place the copyright notice
+%% once the paper title is generated
+%%
+\let\maketitle@orig\maketitle
+\renewcommand{\maketitle}{%
+ \ifosda@auto%
+ \maketitle@orig\osdafootnote%
+ \else%
+ \maketitle@orig%
+ \fi%
+}
+\endinput
+%%
+%% End of file `osda.sty'.
diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check
index 75877840c63..f7acf166623 100755
--- a/Master/tlpkg/bin/tlpkg-ctan-check
+++ b/Master/tlpkg/bin/tlpkg-ctan-check
@@ -605,7 +605,7 @@ my @TLP_working = qw(
onedown onlyamsmath onrannual opcit opencolor opensans oplotsymbl
opteng optex optexcount optidef optional options
orcidlink ordinalpt orientation orkhun
- oscola oswald ot-tableau othello othelloboard
+ oscola osda oswald ot-tableau othello othelloboard
oubraces oup-authoring-template
outerhbox outilsgeomtikz outline outliner outlines outlining
overarrows overlays overlock overpic
diff --git a/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc b/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc
index 2198114388b..11ac15907ad 100644
--- a/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc
+++ b/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc
@@ -161,6 +161,7 @@ depend nostarch
depend nrc
depend onrannual
depend opteng
+depend osda
depend oup-authoring-template
depend philosophersimprint
depend pittetd
diff --git a/Master/tlpkg/tlpsrc/osda.tlpsrc b/Master/tlpkg/tlpsrc/osda.tlpsrc
new file mode 100644
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlpsrc/osda.tlpsrc