1759 lines
83 KiB
Diff
1759 lines
83 KiB
Diff
|
diff -up tex/latex/proposal/base/pdata.sty.noworkaddress tex/latex/proposal/base/pdata.sty
|
||
|
--- tex/latex/proposal/base/pdata.sty.noworkaddress 2022-12-31 12:19:13.710831748 -0500
|
||
|
+++ tex/latex/proposal/base/pdata.sty 2022-12-31 12:31:58.439831981 -0500
|
||
|
@@ -7,22 +7,33 @@
|
||
|
%% proposal.dtx (with options: `pdata')
|
||
|
%%
|
||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||
|
-\ProvidesPackage{pdata}[2016/04/15 v1.5 Project Data]
|
||
|
-\RequirePackage{workaddress}[2011/05/03]
|
||
|
+\ProvidesPackage{pdata}[2020/08/21 v1.7 Project Data]
|
||
|
\RequirePackage{eurosym}
|
||
|
\newif\if@sites\@sitesfalse\let\prop@gen@sites=\relax%
|
||
|
\newcounter{@site}%
|
||
|
\define@key{prop@gen}{site}{\@sitestrue\@dmp{site=#1}%
|
||
|
\stepcounter{@site}\pdata@def{site}{#1}{number}{\the@site}%
|
||
|
+\define@key{prop@gen}{#1name}{\pdata@def{site}{#1}{name}{##1}}
|
||
|
+\define@key{prop@gen}{#1acronym}{\pdata@def{site}{#1}{acronym}{##1}}
|
||
|
+\define@key{prop@gen}{#1country}{\pdata@def{site}{#1}{country}{##1}}
|
||
|
+\define@key{prop@gen}{#1countryshort}{\pdata@def{site}{#1}{countryshort}{##1}}
|
||
|
+\define@key{prop@gen}{#1streetaddress}{\pdata@def{site}{#1}{streetaddress}{##1}}
|
||
|
+\define@key{prop@gen}{#1townzip}{\pdata@def{site}{#1}{townzip}{##1}}
|
||
|
+\define@key{prop@gen}{#1url}{\pdata@def{site}{#1}{url}{##1}}
|
||
|
+\define@key{prop@gen}{#1logo}{\pdata@def{site}{#1}{logo}{##1}}
|
||
|
+\define@key{prop@gen}{#1type}{\pdata@def{site}{#1}{type}{##1}}
|
||
|
\@ifundefined{prop@gen@sites}{\xdef\prop@gen@sites{#1}}{\xdef\prop@gen@sites{\prop@gen@sites,#1}}%
|
||
|
\define@key{prop@gen}{#1RM}{\pdata@def{site}{#1}{intendedRM}{##1}}%
|
||
|
-\define@key{prop@gen}{#1RAM}{\pdata@def{site}{#1}{intendedRAM}{##1}}
|
||
|
+\if@RAM\define@key{prop@gen}{#1RAM}{\pdata@def{site}{#1}{intendedRAM}{##1}}\fi
|
||
|
\define@key{workpackage}{#1RM}{\pdata@def\wp@id{#1}{RM}{##1}}%
|
||
|
-\define@key{workpackage}{#1RAM}{\pdata@def\wp@id{#1}{RAM}{##1}}
|
||
|
-\define@key{prop@gen}{#1employed}{{\let\tabularnewline\relax\let\hline\relax\let\wa@ref\relax%
|
||
|
+\if@RAM\define@key{workpackage}{#1RAM}{\pdata@def\wp@id{#1}{RAM}{##1}}\fi
|
||
|
+\define@key{task}{#1RM}{\pdata@def{\wp@id @\task@id}{#1}{RM}{##1}}%
|
||
|
+\if@RAM\define@key{task}{#1RAM}{\pdata@def{\wp@id @\task@id}{#1}{RAM}{##1}}\fi
|
||
|
+\define@key{prop@gen}{#1shortname}{\pdata@def{site}{#1}{shortname}{##1}}
|
||
|
+\define@key{prop@gen}{#1employed}{{\let\tabularnewline\relax\let\hline\relax\let%
|
||
|
\@ifundefined{prop@gen@employed@lines}%
|
||
|
-{\xdef\prop@gen@employed@lines{\wa@ref{institution}{#1}{shortname} & ##1\tabularnewline\hline}}%
|
||
|
-{\xdef\prop@gen@employed@lines{\prop@gen@employed@lines \wa@ref{institution}{#1}{shortname} & ##1\tabularnewline\hline}}}}}
|
||
|
+{\xdef\prop@gen@employed@lines{\pdataref{site}{#1}{shortname} & ##1\tabularnewline\hline}}%
|
||
|
+{\xdef\prop@gen@employed@lines{\prop@gen@employed@lines\ \pdataref{site}{#1}{shortname} & ##1\tabularnewline\hline}}}}}
|
||
|
\define@key{prop@gen}{RM}{\@dmp{RM=#1}\if@sites%
|
||
|
\PackageWarning{Do not use the RM key in the presence of sites}\else%
|
||
|
\pdata@def{all}{intended}{RM}{#1}\fi}
|
||
|
@@ -30,10 +41,14 @@
|
||
|
\PackageWarning{Do not use the RAM key in the presence of sites}\else%
|
||
|
\pdata@def{all}{intended}{RAM}{#1}\fi}
|
||
|
\define@key{prop@gen}{PI}{\@dmp{PI=#1}%
|
||
|
+\define@key{prop@gen}{#1name}{\pdata@def{PI}{#1}{name}{##1}}%
|
||
|
+\define@key{prop@gen}{#1title}{\pdata@def{PI}{#1}{title}{##1}}%
|
||
|
+\define@key{prop@gen}{#1affiliation}{\pdata@def{PI}{#1}{affiliation}{##1}}%
|
||
|
+\define@key{prop@gen}{#1dept}{\pdata@def{PI}{#1}{dept}{##1}}%
|
||
|
\@ifundefined{prop@gen@PIs}{\xdef\prop@gen@PIs{#1}}{\xdef\prop@gen@PIs{\prop@gen@PIs,#1}}}
|
||
|
\define@key{prop@gen}{pubspage}{\@ifundefined{prop@gen@pubspages}%
|
||
|
{\xdef\prop@gen@pubspages{#1}}{\xdef\prop@gen@pubspages{\prop@gen@pubspages,#1}}}
|
||
|
-\define@key{prop@gen}{importfrom}{\message{importing proposal data from #1.pdata}\readpdata{#1}}
|
||
|
+\define@key{prop@gen}{importfrom}{\readpdata{#1}}
|
||
|
\define@key{prop@gen}{instrument}{\def\prop@gen@instrument{#1}%
|
||
|
\pdata@def{prop}{gen}{instrument}{#1}\@dmp{inst=#1}}
|
||
|
\define@key{prop@gen}{title}{\def\prop@gen@title{#1}%
|
||
|
@@ -81,9 +96,12 @@
|
||
|
\newwrite\pdata@out
|
||
|
\newcommand\pdata@open[1]{\immediate\openout\pdata@out=#1.pdata}
|
||
|
\newcommand\pdata@close{\closeout\pdata@out}
|
||
|
-\newcommand\readpdata[1]{\IfFileExists{#1.pdata}
|
||
|
-{\message{proposal: Reading Project Data}\makeatletter\input{#1.pdata}\makeatother}
|
||
|
-{proposal: No Project Data found, (forward) references may be compromized}}
|
||
|
+\newcommand\readpdata[1]{\IfFileExists{./#1.pdata}
|
||
|
+ {\PackageInfo{pdata}{importing proposal data from #1.pdata}%
|
||
|
+ \makeatletter\input{./#1.pdata}\makeatother}
|
||
|
+{\PackageError{pdata}
|
||
|
+ {No project data file found at #1.pdata,\MessageBreak (forward) references may be compromized}
|
||
|
+ {You may have to re-format the original proposal to generate a new project data file #1.pdata}}}
|
||
|
\newcommand\pdata@target[3]{\hypertarget{#1@#2@target}{#3}}
|
||
|
\newcommand\pdata@def[4]{%\@pdata@def{#1}{#2}{#3}{#4}%
|
||
|
\protected@write\pdata@out{}{\string\@pdata@def{#1}{#2}{#3}{#4}}}
|
||
|
@@ -121,9 +139,11 @@
|
||
|
\newcommand{\signatures}[1]{\section{#1}
|
||
|
\qquad\number\day. \number\month. \number\year\\[6ex]
|
||
|
\strut\qquad Date\hfill\@for\@p:=\prop@gen@PIs\do{%
|
||
|
-\wa@ref{person}\@p{personaltitle}~\wa@ref{person}\@p{name}\hfill}}
|
||
|
-\def\@dmp#1{\ifkeys\marginpar{#1}\fi}
|
||
|
+\pdataref{PI}\@p{title}~\pdataref{PI}\@p{name}\hfill}}
|
||
|
+\def\@dmp#1{\ifkeys\marginpar{\small #1}\fi}
|
||
|
\renewcommand\euro{\officialeuro\xspace}
|
||
|
+
|
||
|
+
|
||
|
\endinput
|
||
|
%%
|
||
|
%% End of file `pdata.sty'.
|
||
|
diff -up tex/latex/proposal/base/proposal.cls.noworkaddress tex/latex/proposal/base/proposal.cls
|
||
|
--- tex/latex/proposal/base/proposal.cls.noworkaddress 2016-04-15 17:38:41.000000000 -0400
|
||
|
+++ tex/latex/proposal/base/proposal.cls 2022-12-31 12:31:58.439831981 -0500
|
||
|
@@ -7,7 +7,7 @@
|
||
|
%% proposal.dtx (with options: `cls')
|
||
|
%%
|
||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||
|
-\ProvidesClass{proposal}[2016/04/15 v1.5 Project Proposal]
|
||
|
+\ProvidesClass{proposal}[2020/08/21 v1.7 Project Proposal]
|
||
|
\newif\if@wpsubsection\@wpsubsectionfalse
|
||
|
\newif\ifsubmit\submitfalse
|
||
|
\newif\ifgrantagreement\grantagreementfalse
|
||
|
@@ -18,11 +18,15 @@
|
||
|
\newif\if@RAM\@RAMfalse
|
||
|
\newif\if@svninfo\@svninfofalse
|
||
|
\newif\if@gitinfo\@gitinfofalse
|
||
|
+\newif\if@numericcites\@numericcitesfalse
|
||
|
+\newif\if@longtasklabels\@longtasklabelsfalse
|
||
|
+\newif\if@attachments\@attachmentsfalse
|
||
|
\def\proposal@class{article}
|
||
|
\DeclareOption{wpsubsection}{\@wpsubsectiontrue}
|
||
|
\DeclareOption{submit}{\submittrue}
|
||
|
\DeclareOption{grantagreement}{\grantagreementtrue}
|
||
|
\DeclareOption{gitinfo}{\@gitinfotrue}
|
||
|
+\DeclareOption{numericcites}{\@numericcitestrue}
|
||
|
\DeclareOption{svninfo}{\@svninfotrue}
|
||
|
\DeclareOption{public}{\publictrue}
|
||
|
\DeclareOption{noworkareas}{\work@areasfalse\PassOptionsToClass{\CurrentOption}{pdata}}
|
||
|
@@ -30,995 +34,14 @@
|
||
|
\DeclareOption{report}{\def\proposal@class{report}}
|
||
|
\DeclareOption{keys}{\keystrue}
|
||
|
\DeclareOption{deliverables}{\delivstrue}
|
||
|
-\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
|
||
|
+\DeclareOption{longtasklabels}{\@longtasklabelstrue}
|
||
|
+\DeclareOption{attachments}{\@attachmentsfalse}
|
||
|
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\proposal@class}}
|
||
|
\ProcessOptions
|
||
|
\LoadClass[a4paper,twoside]{\proposal@class}
|
||
|
-\RequirePackage{amssymb}
|
||
|
-\RequirePackage{wasysym}
|
||
|
-\RequirePackage{url}
|
||
|
-\RequirePackage{graphicx}
|
||
|
-\RequirePackage{colortbl}
|
||
|
-\RequirePackage{xcolor}
|
||
|
-\RequirePackage{rotating}
|
||
|
-\RequirePackage{fancyhdr}
|
||
|
-\RequirePackage{array}
|
||
|
-\RequirePackage{xspace}
|
||
|
-\RequirePackage{comment}
|
||
|
-\AtBeginDocument{\ifpublic\excludecomment{private}\fi}
|
||
|
-\RequirePackage{tikz}
|
||
|
-\RequirePackage{paralist}
|
||
|
-\RequirePackage[a4paper,margin=18mm]{geometry}
|
||
|
-\RequirePackage{boxedminipage}
|
||
|
-\renewcommand{\thempfootnote}{\roman{mpfootnote}}
|
||
|
-\renewcommand{\familydefault}{\sfdefault}
|
||
|
-\RequirePackage[scaled=.90]{helvet}
|
||
|
-\RequirePackage{textcomp}
|
||
|
-\RequirePackage[hyperref=auto,style=alphabetic,defernumbers=true,backend=bibtex,backref=true,firstinits=true,maxbibnames=6]{biblatex}[2010/11-19]
|
||
|
-\RequirePackage{csquotes}
|
||
|
-\RequirePackage{mdframed}
|
||
|
-\RequirePackage{pdata}
|
||
|
-\definecolor{darkblue}{rgb}{0,0,.7}
|
||
|
-\ifsubmit\def\prop@link@color{darkblue}\else\def\prop@link@color{blue}\fi
|
||
|
-\RequirePackage[bookmarks=true,linkcolor=\prop@link@color,
|
||
|
- citecolor=\prop@link@color,urlcolor=\prop@link@color,colorlinks=true,
|
||
|
- breaklinks=true, bookmarksopen=true]{hyperref}
|
||
|
-\ifsubmit
|
||
|
-\RequirePackage[hide]{ed}
|
||
|
-\if@svninfo\RequirePackage[final,today]{svninfo}\fi
|
||
|
-\else
|
||
|
-\RequirePackage[show]{ed}
|
||
|
-\if@svninfo\RequirePackage[eso-foot,today]{svninfo}\fi
|
||
|
-\if@gitinfo\RequirePackage[mark]{gitinfo2}\fi
|
||
|
-\fi
|
||
|
-\renewcommand\ednoteshape{\sl\footnotesize}
|
||
|
-\ifpublic\excludecomment{private}\else\includecomment{private}\fi
|
||
|
-\setcounter{secnumdepth}{3}
|
||
|
-\newif\ifofpage\ofpagefalse
|
||
|
-\ifgrantagreement
|
||
|
-\fancyhead{}
|
||
|
-\renewcommand{\headrulewidth}{0pt}
|
||
|
-\renewcommand{\footrulewidth}{0.4pt}
|
||
|
-\else
|
||
|
-\fancyhead[RE,LO]{\prop@gen@acronym}
|
||
|
-\fancyhfoffset{0pt}
|
||
|
-\fi
|
||
|
-\fancyfoot[C]{}
|
||
|
-\newcommand\prop@of@pages[2]{page~#1\ifofpage~of~#2\fi}
|
||
|
-\ifgrantagreement
|
||
|
-\fancyfoot[L]{\prop@gen@proposalnumber\quad \prop@gen@acronym\quad --\quad Part B}
|
||
|
-\fancyfoot[R]{\thepage}
|
||
|
-\else
|
||
|
-\fancyhead[LE,RO]{\prop@of@pages\thepage{\pdataref@num{prop}{page}{last}}}
|
||
|
-\fi
|
||
|
-\pagestyle{fancyplain}
|
||
|
-\newmdenv[settings=\large]{emphbox}
|
||
|
-\newenvironment{prop@proposal}
|
||
|
-{\thispagestyle{empty}%
|
||
|
-\begin{center}
|
||
|
- {\LARGE \prop@gen@instrument}\\[.2cm]
|
||
|
- {\LARGE\textbf{\prop@gen@title}}\\[.3cm]
|
||
|
- {\LARGE Acronym: {\prop@gen@acronym}}\\[.2cm]
|
||
|
- {\large\today}\\[1em]
|
||
|
- \begin{tabular}{c*{\the@PIs}{c}}
|
||
|
- \prop@tl\prop@gen@PIs{\wa@ref{person}\tl@ext{name}}\\
|
||
|
- \prop@tl\prop@gen@PIs{\wa@ref{institution}{\wa@ref{person}\tl@ext{affiliation}}{name}}
|
||
|
- \end{tabular}\\[2cm]
|
||
|
-\end{center}
|
||
|
-\setcounter{tocdepth}{2}\tableofcontents\newpage\setcounter{page}{1}}
|
||
|
-{\section{List of Attachments}
|
||
|
-\begin{itemize}
|
||
|
-\@for\@I:=\prop@gen@PIs\do{%
|
||
|
-\item Curriculum Vitae and list of publications for
|
||
|
- \wa@ref{person}\@I{personaltitle} \wa@ref{person}\@I{name}}
|
||
|
-\end{itemize}\newpage
|
||
|
-\printbibliography[heading=warnpubs]}
|
||
|
-\newenvironment{proposal}[1][]{\readpdata\jobname
|
||
|
-\ofpagetrue\setkeys{prop@gen}{#1}
|
||
|
-\pdata@open\jobname
|
||
|
-\if@sites\else
|
||
|
-\define@key{workpackage}{RM}{\pdata@def{wp}\wp@id{RM}{##1}\@dmp{RM=##1}}
|
||
|
-\define@key{workpackage}{RAM}{\pdata@def{wp}\wp@id{RAM}{##1}\@dmp{RAM=##1}}
|
||
|
-\fi
|
||
|
-\newcounter{@PIs}
|
||
|
-\@ifundefined{prop@gen@PIs}{}{\@for\@I:=\prop@gen@PIs\do{\stepcounter{@PIs}}}
|
||
|
-\newcounter{@sites}
|
||
|
-\@ifundefined{prop@gen@sites}{}{\@for\@I:=\prop@gen@sites\do{\stepcounter{@sites}}}
|
||
|
-\setcounter{page}{0}
|
||
|
-\begin{prop@proposal}}
|
||
|
-{\end{prop@proposal}
|
||
|
-\pdata@def{prop}{page}{last}{\thepage}\ofpagefalse
|
||
|
-\pdata@close}
|
||
|
-\newcommand\site[1]{\hyperlink{site@#1@target}{\wa@ref{institution}{#1}{acronym}}}
|
||
|
-\newcommand\sitename[1]{\hyperlink{site@#1@target}{\wa@ref{institution}{#1}{name}}}
|
||
|
-\newcommand\objective@label[1]{O#1}
|
||
|
-\define@key{obj}{id}{\def\obj@id{#1}\@dmp{id=#1}}
|
||
|
-\define@key{obj}{title}{\def\obj@title{#1}\@dmp{title=#1}}
|
||
|
-\define@key{obj}{short}{\def\obj@short{#1}\@dmp{short=#1}}
|
||
|
-\newcounter{objective}
|
||
|
-\newenvironment{objective}[1][]
|
||
|
-{\let\obj@id\relax\let\obj@title\relax\let\obj@short\relax%
|
||
|
-\setkeys{obj}{#1}\stepcounter{objective}%
|
||
|
-\goodbreak\smallskip\par\noindent%
|
||
|
-\textbf{\objective@label{\arabic{objective}}:%
|
||
|
-~\pdata@target{obj}{\obj@id}{\pdataref{obj}{\obj@id}{title}}\ignorespaces}%
|
||
|
-\pdata@def{obj}\obj@id{label}{\objective@label\theobjective}%
|
||
|
-\@ifundefined{obj@title}{}{\pdata@def{obj}\obj@id{title}\obj@title}%
|
||
|
-\@ifundefined{obj@short}{}{\pdata@def{obj}\obj@id{short}\obj@short}}
|
||
|
-{}
|
||
|
-\newcommand\OBJref[1]{\pdataRef{obj}{#1}{label}}
|
||
|
-\newcommand\OBJtref[1]{\OBJref{#1}: \pdataRefFB{obj}{#1}{short}{title}}
|
||
|
-\ifwork@areas
|
||
|
-\define@key{workarea}{id}{\def\wa@id{#1}\@dmp{id=#1}}
|
||
|
-\define@key{workarea}{title}{\pdata@def{wa}\wa@id{title}{#1}}
|
||
|
-\define@key{workarea}{short}{\pdata@def{wa}\wa@id{short}{#1}}
|
||
|
-\define@key{workarea}{lead}{\pdata@def{wa}\wa@id{lead}{#1}}
|
||
|
-\fi
|
||
|
-\define@key{workpackage}{id}{\def\wp@id{#1}\@dmp{id=#1}}
|
||
|
-\define@key{workpackage}{title}{\pdata@def{wp}\wp@id{title}{#1}}
|
||
|
-\define@key{workpackage}{short}{\pdata@def{wp}\wp@id{short}{#1}}
|
||
|
-\define@key{workpackage}{lead}{\pdata@def{wp}\wp@id{lead}{#1}\def\wp@lead{#1}\@dmp{lead=#1}}
|
||
|
-\define@key{workpackage}{type}{\def\wp@type{#1}\pdata@def{wp}\wp@id{type}{#1}}
|
||
|
-\define@key{workpackage}{wphases}{\def\wp@wphases{#1}\pdata@def{wp}\wp@id{wphases}{#1}}
|
||
|
-\define@key{workpackage}{swsites}[true]{\def\wp@swsites{#1}}
|
||
|
-\newcommand\wp@mk@title[1]{Work Package {#1}}
|
||
|
-\newcommand\wp@label[1]{WP{#1}}
|
||
|
-\ifwork@areas
|
||
|
-\newcommand\wa@label[1]{WA{#1}}
|
||
|
-\newcommand\wa@mk@title[1]{Work Area {#1}}
|
||
|
-\fi
|
||
|
-\ifwork@areas\newcounter{wa}\newcounter{wp}[wa]\else\newcounter{wp}\fi
|
||
|
-\ifdelivs\newcounter{deliv}[wp]\fi
|
||
|
-\newcounter{allwp}
|
||
|
-\newcommand\update@wps[1]{\@ifundefined{@wps}{\xdef\@wps{#1}}{\xdef\@wps{\@wps,#1}}}
|
||
|
-\newcommand\update@tasks[1]{\@ifundefined{@tasks}{\xdef\@tasks{#1}}{\xdef\@tasks{\@tasks,#1}}}
|
||
|
-\newcommand\update@deps[1]{\@ifundefined{task@deps}{\xdef\task@deps{#1}}{\xdef\task@deps{\task@deps,#1}}}
|
||
|
-\ifwork@areas\def\update@was#1{\@ifundefined{@was}{\xdef\@was{#1}}{\xdef\@was{\@was,#1}}}\fi
|
||
|
-\newcommand\decode@wphase[1]{\expandafter\decode@p@start#1@%
|
||
|
-\local@count\wphase@end\advance\local@count by -\wphase@start%
|
||
|
-\def\wphase@len{\the\local@count}}
|
||
|
-\def\decode@p@start#1-#2@{\def\wphase@start{#1}\decode@p@end#2!@}
|
||
|
-\def\decode@p@end#1!#2@{\def\wphase@end{#1}\def\@test{#2}%
|
||
|
-\ifx\@test\@empty\def\wphase@force{1}\else\decode@p@force#2\fi}
|
||
|
-\def\decode@p@force#1!{\def\wphase@force{#1}}
|
||
|
-\def\wphases@start#1-#2@{\def\wphase@start{#1}}
|
||
|
-\newcommand\startend@wphases[1]{\def\@test{#1}
|
||
|
-\ifx\@test\@empty\def\wphase@start{0}\def\wphase@end{0}\else%
|
||
|
-\@for\@I:=#1\do{\expandafter\decode@p@start\@I @}
|
||
|
-\expandafter\wphases@start#1@\fi}
|
||
|
-\newcounter{wp@RM}
|
||
|
-\if@RAM\newcounter{wp@RAM}\fi
|
||
|
-\newenvironment{work@package}[1][]%
|
||
|
-{\def\wp@wphases{0-0}% default values
|
||
|
-\def\wp@swsites{false}
|
||
|
-\setkeys{workpackage}{#1}\stepcounter{wp}\stepcounter{allwp}%
|
||
|
-\startend@wphases\wp@wphases%
|
||
|
-\pdata@def{wp}\wp@id{start}\wphase@start\pdata@def{wp}\wp@id{end}\wphase@end%
|
||
|
-\@ifundefined{wp@type}{}{\pdata@def{wp}\wp@id{type}\wp@type}%
|
||
|
-\let\@tasks=\relax%
|
||
|
-\edef\wp@num{\ifwork@areas\thewa.\fi\thewp}%
|
||
|
-\pdata@def{wp}\wp@id{label}{\wp@label\wp@num}%
|
||
|
-\pdata@def{wp}\wp@id{number}{\thewp}%
|
||
|
-\pdata@def{wp}\wp@id{page}{\thepage}%
|
||
|
-\update@wps\wp@id%
|
||
|
-\edef\wp@num{\ifwork@areas\thewa.\fi\thewp}%
|
||
|
-\pdata@def{wp}{\wp@id}{num}{\thewp}%
|
||
|
-\if@sites%
|
||
|
-\setcounter{wp@RM}{0}\if@RAM\setcounter{wp@RAM}{0}\fi%
|
||
|
-\@for\@site:=\prop@gen@sites\do{%
|
||
|
-\edef\@RM{\pdataref@num\wp@id\@site{RM}}\addtocounter{wp@RM}{\@RM}%
|
||
|
-\if@RAM\edef\@RAM{\pdataref@num\wp@id\@site{RAM}}\addtocounter{wp@RAM}{\@RAM}\fi}
|
||
|
-\pdata@def{wp}\wp@id{RM}{\thewp@RM}%
|
||
|
-\if@RAM\pdata@def{wp}\wp@id{RAM}{\thewp@RAM}\fi%
|
||
|
-\fi}% if@sites
|
||
|
-{\@ifundefined{@tasks}{}{\pdata@def{\wp@id}{task}{ids}\@tasks}}
|
||
|
-\newenvironment{workpackage}[1][]%
|
||
|
-{\begin{work@package}[#1]%
|
||
|
-\ifgrantagreement\else
|
||
|
-\if@sites\goodbreak\medskip\wpheadertable%
|
||
|
-\else\subsubsection*{{\wptitle} (\wprm)}\fi%
|
||
|
-\addcontentsline{toc}{paragraph}{{\wp@mk@title\thewp}: \pdataref{wp}\wp@id{title}}%
|
||
|
-\noindent\ignorespaces%
|
||
|
-\fi}
|
||
|
-{\end{work@package}}
|
||
|
-\newcommand\wptitle{\wp@mk@title{\wp@num}: \pdata@target{wp}{\wp@id}{\pdataref{wp}\wp@id{title}}}
|
||
|
-\newcommand\wprm{\pdataref@safe{wp}\wp@id{RM}\if@RAM\ RM+\pdataref{wp}\wp@id{RAM} RAM\fi}
|
||
|
-\newcount\site@contribution%
|
||
|
-\newcommand\if@site@contributes[2]{%
|
||
|
-\ifx\prop@gen@compactht\@true
|
||
|
-\if@RAM\ifnum\pdataref@num\wp@id{#1}{RM} > 0 \ifnum \pdataref@num\wp@id{#1}{RAM} > 0 #2\fi\fi
|
||
|
-\else\ifnum\pdataref@num\wp@id{#1}{RM} > 0 #2\fi\fi
|
||
|
-\else #2\fi}
|
||
|
-\newcounter{wp@sites@num}
|
||
|
-\newcommand\wp@sites@efforts@lines{%
|
||
|
-\setcounter{wp@sites@num}{0}
|
||
|
-{\let\G@refundefinedtrue=\relax\let\@latex@warning=\relax\let\@sw\relax%
|
||
|
-\let\site\relax\let\textbf\relax\let\sum@style\relax\let\lead@style\relax%
|
||
|
-\let\pn\relax\let\sys\relax%
|
||
|
-\xdef\wp@sites@line{\wp@legend@site}\xdef\wp@efforts@line{\wp@legend@effort}%initialize lines
|
||
|
-\@for\@site:=\prop@gen@sites\do{\if@site@contributes\@site{\stepcounter{wp@sites@num}}%
|
||
|
-\xdef\wp@sites@line{\wp@sites@line%
|
||
|
-\if@site@contributes\@site{&%
|
||
|
-\ifx\wp@swsites\@true%
|
||
|
-\@sw{\ifx\@site\wp@lead\lead@style{\site{\@site}}\else\site{\@site}\fi}%
|
||
|
-\else\ifx\@site\wp@lead\lead@style{\site{\@site}}\else\site{\@site}\fi%
|
||
|
-\fi}}%
|
||
|
-\xdef\wp@efforts@line{\wp@efforts@line%
|
||
|
-\if@site@contributes\@site{&%
|
||
|
-\ifx\@site\wp@lead%
|
||
|
-\lead@style{\pdataref@safe\wp@id\@site{RM}\if@RAM+\pdataref@safe\wp@id\@site{RAM}\fi}
|
||
|
-\else\pdataref@safe\wp@id\@site{RM}\if@RAM+\pdataref@safe\wp@id\@site{RAM}\fi\fi}}%
|
||
|
-}% do
|
||
|
-\xdef\wp@sites@line{\wp@sites@line&\sum@style{\wp@legend@all}}%
|
||
|
-\xdef\wp@efforts@line{\wp@efforts@line&
|
||
|
-\sum@style{\textbf{\pdataref{wp}\wp@id{RM}\if@RAM+\pdataref{wp}\wp@id{RAM}\fi}}}}}
|
||
|
-\newcommand\wpheadertable{%
|
||
|
-\wp@sites@efforts@lines%
|
||
|
-\par\noindent\begin{tabular}{|l||l|*{\thewp@sites@num}{c|}|c|}\hline%
|
||
|
-\textbf{\wp@mk@title{\wp@num}}&\wp@sites@line\\\hline%
|
||
|
-\textsf{\pdata@target{wp}{\wp@id}{\pdataref{wp}\wp@id{title}}} &\wp@efforts@line\\\hline%
|
||
|
-\end{tabular}\smallskip\par\noindent\ignorespaces}
|
||
|
-\newcommand\wp@legend@site{Site}
|
||
|
-\newcommand\wp@legend@effort{Effort\if@RAM{ (RM+RAM)}\fi}
|
||
|
-\newcommand\wp@legend@all{\textbf{all}}
|
||
|
-\newcounter{prop@RM}\if@RAM\newcounter{prop@RAM}\fi
|
||
|
-\ifwork@areas
|
||
|
-\newcounter{wa@RM}\if@RAM\newcounter{wa@RAM}\fi\newcounter{wa@wps}
|
||
|
-\newenvironment{workarea}[1][]
|
||
|
-{\setkeys{workarea}{#1}
|
||
|
-\let\@wps=\relax
|
||
|
-\stepcounter{wa}
|
||
|
-\pdata@def{wa}{\wa@id}{label}{\wa@label\thewa}
|
||
|
-\pdata@def{wa}{\wa@id}{number}{\thewa}
|
||
|
-\pdata@def{wa}{\wa@id}{page}{\thepage}
|
||
|
-\update@was{\wa@id}
|
||
|
-\pdata@def{wa}{\wa@id}{num}{\thewa}
|
||
|
-\setcounter{wa@RM}{0}\if@RAM\setcounter{wa@RAM}{0}\fi\setcounter{wa@wps}{0}
|
||
|
-\edef\@@wps{\pdataref@aux\wa@id{wp}{ids}}
|
||
|
-\@for\@wp:=\@@wps\do{\stepcounter{wa@wps}%
|
||
|
-\if@sites
|
||
|
-\@for\@site:=\prop@gen@sites\do{%
|
||
|
- \edef\@RM{\pdataref@num\@wp\@site{RM}}
|
||
|
- \if@RAM\edef\@RAM{\pdataref@num\@wp\@site{RAM}}\fi
|
||
|
- \addtocounter{wa@RM}{\@RM}\addtocounter{prop@RM}{\@RM}
|
||
|
- \if@RAM\addtocounter{wa@RAM}{\@RAM}\addtocounter{prop@RAM}{\@RAM}\fi}
|
||
|
-\else
|
||
|
-\edef\@RM{\pdataref@num{wp}\@wp{RM}}
|
||
|
-\if@RAM\edef\@RAM{\pdataref@num{wp}\@wp{RAM}}\fi
|
||
|
-\addtocounter{wa@RM}{\@RM}\addtocounter{prop@RM}{\@RM}
|
||
|
-\if@RAM\addtocounter{wa@RAM}{\@RAM}\addtocounter{prop@RAM}{\@RAM}\fi
|
||
|
-\fi}
|
||
|
-\pdata@def{wa}\wa@id{RM}\thewa@RM
|
||
|
-\pdata@def{prop}{all}{RM}\theprop@RM
|
||
|
-\if@RAM
|
||
|
-\pdata@def{wa}\wa@id{RAM}\thewa@RAM
|
||
|
-\pdata@def{prop}{all}{RAM}\theprop@RAM
|
||
|
-\fi
|
||
|
-\subsubsection*{{\wa@mk@title\thewa}: {\pdata@target{wa}\wa@id{\pdataref{wa}\wa@id{title}}}}
|
||
|
-\addcontentsline{toc}{subsubsection}{{\wa@mk@title\thewa}: \pdataref{wa}\wa@id{title}}%
|
||
|
-\ignorespaces}
|
||
|
-{\@ifundefined{@wps}{}{\pdata@def\wa@id{wp}{ids}\@wps}\pdata@def\wa@id{wp}{count}\thewa@wps}\fi
|
||
|
-\ifdelivs\newwrite\wpg@delivs\fi
|
||
|
-\newenvironment{workplan}%
|
||
|
-{\ifdelivs\immediate\openout\wpg@delivs=\jobname.delivs\fi
|
||
|
-\ifwork@areas\let\@was=\relax\else\let\@wps=\relax\fi}%
|
||
|
-{\@ifundefined{task@deps}{}{\pdata@def{all}{task}{deps}{\task@deps}}
|
||
|
-\pdata@def{all}{task}{count}{\thealltasks}
|
||
|
-\ifwork@areas
|
||
|
-\@ifundefined{@was}{}{\pdata@def{all}{wa}{ids}\@was}
|
||
|
-\else
|
||
|
-\@ifundefined{@wps}{}{\pdata@def{all}{wp}{ids}\@wps}
|
||
|
-\fi
|
||
|
-\ifdelivs\@ifundefined{mile@stones}{}
|
||
|
-{\@for\@I:=\mile@stones\do{%
|
||
|
-\pdata@def{mile}\@I{delivs}{\@ifundefined{\@I delivs}{}{\csname\@I delivs\endcsname}}}}\fi
|
||
|
-\ifwork@areas\pdata@def{all}{wa}{count}{\thewa}\fi
|
||
|
-\pdata@def{all}{wp}{count}{\theallwp}
|
||
|
-\ifdelivs
|
||
|
-\pdata@def{all}{deliverables}{count}{\thedeliverable}
|
||
|
-\pdata@def{all}{milestones}{count}{\themilestone}
|
||
|
-\fi
|
||
|
-\ifdelivs\closeout\wpg@delivs\fi}
|
||
|
-\newcommand\deliv@error{\PackageError{proposal}
|
||
|
-{To use use deliverables, you have to specify the option 'deliverables'}}
|
||
|
-\newenvironment{wpdelivs}{\begin{wp@delivs}}{\end{wp@delivs}}
|
||
|
-\newenvironment{wp@delivs}
|
||
|
-{\ifdelivs\textbf\deliv@legend@delivs:\\[-3ex]%
|
||
|
-\begin{compactdesc}\else\deliv@error\fi}
|
||
|
-{\ifdelivs\end{compactdesc}\fi}
|
||
|
-\newcommand\deliv@legend@delivs{Deliverables}
|
||
|
-\newenvironment{wadelivs}
|
||
|
-{\textbf\deliv@legend@delivs:\\[-3ex]\begin{wp@delivs}}
|
||
|
-{\end{wp@delivs}}
|
||
|
-\newcommand\lec[1]{\strut\hfil\strut\null\nobreak\hfill\hbox{$\leadsto$#1}\par}
|
||
|
-\newcommand\deliv@label[1]{D{#1}}
|
||
|
-\newcommand\delivref[2]{\pdataRef{deliv}{#1#2}{label}}
|
||
|
-\newcommand\localdelivref[1]{\delivref{\wp@id}{#1}}
|
||
|
-\newcommand\delivtref[2]{\delivref{#1}{#2}: \pdataRefFB{deliv}{#1#2}{short}{title}}
|
||
|
-\newcommand\localdelivtref[1]{\delivtref{\wp@id}{#1}}
|
||
|
-\define@key{deliv}{id}{\def\deliv@id{#1}}
|
||
|
-\define@key{deliv}{due}{\def\deliv@due{#1}}
|
||
|
-\define@key{deliv}{dissem}{\def\deliv@dissem{#1}}
|
||
|
-\define@key{deliv}{nature}{\def\deliv@nature{#1}}
|
||
|
-\define@key{deliv}{miles}{\def\deliv@miles{#1}}
|
||
|
-\define@key{deliv}{short}{\def\deliv@short{#1}}
|
||
|
-\define@key{deliv}{lead}{\def\deliv@lead{#1}}
|
||
|
-\newcounter{deliverable}
|
||
|
-\newcommand{\wpg@deliv}[3]{% keys, title, type
|
||
|
-\stepcounter{deliverable}
|
||
|
-\let\deliv@miles=\relax% clean state
|
||
|
-\def\@type{#3}\def\@wp{wp}% set up ifx
|
||
|
-\def\wpg@id{\csname #3@id\endcsname}
|
||
|
-\setkeys{deliv}{#1}\stepcounter{deliv}% set state
|
||
|
-\ifx\@type\@wp\def\current@label{\deliv@label{\ifwork@areas\thewa.\fi\thewp.\thedeliv}}
|
||
|
-\else\def\current@label{\deliv@label{\thewa.\thedeliv}}\fi
|
||
|
-\pdata@def{deliv}{\wpg@id\deliv@id}{label}{\current@label}
|
||
|
-\pdata@def{deliv}{\wpg@id\deliv@id}{title}{#2}
|
||
|
-\pdata@def{deliv}{\wpg@id\deliv@id}{page}{\thepage}%
|
||
|
-\@ifundefined{deliv@short}
|
||
|
-{\pdata@def{deliv}{\wpg@id\deliv@id}{short}{#2}}
|
||
|
-{\pdata@def{deliv}{\wpg@id\deliv@id}{short}{\deliv@short}}
|
||
|
-\@ifundefined{deliv@nature}
|
||
|
-{\protect\G@refundefinedtrue\@latex@warning{key 'nature' for Deliv \wpg@id undefined}}
|
||
|
-{\pdata@def{deliv}{\wpg@id\deliv@id}{nature}{\deliv@nature}}
|
||
|
-\@ifundefined{deliv@dissem}
|
||
|
-{\protect\G@refundefinedtrue\@latex@warning{key 'dissem' for Deliv \wpg@id undefined}}
|
||
|
-{\pdata@def{deliv}{\wpg@id\deliv@id}{dissem}{\deliv@dissem}}
|
||
|
-\@ifundefined{deliv@lead}
|
||
|
-{\protect\G@refundefinedtrue\@latex@warning{key 'lead' for Deliv \wpg@id undefined}}
|
||
|
-{\pdata@def{deliv}{\wpg@id\deliv@id}{lead}{\deliv@lead}}
|
||
|
-\@ifundefined{deliv@due}{}{%
|
||
|
-\@for\@I:=\deliv@due\do{\protected@write\wpg@delivs{}{\string\deliverable%
|
||
|
-{\ifnum\@I<10 0\@I\else\@I\fi}% sort key
|
||
|
-{\@I}% due date
|
||
|
-{\current@label}% label
|
||
|
-{\@ifundefined{deliv@id}{??}{\wpg@id\deliv@id}}% id
|
||
|
-{\@ifundefined{deliv@dissem}{??}{\deliv@dissem}}% dissemination level
|
||
|
-{\@ifundefined{deliv@nature}{??}{\deliv@nature}}% nature
|
||
|
-{#2}
|
||
|
-{\ifx\@type\@wp{WP\ifwork@areas\thewa.\fi\thewp}\else{WA\thewa}\fi}%WP
|
||
|
-{\@ifundefined{deliv@lead}{??}{\string\site{\deliv@lead}}}}}}% lead
|
||
|
-\item[\current@label\ (%
|
||
|
-\delivs@legend@due: \@ifundefined{deliv@due}{??}{\deliv@due},
|
||
|
-\delivs@legend@nature: \@ifundefined{deliv@nature}{??}{\deliv@nature},
|
||
|
-\delivs@legend@dissem: \@ifundefined{deliv@dissem}{??}{\deliv@dissem},
|
||
|
-\delivs@legend@lead: \@ifundefined{deliv@lead}{??}{\site{\deliv@lead}})]
|
||
|
- \pdata@target{deliv}{\wpg@id\deliv@id}{\textit{#2}}
|
||
|
-\@ifundefined{deliv@miles}{}{% print the milestones and update their deliverables
|
||
|
-\let\m@sep=\relax% do not print the separator the first time round
|
||
|
-\lec{\@for\@I:=\deliv@miles\do{% Iterate over the milestones mentioned
|
||
|
-\m@sep\pdataRef{mile}{\@I}{label}% print the milestone reference
|
||
|
-\let\m@sep=,}}%set the separator for the next times
|
||
|
-\def\d@sep{,}
|
||
|
- \@for\@I:=\deliv@miles\do{% Iterate over the milestones mentioned
|
||
|
- \expandafter\ifx\csname\@I delivs\endcsname\relax% Check that the miles@delivs is empty
|
||
|
- {\expandafter\xdef\csname\@I delivs\endcsname{\wpg@id\deliv@id}}% if so, skip the separator
|
||
|
- \else\expandafter\xdef\csname\@I delivs\endcsname%if not add it
|
||
|
- {\csname\@I delivs\endcsname\d@sep\wpg@id\deliv@id}\fi}}}
|
||
|
-\newenvironment{wadeliv}[2][]{\ifdelivs\wpg@deliv{#1}{#2}{wa}\else\deliv@error\fi}{}
|
||
|
-\newenvironment{wpdeliv}[2][]{\ifdelivs\wpg@deliv{#1}{#2}{wp}\else\deliv@error\fi}{}
|
||
|
-\newcommand\milestone@label[1]{M{#1}}
|
||
|
-\newcommand\mileref[1]{\pdataRef{mile}{#1}{label}}
|
||
|
-\newcommand\miletref[1]{\mileref{#1}: \pdataRefFB{mile}{#1}{short}{title}}
|
||
|
-\newcounter{milestone}
|
||
|
-\define@key{milestone}{id}{\gdef\mile@id{#1}}
|
||
|
-\define@key{milestone}{month}{\gdef\mile@month{#1}}
|
||
|
-\define@key{milestone}{verif}{\gdef\mile@verif{#1}}
|
||
|
-\newcommand\milestone[3][]{%
|
||
|
-\ifdelivs%
|
||
|
-\setkeys{milestone}{#1}\stepcounter{milestone}%
|
||
|
-\pdata@def{mile}\mile@id{label}{\milestone@label{\themilestone}}%
|
||
|
-\pdata@def{mile}\mile@id{month}{\mile@month}%
|
||
|
-\pdata@def{mile}\mile@id{verif}{\mile@verif}%
|
||
|
-\pdata@def{mile}\mile@id{title}{#2}%
|
||
|
-\pdata@def{mile}\mile@id{description}{#3}%
|
||
|
-\@ifundefined{mile@stones}{\xdef\mile@stones{\mile@id}}{\xdef\mile@stones{\mile@stones,\mile@id}}%
|
||
|
-\@milestone{\mile@id}{#2}{#3}% presentation
|
||
|
-\else\deliv@error\fi}
|
||
|
-\newcommand\@milestone[3]{% id, title, description
|
||
|
-\item \textbf{\miles@legend@milestone \pdataref{mile}{#1}{label} (\miles@legend@month \pdataref{mile}\mile@id{month})
|
||
|
-\textbf{#2}} #3}
|
||
|
-\newcommand\miles@legend@month{Month}
|
||
|
-\newcommand\miles@legend@milestone{Milestone}
|
||
|
-\newenvironment{milestones}%
|
||
|
-{\ifdelivs\begin{@milestones}\else\deliv@error\fi}
|
||
|
-{\ifdelivs\pdata@def{all}{mile}{ids}{\mile@stones}%
|
||
|
-\pdata@def{all}{mile}{count}{\themilestone}%
|
||
|
-\end{@milestones}\fi}
|
||
|
-\newenvironment{@milestones}{\begin{enumerate}}{\end{enumerate}}
|
||
|
-\newcommand{\deliverable}[9]{\pdataRef{deliv}{#4}{label}	\\\hline}%sortkey,due,label,id,title,type,level,lead
|
||
|
-\newenvironment{deliverables}[1]{\ifdelivs\begin{longtable}{|l|p{#1}|l|l|l|l|l|}\hline%
|
||
|
-\#&\textbf{\delivs@legend@name}&%
|
||
|
-\textbf{\delivs@legend@wp}&%
|
||
|
-\textbf{\delivs@legend@lead}&%
|
||
|
-\textbf{\delivs@legend@nature}&%
|
||
|
-\textbf{\delivs@legend@level}&%
|
||
|
-\textbf{\delivs@legend@due}\\\hline\hline%
|
||
|
-\endhead%
|
||
|
-\else\deliv@error\fi}
|
||
|
-{\ifdelivs\end{longtable}\fi}
|
||
|
-\newcommand\delivs@legend@name{Deliverable name}
|
||
|
-\newcommand\delivs@legend@wp{WP}
|
||
|
-\newcommand\delivs@legend@nature{Type}
|
||
|
-\newcommand\delivs@legend@level{Level}
|
||
|
-\newcommand\delivs@legend@due{Due}
|
||
|
-\newcommand\delivs@legend@dissem{Dissem.}
|
||
|
-\newcommand\delivs@legend@lead{Lead}
|
||
|
-\newcommand{\inputdelivs}[1]{%
|
||
|
-\begin{deliverables}{#1}%
|
||
|
-\IfFileExists{\jobname.deliverables}%
|
||
|
-{\input{\jobname.deliverables}}%
|
||
|
-{\IfFileExists{\jobname.delivs}{\input{\jobname.delivs}}{}}
|
||
|
-\end{deliverables}}
|
||
|
-\newenvironment{tasklist}
|
||
|
-{\begin{compactenum}}{\end{compactenum}}
|
||
|
-\newcommand\task@label[2]{\textbf{T#1.#2}}
|
||
|
-\define@key{task}{id}{\def\task@id{#1}\@dmp{id=#1}}
|
||
|
-\define@key{task}{wphases}{\def\task@wphases{#1}\pdata@def{task}{\taskin\task@id\wp@id}{wphases}{#1}\@dmp{wphases=#1}}
|
||
|
-\define@key{task}{requires}{\@requires\task@id{#1}\@dmp{req=#1}}
|
||
|
-\define@key{task}{title}{\def\task@title{#1}\pdata@def{task}{\taskin\task@id\wp@id}{title}{#1}}
|
||
|
-\define@key{task}{lead}{\def\task@lead{#1}\pdata@def{task}{\taskin\task@id\wp@id}{lead}{#1}}
|
||
|
-\define@key{task}{partners}{\def\task@partners{#1}\pdata@def{task}{\taskin\task@id\wp@id}{partners}{#1}}
|
||
|
-\define@key{task}{PM}{\def\task@PM{#1}\pdata@def{task}{\taskin\task@id\wp@id}{PM}{#1}}
|
||
|
-\def\task@set#1{\edef\task@id{task\thetask@all}
|
||
|
-\def\task@wphases{0-0}\def\task@partners{}\def\task@lead{}\def\task@PM{}
|
||
|
-\setkeys{task}{#1}}
|
||
|
-\def\task@post@title@space{\;}
|
||
|
-\newcounter{alltasks}
|
||
|
-\def\task@post@title@space{\quad}
|
||
|
-\newcommand\task@legend@partners{Sites: }
|
||
|
-\newcommand\task@legend@PM{PM}
|
||
|
-\newenvironment{task}[1][]%
|
||
|
-{\stepcounter{alltasks}%
|
||
|
-\@task{#1}\item[\pdata@target{task}{\taskin\task@id\wp@id}{\task@label\thewp\thetask@wp}]%
|
||
|
-\@ifundefined{task@title}{}{\textbf\task@title}\task@post@title@space%
|
||
|
-\def\@initial{0-0}\ifx\task@wphases\@initial\else%
|
||
|
-\let\@@sep=\relax\@for\@I:=\task@wphases%
|
||
|
-\do{\decode@wphase\@I%
|
||
|
-\@@sep\show@wphase\wphase@start\wphase@end\wphase@force%
|
||
|
-\let\@@sep=\sep@wphases}%
|
||
|
-\fi% initial
|
||
|
-\hfill%
|
||
|
-\ifsubmit\else\ifx\task@PM\@empty\else\task@PM~\task@legend@PM;\fi\fi%
|
||
|
-\ifx\task@lead\@empty\else\ \task@legend@partners\site\task@lead~(\legend@lead)\fi%
|
||
|
-\@for\@I:=\task@partners\do{, \site\@I}\\%
|
||
|
-\ignorespaces}
|
||
|
-{\medskip}
|
||
|
-\newcommand\month@label[1]{M#1}
|
||
|
-\newcommand\show@wphase[3]{\edef\@test{#3}\def\@one{1}%
|
||
|
-\month@label{#1}-\month@label{#2}%
|
||
|
-\ifx\@test\@empty\else\ifx\@test\@one\else @#3\fi\fi}
|
||
|
-\newcommand\sep@wphases{; }
|
||
|
-\newcommand\legend@partners{Partners}
|
||
|
-\newcommand\legend@lead{lead}
|
||
|
-\newcommand\task@label@long{Task}
|
||
|
-\newcounter{task@all}\newcounter{task@wp}[wp]
|
||
|
-\newcount\task@@end
|
||
|
-\def\@task#1{\stepcounter{task@all}\stepcounter{task@wp}%
|
||
|
-\task@set{#1}%
|
||
|
-\pdata@def{task}{\taskin\task@id\wp@id}{wphases}\task@wphases
|
||
|
-\pdata@def{task}{\taskin\task@id\wp@id}{label}{\task@label\thewp\thetask@wp}%
|
||
|
-\pdata@def{task}{\taskin\task@id\wp@id}{number}{\thetask@wp}%
|
||
|
-\pdata@def{task}{\taskin\task@id\wp@id}{page}{\thepage}%
|
||
|
-\update@tasks{\taskin\task@id\wp@id}}
|
||
|
-\newcommand\workphase[1]{\PackageError{proposal}
|
||
|
- {The \protect\workphase macro is deprecated,\MessageBreak
|
||
|
- use the attributes wphase on the workpackage environment instead!}}
|
||
|
-\newcommand\taskin[2]{#2@#1}
|
||
|
-\newcommand\taskref[2]{\pdataRef{task}{#1@#2}{label}}
|
||
|
-\newcommand\taskreflong[2]{\pdataRef{task}{#2}{label}}
|
||
|
-\newcommand\tasktref[2]{\taskref{#1}{#2}: \pdataRefFB{task}{#1@#2}{short}{title}}
|
||
|
-\newcommand\localtaskref[1]{\taskref{\wp@id}{#1}}
|
||
|
-\newcommand\localtasktref[1]{\tasktref{\wp@id}{#1}}
|
||
|
-\newcounter{gantt@deps}
|
||
|
-\def\@requires#1#2{\stepcounter{gantt@deps}%
|
||
|
-\edef\dep@id{taskdep\thegantt@deps}%
|
||
|
-\pdata@def{taskdep}\dep@id{from}{\taskin{#1}\wp@id}%
|
||
|
-\pdata@def{taskdep}\dep@id{to}{#2}%
|
||
|
-\update@deps\dep@id}
|
||
|
-\newcommand\prop@lead[1]{\@ifundefined{wp@#1@lead}%
|
||
|
-{\protect\G@refundefinedtrue\@latex@warning{lead for WP #1 undefined}??}%
|
||
|
-{\csname wp@#1@lead\endcsname}}
|
||
|
-\definecolorset{gray/rgb/hsb/cmyk}{}{}%
|
||
|
-{leadgray,.90/.90,.90,.90/0,0,.90/0,0,0,.10;%
|
||
|
-wagray,.70/.70,.70,.70/0,0,.70/0,0,0,.30;%
|
||
|
-ganttgray,.60/.60,.60,.60/0,0,.60/0,0,0,.40}
|
||
|
-\newcommand\sum@style[1]{\cellcolor{wagray}{\textbf{#1}}}
|
||
|
-\newcommand\wa@style[1]{\cellcolor{wagray}{\textbf{#1}}}
|
||
|
-\newcommand\wp@style[1]{#1}
|
||
|
-\newcommand\lead@style[1]{\cellcolor{leadgray}{\textit{#1}}}
|
||
|
-\newcommand\wp@lead@style@explained{light gray italicised}
|
||
|
-\newcounter{wpfig@options}
|
||
|
-\define@key{wpfig}{size}{\def\wpfig@size{#1}\@dmp{size=#1}}
|
||
|
-\def\@true{true}
|
||
|
-\def\wpfig@pages{false}
|
||
|
-\define@key{wpfig}{pages}[true]{\def\wpfig@pages{#1}\stepcounter{wpfig@options}}
|
||
|
-\def\wpfig@type{false}
|
||
|
-\define@key{wpfig}{type}[true]{\def\wpfig@type{#1}\stepcounter{wpfig@options}}
|
||
|
-\def\wpfig@start{false}
|
||
|
-\define@key{wpfig}{start}[true]{\def\wpfig@start{#1}\stepcounter{wpfig@options}}
|
||
|
-\def\wpfig@length{false}
|
||
|
-\define@key{wpfig}{length}[true]{\def\wpfig@length{#1}\stepcounter{wpfig@options}}
|
||
|
-\def\wpfig@end{false}
|
||
|
-\define@key{wpfig}{end}[true]{\def\wpfig@end{#1}\stepcounter{wpfig@options}}
|
||
|
-\define@key{wpfig}{label}{\def\wpfig@label{#1}}
|
||
|
-\define@key{wpfig}{caption}{\def\wpfig@caption{#1}}
|
||
|
-\def\@sw#1{\begin{sideways}#1\end{sideways}}
|
||
|
-\newenvironment{wp@figure}{\begin{table}[ht]\wpfig@style\begin{center}
|
||
|
-{\let\@sw\relax\let\textbf\relax\let\site\relax\let\pn\relax\let\sys\relax%
|
||
|
-\gdef\wpfig@headline{\wpfig@legend@wap&\wpfig@legend@title%
|
||
|
-\ifx\wpfig@type\@true&\wpfig@legend@type\fi%
|
||
|
-\ifx\wpfig@pages\@true&\@sw{\wpfig@legend@page}\fi%
|
||
|
-\ifx\wpfig@start\@true&\@sw{\wpfig@legend@start}\fi%
|
||
|
-\ifx\wpfig@length\@true&\@sw{\wpfig@legend@length}\fi
|
||
|
-\ifx\wpfig@end\@true&\@sw{\wpfig@legend@end}\fi}%
|
||
|
-\if@sites%
|
||
|
-\@for\@site:=\prop@gen@sites\do{%
|
||
|
-\xdef\wpfig@headline{\wpfig@headline&\@sw{\wpfig@legend@siteRM{\@site}}}%
|
||
|
-\if@RAM\xdef\wpfig@headline{\wpfig@headline&\@sw{\wpfig@legend@siteRAM{\@site}}}\fi}%
|
||
|
-\xdef\wpfig@headline{\wpfig@headline&\@sw{\wpfig@legend@totalRM}}%
|
||
|
-\if@RAM\xdef\wpfig@headline{\wpfig@headline&\@sw{\wpfig@legend@totalRAM}}\fi%
|
||
|
-\else% if@sites
|
||
|
-\xdef\wpfig@headline{\wpfig@headline &\@sw{\wpfig@legend@RM}\if@RAM&\@sw{\wpfig@legend@RAM}\fi}
|
||
|
-\fi}%if@sites
|
||
|
-\if@RAM\begin{tabular}{|l|l|*{\thewpfig@options}{r|}*{\the@sites}{r|r|}|r|r|}\hline
|
||
|
-\else\begin{tabular}{|l|l|*{\thewpfig@options}{r|}|*{\the@sites}{r|}|r|}\hline\fi%|
|
||
|
-\wpfig@headline\\\hline\hline}
|
||
|
-{\end{tabular}\smallskip\\
|
||
|
-\wpfig@legend@RAM@expl\if@sites; \wpfig@legend@lead@expl\fi
|
||
|
-\@ifundefined{wpfig@label}{\caption{\wpfig@legend@caption}}{\caption{\wpfig@caption}}
|
||
|
-\@ifundefined{wpfig@label}{\label{fig:wplist}}{\label{\wpfig@label}}
|
||
|
-\end{center}\end{table}}
|
||
|
-\newcommand\wpfig@legend@wap{\textbf{\ifwork@areas{WA/P}\else{WP}\fi}}
|
||
|
-\newcommand\wpfig@legend@title{\textbf{Title}}
|
||
|
-\newcommand\wpfig@legend@type{\textbf{type}}
|
||
|
-\newcommand\wpfig@legend@page{\textbf{page}}
|
||
|
-\newcommand\wpfig@legend@start{\textbf{start}}
|
||
|
-\newcommand\wpfig@legend@length{\textbf{length}}
|
||
|
-\newcommand\wpfig@legend@end{\textbf{end}}
|
||
|
-\newcommand\wpfig@legend@siteRM[1]{\site{#1}\if@RAM\ RM\fi}
|
||
|
-\newcommand\wpfig@legend@siteRAM[1]{\site{#1}\ RAM}
|
||
|
-\newcommand\wpfig@legend@totalRM{total\if@RAM\ RM\fi}
|
||
|
-\newcommand\wpfig@legend@totalRAM{total RAM}
|
||
|
-\newcommand\wpfig@legend@RM{RM}
|
||
|
-\newcommand\wpfig@legend@RAM{RAM}
|
||
|
-\newcommand\wpfig@legend@RAM@expl{\if@RAM R(A)M $\widehat=$ Researcher (Assistant) Months\else\ Efforts in PM\fi}
|
||
|
-\newcommand\wpfig@legend@lead@expl{WP lead efforts \wp@lead@style@explained}
|
||
|
-\newcommand\wpfig@legend@caption{{\ifwork@areas Work Areas and \fi}Work Packages}
|
||
|
-\def\wpfig@style{}
|
||
|
-\newcommand\wpfigstyle[1]{\def\wpfig@style{#1}}
|
||
|
-\newcount\local@count
|
||
|
-\newcount\@@@RM\if@RAM\newcount\@@@RAM\fi
|
||
|
-\newcount\all@@@RM\if@RAM\newcount\all@@@RAM\fi
|
||
|
-\newcommand{\wpfig}[1][]{\setcounter{wpfig@options}{0}\setkeys{wpfig}{#1}
|
||
|
-{\gdef\@wp@lines{}%initialize
|
||
|
-\let\tabularnewline\relax\let\hline\relax\let\lead@style\relax% so they
|
||
|
-\let\wa@style\relax\let\wp@style\relax \let\@sw\relax\let\textbf\relax% do not
|
||
|
-\let\G@refundefinedtrue=\relax\let\@latex@warning=\relax\let\hyperlink=\relax% bother
|
||
|
-\let\pn\relax\let\xspace\relax% us
|
||
|
-\ifwork@areas
|
||
|
-\edef\@@was{\pdataref@safe{all}{wa}{ids}}%
|
||
|
-\@for\@@wa:=\@@was\do{% iterate over the work areas
|
||
|
-\xdef\@@wa@line{\wa@style{\pdataRef{wa}\@@wa{label}}%
|
||
|
-&\wa@style{\@ifundefined{wa@\@@wa @short}{\pdataref{wa}\@@wa{title}}{\pdataref{wa}\@@wa{short}}}%
|
||
|
-\ifx\wpfig@type\@true&\wa@style{\pdataref{wa}\@@wa{type}}\fi%
|
||
|
-\ifx\wpfig@pages\@true&\wa@style{\pdataref{wa}\@@wa{page}}\fi%
|
||
|
-\ifx\wpfig@start\@true&\wa@style{\pdataref{wa}\@@wa{start}}\fi%
|
||
|
-\ifx\wpfig@length\@true&\wa@style{\pdataref{wa}\@@wa{len}}\fi%
|
||
|
-\ifx\wpfig@end\@true&\wa@style{\pdataref{wa}\@@wa{end}}\fi}
|
||
|
-\if@sites
|
||
|
-\@for\@site:=\prop@gen@sites\do{%
|
||
|
-\edef\@@wps{\pdataref@safe\@@wa{wp}{ids}}%
|
||
|
-\local@count 0%
|
||
|
-\@for\@@wp:=\@@wps\do{\advance\local@count by \pdataref@num\@@wp\@site{RM}}%
|
||
|
-\pdata@def\@@wa\@site{RM}{\the\local@count}%
|
||
|
-\xdef\@@wa@line{\@@wa@line&\wa@style{\the\local@count}}%
|
||
|
-\if@RAM
|
||
|
-\local@count 0%
|
||
|
-\@for\@@wp:=\@@wps\do{\advance\local@count by \pdataref@num\@@wp\@site{RAM}}
|
||
|
-\pdata@def\@@wa\@site{RAM}{\the\local@count}%
|
||
|
-\xdef\@@wa@line{\@@wa@line&\wa@style{\the\local@count}}%
|
||
|
-\fi}
|
||
|
-\local@count0\relax%
|
||
|
-\@for\@site:=\prop@gen@sites\do{\global\advance\local@count by \pdataref@num\@@wa\@site{RM}}%
|
||
|
-\xdef\@@wa@line{\@@wa@line &\wa@style{\textbf{\the\local@count}}}
|
||
|
-\if@RAM
|
||
|
-\local@count0\relax%
|
||
|
-\@for\@site:=\prop@gen@sites\do{\global\advance\local@count by \pdataref@num\@@wa\@site{RAM}}%
|
||
|
-\xdef\@@wa@line{\@@wa@line &\wa@style{\textbf{\the\local@count}}}
|
||
|
-\fi
|
||
|
-\else% if@sites
|
||
|
-\edef\@@wps{\pdataref@safe{all}{wp}{ids}}%
|
||
|
-\xdef\@@wa@line{\@@wa@line&\wa@style{\pdataref{wa}\@@wa{RM}}
|
||
|
-\if@RAM&\wa@style{\pdataref{wa}\@@wa{RAM}}\fi}%
|
||
|
-\fi% if@sites
|
||
|
-\xdef\@wp@lines{\@wp@lines\@@wa@line\tabularnewline\hline}% add the line for the workarea
|
||
|
-\edef\@@wps{\pdataref@safe\@@wa{wp}{ids}}%
|
||
|
-\@for\@@wp:=\@@wps\do{% iterate over its work packages
|
||
|
-\xdef\@@wp@line{\pdataRef{wp}\@@wp{label}%
|
||
|
-&\@ifundefined{wp@\@@wp @short}{\pdataref{wp}\@@wp{title}}{\pdataref{wp}\@@wp{short}}%
|
||
|
-\ifx\wpfig@type\@true&\pdataref{wp}\@@wp{type}\fi%
|
||
|
-\ifx\wpfig@pages\@true&\pdataref{wp}\@@wp{page}\fi%
|
||
|
-\ifx\wpfig@start\@true&\pdataref{wp}\@@wp{start}\fi%
|
||
|
-\ifx\wpfig@length\@true&\pdataref{wp}\@@wp{len}\fi%
|
||
|
-\ifx\wpfig@end\@true&\pdataref{wp}\@@wp{end}\fi}
|
||
|
-\if@sites
|
||
|
-\@for\@site:=\prop@gen@sites\do{%
|
||
|
-\edef\@@lead{\pdataref@safe{wp}\@@wp{lead}}
|
||
|
-\edef\@@RM{\ifx\@@lead\@site\lead@style{\pdataref@safe\@@wp\@site{RM}}\else\wp@style{\pdataref@safe\@@wp\@site{RM}}\fi}
|
||
|
-\xdef\@@wp@line{\@@wp@line&\@@RM}
|
||
|
-\if@RAM
|
||
|
-\edef\@@RAM{\ifx\@@lead\@site\lead@style{\pdataref@safe\@@wp\@site{RAM}}\else\wp@style{\pdataref@safe\@@wp\@site{RAM}}\fi}
|
||
|
-\xdef\@@wp@line{\@@wp@line&\@@RAM}
|
||
|
-\fi}
|
||
|
-\local@count0\relax%
|
||
|
-\@for\@site:=\prop@gen@sites\do{\global\advance\local@count by \pdataref@num\@@wp\@site{RM}}%
|
||
|
-\xdef\@@wp@line{\@@wp@line &\textbf{\the\local@count}}
|
||
|
-\if@RAM
|
||
|
-\global\local@count0\relax%
|
||
|
-\@for\@site:=\prop@gen@sites\do{\global\advance\local@count by \pdataref@num\@@wp\@site{RAM}}%
|
||
|
-\xdef\@@wp@line{\@@wp@line &\textbf{\the\local@count}}
|
||
|
-\fi% if@sites
|
||
|
-\else% if@sites
|
||
|
-\xdef\@@wp@line{\@@wp@line&\wp@style{\pdataref@safe{wp}\@@wp{RM}}}
|
||
|
-\if@RAM\xdef\@@wp@line{\@@wp@line&\wp@style{\pdataref@safe{wp}\@@wp{RAM}}}\fi
|
||
|
-\fi% if@sites
|
||
|
-\xdef\@wp@lines{\@wp@lines\@@wp@line\tabularnewline\hline}}}
|
||
|
-\else% ifwork@areas
|
||
|
-\edef\@@wps{\pdataref@safe{all}{wp}{ids}}%
|
||
|
-\@for\@@wp:=\@@wps\do{% iterate over its work packages
|
||
|
-\xdef\@@wp@line{\pdataRef{wp}\@@wp{label}%
|
||
|
-&\@ifundefined{wp@\@@wp @short}{\pdataref{wp}\@@wp{title}}{\pdataref{wp}\@@wp{short}}
|
||
|
-\ifx\wpfig@type\@true&\pdataref{wp}\@@wp{type}\fi%
|
||
|
-\ifx\wpfig@pages\@true&\pdataref{wp}\@@wp{page}\fi%
|
||
|
-\ifx\wpfig@start\@true&\pdataref{wp}\@@wp{start}\fi%
|
||
|
-\ifx\wpfig@length\@true&\pdataref{wp}\@@wp{len}\fi%
|
||
|
-\ifx\wpfig@end\@true&\pdataref{wp}\@@wp{end}\fi}
|
||
|
-\if@sites
|
||
|
-\@for\@site:=\prop@gen@sites\do{%
|
||
|
-\edef\@@lead{\pdataref@safe{wp}\@@wp{lead}}
|
||
|
-\edef\@@RM{\ifx\@@lead\@site\lead@style{\pdataref@safe\@@wp\@site{RM}}\else\wp@style{\pdataref@safe\@@wp\@site{RM}}\fi}
|
||
|
-\xdef\@@wp@line{\@@wp@line&\@@RM}
|
||
|
-\if@RAM
|
||
|
-\edef\@@RAM{\ifx\@@lead\@site\lead@style{\pdataref@safe\@@wp\@site{RAM}}\else\wp@style{\pdataref@safe\@@wp\@site{RAM}}\fi}
|
||
|
-\xdef\@@wp@line{\@@wp@line&\wp@style\@@RAM}
|
||
|
-\fi}
|
||
|
-\global\local@count0\relax%
|
||
|
-\@for\@site:=\prop@gen@sites\do{\global\advance\local@count by \pdataref@num\@@wp\@site{RM}}%
|
||
|
-\xdef\@@wp@line{\@@wp@line &\textbf{\the\local@count}}
|
||
|
-\if@RAM
|
||
|
-\global\local@count0\relax%
|
||
|
-\@for\@site:=\prop@gen@sites\do{\global\advance\local@count by \pdataref@num{#1}\@site{RAM}}%
|
||
|
-\xdef\@@wp@line{\@@wp@line &\textbf{\the\local@count}}
|
||
|
-\fi
|
||
|
-\else% if@sites
|
||
|
-\xdef\@@wp@line{\@@wp@line&\wp@style{\pdataref@safe{wp}\@@wp{RM}}}
|
||
|
-\if@RAM\xdef\@@wp@line{\@@wp@line&\wp@style{\pdataref@safe{wp}\@@wp{RAM}}\fi}
|
||
|
-\fi% if@sites
|
||
|
-\xdef\@wp@lines{\@wp@lines\@@wp@line\tabularnewline\hline}}
|
||
|
-\fi%ifwork@areas
|
||
|
-\gdef\@totals{}
|
||
|
-\ifwork@areas
|
||
|
-\if@sites
|
||
|
-\@for\@site:=\prop@gen@sites\do{% iterate over the sites
|
||
|
-\@@@RM=0\if@RAM\@@@RAM=0\fi
|
||
|
-\edef\@@was{\pdataref@safe{all}{wa}{ids}}%
|
||
|
-\@for\@@wa:=\@@was\do{% iterate over the work areas
|
||
|
-\edef\@@wps{\pdataref@safe\@@wa{wp}{ids}}%
|
||
|
-\@for\@@wp:=\@@wps\do{% iterate over the work packages
|
||
|
-\advance\@@@RM by \pdataref@num\@@wp\@site{RM}%
|
||
|
-\if@RAM\advance\@@@RAM by \pdataref@num\@@wp\@site{RAM}\fi}}
|
||
|
-\pdata@def{all}\@site{RM}{\the\@@@RM}\if@RAM\pdata@def{all}\@site{RAM}{\the\@@@RAM}\fi
|
||
|
-\advance\all@@@RM by \the\@@@RM\if@RAM\advance\all@@@RAM by \the\@@@RAM\fi
|
||
|
-\xdef\@totals{\@totals & \textbf{\the\@@@RM}\if@RAM& \textbf{\the\@@@RAM}\fi}}
|
||
|
-\xdef\@totals{\@totals & \textbf{\the\all@@@RM}\if@RAM&\textbf{\the\all@@@RAM}\fi}
|
||
|
-\pdata@def{all}{total}{RM}{\the\all@@@RM}\if@RAM\pdata@def{all}{total}{RAM}{\the\all@@@RAM}\fi
|
||
|
-\else% if@sites
|
||
|
-\@@@RM=0\if@RAM\@@@RAM=0\fi
|
||
|
-\edef\@@was{\pdataref@safe{all}{wa}{ids}}%
|
||
|
-\@for\@@wa:=\@@was\do{\edef\@@wps{\pdataref@safe\@@wa{wp}{ids}}%
|
||
|
-\@for\@@wp:=\@@wps\do{% iterate over the work packages
|
||
|
-\advance\@@@RM by \pdataref@num{wp}\@@wp{RM}%
|
||
|
-\if@RAM\advance\@@@RAM by \pdataref@num{wp}\@@wp{RAM}\fi}}
|
||
|
-\pdata@def{all}{total}{RM}{\the\@@@RM}\if@RAM\pdata@def{all}{total}{RAM}{\the\@@@RAM}\fi
|
||
|
-\xdef\@totals{&\the\@@@RM\if@RAM &\the\@@@RAM\fi}
|
||
|
-\fi% if@sites
|
||
|
-\else%i.e. no work@areas
|
||
|
-\if@sites
|
||
|
-\@for\@site:=\prop@gen@sites\do{%iterate over the sites
|
||
|
-\@@@RM=0\if@RAM\@@@RAM=0\fi%
|
||
|
-\edef\@@wps{\pdataref@safe{all}{wp}{ids}}%
|
||
|
-\@for\@@wp:=\@@wps\do{% iterate over the work packages
|
||
|
-\advance\@@@RM by \pdataref@num\@@wp\@site{RM}%
|
||
|
-\if@RAM\advance\@@@RAM by \pdataref@num\@@wp\@site{RAM}\fi}
|
||
|
-\pdata@def{all}\@site{RM}{\the\@@@RM}\if@RAM\pdata@def{all}\@site{RAM}{\the\@@@RAM}\fi
|
||
|
-\xdef\@totals{\@totals & \textbf{\the\@@@RM}\if@RAM& \textbf{\the\@@@RAM}\fi}
|
||
|
-\advance\all@@@RM by \the\@@@RM\if@RAM\advance\all@@@RAM by \the\@@@RAM\fi}
|
||
|
-\xdef\@totals{\@totals &\textbf{\the\all@@@RM}\if@RAM&\textbf{\the\all@@@RAM}\fi}
|
||
|
-\pdata@def{all}{total}{RM}{\the\all@@@RM}\if@RAM\pdata@def{all}{total}{RAM}{\the\all@@@RAM}\fi
|
||
|
-\else% if@sites
|
||
|
-\@@@RM=0\if@RAM\@@@RAM=0\fi
|
||
|
-\edef\@@wps{\pdataref@safe{all}{wp}{ids}}%
|
||
|
-\@for\@@wp:=\@@wps\do{% iterate over the work packages
|
||
|
-\advance\@@@RM by \pdataref@num{wp}\@@wp{RM}%
|
||
|
-\if@RAM\advance\@@@RAM by \pdataref@num{wp}\@@wp{RAM}\fi}
|
||
|
-\pdata@def{all}{total}{RM}{\the\@@@RM}\if@RAM\pdata@def{all}{total}{RAM}{\the\@@@RAM}\fi
|
||
|
-\xdef\@totals{&\the\@@@RM\if@RAM &\the\@@@RAM\fi}
|
||
|
-\fi% if@sites
|
||
|
-\fi
|
||
|
-\gdef\intended@totals{}\gdef\requested@totals{}
|
||
|
-\if@sites
|
||
|
-\@for\@site:=\prop@gen@sites\do{
|
||
|
-\xdef\intended@totals{\intended@totals&\textbf{\pdataref@safe{site}\@site{intendedRM}}}
|
||
|
-\xdef\requested@totals{\requested@totals&\pdataref@safe{site}\@site{reqPM}}
|
||
|
-\if@RAM\xdef\intended@totals{\intended@totals&\textbf{\pdataref@safe{site}\@site{intendedRAM}}}\fi}
|
||
|
-\if@RAM\xdef\intended@totals{\intended@totals&&}\else%
|
||
|
-\xdef\intended@totals{\intended@totals&}%
|
||
|
-\xdef\requested@totals{\requested@totals&}%
|
||
|
-\fi
|
||
|
-\else% if@sites
|
||
|
-\xdef\intended@totals{\intended@totals&\textbf{\pdataref@safe{all}{intended}{RM}}}
|
||
|
-\if@RAM\xdef\intended@totals{\intended@totals&\textbf{\pdataref@safe{all}{intended}{RAM}}}\fi
|
||
|
-\fi}% if@sites
|
||
|
-\local@count\thewpfig@options\advance\local@count by 2
|
||
|
-\begin{wp@figure}
|
||
|
-\@wp@lines\hline%
|
||
|
-\multicolumn{\the\local@count}{|c|}{\prop@legend@totals}\@totals\\\hline%
|
||
|
-\ifsubmit\else%
|
||
|
-\ifx\prop@gen@topdownPM\@true%
|
||
|
-\multicolumn{\the\local@count}{|c|}{\prop@legend@intendedtotals}\intended@totals\\\hline%
|
||
|
-\fi% topdownPM
|
||
|
-\ifx\prop@gen@botupPM\@true%
|
||
|
-\multicolumn{\the\local@count}{|c|}{\prop@legend@requestedtotals}\requested@totals\\\hline%
|
||
|
-\fi% botupPM
|
||
|
-\fi% submit
|
||
|
-\end{wp@figure}}
|
||
|
-\newcommand\prop@legend@totals{\textbf{totals}}
|
||
|
-\newcommand\prop@legend@intendedtotals{\textbf{intended totals}}
|
||
|
-\newcommand\prop@legend@requestedtotals{\textbf{requested totals}}
|
||
|
-\newif\ifgantt@draft\gantt@draftfalse
|
||
|
-\newif\ifgantt@miles\gantt@milesfalse
|
||
|
-\define@key{gantt}{xscale}{\def\gantt@xscale{#1}}
|
||
|
-\define@key{gantt}{yscale}{\def\gantt@yscale{#1}}
|
||
|
-\define@key{gantt}{step}{\def\gantt@step{#1}}
|
||
|
-\define@key{gantt}{size}{\def\gantt@size{#1}}
|
||
|
-\define@key{gantt}{draft}[true]{\ifsubmit\else\gantt@drafttrue\fi}
|
||
|
-\define@key{gantt}{milestones}[true]{\gantt@milestrue}
|
||
|
-\def\gantt@set#1{\gantt@draftfalse\def\gantt@xscale{1}\def\gantt@yscale{.35}\def\gantt@step{3}
|
||
|
-\setkeys{gantt}{#1}}
|
||
|
-\newenvironment{gantt}[2][]
|
||
|
-{\gantt@set{#1}\gdef\gantt@height{#2}
|
||
|
-\def\@test{\prop@gen@months@default}
|
||
|
-\ifx\@test\prop@gen@months
|
||
|
-\ClassError{proposal}{Need overall project months to draw gantt
|
||
|
- chart - expect trouble;\MessageBreak specify
|
||
|
- \protect\begin{proposal}[...,months=??,...] to fix}\fi
|
||
|
-\@ifundefined{gantt@size}{}{\csname\gantt@size\endcsname}
|
||
|
-\newdimen\gantt@ymonths
|
||
|
-\gantt@ymonths=\gantt@height cm
|
||
|
-\advance\gantt@ymonths by .8cm
|
||
|
-\begin{tikzpicture}[xscale=\gantt@xscale,yscale=\gantt@yscale]}
|
||
|
-{\draw[xstep=\gantt@step,very thin] (0,0) grid (\prop@gen@months,\gantt@height);
|
||
|
-\foreach \x in {0,\gantt@step,...,\prop@gen@months} \node at (\x,\gantt@ymonths) {\x};
|
||
|
-\ifgantt@miles
|
||
|
-\newdimen\gantt@ymiles\gantt@ymiles=\gantt@height cm
|
||
|
-\advance\gantt@ymiles by 2cm
|
||
|
-\newdimen\gantt@ymiles@top\gantt@ymiles@top=\gantt@height cm
|
||
|
-\edef\@@miles{\pdataref@safe{all}{mile}{ids}}
|
||
|
-\@for\@I:=\@@miles\do{%
|
||
|
-\edef\@@month{\pdataref@safe{mile}{\@I}{month}}
|
||
|
-\draw[very thick,blue] (\@@month,\gantt@ymiles@top) -- (\@@month,0);
|
||
|
-\node[blue] at (\@@month,\gantt@ymiles) {\pdataref{mile}{\@I}{label}};}
|
||
|
-\fi %gantt@miles
|
||
|
-\end{tikzpicture}}
|
||
|
-\newdimen\gantt@ymid\newdimen\gantt@yinc\newdimen\gantt@xend
|
||
|
-\newcommand{\@action}[6][]{\def\@test{#1}%
|
||
|
-\ifx\@test\@empty\def\@@color{ganttgray}\else\def\@@color{#1}\fi
|
||
|
-\gantt@ymid=#3 cm\gantt@yinc=\gantt@yscale cm
|
||
|
-\gantt@xend=#4 cm\advance\gantt@xend by #5 cm
|
||
|
-\advance\gantt@ymid by \gantt@yinc
|
||
|
-\fill[\@@color] (#4,#3) rectangle +(#5,#6);
|
||
|
-\node (#2@left) at (#4,\gantt@ymid) {};
|
||
|
-\node (#2@right) at (\gantt@xend,\gantt@ymid) {};}
|
||
|
-\def\@dependency#1#2{\draw[->,line width=2pt,color=red] (#1@right) -- (#2@left);}
|
||
|
-\newcommand\gantt@compute@effort[3]{% start, len, force
|
||
|
- \@@e=#1\advance\@@e by #2
|
||
|
- \ifnum\thegantt@month<#1\else
|
||
|
- \ifnum\thegantt@month<\@@e
|
||
|
- \gantt@plus=#3cm\advance\gantt@effort by \gantt@plus\fi\fi}
|
||
|
-\newcommand{\ganttchart}[1][]{\begin{figure}[ht]\centering
|
||
|
-\gantt@set{#1}
|
||
|
-\def\gantt@wps{\pdataref@num{all}{wp}{count}}
|
||
|
-\begin{gantt}[#1]{\gantt@wps}
|
||
|
- \newcounter{taskwps}\newcount\@@line
|
||
|
- \edef\@@was{\pdataref@safe{all}{wa}{ids}}
|
||
|
- \ifwork@areas
|
||
|
- \@for\@@wa:=\@@was\do{% iterate over work areas
|
||
|
- \edef\@@wps{\pdataref@safe\@@wa{wp}{ids}}
|
||
|
- \@for\@@wp:=\@@wps\do{% iterate over work packages
|
||
|
- \stepcounter{taskwps}
|
||
|
- \@@line=\gantt@wps\advance\@@line by -\thetaskwps
|
||
|
- \edef\@@tasks{\pdataref@safe\@@wp{task}{ids}}
|
||
|
- \node at (-1/\gantt@xscale,\@@line) [above=-2pt] {\pdataRef{wp}\@@wp{label}};
|
||
|
- \edef\@@wphases{\pdataref@safe{wp}\@@wp{wphases}}
|
||
|
- \@for\@@ft:=\@@wphases\do{%wp-level work phases
|
||
|
- \decode@wphase\@@ft
|
||
|
- \@action\@@wp\@@line\wphase@start\wphase@len\wphase@force}
|
||
|
- \@for\@@task:=\@@tasks\do{% tasks
|
||
|
- \edef\@@wphases{\pdataref@safe{task}\@@task{wphases}}
|
||
|
- \@for\@@ft:=\@@wphases\do{%task-level work phases
|
||
|
- \decode@wphase\@@ft
|
||
|
- \@action\@@task\@@line\wphase@start\wphase@len\wphase@force}}}}
|
||
|
- \else% ifwork@areas false
|
||
|
- \edef\@@wps{\pdataref@safe{all}{wp}{ids}}
|
||
|
- \@for\@@wp:=\@@wps\do{% iterate over work packages
|
||
|
- \stepcounter{taskwps}
|
||
|
- \@@line=\gantt@wps\advance\@@line by -\thetaskwps
|
||
|
- \edef\@@tasks{\pdataref@safe\@@wp{task}{ids}}
|
||
|
- \node at (-1/\gantt@xscale,\@@line) [above=-2pt] {\pdataRef{wp}\@@wp{label}};
|
||
|
- \edef\@@wphases{\pdataref@safe{wp}\@@wp{wphases}}
|
||
|
- \@for\@@ft:=\@@wphases\do{%iterate over the wp-level work phases
|
||
|
- \decode@wphase\@@ft
|
||
|
- \@action\@@wp\@@line\wphase@start\wphase@len\wphase@force}
|
||
|
- \@for\@@task:=\@@tasks\do{% task-level work phases
|
||
|
- \edef\@@wphases{\pdataref@safe{task}\@@task{wphases}}
|
||
|
- \@for\@@ft:=\@@wphases\do{%iterate over the task-level work phases
|
||
|
- \decode@wphase\@@ft
|
||
|
- \@action\@@task\@@line\wphase@start\wphase@len\wphase@force}}}
|
||
|
- \fi% ifwork@areas end
|
||
|
- \edef\@@deps{\pdataref@safe{all}{task}{deps}}
|
||
|
- \@for\@@dep:=\@@deps\do{%
|
||
|
- \@dependency{\pdataref@safe{taskdep}\@@dep{from}}{\pdataref@safe{taskdep}\@@dep{to}}}
|
||
|
- \ifgantt@draft
|
||
|
- \newcounter{gantt@month}
|
||
|
- \newcount\@@e\newdimen\gantt@effort\newdimen\gantt@plus
|
||
|
- \@whilenum\thegantt@month<\prop@gen@months\do{% step over months
|
||
|
- \gantt@effort=0cm
|
||
|
- \ifwork@areas
|
||
|
- \edef\@@was{\pdataref@safe{all}{wa}{ids}}
|
||
|
- \@for\@@wa:=\@@was\do{% iterate over work areas
|
||
|
- \edef\@@wps{\pdataref@safe\@@wa{wp}{ids}}
|
||
|
- \@for\@@wp:=\@@wps\do{% iterate over work packages
|
||
|
- \edef\@@wphases{\pdataref@safe{wp}\@@wp{wphases}}
|
||
|
- \@for\@@ft:=\@@wphases\do{%iterate over the wp-level work phases
|
||
|
- \decode@wphase\@@ft
|
||
|
- \gantt@compute@effort\wphase@start\wphase@len\wphase@force}
|
||
|
- \edef\@@tasks{\pdataref@safe\@@wp{task}{ids}}
|
||
|
- \@for\@@task:=\@@tasks\do{% iterate over tasks
|
||
|
- \edef\@@wphases{\pdataref@safe{task}\@@task{wphases}}
|
||
|
- \@for\@@ft:=\@@wphases\do{%iterate over the wp-level work phases
|
||
|
- \decode@wphase\@@ft
|
||
|
- \gantt@compute@effort\wphase@start\wphase@len\wphase@force}}}}
|
||
|
- \fill[ganttgray] (\thegantt@month,-5) rectangle +(1,\gantt@effort);
|
||
|
- \else% ifwork@areas
|
||
|
- \edef\@@wps{\pdataref@safe{all}{wp}{ids}}
|
||
|
- \@for\@@wp:=\@@wps\do{% iterate over work packages
|
||
|
- \edef\@@wphases{\pdataref@safe{wp}\@@wp{wphases}}
|
||
|
- \@for\@@ft:=\@@wphases\do{%iterate over the wp-level work phases
|
||
|
- \decode@wphase\@@ft
|
||
|
- \gantt@compute@effort\wphase@start\wphase@len\wphase@force}
|
||
|
- \edef\@@tasks{\pdataref@safe\@@wp{task}{ids}}
|
||
|
- \@for\@@task:=\@@tasks\do{% iterate over tasks
|
||
|
- \edef\@@wphases{\pdataref@safe{task}\@@task{wphases}}
|
||
|
- \@for\@@ft:=\@@wphases\do{%iterate over the wp-level work phases
|
||
|
- \decode@wphase\@@ft
|
||
|
- \gantt@compute@effort\wphase@start\wphase@len\wphase@force}}}
|
||
|
- \fill[ganttgray] (\thegantt@month,-5) rectangle +(1,\gantt@effort);
|
||
|
- \fi% ifwork@areas
|
||
|
- \stepcounter{gantt@month}}
|
||
|
- \fi% ifgantt@draft
|
||
|
- \end{gantt}
|
||
|
- \caption{\gantt@caption}\label{fig:gantt}
|
||
|
-\end{figure}\footnotetext\gantt@footnote}
|
||
|
-\newcommand\gantt@caption@main{Gantt Chart: Overview Work Package Activities}
|
||
|
-\newcommand\gantt@caption@lower{lower bar shows the overall effort \if@RAM (RAM only)\fi per month}
|
||
|
-\newcommand\gantt@caption{\gantt@caption@main\ifgantt@draft\xspace
|
||
|
- (\gantt@caption@lower)\fi}
|
||
|
-\newcommand\gantt@footnote{Bars shown at reduced height (e.g. 50\%) indicate reduced
|
||
|
- intensity during that work phase (e.g. to 50\%).}
|
||
|
-\newcommand{\gantttaskchart}[1][]{\begin{figure}[hbtp]\centering\gantt@set{#1}
|
||
|
-\newcounter{gantt@all@tasks}%
|
||
|
-\setcounter{gantt@all@tasks}{\pdataref@num{all}{task}{count}}
|
||
|
-\addtocounter{gantt@all@tasks}{\pdataref@num{all}{wp}{count}}
|
||
|
-\begin{gantt}[#1]{\thegantt@all@tasks}
|
||
|
- \newcounter{gantt@tasks}\newcount\@@line
|
||
|
- \edef\@@wps{\pdataref@safe{all}{wp}{ids}}
|
||
|
- \@for\@@wp:=\@@wps\do{% iterate over work packages
|
||
|
- \stepcounter{gantt@tasks}
|
||
|
- \edef\@@tasks{\pdataref@safe\@@wp{task}{ids}}
|
||
|
- \@for\@@task:=\@@tasks\do{% iterate over the tasks
|
||
|
- \stepcounter{gantt@tasks}
|
||
|
- \@@line=\thegantt@all@tasks\advance\@@line by -\thegantt@tasks
|
||
|
- \node at (-.5/\gantt@xscale,\@@line) [above=-2pt] {{\footnotesize\taskreflong\@@wp\@@task}};
|
||
|
- \edef\@@wphases{\pdataref@safe{task}\@@task{wphases}}
|
||
|
- \@for\@@ft:=\@@wphases\do{%iterate over the task-level work phases
|
||
|
- \decode@wphase\@@ft
|
||
|
- \@action\@@task\@@line\wphase@start\wphase@len\wphase@force
|
||
|
- }}}% end all iterations
|
||
|
- \end{gantt}
|
||
|
- \caption{\gantt@caption@main{} -- \emph{\gantt@footnote}}\label{fig:gantt}
|
||
|
-\end{figure}}
|
||
|
-\newcommand\jpub{\textcolor{\prop@link@color}{\textbf{\Large{$\star$}}}}
|
||
|
-\newcommand\jpro{\textcolor{\prop@link@color}{\textbf{\Large{$\bullet$}}}}
|
||
|
-\newcommand\jsoft{\textcolor{\prop@link@color}{\textbf{@}}}
|
||
|
-\newcommand\jorga{\textcolor{\prop@link@color}{\textbf{\Large{$\circ$}}}}
|
||
|
-\newcommand\jsup{\textcolor{\prop@link@color}{\textbf{\smiley}}}
|
||
|
-\newcommand\add@joint[3]{\@ifundefined{coherence@#1@#2}%
|
||
|
-{\@namedef{coherence@#1@#2}{#3}}%
|
||
|
-{\expandafter\g@addto@macro\csname coherence@#1@#2\endcsname{#3}}}
|
||
|
-\newcommand\prop@joint[2]{\@for\@first:=#2\do{%
|
||
|
-\@for\@second:=#2\do{\ifx\@first\@second\else\add@joint\@first\@second{#1}\fi}}}
|
||
|
-\newcommand\jointproj[1]{\prop@joint\jpro{#1}}
|
||
|
-\newcommand\jointpub[1]{\prop@joint\jpub{#1}}
|
||
|
-\newcommand\jointorga[1]{\prop@joint\jorga{#1}}
|
||
|
-\newcommand\jointsoft[1]{\prop@joint\jsoft{#1}}
|
||
|
-\newcommand\jointsup[1]{\prop@joint\jsup{#1}}
|
||
|
-\newcommand{\coherencematrix}{
|
||
|
-{\let\tabularnewline\relax\let\hline\relax\let\site\relax% so they do
|
||
|
- \let\@sw\relax\let\jpub\relax\let\jpro\relax\let\jorga\relax% not bother
|
||
|
- \let\jsoft\relax\let\jsup\relax\let\cellcolor\relax% us
|
||
|
-\gdef\@ct@head{}%
|
||
|
-\@for\@site:=\prop@gen@sites\do{\xdef\@ct@head{\@ct@head%
|
||
|
-&\ifx\cht@swsites\@true\@sw{\site{\@site}}\else\site{\@site}\fi}}%
|
||
|
-\gdef\@ct@lines{\@ct@head\tabularnewline\hline\hline} %initialize with head line
|
||
|
-\@for\@site:=\prop@gen@sites\do{\xdef\@ct@line{\site{\@site}}%
|
||
|
- \@for\@@site:=\prop@gen@sites\do{%
|
||
|
- \xdef\@ct@line{\@ct@line&\ifx\@site\@@site{\cellcolor{wagray}{}}\fi%
|
||
|
- \@ifundefined{coherence@\@site @\@@site}{}{\@nameuse{coherence@\@site @\@@site}}}}%
|
||
|
- \xdef\@ct@lines{\@ct@lines\@ct@line\tabularnewline\hline}}}%
|
||
|
-\begin{tabular}{|l||*{\the@site}{c|}}\hline%
|
||
|
-\@ct@lines\hline%
|
||
|
-joint&\multicolumn{\the@site}{l|}{\jpub $\hat=$ publication, \jpro $\hat=$ project,
|
||
|
- \jorga $\hat=$ organization, \jsoft $\hat=$ software/resource dev,
|
||
|
- \jsup $\hat=$ supervision}\\\hline
|
||
|
-\end{tabular}}
|
||
|
-\define@key{coherencetable}{swsites}[true]{\def\cht@swsites{#1}}
|
||
|
-\define@key{coherencetable}{stretch}{\def\cht@stretch{#1}}
|
||
|
-\newcommand\coherencetable[1][]{%
|
||
|
-\def\cht@swsites{false}%
|
||
|
-\def\cht@stretch{1}%
|
||
|
-\setkeys{coherencetable}{#1}%
|
||
|
-\begin{table}[ht]\centering%
|
||
|
-\small\setlength{\tabcolsep}{.5em}%
|
||
|
-\renewcommand{\arraystretch}{\cht@stretch}%
|
||
|
-\coherencematrix%
|
||
|
-\caption{\coherence@caption}\label{tab:collaboration}
|
||
|
-\end{table}}
|
||
|
-\newcommand\coherence@caption{Previous Collaboration between {\pn} members}
|
||
|
-\defbibheading{empty}{}
|
||
|
-\newif\if@allpapers\@allpaperstrue
|
||
|
-\newcommand\prop@ppl[3][]{\@allpapersfalse\message{ppl processing: #2}%
|
||
|
-\printbibliography[heading=subbibliography,type=#2,title=#3#1]%
|
||
|
-\@ifundefined{prop@rl}{\xdef\prop@rl{#2}}{\xdef\prop@rl{\prop@rl, #2}}}
|
||
|
-\newcommand\prop@prl[1]{\message{unclassified: #1}%
|
||
|
-\printbibliography[heading=subbibliography,title=Unclassified,#1]}%
|
||
|
-\define@key{paperlist}{unclassified}[true]{\message{unclass: \prop@rl}\prop@prl\prop@rl}
|
||
|
-\define@key{paperlist}{articles}[true]{\prop@ppl{article}{Articles}}
|
||
|
-\define@key{paperlist}{chapters}[true]{\prop@ppl{inbook}{Book Chapters}}
|
||
|
-\define@key{paperlist}{confpapers}[true]{\prop@ppl[,keyword=conference]{inproceedings}{Conference Papers}}
|
||
|
-\define@key{paperlist}{wspapers}[true]{\prop@ppl[,notkeyword=conference]{inproceedings}{Workshop Papers}}
|
||
|
-\define@key{paperlist}{theses}[true]{\prop@ppl{thesis}{Theses}}
|
||
|
-\define@key{paperlist}{submitted}[true]{\prop@ppl[,keyword=submitted]{unpublished}{Submitted}}
|
||
|
-\define@key{paperlist}{books}[true]{\prop@ppl{book}{Monographs}}
|
||
|
-\define@key{paperlist}{techreports}[true]{\prop@ppl{techreport}{Technical Reports}}
|
||
|
-\DeclareBibliographyCategory{featured}
|
||
|
-\newcommand\prop@paperlist[2][]{%
|
||
|
-\let\biboldfont\bibfont%
|
||
|
-\renewcommand{\bibfont}{\footnotesize}%
|
||
|
-\renewcommand{\baselinestretch}{.9}
|
||
|
-\def\do##1{\addtocategory{featured}{##1}}\docsvlist{#2}%
|
||
|
-\setkeys{paperlist}{#1}
|
||
|
-\@ifundefined{prop@rl}{}{\@latex@warning{some papers are not classified!}}
|
||
|
-\if@allpapers\printbibliography[category=featured,heading=empty]\fi%
|
||
|
-\let\bibfont\biboldfont}
|
||
|
-\def\prop@warnpubs@message{Many of the proposers' publications are online at one of the following URIs:}
|
||
|
-\def\prop@warnpubs@title{References}
|
||
|
-\defbibheading{warnpubs}{\section*{\prop@warnpubs@title}%
|
||
|
- \@ifundefined{prop@gen@pubspages}
|
||
|
- {\@latex@warning{No publication pages specified;
|
||
|
- use the pubspage key in the proposal environment!}}
|
||
|
- {\prop@warnpubs@message%
|
||
|
- \@for\@I:=\prop@gen@pubspages\do{\par\noindent\csname\@I\endcsname}}}
|
||
|
-\defbibheading{empty}{}
|
||
|
+\RequirePackage{proposal}
|
||
|
+
|
||
|
+
|
||
|
\endinput
|
||
|
%%
|
||
|
%% End of file `proposal.cls'.
|
||
|
diff -up tex/latex/proposal/base/reporting.cls.noworkaddress tex/latex/proposal/base/reporting.cls
|
||
|
--- tex/latex/proposal/base/reporting.cls.noworkaddress 2022-12-31 12:22:39.739994906 -0500
|
||
|
+++ tex/latex/proposal/base/reporting.cls 2022-12-31 12:31:58.440831980 -0500
|
||
|
@@ -7,7 +7,7 @@
|
||
|
%% proposal.dtx (with options: `reporting')
|
||
|
%%
|
||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||
|
-\ProvidesPackage{reporting}[2016/04/15 v1.5 Project Reporting]
|
||
|
+\ProvidesPackage{reporting}[2020/08/21 v1.7 Project Reporting]
|
||
|
\newif\if@wpsubsection\@wpsubsectionfalse
|
||
|
\newif\ifsubmit\submitfalse
|
||
|
\newif\ifgrantagreement\grantagreementfalse
|
||
|
@@ -18,11 +18,15 @@
|
||
|
\newif\if@RAM\@RAMfalse
|
||
|
\newif\if@svninfo\@svninfofalse
|
||
|
\newif\if@gitinfo\@gitinfofalse
|
||
|
+\newif\if@numericcites\@numericcitesfalse
|
||
|
+\newif\if@longtasklabels\@longtasklabelsfalse
|
||
|
+\newif\if@attachments\@attachmentsfalse
|
||
|
\def\proposal@class{article}
|
||
|
\DeclareOption{wpsubsection}{\@wpsubsectiontrue}
|
||
|
\DeclareOption{submit}{\submittrue}
|
||
|
\DeclareOption{grantagreement}{\grantagreementtrue}
|
||
|
\DeclareOption{gitinfo}{\@gitinfotrue}
|
||
|
+\DeclareOption{numericcites}{\@numericcitestrue}
|
||
|
\DeclareOption{svninfo}{\@svninfotrue}
|
||
|
\DeclareOption{public}{\publictrue}
|
||
|
\DeclareOption{noworkareas}{\work@areasfalse\PassOptionsToClass{\CurrentOption}{pdata}}
|
||
|
@@ -30,67 +34,12 @@
|
||
|
\DeclareOption{report}{\def\proposal@class{report}}
|
||
|
\DeclareOption{keys}{\keystrue}
|
||
|
\DeclareOption{deliverables}{\delivstrue}
|
||
|
-\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
|
||
|
+\DeclareOption{longtasklabels}{\@longtasklabelstrue}
|
||
|
+\DeclareOption{attachments}{\@attachmentsfalse}
|
||
|
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\proposal@class}}
|
||
|
\ProcessOptions
|
||
|
\LoadClass[a4paper,twoside]{\proposal@class}
|
||
|
-\RequirePackage{amssymb}
|
||
|
-\RequirePackage{wasysym}
|
||
|
-\RequirePackage{url}
|
||
|
-\RequirePackage{graphicx}
|
||
|
-\RequirePackage{colortbl}
|
||
|
-\RequirePackage{xcolor}
|
||
|
-\RequirePackage{rotating}
|
||
|
-\RequirePackage{fancyhdr}
|
||
|
-\RequirePackage{array}
|
||
|
-\RequirePackage{xspace}
|
||
|
-\RequirePackage{comment}
|
||
|
-\AtBeginDocument{\ifpublic\excludecomment{private}\fi}
|
||
|
-\RequirePackage{tikz}
|
||
|
-\RequirePackage{paralist}
|
||
|
-\RequirePackage[a4paper,margin=18mm]{geometry}
|
||
|
-\RequirePackage{boxedminipage}
|
||
|
-\renewcommand{\thempfootnote}{\roman{mpfootnote}}
|
||
|
-\renewcommand{\familydefault}{\sfdefault}
|
||
|
-\RequirePackage[scaled=.90]{helvet}
|
||
|
-\RequirePackage{textcomp}
|
||
|
-\RequirePackage[hyperref=auto,style=alphabetic,defernumbers=true,backend=bibtex,backref=true,firstinits=true,maxbibnames=6]{biblatex}[2010/11-19]
|
||
|
-\RequirePackage{csquotes}
|
||
|
-\RequirePackage{mdframed}
|
||
|
-\RequirePackage{pdata}
|
||
|
-\definecolor{darkblue}{rgb}{0,0,.7}
|
||
|
-\ifsubmit\def\prop@link@color{darkblue}\else\def\prop@link@color{blue}\fi
|
||
|
-\RequirePackage[bookmarks=true,linkcolor=\prop@link@color,
|
||
|
- citecolor=\prop@link@color,urlcolor=\prop@link@color,colorlinks=true,
|
||
|
- breaklinks=true, bookmarksopen=true]{hyperref}
|
||
|
-\ifsubmit
|
||
|
-\RequirePackage[hide]{ed}
|
||
|
-\if@svninfo\RequirePackage[final,today]{svninfo}\fi
|
||
|
-\else
|
||
|
-\RequirePackage[show]{ed}
|
||
|
-\if@svninfo\RequirePackage[eso-foot,today]{svninfo}\fi
|
||
|
-\if@gitinfo\RequirePackage[mark]{gitinfo2}\fi
|
||
|
-\fi
|
||
|
-\renewcommand\ednoteshape{\sl\footnotesize}
|
||
|
-\ifpublic\excludecomment{private}\else\includecomment{private}\fi
|
||
|
-\setcounter{secnumdepth}{3}
|
||
|
-\newif\ifofpage\ofpagefalse
|
||
|
-\ifgrantagreement
|
||
|
-\fancyhead{}
|
||
|
-\renewcommand{\headrulewidth}{0pt}
|
||
|
-\renewcommand{\footrulewidth}{0.4pt}
|
||
|
-\else
|
||
|
-\fancyhead[RE,LO]{\prop@gen@acronym}
|
||
|
-\fancyhfoffset{0pt}
|
||
|
-\fi
|
||
|
-\fancyfoot[C]{}
|
||
|
-\newcommand\prop@of@pages[2]{page~#1\ifofpage~of~#2\fi}
|
||
|
-\ifgrantagreement
|
||
|
-\fancyfoot[L]{\prop@gen@proposalnumber\quad \prop@gen@acronym\quad --\quad Part B}
|
||
|
-\fancyfoot[R]{\thepage}
|
||
|
-\else
|
||
|
-\fancyhead[LE,RO]{\prop@of@pages\thepage{\pdataref@num{prop}{page}{last}}}
|
||
|
-\fi
|
||
|
-\pagestyle{fancyplain}
|
||
|
+\RequirePackage{proposal}
|
||
|
\newif\if@report\@reportfalse
|
||
|
\newenvironment{report}[1][]%
|
||
|
{\@reporttrue\readpdata\jobname%
|
||
|
@@ -108,7 +57,7 @@
|
||
|
{\begin{center}
|
||
|
{\LARGE Final Project Report}\\[.2cm]
|
||
|
{\LARGE\textbf{\prop@gen@title}}\\[.3cm]
|
||
|
- {\LARGE Acronym: {\prop@gen@acronym}}\\[.2cm]
|
||
|
+ \ifx\prop@gen@acronym\@empty\else{\LARGE Acronym: {\prop@gen@acronym}}\\[.2cm]\fi
|
||
|
{\large\today}\\[1em]
|
||
|
\begin{tabular}{c*{\the@PIs}{c}}
|
||
|
\prop@tl\prop@gen@PIs{\pdataref{PI}\tl@ext{name}}\\
|
||
|
@@ -118,41 +67,8 @@
|
||
|
\end{center}
|
||
|
\setcounter{tocdepth}{2}\tableofcontents\newpage\setcounter{page}{1}}
|
||
|
{}
|
||
|
-\defbibheading{empty}{}
|
||
|
-\newif\if@allpapers\@allpaperstrue
|
||
|
-\newcommand\prop@ppl[3][]{\@allpapersfalse\message{ppl processing: #2}%
|
||
|
-\printbibliography[heading=subbibliography,type=#2,title=#3#1]%
|
||
|
-\@ifundefined{prop@rl}{\xdef\prop@rl{#2}}{\xdef\prop@rl{\prop@rl, #2}}}
|
||
|
-\newcommand\prop@prl[1]{\message{unclassified: #1}%
|
||
|
-\printbibliography[heading=subbibliography,title=Unclassified,#1]}%
|
||
|
-\define@key{paperlist}{unclassified}[true]{\message{unclass: \prop@rl}\prop@prl\prop@rl}
|
||
|
-\define@key{paperlist}{articles}[true]{\prop@ppl{article}{Articles}}
|
||
|
-\define@key{paperlist}{chapters}[true]{\prop@ppl{inbook}{Book Chapters}}
|
||
|
-\define@key{paperlist}{confpapers}[true]{\prop@ppl[,keyword=conference]{inproceedings}{Conference Papers}}
|
||
|
-\define@key{paperlist}{wspapers}[true]{\prop@ppl[,notkeyword=conference]{inproceedings}{Workshop Papers}}
|
||
|
-\define@key{paperlist}{theses}[true]{\prop@ppl{thesis}{Theses}}
|
||
|
-\define@key{paperlist}{submitted}[true]{\prop@ppl[,keyword=submitted]{unpublished}{Submitted}}
|
||
|
-\define@key{paperlist}{books}[true]{\prop@ppl{book}{Monographs}}
|
||
|
-\define@key{paperlist}{techreports}[true]{\prop@ppl{techreport}{Technical Reports}}
|
||
|
-\DeclareBibliographyCategory{featured}
|
||
|
-\newcommand\prop@paperlist[2][]{%
|
||
|
-\let\biboldfont\bibfont%
|
||
|
-\renewcommand{\bibfont}{\footnotesize}%
|
||
|
-\renewcommand{\baselinestretch}{.9}
|
||
|
-\def\do##1{\addtocategory{featured}{##1}}\docsvlist{#2}%
|
||
|
-\setkeys{paperlist}{#1}
|
||
|
-\@ifundefined{prop@rl}{}{\@latex@warning{some papers are not classified!}}
|
||
|
-\if@allpapers\printbibliography[category=featured,heading=empty]\fi%
|
||
|
-\let\bibfont\biboldfont}
|
||
|
-\def\prop@warnpubs@message{Many of the proposers' publications are online at one of the following URIs:}
|
||
|
-\def\prop@warnpubs@title{References}
|
||
|
-\defbibheading{warnpubs}{\section*{\prop@warnpubs@title}%
|
||
|
- \@ifundefined{prop@gen@pubspages}
|
||
|
- {\@latex@warning{No publication pages specified;
|
||
|
- use the pubspage key in the proposal environment!}}
|
||
|
- {\prop@warnpubs@message%
|
||
|
- \@for\@I:=\prop@gen@pubspages\do{\par\noindent\csname\@I\endcsname}}}
|
||
|
-\defbibheading{empty}{}
|
||
|
+
|
||
|
+
|
||
|
\endinput
|
||
|
%%
|
||
|
%% End of file `reporting.cls'.
|
||
|
diff -up tex/latex/proposal/dfg/dfgpdata.sty.noworkaddress tex/latex/proposal/dfg/dfgpdata.sty
|
||
|
--- tex/latex/proposal/dfg/dfgpdata.sty.noworkaddress 2016-04-15 17:38:41.000000000 -0400
|
||
|
+++ tex/latex/proposal/dfg/dfgpdata.sty 2022-12-31 12:32:42.674795973 -0500
|
||
|
@@ -7,35 +7,21 @@
|
||
|
%% dfgproposal.dtx (with options: `pdata')
|
||
|
%%
|
||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||
|
-\ProvidesPackage{dfgpdata}[2016/04/15 v1.4 DFG Project Data]
|
||
|
+\ProvidesPackage{dfgpdata}[2020/08/21 v1.5 DFG Project Data]
|
||
|
\newif\ifdeutsch\deutschfalse
|
||
|
\DeclareOption{german}{\deutschtrue\message{Deutscher Antrag}}
|
||
|
\ProcessOptions
|
||
|
\define@key{prop@gen}{thema}{\def\prop@gen@thema{#1}\pdata@def{prop}{gen}{thema}{#1}}
|
||
|
+\def\prop@gen@Dkeywords{kommt noch}
|
||
|
+\def\prop@gen@keywords{to be added}
|
||
|
+\define@key{prop@gen}{Dkeywords}{\def\prop@gen@Dkeywords{#1}}
|
||
|
\renewcommand\prop@gen@instrument{Neuantrag auf Sachbeihilfe}
|
||
|
\newcommand\prop@gen@thema{??? Thema ???}
|
||
|
\newcommand\deu[1]{#1}
|
||
|
-\newcommand\dfg@applicants@lines{%
|
||
|
-\prop@tl\prop@gen@PIs{\wa@ref{person}\tl@ext{personaltitle} \wa@ref{person}\tl@ext{name}}\\
|
||
|
-\prop@tl\prop@gen@PIs{\wa@ref{person}\tl@ext{academictitle}}\\
|
||
|
-\prop@tl\prop@gen@PIs{\wa@ref{person}\tl@ext{birthdate}}\\}
|
||
|
-\newcommand\dfg@applicants@institute@lines{%
|
||
|
-\prop@tl\prop@gen@PIs{\wa@ref{institution}{\wa@ref{person}\tl@ext{affiliation}}{shortname}}\\
|
||
|
-\prop@tl\prop@gen@PIs{\wa@ref{person}\tl@ext{workaddress}}\\
|
||
|
-\prop@tl\prop@gen@PIs{Tel: \wa@ref{person}\tl@ext{worktel}}\\
|
||
|
-\prop@tl\prop@gen@PIs{Fax: \wa@ref{person}\tl@ext{workfax}}\\
|
||
|
-\prop@tl\prop@gen@PIs{\wa@ref{person}\tl@ext{email}}\\}
|
||
|
-\newcommand\dfg@applicants@private@lines{%
|
||
|
-\prop@tl\prop@gen@PIs{\wa@ref{person}\tl@ext{privaddress}}\\
|
||
|
-\prop@tl\prop@gen@PIs{Tel: \wa@ref{person}\tl@ext{privtel}}\\}
|
||
|
-\newcommand\dfg@applicants{%
|
||
|
-\subsection{\if@sites\ifnum\the@sites>1 Joint Proposal; \fi\fi%
|
||
|
-Applicant\if@sites\ifnum\the@PIs>1{s}\fi\fi\ \deu{(Antragsteller)}}%
|
||
|
-\dfg@applicants@table}
|
||
|
-\newcommand\dfg@topic{\subsection{\ifdeutsch Thema\else Topic \deu{(Thema)}\fi}\prop@gen@thema}
|
||
|
+\newcommand\dfg@topic{\subsection{\ifdeutsch Thema\else Topic\fi}\prop@gen@thema}
|
||
|
\newcommand\dfg@area@field{%
|
||
|
\ifdeutsch\subsection{Fachgebiet und Arbeitsrichtung}\else
|
||
|
-\subsection{Research area and field of work \deu{(Fachgebiet und Arbeitsrichtung)}}\fi
|
||
|
+\subsection{Research area and field of work }\fi
|
||
|
\ifdeutsch Disziplin\else Scientific discipline\fi: \prop@gen@discipline\\
|
||
|
\ifdeutsch Arbeitsgebiet\else Fields of work\fi: \prop@gen@areas}
|
||
|
\newcommand\dfgprojpapers[2][]{\prop@paperlist[#1]{#2}}
|
||
|
@@ -71,6 +57,8 @@ Applicant\if@sites\ifnum\the@PIs>1{s}\fi
|
||
|
\renewcommand\wp@legend@site{Partner}
|
||
|
\renewcommand\wp@legend@effort{Aufwand\if@RAM{ (PM+HM)}\fi}
|
||
|
\renewcommand\wp@legend@all{\textbf{Summe}}
|
||
|
+\renewcommand\wprm{\pdataref@safe{wp}\wp@id{RM}\if@RAM\ PM+\pdataref{wp}\wp@id{RAM} HM\fi}
|
||
|
+\renewcommand\gantt@footnote{Balken mit reduzierter H\"ohe (z.B. 50\%) bedeuten reduzierte Arbeitslast in dieser Phase (z.B. auf 50\%)}
|
||
|
\renewcommand\gantt@caption@main{Zeitliche Verteilung der Arbeitspakete}
|
||
|
\renewcommand\gantt@caption@lower{draft: unten die Lastverteilung}
|
||
|
\renewcommand\coherence@caption{Bisherige Kollaboration der {\pn} Partner}
|
||
|
diff -up tex/latex/proposal/dfg/dfgproposal.cls.noworkaddress tex/latex/proposal/dfg/dfgproposal.cls
|
||
|
--- tex/latex/proposal/dfg/dfgproposal.cls.noworkaddress 2016-04-15 17:38:41.000000000 -0400
|
||
|
+++ tex/latex/proposal/dfg/dfgproposal.cls 2022-12-31 12:32:42.674795973 -0500
|
||
|
@@ -7,58 +7,54 @@
|
||
|
%% dfgproposal.dtx (with options: `cls')
|
||
|
%%
|
||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||
|
-\ProvidesClass{dfgproposal}[2016/04/15 v1.4 DFG Proposal]
|
||
|
+\ProvidesClass{dfgproposal}[2020/08/21 v1.5 DFG Proposal]
|
||
|
\newif\ifgeneral\generalfalse
|
||
|
\DeclareOption{general}{\generaltrue}
|
||
|
\DeclareOption{german}{\PassOptionsToPackage{\CurrentOption}{dfgpdata}}
|
||
|
+\PassOptionsToClass{11pt}{article}
|
||
|
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{proposal}}
|
||
|
\ProcessOptions
|
||
|
\LoadClass{proposal}
|
||
|
\RequirePackage{eurosym}
|
||
|
\RequirePackage{dfgpdata}
|
||
|
\ifdeutsch\RequirePackage[ngerman]{babel}
|
||
|
-\else\RequirePackage[ngerman,USenglish]{babel}\fi
|
||
|
+\else\RequirePackage[ngerman,english]{babel}\fi
|
||
|
+\RequirePackage[scaled=.90]{helvet}
|
||
|
+\renewcommand{\familydefault}{\sfdefault}
|
||
|
\newenvironment{sitedescription}[2][]%
|
||
|
-{\def\@test{#1}\def\@@title{\ifx\@test\@empty\wa@ref{institution}{#2}{acronym}\else #1\fi:
|
||
|
-\textsc{\wa@ref{institution}{#2}{name}}}
|
||
|
+{\def\@test{#1}\def\@@title{\ifx\@test\@empty\pdataref{site}{#2}{acronym}\else #1\fi:
|
||
|
+\textsc{\pdataref{site}{#2}{name}}}
|
||
|
\@for\@I:=#2\do{\pdata@target{site}\@I{}}\subsubsection\@@title}
|
||
|
{}
|
||
|
-\newlength\applicants@table@columnwidth
|
||
|
-\newcommand\dfg@applicants@table%
|
||
|
-{\setlength\applicants@table@columnwidth\textwidth
|
||
|
-\advance\applicants@table@columnwidth by -6em
|
||
|
-\divide\applicants@table@columnwidth by \the@PIs
|
||
|
-\ifnum\the@PIs>2\begin{tabular}{|l|*{\the@PIs}{p{\applicants@table@columnwidth}|}}
|
||
|
-\else\begin{tabular}{|l|*{\the@PIs}{l|}}\fi
|
||
|
-\hline
|
||
|
-\dfg@applicants@lines\hline
|
||
|
-&\multicolumn{\the@PIs}{|l|}{\textbf{Work Address\deu{ (Dienstanschrift)}:}}\\\hline
|
||
|
-\dfg@applicants@institute@lines\hline
|
||
|
-&\multicolumn{\the@PIs}{|l|}{\textbf{Private Address\deu{ (Privatanschrift)}:}}\\\hline
|
||
|
-\dfg@applicants@private@lines\hline
|
||
|
-\end{tabular}}
|
||
|
\renewenvironment{prop@proposal}
|
||
|
-{\thispagestyle{empty}%
|
||
|
+{\ifsubmit\setcounter{page}{1}\else\thispagestyle{empty}\fi
|
||
|
\begin{center}
|
||
|
{\LARGE \prop@gen@instrument}\\[.2cm]
|
||
|
{\LARGE\textbf{\prop@gen@title}}\\[.3cm]
|
||
|
-{\LARGE Acronym: {\prop@gen@acronym}}\\[.2cm]
|
||
|
+\ifx\prop@gen@acronym\@empty\else{\LARGE Acronym: {\prop@gen@acronym}}\\[.2cm]\fi
|
||
|
{\large\today}\\[1em]
|
||
|
-\WAauthorblock[aff]\prop@gen@PIs\\[2cm]
|
||
|
+\edef\the@PIs{\pdataref{all}{PI}{count}}
|
||
|
+\edef\prop@gen@PIs{\pdataref{all}{PI}{ids}}
|
||
|
+\begin{tabular}{c*{\the@PIs}{c}}
|
||
|
+\prop@tl\prop@gen@PIs{\pdataref@safe{PI}\tl@ext{name}}\\
|
||
|
+\prop@tl\prop@gen@PIs{\pdataref@safe{PI}\tl@ext{affiliation}}\\
|
||
|
+\prop@tl\prop@gen@PIs{\pdataref@safe{PI}\tl@ext{dept}}\\
|
||
|
+\end{tabular}\\[2cm]
|
||
|
\end{center}
|
||
|
+\ifgeneral
|
||
|
+\ifsubmit\else
|
||
|
+\setcounter{section}{-1}
|
||
|
\edef\keep@tocdepth{\value{tocdepth}}
|
||
|
\setcounter{tocdepth}{2}\tableofcontents
|
||
|
\setcounter{tocdepth}{\keep@tocdepth}
|
||
|
-\ifgeneral\setcounter{section}{-1}
|
||
|
\newpage\thispagestyle{empty}
|
||
|
\ifdeutsch\section{Allgemeine Angaben (nur f\"ur ELAN)}\else
|
||
|
\section{General Information (for the ELAN system only)}\fi
|
||
|
-\dfg@applicants
|
||
|
\dfg@topic
|
||
|
\dfg@area@field
|
||
|
\ifdeutsch\subsection{Voraussichtliche Gesamtdauer}\else
|
||
|
-\subsection{Anticipated total duration \deu{(Voraussichtliche Gesamtdauer)}}
|
||
|
-\fi
|
||
|
+\subsection{Anticipated total duration}
|
||
|
+\fi% ifdeutsch
|
||
|
\@ifundefined{prop@gen@totalduration}{????}{\prop@gen@totalduration};
|
||
|
\ifdeutsch
|
||
|
\@ifundefined{prop@gen@since}{Erstantrag}{Fortsetungsantrag, das Project l\"auft seit
|
||
|
@@ -66,34 +62,31 @@
|
||
|
\else
|
||
|
\@ifundefined{prop@gen@since}{initial proposal}{continuation proposal, the project started
|
||
|
\prop@gen@since.}
|
||
|
+\fi%ifdeutsch
|
||
|
+\ifdeutsch
|
||
|
+\subsection{Schl\"usselw\"orter}\prop@gen@Dkeywords
|
||
|
+\else\subsection{Keywords}\prop@gen@keywords
|
||
|
\fi
|
||
|
\ifdeutsch\subsection{Antragszeitraum}\else
|
||
|
-\subsection{Application period \deu{(Antragszeitraum)}}\fi
|
||
|
+\subsection{Application period}\fi
|
||
|
\prop@gen@months\quad Months starting \prop@gen@start
|
||
|
\@ifundefined{prop@gen@fundsuntil}{}
|
||
|
{ (\ifdeutsch Mittel reichen bis\else funds last until\fi\ \prop@gen@fundsuntil)}
|
||
|
-\ifdeutsch\else\selectlanguage{USenglish}\fi
|
||
|
-\newpage\fi%ifgeneral
|
||
|
-\setcounter{page}{0}}
|
||
|
+\ifdeutsch\else\selectlanguage{english}\fi
|
||
|
+\newpage
|
||
|
+\setcounter{page}{0}%
|
||
|
+\fi\fi}% ifsubmit ifgeneral
|
||
|
{}
|
||
|
\ifdeutsch
|
||
|
\def\prop@warnpubs@message{Viele der Publikationen der Antragsteller sind verf\"ugbar unter folgenden URLs:}
|
||
|
\def\prop@warnpubs@title{Literatur}
|
||
|
\fi
|
||
|
\newcommand\attachments{\ifdeutsch\section{Verzeichnis der Anlagen}\else
|
||
|
-\section{List of Attachments \deu{(Verzeichnis der Anlagen)}}\fi
|
||
|
+\section{List of Attachments}\fi
|
||
|
\begin{itemize}
|
||
|
\@for\@I:=\prop@gen@PIs\do{%
|
||
|
- \item\ifdeutsch Lebenslauf und Publikatinsverzeichnis\else
|
||
|
- Curriculum Vitae and list of publications for \fi
|
||
|
- \@nameuse{wa@person@\@I @personaltitle}
|
||
|
- \@nameuse{wa@person@\@I @name}
|
||
|
- (CD + \ifdeutsch Ausdruck\else printed version\fi)}
|
||
|
-\ifdeutsch
|
||
|
-\item Publications either cited in section~\ref{sec:ourpubs} or occurring in one of the
|
||
|
- curricula vitae (CD only)\else
|
||
|
-\item Zitierte Publikationen aus Abschnitt~\ref{sec:ourpubs} oder einem der Lebensl\"aufe
|
||
|
- (nur CD)\fi
|
||
|
+ \item\ifdeutsch Lebenslauf und Publikatinsverzeichnis\else Curriculum Vitae and list of publications for \fi
|
||
|
+ \pdataref{PI}\@I{title}\pdataref{PI}\@I{name}}
|
||
|
\end{itemize}}
|
||
|
\ifgeneral
|
||
|
\newenvironment{Zusammenfassung}{\thispagestyle{empty}\subsection{Zusammenfassung}\begin{otherlanguage}{ngerman}}
|
||
|
diff -up tex/latex/proposal/dfg/dfgreporting.cls.noworkaddress tex/latex/proposal/dfg/dfgreporting.cls
|
||
|
--- tex/latex/proposal/dfg/dfgreporting.cls.noworkaddress 2016-04-15 17:38:41.000000000 -0400
|
||
|
+++ tex/latex/proposal/dfg/dfgreporting.cls 2022-12-31 12:32:42.674795973 -0500
|
||
|
@@ -7,15 +7,18 @@
|
||
|
%% dfgproposal.dtx (with options: `reporting')
|
||
|
%%
|
||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||
|
-\ProvidesPackage{dfgreporting}[2016/04/15 v1.4 DFG Project Reporting]
|
||
|
+\ProvidesPackage{dfgreporting}[2020/08/21 v1.5 DFG Project Reporting]
|
||
|
\DeclareOption{german}{\PassOptionsToPackage{\CurrentOption}{dfgpdata}}
|
||
|
+\PassOptionsToClass{11pt}{article}
|
||
|
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{reporting}}
|
||
|
\ProcessOptions
|
||
|
\LoadClass{reporting}
|
||
|
\RequirePackage{eurosym}
|
||
|
\RequirePackage{dfgpdata}
|
||
|
\ifdeutsch\RequirePackage[ngerman]{babel}
|
||
|
-\else\RequirePackage[ngerman,USenglish]{babel}\fi
|
||
|
+\else\RequirePackage[ngerman,english]{babel}\fi
|
||
|
+\RequirePackage[scaled=.90]{helvet}
|
||
|
+\renewcommand{\familydefault}{\sfdefault}
|
||
|
\define@key{prop@gen}{reportperiod}{\def\prop@gen@reportperiod{#1}}
|
||
|
\define@key{prop@gen}{applareas}{\def\prop@gen@applareas{#1}}
|
||
|
\define@key{prop@gen}{key}{\@dmp{key=#1}%
|
||
|
@@ -23,45 +26,38 @@
|
||
|
\define@key{prop@gen}{coop}{\@dmp{coop=#1}%
|
||
|
\@ifundefined{prop@gen@coops}{\xdef\prop@gen@coops{{#1}}}{\xdef\prop@gen@coops{\prop@gen@coops,{#1}}}}
|
||
|
\define@key{prop@gen}{projpapers}{\def\prop@gen@projpapers{#1}}
|
||
|
-\newcommand\dfg@applicants@table%
|
||
|
-{\begin{tabular}{|l|*{\the@PIs}{l|}}\hline
|
||
|
-\dfg@applicants@lines\hline
|
||
|
-&\multicolumn{\the@PIs}{|l|}{\textbf{Private Address\deu{ (Privatanschrift)}:}}\\\hline
|
||
|
-\dfg@applicants@private@lines\hline
|
||
|
-\end{tabular}}
|
||
|
-\newcommand\dfg@institute@table%
|
||
|
-{\begin{tabular}{|l|*{\the@PIs}{l|}}\hline
|
||
|
-\dfg@applicants@institute@lines\hline
|
||
|
-\end{tabular}}
|
||
|
\newcommand\prop@assoc[2]{\let\@tmpop=\relax\@for\@I:=#2\do{\@tmpop\@I\let\@tmpop=#1}}
|
||
|
\newcommand\show@prop@gen@keys{\def\@cb{, }\@ifundefined{prop@gen@keys}{??:???? ?/?}{\prop@assoc\@cb\prop@gen@keys}}
|
||
|
\renewenvironment{prop@report}
|
||
|
-{\selectlanguage{USenglish}
|
||
|
-\thispagestyle{empty}%
|
||
|
+{\ifsubmit\setcounter{page}{1}\else\thispagestyle{empty}\fi%
|
||
|
\begin{center}
|
||
|
- {\LARGE Final Project Report}\\[.2cm]
|
||
|
- {\LARGE\textbf{\prop@gen@title}}\\[.3cm]
|
||
|
- {\LARGE Acronym: {\prop@gen@acronym}}\\[.2cm]
|
||
|
- {\large Reference number(s): \show@prop@gen@keys}\\[.2cm]
|
||
|
- {\large\today}\\[1em]
|
||
|
- \begin{tabular}{c*{\the@PIs}{c}}
|
||
|
- \prop@tl\prop@gen@PIs{\wa@ref{person}\tl@ext{name}}\\
|
||
|
- \prop@tl\prop@gen@PIs{\wa@ref{institution}{\wa@ref{person}\tl@ext{affiliation}}{name}}
|
||
|
- \end{tabular}\\[2cm]
|
||
|
+{\LARGE \prop@gen@instrument}\\[.2cm]
|
||
|
+{\LARGE\textbf{\prop@gen@title}}\\[.3cm]
|
||
|
+\ifx\prop@gen@acronym\@empty\else{\LARGE Acronym: {\prop@gen@acronym}}\\[.2cm]\fi
|
||
|
+{\large\today}\\[1em]
|
||
|
+\edef\the@PIs{\pdataref{all}{PI}{count}}
|
||
|
+\edef\prop@gen@PIs{\pdataref{all}{PI}{ids}}
|
||
|
+\begin{tabular}{c*{\the@PIs}{c}}
|
||
|
+\prop@tl\prop@gen@PIs{\pdataref@safe{PI}\tl@ext{name}}\\
|
||
|
+\prop@tl\prop@gen@PIs{\pdataref@safe{PI}\tl@ext{affiliation}}\\
|
||
|
+\prop@tl\prop@gen@PIs{\pdataref@safe{PI}\tl@ext{dept}}\\
|
||
|
+\end{tabular}\\[2cm]
|
||
|
\end{center}
|
||
|
-\setcounter{tocdepth}{1}\tableofcontents\newpage\setcounter{page}{1}
|
||
|
-\section{General Information \deu{(Allgemeine Angaben)}}
|
||
|
-\subsection{Reference Numbers \deu{(DFG Gesch\"aftszeichen)}}
|
||
|
+\setcounter{section}{-1}
|
||
|
+\edef\keep@tocdepth{\value{tocdepth}}
|
||
|
+\setcounter{tocdepth}{2}\tableofcontents
|
||
|
+\setcounter{tocdepth}{\keep@tocdepth}
|
||
|
+\newpage\thispagestyle{empty}
|
||
|
+\ifdeutsch\section{Allgemeine Angaben (nur f\"ur ELAN)}\else
|
||
|
+\section{General Information (for the ELAN system only)}\fi
|
||
|
+\subsection{Reference Numbers}
|
||
|
\show@prop@gen@keys
|
||
|
-\dfg@applicants
|
||
|
-\subsection{Institute/Chair \deu{(Institut/Lehrstuhl)}}\dfg@institute@table
|
||
|
-\dfg@topic
|
||
|
-\subsection{Report and Funding Period \deu{(Berichts- und F\"orderzeitraum)}}
|
||
|
+\subsection{Report and Funding Period}
|
||
|
\prop@gen@reportperiod
|
||
|
\dfg@area@field
|
||
|
-\subsection{Application Areas \deu{(Verwertungsfelder)}}\prop@gen@applareas
|
||
|
+\subsection{Application Areas}\prop@gen@applareas
|
||
|
\dfgprojpapers\prop@gen@projpapers}
|
||
|
-{\signatures{Signatures \deu{(Unterschriften)}}}
|
||
|
+{}
|
||
|
\endinput
|
||
|
%%
|
||
|
%% End of file `dfgreporting.cls'.
|
||
|
diff -up tex/latex/proposal/eu/eupdata.sty.noworkaddress tex/latex/proposal/eu/eupdata.sty
|
||
|
--- tex/latex/proposal/eu/eupdata.sty.noworkaddress 2016-04-15 17:38:41.000000000 -0400
|
||
|
+++ tex/latex/proposal/eu/eupdata.sty 2022-12-31 12:33:20.956764811 -0500
|
||
|
@@ -7,9 +7,11 @@
|
||
|
%% euproposal.dtx (with options: `pdata')
|
||
|
%%
|
||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||
|
-\ProvidesPackage{eupdata}[2016/04/15 v1.5 EU Project Data]
|
||
|
+\ProvidesPackage{eupdata}[2020/08/21 v1.7 EU Project Data]
|
||
|
\define@key{prop@gen}{coordinator}{\def\prop@gen@coordinator{#1}\pdata@def{prop}{gen}{coordinator}{#1}}
|
||
|
-\define@key{prop@gen}{coordinatorsite}{\def\prop@gen@coordinatorsite{#1}\pdata@def{prop}{gen}{coordinator}{#1}}
|
||
|
+\define@key{prop@gen}{Csite}{\def\prop@gen@Csite{#1}\pdata@def{prop}{gen}{Csite}{#1}}
|
||
|
+\define@key{prop@gen}{Cemail}{\def\prop@gen@Cemail{#1}\pdata@def{prop}{gen}{Cemail}{#1}}
|
||
|
+\define@key{prop@gen}{Ctelfax}{\def\prop@gen@Ctelfax{#1}\pdata@def{prop}{gen}{Ctelfax}{#1}}
|
||
|
\def\prop@gen@challenge{??}\def\prop@gen@challengeid{??}
|
||
|
\define@key{prop@gen}{challenge}{\def\prop@gen@challenge{#1}\pdata@def{prop}{gen}{challenge}{#1}}
|
||
|
\define@key{prop@gen}{challengeid}{\def\prop@gen@challengeid{#1}\pdata@def{prop}{gen}{challengeid}{#1}}
|
||
|
@@ -19,8 +21,8 @@
|
||
|
\def\prop@gen@outcome{??}\def\prop@gen@outcomeid{??}
|
||
|
\define@key{prop@gen}{outcome}{\def\prop@gen@outcome{#1}\pdata@def{prop}{gen}{outcome}{#1}}
|
||
|
\define@key{prop@gen}{outcomeid}{\def\prop@gen@outcomeid{#1}\pdata@def{prop}{gen}{outcomeid}{#1}}
|
||
|
-\define@key{prop@gen}{callname}{\def\prop@gen@call{#1}\pdata@def{prop}{gen}{callname}{#1}}
|
||
|
-\define@key{prop@gen}{callid}{\def\prop@gen@call{#1}\pdata@def{prop}{gen}{callid}{#1}}
|
||
|
+\define@key{prop@gen}{callname}{\def\prop@gen@callname{#1}\pdata@def{prop}{gen}{callname}{#1}}
|
||
|
+\define@key{prop@gen}{callid}{\def\prop@gen@callid{#1}\pdata@def{prop}{gen}{callid}{#1}}
|
||
|
\define@key{prop@gen}{iconrowheight}{\def\prop@gen@iconrowheight{#1}}
|
||
|
\define@key{prop@gen}{topicsaddressed}{\def\prop@gen@topicsaddressed{#1}}
|
||
|
\endinput
|
||
|
diff -up tex/latex/proposal/eu/euproposal.cls.noworkaddress tex/latex/proposal/eu/euproposal.cls
|
||
|
--- tex/latex/proposal/eu/euproposal.cls.noworkaddress 2016-04-15 17:38:41.000000000 -0400
|
||
|
+++ tex/latex/proposal/eu/euproposal.cls 2022-12-31 12:33:20.956764811 -0500
|
||
|
@@ -7,32 +7,35 @@
|
||
|
%% euproposal.dtx (with options: `cls')
|
||
|
%%
|
||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||
|
-\ProvidesClass{euproposal}[2016/04/15 v1.5 EU Proposal]
|
||
|
+\ProvidesClass{euproposal}[2020/08/21 v1.7 EU Proposal]
|
||
|
\newif\ifpartB\partBfalse
|
||
|
\DeclareOption{partB}{\partBtrue}
|
||
|
+\newif\if@split\@splitfalse
|
||
|
+\DeclareOption{split}{\@splittrue}
|
||
|
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{proposal}}
|
||
|
\ProcessOptions
|
||
|
-\ifpartB\LoadClass[report,noRAM]{proposal}\else\LoadClass[noRAM]{proposal}\fi
|
||
|
+\ifpartB\LoadClass[report]{proposal}\else\LoadClass{proposal}\fi
|
||
|
\RequirePackage{longtable}
|
||
|
\RequirePackage{eurosym}
|
||
|
\RequirePackage{wrapfig}
|
||
|
\RequirePackage{eupdata}
|
||
|
+\RequirePackage{datetime}
|
||
|
\RequirePackage{chngcntr}
|
||
|
\counterwithin{figure}{subsection}
|
||
|
\counterwithin{table}{subsection}
|
||
|
+\setcounter{secnumdepth}{4}
|
||
|
\ifpartB
|
||
|
\def\thepart{\Alph{part}}
|
||
|
\setcounter{part}{2}
|
||
|
\def\thechapter{\thepart.\arabic{chapter}}
|
||
|
\def\numberline#1{\hb@xt@\@tempdima{#1\hfil} }
|
||
|
-\fi
|
||
|
+\fi% ifpartB
|
||
|
\newcommand\prop@sites@table{\def\@@table{}
|
||
|
{\let\tabularnewline\relax\let\hline\relax
|
||
|
-\@for\@I:=\prop@gen@sites\do{\xdef\@@table{\@@table\pdataref{site}\@I{number}}
|
||
|
-\xdef\@@table{\@@table&\@nameuse{wa@institution@\@I @name}
|
||
|
-\ifx\@I\prop@gen@coordinatorsite (coordinator)\fi}
|
||
|
-\xdef\@@table{\@@table&\@nameuse{wa@institution@\@I @acronym}}
|
||
|
-\xdef\@@table{\@@table&\@nameuse{wa@institution@\@I @countryshort}\tabularnewline\hline}}}
|
||
|
+\@for\@I:=\prop@gen@sites\do{\xdef\@@table{\@@table\pdataref@safe{site}\@I{number}}
|
||
|
+\xdef\@@table{\@@table&\pdataref@safe{site}\@I{shortname}\ifx\@I\prop@gen@coordinatorsite (coordinator)\fi}
|
||
|
+\xdef\@@table{\@@table&\pdataref@safe{site}\@I{acronym}}
|
||
|
+\xdef\@@table{\@@table&\pdataref@safe{site}\@I{countryshort}\tabularnewline\hline}}}
|
||
|
\begin{tabular}{|l|p{8cm}|l|l|}\hline%|
|
||
|
\# & Participant organisation name & Short name & Country\\\hline\hline
|
||
|
\@@table
|
||
|
@@ -44,9 +47,9 @@
|
||
|
{\Large\textbf\prop@gen@callname}\\[.4cm]
|
||
|
{\LARGE \prop@gen@callid}\\[.8cm]
|
||
|
{\huge\textbf\prop@gen@title}\\[.4cm]
|
||
|
- {\LARGE Acronym: {\prop@gen@acronym}}\\[2cm]
|
||
|
+ \ifx\prop@gen@acronym\@empty\else{\LARGE Acronym: {\prop@gen@acronym}}\\[2cm]\fi
|
||
|
\end{center}
|
||
|
-{\large\textbf{Date of Preparation: \today}}
|
||
|
+{\large\textbf{Date of Preparation: \today: \currenttime}}
|
||
|
\\[1em]
|
||
|
\begin{large}
|
||
|
\begin{description}
|
||
|
@@ -56,9 +59,9 @@
|
||
|
% \textbf{Objective \prop@gen@objectiveid}: \prop@gen@objective,
|
||
|
% \textbf{target outcome \prop@gen@outcomeid}) \prop@gen@outcome.
|
||
|
% {\prop@gen@topicsaddressed}\\[1em]
|
||
|
- \item[Coordinator:] \wa@ref{person}\prop@gen@coordinator{name}
|
||
|
- \item[e-mail:] \wa@ref{person}\prop@gen@coordinator{email}
|
||
|
- \item[tel/fax:] \wa@ref{person}\prop@gen@coordinator{worktelfax}
|
||
|
+ \item[Coordinator:] \prop@gen@coordinator
|
||
|
+ \item[e-mail:] \prop@gen@Cemail
|
||
|
+ \item[tel/fax:] \prop@gen@Ctelfax
|
||
|
\@ifundefined{prop@gen@keywords}{}{\item[Keywords:] \prop@gen@keywords}
|
||
|
\end{description}
|
||
|
\end{large}
|
||
|
@@ -66,12 +69,18 @@
|
||
|
\begin{center}
|
||
|
\prop@sites@table\vfill
|
||
|
\@ifundefined{prop@gen@iconrowheight}{}
|
||
|
-{\@for\@site:=\prop@gen@sites\do{\wa@institution@logo[height=\prop@gen@iconrowheight]\@site\qquad}}
|
||
|
+{\@for\@site:=\prop@gen@sites\do{\includegraphics[height=\prop@gen@iconrowheight]{\pdataref@safe{site}\@site{logo}}\qquad}}
|
||
|
\end{center}
|
||
|
\newpage
|
||
|
\fi% ifgrantagreement
|
||
|
\setcounter{tocdepth}{2}\setcounter{part}{2}}
|
||
|
-{\newpage\printbibliography[heading=warnpubs,maxnames=999]}
|
||
|
+{\newpage\printbibliography[heading=warnpubs]%
|
||
|
+\if@split
|
||
|
+\newwrite\@@SPLIT%
|
||
|
+\immediate\openout\@@SPLIT=SPLIT.at%
|
||
|
+\protected@write\@@SPLIT{}{\thepage}%
|
||
|
+\closeout\@@SPLIT%
|
||
|
+\fi}% if@split
|
||
|
\def\prop@gen@instrument{Proposal Instrument (e.g. IP)}
|
||
|
\define@key{site@desc}{box}[true]{\def\site@desc@box{#1}%
|
||
|
\pdata@def{sitedesc}{\@site}{box}{#1}}
|
||
|
@@ -93,16 +102,16 @@
|
||
|
\begin{wrapfigure}{r}{\site@desc@width}\vspace{-2.5ex}%
|
||
|
\begin{tabular}{|p{\site@desc@width}|}\hline\vspace{1mm}%
|
||
|
\ifx\@site@desc@logo\@true% if we want a logo
|
||
|
-\wa@institution@logo[height=\site@desc@width]{#2}\\[1ex]%
|
||
|
+\includegraphics[height=\site@desc@width]{#2}\\[1ex]%
|
||
|
\fi% end logo
|
||
|
-\textbf{\wa@ref{institution}{#2}{type}.\hfill \wa@ref{institution}{#2}{country}}\\%
|
||
|
-\small\wa@ref{institution}{#2}{streetaddress}, \wa@ref{institution}{#2}{townzip}\\\hline%
|
||
|
+\textbf{\pdataref@safe{site}{#2}{type}.\hfill \pdataref@safe{site}{#2}{country}}\\%
|
||
|
+\small\pdataref@safe{site}{#2}{streetaddress}, \pdataref@safe{site}{#2}{townzip}\\\hline%
|
||
|
\end{tabular}\vspace{-2.5ex}%
|
||
|
\end{wrapfigure}%
|
||
|
\fi% end box
|
||
|
\pdata@target{site}{#2}%
|
||
|
-{\subsubsection{\wa@ref{institution}{#2}{acronym}: % space here
|
||
|
-{\textsc{\wa@ref{institution}{#2}{name}} (\wa@ref{institution}{#2}{countryshort})}}}%
|
||
|
+{\subsubsection{\pdataref@safe{site}{#2}{acronym}: % space here
|
||
|
+{\textsc{\pdataref@safe{site}{#2}{shortname}} (\pdataref@safe{site}{#2}{countryshort})}}}%
|
||
|
\small%
|
||
|
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
|
||
|
{0.25ex \@plus1ex \@minus.2ex}%
|
||
|
@@ -148,6 +157,8 @@
|
||
|
\define@key{mst}{wdeliv}{\gdef\mst@wdeliv{#1}}
|
||
|
\define@key{mst}{wverif}{\gdef\mst@wverif{#1}}
|
||
|
\newcommand\milestonetable[1][]{%
|
||
|
+\IfFileExists{./\jobname.deliverables}{% to avoid errors
|
||
|
+\message{euproposal.cls: Generating Milestones Table}%
|
||
|
\def\mst@caption{Milestones, Deliverables, and Verification}%
|
||
|
\def\mst@wname{2.5cm}\def\mst@wdeliv{7cm}\def\mst@wverif{4cm}
|
||
|
\setkeys{mst}{#1}%
|
||
|
@@ -174,14 +185,15 @@
|
||
|
&\textbf{\miles@legend@verif}\\\hline\hline
|
||
|
\mst@lines
|
||
|
\end{tabular}
|
||
|
-\caption{\mst@caption}\label{tab:milestonetable}
|
||
|
-\end{table}
|
||
|
-\footnotetext\miles@legend@footnote}
|
||
|
+\caption{\mst@caption\ ($^\ast$\miles@legend)}\label{tab:milestonetable}
|
||
|
+\end{table}}
|
||
|
+{\ClassWarning{not formatting mile stones table yet, deliverables are
|
||
|
+ still missing; generate\jobname.deliverables\ to get it!}}}
|
||
|
\newcommand\miles@legend@name{Name}
|
||
|
\newcommand\miles@legend@mo{Mo}
|
||
|
\newcommand\miles@legend@verif{Means of Verif.}
|
||
|
-\newcommand\miles@legend@involved{WPs\footnotemark/Deliverables involved}
|
||
|
-\newcommand\miles@legend@footnote{The work package number is the first number in the deliverable number.}
|
||
|
+\newcommand\miles@legend@involved{WPs$^\ast$/Deliverables involved}
|
||
|
+\newcommand\miles@legend{WP is first number in deliverable label}
|
||
|
\newcommand\prop@milesfor[1]{\edef\@delivs{\pdataref@safe{mile}{#1}{delivs}}%
|
||
|
\let\m@sep=\relax\def\new@sep{,\ }%
|
||
|
\@for\@I:=\@delivs\do{\m@sep\pdataRef{deliv}\@I{label}\let\m@sep=\new@sep}}
|
||
|
@@ -192,8 +204,7 @@
|
||
|
{\begin{risk}{#1}{#2}{#3}\textbf{Contingency:} }
|
||
|
{\end{risk}}
|
||
|
\newcommand\keypubs[1]{%
|
||
|
-\paragraph{Key publications relevant to the project}%
|
||
|
-{\renewcommand{\baselinestretch}{.9}\prop@paperlist{#1}}}
|
||
|
+\begin{refsection}\nocite{#1}\printbibliography[heading=empty]\end{refsection}}
|
||
|
\endinput
|
||
|
%%
|
||
|
%% End of file `euproposal.cls'.
|
||
|
diff -up tex/latex/proposal/eu/eureporting.cls.noworkaddress tex/latex/proposal/eu/eureporting.cls
|
||
|
--- tex/latex/proposal/eu/eureporting.cls.noworkaddress 2016-04-15 17:38:41.000000000 -0400
|
||
|
+++ tex/latex/proposal/eu/eureporting.cls 2022-12-31 12:33:20.956764811 -0500
|
||
|
@@ -7,17 +7,19 @@
|
||
|
%% euproposal.dtx (with options: `reporting')
|
||
|
%%
|
||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||
|
-\ProvidesPackage{eureporting}[2016/04/15 v1.5 EU Project Reporting]
|
||
|
+\ProvidesPackage{eureporting}[2020/08/21 v1.7 EU Project Reporting]
|
||
|
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{reporting}}
|
||
|
\ProcessOptions
|
||
|
-\LoadClass[report,noRAM]{reporting}
|
||
|
+\LoadClass[report]{reporting}
|
||
|
\RequirePackage{longtable}
|
||
|
\RequirePackage{eurosym}
|
||
|
\RequirePackage{wrapfig}
|
||
|
\RequirePackage{eupdata}
|
||
|
+\RequirePackage{datetime}
|
||
|
\RequirePackage{chngcntr}
|
||
|
\counterwithin{figure}{subsection}
|
||
|
\counterwithin{table}{subsection}
|
||
|
+\setcounter{secnumdepth}{4}
|
||
|
\define@key{prop@gen}{reportperiod}{\def\prop@gen@reportperiod{#1}}
|
||
|
\define@key{prop@gen}{key}{\@dmp{key=#1}%
|
||
|
\@ifundefined{prop@gen@keys}{\xdef\prop@gen@keys{#1}}{\xdef\prop@gen@keys{\prop@gen@keys,#1}}}
|