Compare commits

...

4 Commits

Author SHA1 Message Date
Achim D. Brucker f31c716bdf Updated license information. 2022-05-13 10:23:46 +01:00
Achim D. Brucker 546e4266f1 Added initial description. 2022-05-13 10:21:53 +01:00
Achim D. Brucker c980ebc0c8 Markdown cleanup. 2022-05-13 10:13:46 +01:00
Achim D. Brucker 1f3cf40d1e Initial commit. 2022-05-13 10:13:19 +01:00
6 changed files with 352 additions and 0 deletions

View File

@ -1,4 +1,5 @@
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)

23
LICENSE Normal file
View File

@ -0,0 +1,23 @@
Copyright (c) 2018-2022 Achim D. Brucker
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

View File

@ -0,0 +1,44 @@
# EPSRC - A LaTeX Style Implementing the Layout of EPSRC Funding Proposal
This LaTeX class provides a layout for EPSRC funding applications in the UK. It
focuses on the traditional proposal layout, that is summarized on the [EPSRC
website](https://www.ukri.org/councils/epsrc/guidance-for-applicants/what-to-include-in-your-proposal/overview-of-information-needed-for-your-proposal/)
as follows:
> All attachments must be completed in single-spaced typescript in Arial 11 or
> other sans serif typeface of equivalent size, with margins of at least 2cm.
> Arial narrow and Calibri are not allowable font types.
>
> Text in embedded diagrams or pictures, numerical formulae or references can be
> smaller, as long as it is legible. Text in tables and figure labels not within
> embedded diagrams or pictures should be at least 11 point.
>
> We recommend that all attachments are uploaded into Je-S as Adobe Acrobat files
> (PDF) as uploading word documents can result in layout changes to the document.
> Also, as Je-S does not support all Microsoft Office Word font types, unsupported
> fonts will be replaced, possibly resulting in layout changes to the document.
*Warning:* While this class tries to follow this layout as closely as possible,
there is no guarantee that proposal written using this class are accepted for
review (i.e., not desk rejected) and neither is there a guarantee of a positive
funding outcome.
## Authors
Main author: [Achim D. Brucker](http://www.brucker.ch/)
## License
This project is dual-licensed under a 2-clause BSD-style license and/or
the LPPL version 1.3c or (at your opinion) any later version.
```yaml
SPDX-License-Identifier: LPPL-1.3c+ OR BSD-2-Clause
```
## Upstream Repository
The upstream git repository, i.e., the single source of truth, for this
project is hosted by the
[Software Assurance & Security Research Team](https://logicalhacking.com) at
<https://git.logicalhacking.com/adbrucker/epsrc>.

3
epsrc.cfg Normal file
View File

@ -0,0 +1,3 @@
\author{Poor Researcher}
\projectitle[PGMM]{Please Give Me Money}

213
epsrc.cls Normal file
View File

@ -0,0 +1,213 @@
%% Copyright (C) 2018-2022 Achim D. Brucker, https://www.brucker.ch
%%
%% License:
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN
%% archives in directory macros/latex/base/lppl.txt; either
%% version 1 of the License, or any later version.
%% OR
%% The 2-clause BSD-style license.
%%
%% SPDX-License-Identifier: LPPL-1.3c+ OR BSD-2-Clause
%%
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\ProvidesClass{epsrc}%
[]
\PassOptionsToClass{\CurrentOption}{scrartcl}
\LoadClass[abstract=false,parskip=never,11pt,a4paper]{scrartcl}[]
\RequirePackage{ifthen}
\newboolean{ep@showinfo}
\setboolean{ep@showinfo}{true}
\DeclareOption{hideinfo}{\setboolean{ep@showinfo}{false}}
\ProcessOptions\relax
\usepackage{setspace}
%\RequirePackage[T1]{fontenc}
% The `11pt` option sets the default font size to 10.95 TeX points (`pt`)
% which is 10.909 = 10.95*72/72.27 Postscript Points (`bp`)
% Hence scaling of 11/10.909=1.00834173618113484279
\RequirePackage[sfdefault,scaled=1.00834174]{arimo}
\setstretch{0.991727}%
\RequirePackage{sfmath}
\RequirePackage{fontawesome}
\RedeclareSectionCommands[
beforeskip=-0.75ex,
runin=true,
]{paragraph}
\RedeclareSectionCommands[
beforeskip=0.10ex,
runin=true,
]{subparagraph}
\RedeclareSectionCommands[
beforeskip=-1.50ex,
runin=false,
afterskip=0.50ex
]{section, subsection, subsubsection}
\areaset
{\dimexpr\the\paperwidth-4.1cm\relax}% calculate required \textwidth
{\dimexpr\the\paperheight-4.1cm\relax}% calculate required \textheight
\addtolength{\topmargin}{15pt}
\addtolength{\footskip}{-15pt}
\RequirePackage{lastpage}
\RequirePackage{scrlayer-scrpage}
\RequirePackage{keycommand}
\RequirePackage[dvipsnames]{xcolor}
\setlength{\marginparwidth}{2cm}
\RequirePackage{todonotes}
\RequirePackage{booktabs}
\RequirePackage{multicol}
\RequirePackage{epsrc}
\RequirePackage[%
doi=false%
,isbn=false%
,url=false%
% ,style=ieee%
% ,style=numeric%
,style=trad-abbrv%
,maxnames=3%
,backend=biber%
]{biblatex}%
\renewbibmacro*{byeditor+others}{%
\setunit{\addcomma\space}%
\ifnameundef{editor}
{}
{\usebibmacro{byeditor+othersstrg}%
\setunit{\addspace}%
\printnames[byeditor][1-1]{editor}%
\clearname{editor}%
\newunit}%
\usebibmacro{byeditorx}%
\usebibmacro{bytranslator+others}}
%\DefineBibliographyStrings{english}{
% byeditor = {ed\adddotspace by},
%}
\RequirePackage[alwaysadjust]{paralist}
\RequirePackage{etoolbox}
\RequirePackage{hyperref}
\RedeclareSectionCommand[%
style=section,%
level=4,%
indent=\z@,%
beforeskip=0.50ex \@plus1ex \@minus.2ex,%
afterskip=-0.2em,%
tocstyle=subsection,%
tocindent=7.0em,%
tocnumwidth=4.1em%
]{paragraph}
\subject{\project}%
% Default header
\rohead[]{\ep@type}
\lohead{\ep@projectshort}
% Default footer
\ifoot[Confidential -- Only for Review]{Confidential -- Only for Review}
\cfoot[]{}
\ofoot[Page \thepage\ of \pageref{LastPage}]{Page \thepage\ of \pageref{LastPage}}
%
\pagestyle{scrheadings}
\newcommand{\alertstyle}{\bfseries\color{Maroon}}
\newcommand{\alert}[1]{{\alertstyle #1}}
\renewcommand{\maketitle}{%
\centerline{\Large\ep@project}%
\bigskip
\centerline{\huge\bfseries \ep@type}%
\medskip
\thispagestyle{plain}
}
\setkomafont{footnote}{\normalfont\normalsize}
% Bibliography
\newcommand{\urlprefix}{}%
%%% twocolumn bibliography using Koma-Hooks (works only if no packages such
%%% as biblatex or natbib are used that redefine thebibliography.
% \renewcommand{\bibfont}{\footnotesize} % or any other appropriate font command
% \renewcommand*{\bib@beginhook}{\begin{multicols}{2}\footnotesize}%
% \renewcommand*{\bib@endhook}{\end{multicols}}%
%%%
%%% twocolumn bibliography using natbib
% \setlength{\bibsep}{1pt} % or use whatever dimension you want
% \patchcmd{\thebibliography}
% {\list}
% {\begin{multicols}{2}\footnotesize\list}
% {}
% {}
% \appto{\endthebibliography}{\end{multicols}}
%% Setup for biblatex/biber
\newcommand{\applicantbibstyle}{\alertstyle}
\newcommand{\applicantbibstyledesc}{bold and maroon}
\newcommand{\applicantbibmark}{\faHome} \newcommand{\bibpretext}{The
list of references contains works of the applicants as well as
related works. The works co-authored by at least one of the
applicants are marked with the symbol \applicantbibmark{} and
printed in {\applicantbibstyle\applicantbibstyledesc}.}
\DeclareBibliographyCategory{applicant}
\AtEveryBibitem{%
\ifcategory{applicant}%
{\applicantbibstyle\applicantbibmark~}%
{}%
}
%\renewcommand*{\bibfont}{\scriptsize}
\newcommand\twocolprintbibliography[1][0pt]{%
\begingroup%
\setlength{\multicolsep}{#1}%
\setlength{\columnsep}{6pt}%
\setstretch{0.65}%
\setlength\bibitemsep{0pt}
\setlength\bibnamesep{0pt}
\setlength\bibinitsep{0pt}
\setlength\biblabelsep{2pt}
\begin{multicols}{2}[{\printbibheading\vspace{0\baselineskip}\noindent\bibpretext\\\vspace{-0.5\baselineskip}}]%
\printbibliography[heading=none]%
\end{multicols}%
\endgroup}
\newcommand\singlecolprintbibliography{%
\begingroup%
\setstretch{0.65}%
\setlength\bibitemsep{0pt}
\setlength\bibnamesep{0pt}
\setlength\bibinitsep{0pt}
\setlength\biblabelsep{3pt}
\printbibheading\noindent\bibpretext\\%
\printbibliography[heading=none]%
\endgroup%
}
% Info
\newcommand{\info}[2][]{%
\ifthenelse{\boolean{ep@showinfo}}%
{\todo[color=green!20,inline,caption={},#1]{\footnotesize #2}}%
{}
}
\newcommand{\citeapplicant}[1]{\cite{#1}\addtocategory{applicant}{#1}}
% better line breaks of URLs
\g@addto@macro{\UrlBreaks}{\UrlOrds}
% use of regular font for URLs
\urlstyle{same}
\addtokomafont{paragraph}{\itshape}
\renewenvironment{abstract}{\begin{addmargin}[6mm]{6mm}\itshape\textbf{\abstractname.}}{\end{addmargin}}
\endinput

68
epsrc.sty Normal file
View File

@ -0,0 +1,68 @@
%% Copyright (C) 2018-2022 Achim D. Brucker, https://www.brucker.ch
%%
%% License:
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN
%% archives in directory macros/latex/base/lppl.txt; either
%% version 1 of the License, or any later version.
%% OR
%% The 2-clause BSD-style license.
%%
%% SPDX-License-Identifier: LPPL-1.3c+ OR BSD-2-Clause
%%
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\ProvidesPackage{epsrc}%
[]
\usepackage{xspace}
\def\ep@type{}
\newcommand{\type}[1]{\gdef\ep@type{#1}}
\def\ep@project{}
\def\ep@projectshort{}
\def\ep@projectlong{}
\newcommand{\projectitle}[2][]{%
\ifthenelse{ \equal{#1}{} }
{%
\gdef\ep@projectlong{#2}%
\gdef\ep@projectshort{#2}%
\gdef\ep@fulltitle{#2}%
}{%
\gdef\ep@projectlong{#2}%
\gdef\ep@projectshort{#1}%
\gdef\ep@project{#2 (#1)}
}
}
\newcommand{\project}{\ep@project\xspace}
\newcommand{\projectlong}{\ep@projectlong\xspace}
\newcommand{\projectshort}{\ep@projectshort\xspace}
%
\AtBeginDocument{
\@ifpackageloaded{currvita}{
\newcommand{\xitem}[1][]{\item[%
{%
\raisebox{0pt}[1ex][0pt]{\makebox[\cvlabelwidth][l]%
{\parbox[t]{\cvlabelwidth}{\raggedleft\cvlabelfont #1}}%
}%
}%
]}
\newcommand{\cvsummary}[1]{%
\xitem[] #1%
}
\newcommand{\litem}[2][]{%
\xitem[#1] #2
}
\addtolength{\cvlabelwidth}{2mm}
}{}
}
%
\InputIfFileExists{epsrc2.config}{}{}
\endinput