From 65b62d8efc37396f78239504c50c4e72712cfbce Mon Sep 17 00:00:00 2001 From: Michael Kohlhase Date: Thu, 29 Sep 2016 07:45:48 +0200 Subject: [PATCH] adding deliverable report class --- eu/README | 5 ++ eu/eudelivreport.cls | 146 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 151 insertions(+) create mode 100644 eu/eudelivreport.cls diff --git a/eu/README b/eu/README index 5f05510..3b08937 100644 --- a/eu/README +++ b/eu/README @@ -6,9 +6,14 @@ start a new proposal just copy a suitable one and modify it to your needs. Note structure of EU proposals changes from time to time, so that the examples may be out of date. + Copyright(c) 2007 Michael Kohlhase The package is distributed under the terms of the LaTeX Project Public License (LPPL) The development version of this package can be found at https://svn.kwarc.info/repos/kwarc/doc/macros/forCTAN/proposal/eu +The class eudelivreport.cls is experimental, it is being developed for the +OpenDreamKit Project (see http://opendreamkit.org) and will be integrated more tightly +in the future once it stabilizes. + diff --git a/eu/eudelivreport.cls b/eu/eudelivreport.cls new file mode 100644 index 0000000..aaebbb9 --- /dev/null +++ b/eu/eudelivreport.cls @@ -0,0 +1,146 @@ +\ProvidesClass{deliverablereport} + +% Specific to ODK +\newcommand{\prop@gen@proposalnumber}{676541} +\newcommand{\prop@gen@acronym}{\href{http://opendreamkit.org}{OpenDreamKit}} +\newcommand{\prop@gen@instrument}{H2020-EINFRA-2015-1} +\newcommand{\prop@gen@logo}{../../media/ODK_elected_logo.png} +\newcommand{\prop@gen@image}{../../media/logos/Flag_of_Europe.png} + +\LoadClass[a4paper,twoside,12pt]{amsart} +\RequirePackage[utf8]{inputenc} +%\RequirePackage{ae,aecompl,aeguill} % pour utiliser << et >> +\RequirePackage[english]{babel} +\RequirePackage{times} +\RequirePackage[babel=true,kerning=true]{microtype} +\RequirePackage[left=2.5cm, right=2.5cm, bottom=2.5cm, top=2.5cm]{geometry} +\RequirePackage{graphicx} +\RequirePackage{mdframed} +\RequirePackage{paralist} +\RequirePackage{array} +\RequirePackage{listings} +\RequirePackage{../../Proposal/LaTeX-proposal/base/pdata} +\RequirePackage{import} +\input{../../Proposal/final.pdata} +\input{../../Proposal/WApersons} +\RequirePackage{hyperref} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Styling: adapt amsart's subsection macro to put a newline after the title +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\renewcommand\subsection{\@startsection{subsection}{2}% + \z@{.5\linespacing\@plus.7\linespacing}{.1\linespacing}% + {\normalfont\bfseries}} +\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}% + {3.25ex \@plus1ex \@minus.2ex}% + {-1em}% + {\normalfont\normalsize\bfseries}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Macros for defining metadata +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\newcommand{\deliverydate}[1]{\def\@deliverydate{#1}} +\newcommand{\duedate}[1]{\def\@duedate{#1}} + +% Same as in eu/euproposal.cls and base/proposal.cls, but with an +% hyperlink to the relevant github issues rather than an internal link +% (the proposal file being separate) + +\newcommand\site[1]{\@nameuse{wa@institution@#1@acronym}} +\newcommand\sitename[1]{\@nameuse{wa@institution@#1@name}} +\newcommand\delivref[2]{\href{https://github.com/OpenDreamKit/OpenDreamKit/issues/\csname deliv@#1@#2@issue\endcsname}{\csname deliv@#1@#2@label\endcsname}} +\newcommand\longdelivref[2]{\href{https://github.com/OpenDreamKit/OpenDreamKit/issues/\csname deliv@#1@#2@issue\endcsname}{\csname deliv@#1@#2@label\endcsname: ``\csname deliv@#1@#2@title\endcsname''}} +\newcommand\taskref[2]{\href{https://github.com/OpenDreamKit/OpenDreamKit/issues/\csname task@#1@#2@issue\endcsname}{\csname task@#1@#2@label\endcsname}} +\newcommand\longtaskref[2]{\href{https://github.com/OpenDreamKit/OpenDreamKit/issues/\csname task@#1@#2@issue\endcsname}{\csname task@#1@#2@label\endcsname: ``\csname task@#1@#2@title\endcsname''}} + +\newcommand{\deliverable}[2]{ + \gdef\deliv@label{\csname deliv@#1@#2@label\endcsname} + \gdef\deliv@title{\csname deliv@#1@#2@title\endcsname} + \gdef\deliv@lead{\csname deliv@#1@#2@lead\endcsname} + \gdef\deliv@issue{\csname deliv@#1@#2@issue\endcsname} + \def\@title{{Report on \pn deliverable \deliv@label{}\\[.2cm]% + \deliv@title + }}% + \def\shorttitle{Report on \deliv@label}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Header and footer configuration +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\RequirePackage{fancyhdr} +\pagestyle{fancyplain} +%\renewcommand{\headrulewidth}{0pt} +\renewcommand{\footrulewidth}{0.001pt} +\addtolength{\footskip}{\baselineskip} + +\fancyfoot[L]{\prop@gen@proposalnumber\quad \prop@gen@acronym} +\fancyfoot[C]{} +\fancyfoot[R]{\thepage} + +\fancyhead[RE,LO]{\includegraphics[height=2ex]{\prop@gen@image} \prop@gen@instrument } + +\providecommand{\tightlist}{% +\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Default front page +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\let\oldmaketitle=\maketitle +\renewcommand{\maketitle}{ + \oldmaketitle%\vfill + %\strut\par + \noindent + \begin{minipage}[c]{2.2cm}\includegraphics[width=2.2cm]{\prop@gen@logo}\end{minipage} + \begin{minipage}[c]{13cm} + \setlength{\extrarowheight}{.5ex} + %\renewcommand{\arraystretch}{1.1} + \begin{tabular}{|l|l|}\hline + Due on & \@duedate\\ + Delivered on & \@deliverydate\\ + Lead & \sitename{\deliv@lead} (\site{\deliv@lead})\\\hline + \multicolumn{2}{|p{13cm}|}{\small + Progress on and finalization of this deliverable has been tracked + publicly at:\par\noindent \url{https://github.com/OpenDreamKit/OpenDreamKit/issues/\deliv@issue}}\\\hline + \end{tabular} + \end{minipage} + %\bigskip + \thispagestyle{fancyplain} +} +\newcommand{\githubissuedescription}{% + \linebreak\phantom{X} % Workaround to get the topline drawn ... + \IfFileExists{github-issue-description.md} + {\begin{mdframed}% + \IfFileExists{github-issue-description.tex}% + {\input{github-issue-description}} + {\lstinputlisting[linewidth=14cm,breaklines=true, + columns=fullflexible,basicstyle=\footnotesize\sf, + frame=none] + {github-issue-description.md}} + \end{mdframed}} + {}} + + +%% For some reason compilation fails is this import is done earlier ... +\import{../../Proposal/}{preamble} + + +\AtEndDocument{ + \vfil + \begin{mdframed} + Disclaimer: this report, together with its annexes and the reports + for the earlier deliverables, is self contained for auditing and + reviewing purposes. Hyperlinks to external resources are meant as + a convenience for casual readers wishing to follow our progress; + such links have been checked for correctness at the time of + submission of the deliverable, but there is no guarantee implied + that they will remain valid. +\end{mdframed}} + +\endinput +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "report" +%%% End: