roboneuro 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.DS_Store +0 -0
- data/.env-example +12 -0
- data/.env.test +8 -0
- data/.github/workflows/docker-image.yml +63 -0
- data/.github/workflows/tests.yml +28 -0
- data/.gitignore +3 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +135 -0
- data/LICENSE +21 -0
- data/README.md +190 -0
- data/Rakefile +13 -0
- data/bin/whedon +131 -0
- data/fixtures/latex_paper/paper.tex +0 -0
- data/fixtures/paper/10.21105.jcon.00017.crossref.xml +88 -0
- data/fixtures/paper/crossref-metadata.yaml +34 -0
- data/fixtures/paper/paper-bib.md +27 -0
- data/fixtures/paper/paper-single-author.md +24 -0
- data/fixtures/paper/paper-with-harder-names.md +27 -0
- data/fixtures/paper/paper-with-missing-affiliations.md +21 -0
- data/fixtures/paper/paper.bib +65 -0
- data/fixtures/paper/paper.html +14 -0
- data/fixtures/paper/paper.md +27 -0
- data/fixtures/paper/paper.pdf +0 -0
- data/fixtures/paper/paper.xml +28 -0
- data/fixtures/paper/paper_with_missing_title.md +26 -0
- data/fixtures/review_body.txt +48 -0
- data/fixtures/test_paper/nested/paper.bib +0 -0
- data/fixtures/test_paper/nested/paper.md +0 -0
- data/fixtures/test_paper/paper.bib +0 -0
- data/fixtures/test_paper/paper.md +0 -0
- data/fixtures/vcr_cassettes/joss-lookup.yml +58 -0
- data/fixtures/vcr_cassettes/review.yml +237 -0
- data/fixtures/vcr_cassettes/reviews.yml +270 -0
- data/lib/whedon/auditor.rb +39 -0
- data/lib/whedon/author.rb +81 -0
- data/lib/whedon/bibtex_parser.rb +103 -0
- data/lib/whedon/compilers.rb +379 -0
- data/lib/whedon/github.rb +12 -0
- data/lib/whedon/orcid_validator.rb +83 -0
- data/lib/whedon/processor.rb +178 -0
- data/lib/whedon/review.rb +25 -0
- data/lib/whedon/reviews.rb +29 -0
- data/lib/whedon/version.rb +3 -0
- data/lib/whedon.rb +387 -0
- data/paperdraft.Dockerfile +48 -0
- data/pkg/roboneuro-0.1.0.gem +0 -0
- data/resources/.DS_Store +0 -0
- data/resources/NeuroLibre/.DS_Store +0 -0
- data/resources/NeuroLibre/aas-logo.png +0 -0
- data/resources/NeuroLibre/apa.csl +1919 -0
- data/resources/NeuroLibre/defaults.yaml +14 -0
- data/resources/NeuroLibre/latex.template +541 -0
- data/resources/NeuroLibre/logo.png +0 -0
- data/resources/NeuroLibre/logo_link.png +0 -0
- data/resources/apa.csl +1919 -0
- data/resources/crossref.template +89 -0
- data/resources/docker-defaults.yaml +42 -0
- data/resources/docker-entrypoint.sh +37 -0
- data/resources/jats.csl +204 -0
- data/resources/jats.template +105 -0
- data/resources/jose/apa.csl +1919 -0
- data/resources/jose/defaults.yaml +14 -0
- data/resources/jose/latex.template +486 -0
- data/resources/jose/logo.png +0 -0
- data/resources/joss/aas-logo.png +0 -0
- data/resources/joss/apa.csl +1919 -0
- data/resources/joss/defaults.yaml +14 -0
- data/resources/joss/latex.template +525 -0
- data/resources/joss/logo.png +0 -0
- data/resources/latex.template +485 -0
- data/resources/time.lua +8 -0
- data/roboneuro.gemspec +39 -0
- data/spec/auditor_spec.rb +22 -0
- data/spec/author_spec.rb +17 -0
- data/spec/bibtex_spec.rb +31 -0
- data/spec/orcid_validator_spec.rb +33 -0
- data/spec/processor_spec.rb +66 -0
- data/spec/review_spec.rb +12 -0
- data/spec/reviews_spec.rb +18 -0
- data/spec/spec_helper.rb +22 -0
- data/spec/whedon_spec.rb +93 -0
- metadata +386 -0
@@ -0,0 +1,14 @@
|
|
1
|
+
template: NeuroLibre/latex.template
|
2
|
+
csl: /usr/local/share/openjournals/NeuroLibre/apa.csl
|
3
|
+
|
4
|
+
variables:
|
5
|
+
joss_resource_url: 'N/A'
|
6
|
+
journal_abbrev_title: 'NeuroLibre'
|
7
|
+
journal_alias: 'NeuroLibre'
|
8
|
+
journal_issn: '0000-0000'
|
9
|
+
journal_name: 'NeuroLibre Executable Preprint Server'
|
10
|
+
journal_url: 'https://neurolibre.org/'
|
11
|
+
|
12
|
+
metadata:
|
13
|
+
aas_logo_path: '/usr/local/share/openjournals/NeuroLibre/aas-logo.png'
|
14
|
+
logo_path: '/usr/local/share/openjournals/NeuroLibre/logo.png'
|
@@ -0,0 +1,541 @@
|
|
1
|
+
\documentclass[10pt,a4paper,onecolumn]{article}
|
2
|
+
\usepackage{marginnote}
|
3
|
+
\usepackage{graphicx}
|
4
|
+
\usepackage{xcolor}
|
5
|
+
\usepackage{authblk,etoolbox}
|
6
|
+
\usepackage{titlesec}
|
7
|
+
\usepackage{calc}
|
8
|
+
\usepackage{tikz}
|
9
|
+
\usepackage{hyperref}
|
10
|
+
\hypersetup{colorlinks,breaklinks=true,
|
11
|
+
urlcolor=[rgb]{0.0, 0.5, 1.0},
|
12
|
+
linkcolor=[rgb]{0.0, 0.5, 1.0}}
|
13
|
+
\usepackage{caption}
|
14
|
+
\usepackage{tcolorbox}
|
15
|
+
\usepackage{amssymb,amsmath}
|
16
|
+
\usepackage{ifxetex,ifluatex}
|
17
|
+
\usepackage{seqsplit}
|
18
|
+
\usepackage{xstring}
|
19
|
+
|
20
|
+
\usepackage{float}
|
21
|
+
\let\origfigure\figure
|
22
|
+
\let\endorigfigure\endfigure
|
23
|
+
\renewenvironment{figure}[1][2] {
|
24
|
+
\expandafter\origfigure\expandafter[H]
|
25
|
+
} {
|
26
|
+
\endorigfigure
|
27
|
+
}
|
28
|
+
|
29
|
+
$if(draft)$
|
30
|
+
\usepackage{lineno}
|
31
|
+
\linenumbers
|
32
|
+
\usepackage{draftwatermark}
|
33
|
+
$endif$
|
34
|
+
|
35
|
+
\usepackage{fixltx2e} % provides \textsubscript
|
36
|
+
\usepackage[
|
37
|
+
backend=biber,
|
38
|
+
% style=alphabetic,
|
39
|
+
% citestyle=numeric
|
40
|
+
]{biblatex}
|
41
|
+
\bibliography{$bibliography$}
|
42
|
+
|
43
|
+
% --- Splitting \texttt --------------------------------------------------
|
44
|
+
|
45
|
+
\let\textttOrig=\texttt
|
46
|
+
\def\texttt#1{\expandafter\textttOrig{\seqsplit{#1}}}
|
47
|
+
\renewcommand{\seqinsert}{\ifmmode
|
48
|
+
\allowbreak
|
49
|
+
\else\penalty6000\hspace{0pt plus 0.02em}\fi}
|
50
|
+
|
51
|
+
|
52
|
+
% --- Pandoc does not distinguish between links like [foo](bar) and
|
53
|
+
% --- [foo](foo) -- a simplistic Markdown model. However, this is
|
54
|
+
% --- wrong: in links like [foo](foo) the text is the url, and must
|
55
|
+
% --- be split correspondingly.
|
56
|
+
% --- Here we detect links \href{foo}{foo}, and also links starting
|
57
|
+
% --- with https://doi.org, and use path-like splitting (but not
|
58
|
+
% --- escaping!) with these links.
|
59
|
+
% --- Another vile thing pandoc does is the different escaping of
|
60
|
+
% --- foo and bar. This may confound our detection.
|
61
|
+
% --- This problem we do not try to solve at present, with the exception
|
62
|
+
% --- of doi-like urls, which we detect correctly.
|
63
|
+
|
64
|
+
|
65
|
+
\makeatletter
|
66
|
+
\let\href@Orig=\href
|
67
|
+
\def\href@Urllike#1#2{\href@Orig{#1}{\begingroup
|
68
|
+
\def\Url@String{#2}\Url@FormatString
|
69
|
+
\endgroup}}
|
70
|
+
\def\href@Notdoi#1#2{\def\tempa{#1}\def\tempb{#2}%
|
71
|
+
\ifx\tempa\tempb\relax\href@Urllike{#1}{#2}\else
|
72
|
+
\href@Orig{#1}{#2}\fi}
|
73
|
+
\def\href#1#2{%
|
74
|
+
\IfBeginWith{#1}{https://doi.org}%
|
75
|
+
{\href@Urllike{#1}{#2}}{\href@Notdoi{#1}{#2}}}
|
76
|
+
\makeatother
|
77
|
+
|
78
|
+
$if(csl-refs)$
|
79
|
+
\newlength{\cslhangindent}
|
80
|
+
\setlength{\cslhangindent}{1.5em}
|
81
|
+
\newlength{\csllabelwidth}
|
82
|
+
\setlength{\csllabelwidth}{3em}
|
83
|
+
\newenvironment{CSLReferences}[3] % #1 hanging-ident, #2 entry spacing
|
84
|
+
{% don't indent paragraphs
|
85
|
+
\setlength{\parindent}{0pt}
|
86
|
+
% turn on hanging indent if param 1 is 1
|
87
|
+
\ifodd #1 \everypar{\setlength{\hangindent}{\cslhangindent}}\ignorespaces\fi
|
88
|
+
% set entry spacing
|
89
|
+
\ifnum #2 > 0
|
90
|
+
\setlength{\parskip}{#2\baselineskip}
|
91
|
+
\fi
|
92
|
+
}%
|
93
|
+
{}
|
94
|
+
\usepackage{calc} % for \widthof, \maxof
|
95
|
+
\newcommand{\CSLBlock}[1]{#1\hfill\break}
|
96
|
+
\newcommand{\CSLLeftMargin}[1]{\parbox[t]{\maxof{\widthof{#1}}{\csllabelwidth}}{#1}}
|
97
|
+
\newcommand{\CSLRightInline}[1]{\parbox[t]{\linewidth}{#1}}
|
98
|
+
\newcommand{\CSLIndent}[1]{\hspace{\cslhangindent}#1}
|
99
|
+
$endif$
|
100
|
+
|
101
|
+
% --- Page layout -------------------------------------------------------------
|
102
|
+
\usepackage[top=3.5cm, bottom=3cm, right=1.5cm, left=1.0cm,
|
103
|
+
headheight=2.2cm, reversemp, includemp, marginparwidth=4.5cm]{geometry}
|
104
|
+
|
105
|
+
% --- Default font ------------------------------------------------------------
|
106
|
+
\usepackage[scaled]{helvet}
|
107
|
+
\renewcommand\familydefault{\sfdefault}
|
108
|
+
\usepackage[T1]{fontenc}
|
109
|
+
|
110
|
+
% --- Style -------------------------------------------------------------------
|
111
|
+
\renewcommand{\bibfont}{\small \sffamily}
|
112
|
+
\renewcommand{\captionfont}{\small\sffamily}
|
113
|
+
\renewcommand{\captionlabelfont}{\bfseries}
|
114
|
+
|
115
|
+
% --- Section/SubSection/SubSubSection ----------------------------------------
|
116
|
+
\titleformat{\section}
|
117
|
+
{\normalfont\sffamily\Large\bfseries}
|
118
|
+
{}{0pt}{}
|
119
|
+
\titleformat{\subsection}
|
120
|
+
{\normalfont\sffamily\large\bfseries}
|
121
|
+
{}{0pt}{}
|
122
|
+
\titleformat{\subsubsection}
|
123
|
+
{\normalfont\sffamily\bfseries}
|
124
|
+
{}{0pt}{}
|
125
|
+
\titleformat*{\paragraph}
|
126
|
+
{\sffamily\normalsize}
|
127
|
+
|
128
|
+
|
129
|
+
% --- Header / Footer ---------------------------------------------------------
|
130
|
+
\usepackage{fancyhdr}
|
131
|
+
\pagestyle{fancy}
|
132
|
+
\fancyhf{}
|
133
|
+
%\renewcommand{\headrulewidth}{0.50pt}
|
134
|
+
\renewcommand{\headrulewidth}{0pt}
|
135
|
+
\fancyhead[L]{\hspace{-0.75cm}\includegraphics[width=5.5cm]{$logo_path$}}
|
136
|
+
\fancyhead[C]{}
|
137
|
+
\fancyhead[R]{}
|
138
|
+
\renewcommand{\footrulewidth}{0.25pt}
|
139
|
+
|
140
|
+
\fancyfoot[L]{\parbox[t]{0.98\headwidth}{\footnotesize{\sffamily $citation_author$, ($year$). $title$. \textit{$journal_name$}, $volume$($issue$), $page$. \url{https://doi.org/$formatted_doi$}}}}
|
141
|
+
|
142
|
+
|
143
|
+
\fancyfoot[R]{\sffamily \thepage}
|
144
|
+
\makeatletter
|
145
|
+
\let\ps@plain\ps@fancy
|
146
|
+
\fancyheadoffset[L]{4.5cm}
|
147
|
+
\fancyfootoffset[L]{4.5cm}
|
148
|
+
|
149
|
+
% --- Macros ---------
|
150
|
+
|
151
|
+
\definecolor{linky}{rgb}{0.0, 0.5, 1.0}
|
152
|
+
|
153
|
+
\newtcolorbox{repobox}
|
154
|
+
{colback=red, colframe=red!75!black,
|
155
|
+
boxrule=0.5pt, arc=2pt, left=6pt, right=6pt, top=3pt, bottom=3pt}
|
156
|
+
|
157
|
+
\newcommand{\ExternalLink}{%
|
158
|
+
\tikz[x=1.2ex, y=1.2ex, baseline=-0.05ex]{%
|
159
|
+
\begin{scope}[x=1ex, y=1ex]
|
160
|
+
\clip (-0.1,-0.1)
|
161
|
+
--++ (-0, 1.2)
|
162
|
+
--++ (0.6, 0)
|
163
|
+
--++ (0, -0.6)
|
164
|
+
--++ (0.6, 0)
|
165
|
+
--++ (0, -1);
|
166
|
+
\path[draw,
|
167
|
+
line width = 0.5,
|
168
|
+
rounded corners=0.5]
|
169
|
+
(0,0) rectangle (1,1);
|
170
|
+
\end{scope}
|
171
|
+
\path[draw, line width = 0.5] (0.5, 0.5)
|
172
|
+
-- (1, 1);
|
173
|
+
\path[draw, line width = 0.5] (0.6, 1)
|
174
|
+
-- (1, 1) -- (1, 0.6);
|
175
|
+
}
|
176
|
+
}
|
177
|
+
|
178
|
+
% --- Title / Authors ---------------------------------------------------------
|
179
|
+
% patch \maketitle so that it doesn't center
|
180
|
+
\patchcmd{\@maketitle}{center}{flushleft}{}{}
|
181
|
+
\patchcmd{\@maketitle}{center}{flushleft}{}{}
|
182
|
+
% patch \maketitle so that the font size for the title is normal
|
183
|
+
\patchcmd{\@maketitle}{\LARGE}{\LARGE\sffamily}{}{}
|
184
|
+
% patch the patch by authblk so that the author block is flush left
|
185
|
+
\def\maketitle{{%
|
186
|
+
\renewenvironment{tabular}[2][]
|
187
|
+
{\begin{flushleft}}
|
188
|
+
{\end{flushleft}}
|
189
|
+
\AB@maketitle}}
|
190
|
+
\makeatletter
|
191
|
+
\renewcommand\AB@affilsepx{ \protect\Affilfont}
|
192
|
+
%\renewcommand\AB@affilnote[1]{{\bfseries #1}\hspace{2pt}}
|
193
|
+
\renewcommand\AB@affilnote[1]{{\bfseries #1}\hspace{3pt}}
|
194
|
+
\renewcommand{\affil}[2][]%
|
195
|
+
{\newaffiltrue\let\AB@blk@and\AB@pand
|
196
|
+
\if\relax#1\relax\def\AB@note{\AB@thenote}\else\def\AB@note{#1}%
|
197
|
+
\setcounter{Maxaffil}{0}\fi
|
198
|
+
\begingroup
|
199
|
+
\let\href=\href@Orig
|
200
|
+
\let\texttt=\textttOrig
|
201
|
+
\let\protect\@unexpandable@protect
|
202
|
+
\def\thanks{\protect\thanks}\def\footnote{\protect\footnote}%
|
203
|
+
\@temptokena=\expandafter{\AB@authors}%
|
204
|
+
{\def\\{\protect\\\protect\Affilfont}\xdef\AB@temp{#2}}%
|
205
|
+
\xdef\AB@authors{\the\@temptokena\AB@las\AB@au@str
|
206
|
+
\protect\\[\affilsep]\protect\Affilfont\AB@temp}%
|
207
|
+
\gdef\AB@las{}\gdef\AB@au@str{}%
|
208
|
+
{\def\\{, \ignorespaces}\xdef\AB@temp{#2}}%
|
209
|
+
\@temptokena=\expandafter{\AB@affillist}%
|
210
|
+
\xdef\AB@affillist{\the\@temptokena \AB@affilsep
|
211
|
+
\AB@affilnote{\AB@note}\protect\Affilfont\AB@temp}%
|
212
|
+
\endgroup
|
213
|
+
\let\AB@affilsep\AB@affilsepx
|
214
|
+
}
|
215
|
+
\makeatother
|
216
|
+
\renewcommand\Authfont{\sffamily\bfseries}
|
217
|
+
\renewcommand\Affilfont{\sffamily\small\mdseries}
|
218
|
+
\setlength{\affilsep}{1em}
|
219
|
+
|
220
|
+
|
221
|
+
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
|
222
|
+
\usepackage[$if(fontenc)$$fontenc$$else$T1$endif$]{fontenc}
|
223
|
+
\usepackage[utf8]{inputenc}
|
224
|
+
|
225
|
+
\else % if luatex or xelatex
|
226
|
+
\ifxetex
|
227
|
+
\usepackage{mathspec}
|
228
|
+
\usepackage{fontspec}
|
229
|
+
|
230
|
+
\else
|
231
|
+
\usepackage{fontspec}
|
232
|
+
\fi
|
233
|
+
\defaultfontfeatures{Ligatures=TeX,Scale=MatchLowercase}
|
234
|
+
|
235
|
+
\fi
|
236
|
+
% use upquote if available, for straight quotes in verbatim environments
|
237
|
+
\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
|
238
|
+
% use microtype if available
|
239
|
+
\IfFileExists{microtype.sty}{%
|
240
|
+
\usepackage{microtype}
|
241
|
+
\UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts
|
242
|
+
}{}
|
243
|
+
|
244
|
+
\usepackage{hyperref}
|
245
|
+
$if(colorlinks)$
|
246
|
+
\PassOptionsToPackage{usenames,dvipsnames}{color} % color is loaded by hyperref
|
247
|
+
$endif$
|
248
|
+
\hypersetup{unicode=true,
|
249
|
+
$if(title-meta)$
|
250
|
+
pdftitle={$title-meta$},
|
251
|
+
$endif$
|
252
|
+
$if(author-meta)$
|
253
|
+
pdfauthor={$author-meta$},
|
254
|
+
$endif$
|
255
|
+
$if(keywords)$
|
256
|
+
pdfkeywords={$for(keywords)$$keywords$$sep$; $endfor$},
|
257
|
+
$endif$
|
258
|
+
$if(colorlinks)$
|
259
|
+
colorlinks=true,
|
260
|
+
linkcolor=$if(linkcolor)$$linkcolor$$else$Maroon$endif$,
|
261
|
+
citecolor=$if(citecolor)$$citecolor$$else$Blue$endif$,
|
262
|
+
urlcolor=$if(urlcolor)$$urlcolor$$else$Blue$endif$,
|
263
|
+
$else$
|
264
|
+
pdfborder={0 0 0},
|
265
|
+
$endif$
|
266
|
+
breaklinks=true}
|
267
|
+
\urlstyle{same} % don't use monospace font for urls
|
268
|
+
$if(lang)$
|
269
|
+
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
|
270
|
+
\usepackage[shorthands=off,$for(babel-otherlangs)$$babel-otherlangs$,$endfor$main=$babel-lang$]{babel}
|
271
|
+
$if(babel-newcommands)$
|
272
|
+
$babel-newcommands$
|
273
|
+
$endif$
|
274
|
+
\else
|
275
|
+
\usepackage{polyglossia}
|
276
|
+
\setmainlanguage[$polyglossia-lang.options$]{$polyglossia-lang.name$}
|
277
|
+
$for(polyglossia-otherlangs)$
|
278
|
+
\setotherlanguage[$polyglossia-otherlangs.options$]{$polyglossia-otherlangs.name$}
|
279
|
+
$endfor$
|
280
|
+
\fi
|
281
|
+
$endif$
|
282
|
+
$if(natbib)$
|
283
|
+
\usepackage{natbib}
|
284
|
+
\bibliographystyle{$if(biblio-style)$$biblio-style$$else$plainnat$endif$}
|
285
|
+
$endif$
|
286
|
+
$if(biblatex)$
|
287
|
+
\usepackage$if(biblio-style)$[style=$biblio-style$]$endif${biblatex}
|
288
|
+
$if(biblatexoptions)$\ExecuteBibliographyOptions{$for(biblatexoptions)$$biblatexoptions$$sep$,$endfor$}$endif$
|
289
|
+
$for(bibliography)$
|
290
|
+
\addbibresource{$bibliography$}
|
291
|
+
$endfor$
|
292
|
+
$endif$
|
293
|
+
$if(listings)$
|
294
|
+
\usepackage{listings}
|
295
|
+
$endif$
|
296
|
+
$if(lhs)$
|
297
|
+
\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{}
|
298
|
+
$endif$
|
299
|
+
$if(highlighting-macros)$
|
300
|
+
$highlighting-macros$
|
301
|
+
$endif$
|
302
|
+
$if(verbatim-in-note)$
|
303
|
+
\usepackage{fancyvrb}
|
304
|
+
\VerbatimFootnotes % allows verbatim text in footnotes
|
305
|
+
$endif$
|
306
|
+
$if(tables)$
|
307
|
+
\usepackage{longtable,booktabs}
|
308
|
+
$endif$
|
309
|
+
|
310
|
+
% --- We redefined \texttt, but in sections and captions we want the
|
311
|
+
% --- old definition
|
312
|
+
\let\addcontentslineOrig=\addcontentsline
|
313
|
+
\def\addcontentsline#1#2#3{\bgroup
|
314
|
+
\let\texttt=\textttOrig\addcontentslineOrig{#1}{#2}{#3}\egroup}
|
315
|
+
\let\markbothOrig\markboth
|
316
|
+
\def\markboth#1#2{\bgroup
|
317
|
+
\let\texttt=\textttOrig\markbothOrig{#1}{#2}\egroup}
|
318
|
+
\let\markrightOrig\markright
|
319
|
+
\def\markright#1{\bgroup
|
320
|
+
\let\texttt=\textttOrig\markrightOrig{#1}\egroup}
|
321
|
+
|
322
|
+
|
323
|
+
$if(graphics)$
|
324
|
+
\usepackage{graphicx,grffile}
|
325
|
+
\makeatletter
|
326
|
+
\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth\else\Gin@nat@width\fi}
|
327
|
+
\def\maxheight{\ifdim\Gin@nat@height>\textheight\textheight\else\Gin@nat@height\fi}
|
328
|
+
\makeatother
|
329
|
+
% Scale images if necessary, so that they will not overflow the page
|
330
|
+
% margins by default, and it is still possible to overwrite the defaults
|
331
|
+
% using explicit options in \includegraphics[width, height, ...]{}
|
332
|
+
\setkeys{Gin}{width=\maxwidth,height=\maxheight,keepaspectratio}
|
333
|
+
$endif$
|
334
|
+
$if(links-as-notes)$
|
335
|
+
% Make links footnotes instead of hotlinks:
|
336
|
+
\renewcommand{\href}[2]{#2\footnote{\url{#1}}}
|
337
|
+
$endif$
|
338
|
+
$if(strikeout)$
|
339
|
+
\usepackage[normalem]{ulem}
|
340
|
+
% avoid problems with \sout in headers with hyperref:
|
341
|
+
\pdfstringdefDisableCommands{\renewcommand{\sout}{}}
|
342
|
+
$endif$
|
343
|
+
$if(indent)$
|
344
|
+
$else$
|
345
|
+
\IfFileExists{parskip.sty}{%
|
346
|
+
\usepackage{parskip}
|
347
|
+
}{% else
|
348
|
+
\setlength{\parindent}{0pt}
|
349
|
+
\setlength{\parskip}{6pt plus 2pt minus 1pt}
|
350
|
+
}
|
351
|
+
$endif$
|
352
|
+
\setlength{\emergencystretch}{3em} % prevent overfull lines
|
353
|
+
\providecommand{\tightlist}{%
|
354
|
+
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
|
355
|
+
$if(numbersections)$
|
356
|
+
\setcounter{secnumdepth}{5}
|
357
|
+
$else$
|
358
|
+
\setcounter{secnumdepth}{0}
|
359
|
+
$endif$
|
360
|
+
$if(subparagraph)$
|
361
|
+
$else$
|
362
|
+
% Redefines (sub)paragraphs to behave more like sections
|
363
|
+
\ifx\paragraph\undefined\else
|
364
|
+
\let\oldparagraph\paragraph
|
365
|
+
\renewcommand{\paragraph}[1]{\oldparagraph{#1}\mbox{}}
|
366
|
+
\fi
|
367
|
+
\ifx\subparagraph\undefined\else
|
368
|
+
\let\oldsubparagraph\subparagraph
|
369
|
+
\renewcommand{\subparagraph}[1]{\oldsubparagraph{#1}\mbox{}}
|
370
|
+
\fi
|
371
|
+
$endif$
|
372
|
+
$if(dir)$
|
373
|
+
\ifxetex
|
374
|
+
% load bidi as late as possible as it modifies e.g. graphicx
|
375
|
+
$if(latex-dir-rtl)$
|
376
|
+
\usepackage[RTLdocument]{bidi}
|
377
|
+
$else$
|
378
|
+
\usepackage{bidi}
|
379
|
+
$endif$
|
380
|
+
\fi
|
381
|
+
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
|
382
|
+
\TeXXeTstate=1
|
383
|
+
\newcommand{\RL}[1]{\beginR #1\endR}
|
384
|
+
\newcommand{\LR}[1]{\beginL #1\endL}
|
385
|
+
\newenvironment{RTL}{\beginR}{\endR}
|
386
|
+
\newenvironment{LTR}{\beginL}{\endL}
|
387
|
+
\fi
|
388
|
+
$endif$
|
389
|
+
$for(header-includes)$
|
390
|
+
$header-includes$
|
391
|
+
$endfor$
|
392
|
+
|
393
|
+
$if(title)$
|
394
|
+
\title{$title$$if(thanks)$\thanks{$thanks$}$endif$}
|
395
|
+
$endif$
|
396
|
+
$if(subtitle)$
|
397
|
+
\providecommand{\subtitle}[1]{}
|
398
|
+
\subtitle{$subtitle$}
|
399
|
+
$endif$
|
400
|
+
|
401
|
+
$if(authors)$
|
402
|
+
$for(authors)$
|
403
|
+
$if(authors.affiliation)$
|
404
|
+
\author[$authors.affiliation$]{$authors.name$}
|
405
|
+
$else$
|
406
|
+
\author{$authors.name$}
|
407
|
+
$endif$
|
408
|
+
$endfor$
|
409
|
+
$endif$
|
410
|
+
|
411
|
+
$if(affiliations)$
|
412
|
+
$for(affiliations)$
|
413
|
+
\affil[$affiliations.index$]{$affiliations.name$}
|
414
|
+
$endfor$
|
415
|
+
$endif$
|
416
|
+
\date{\vspace{-7ex}}
|
417
|
+
|
418
|
+
\begin{document}
|
419
|
+
$if(title)$
|
420
|
+
\maketitle
|
421
|
+
$endif$
|
422
|
+
$if(abstract)$
|
423
|
+
\begin{abstract}
|
424
|
+
$abstract$
|
425
|
+
\end{abstract}
|
426
|
+
$endif$
|
427
|
+
|
428
|
+
\marginpar{
|
429
|
+
|
430
|
+
\begin{flushleft}
|
431
|
+
%\hrule
|
432
|
+
\sffamily\small
|
433
|
+
|
434
|
+
\href{{$book_exec_url$}}{\includegraphics[width=\marginparwidth]{$book_exec_icon$}}
|
435
|
+
|
436
|
+
\vspace{1mm}
|
437
|
+
|
438
|
+
{\bfseries DOI:} \href{https://doi.org/$formatted_doi$}{\color{red}{$formatted_doi$}}
|
439
|
+
|
440
|
+
\vspace{2mm}
|
441
|
+
|
442
|
+
{\bfseries Jupyter Book}
|
443
|
+
\begin{itemize}
|
444
|
+
\setlength\itemsep{0em}
|
445
|
+
\item \href{$review_issue_url$}{\color{red}{Technical Screening}} \ExternalLink
|
446
|
+
\item \href{$repository$}{\color{red}{Source}} \ExternalLink
|
447
|
+
\end{itemize}
|
448
|
+
|
449
|
+
\vspace{2mm}
|
450
|
+
|
451
|
+
{\bfseries Zenodo Archives}
|
452
|
+
\begin{itemize}
|
453
|
+
\setlength\itemsep{0em}
|
454
|
+
\item \href{$repository_doi$}{\color{red}{Repository}} \ExternalLink
|
455
|
+
\item \href{$data_doi$}{\color{red}{Dataset}} \ExternalLink
|
456
|
+
\item \href{$book_doi$}{\color{red}{Built Book}} \ExternalLink
|
457
|
+
\item \href{$docker_doi$}{\color{red}{Container}} \ExternalLink
|
458
|
+
\end{itemize}
|
459
|
+
|
460
|
+
\vspace{1mm}
|
461
|
+
|
462
|
+
\par\noindent\hrulefill\par
|
463
|
+
|
464
|
+
\vspace{2mm}
|
465
|
+
|
466
|
+
{\bfseries Editor:} \href{$editor_url$}{\color{red}$editor_name$} \ExternalLink \\
|
467
|
+
\vspace{1mm}
|
468
|
+
$if(reviewers)$
|
469
|
+
{\bfseries Reviewers:}
|
470
|
+
\begin{itemize}
|
471
|
+
\setlength\itemsep{0em}
|
472
|
+
$for(reviewers)$
|
473
|
+
\item \href{https://github.com/$reviewers$}{@$reviewers$}
|
474
|
+
$endfor$
|
475
|
+
\end{itemize}
|
476
|
+
$endif$
|
477
|
+
\vspace{2mm}
|
478
|
+
|
479
|
+
{\bfseries Submitted:} $submitted$\\
|
480
|
+
{\bfseries Published:} $published$
|
481
|
+
|
482
|
+
\vspace{2mm}
|
483
|
+
{\bfseries License}\\
|
484
|
+
Authors of papers retain copyright and release the work under a Creative Commons Attribution 4.0 International License (\href{http://creativecommons.org/licenses/by/4.0/}{\color{red}{CC BY 4.0}}).
|
485
|
+
|
486
|
+
$if(aas-doi)$
|
487
|
+
\vspace{4mm}
|
488
|
+
{\bfseries In partnership with}\\
|
489
|
+
\vspace{2mm}
|
490
|
+
\includegraphics[width=4cm]{$aas_logo_path$}
|
491
|
+
\vspace{2mm}
|
492
|
+
\newline
|
493
|
+
This article and software are linked with research article DOI \href{https://doi.org/$aas-doi$}{\color{linky}{$aas-doi$}}, published in the $aas-journal$.
|
494
|
+
$endif$
|
495
|
+
|
496
|
+
\end{flushleft}
|
497
|
+
}
|
498
|
+
|
499
|
+
$for(include-before)$
|
500
|
+
$include-before$
|
501
|
+
|
502
|
+
$endfor$
|
503
|
+
$if(toc)$
|
504
|
+
{
|
505
|
+
$if(colorlinks)$
|
506
|
+
\hypersetup{linkcolor=$if(toccolor)$$toccolor$$else$black$endif$}
|
507
|
+
$endif$
|
508
|
+
\setcounter{tocdepth}{$toc-depth$}
|
509
|
+
\tableofcontents
|
510
|
+
}
|
511
|
+
$endif$
|
512
|
+
$if(lot)$
|
513
|
+
\listoftables
|
514
|
+
$endif$
|
515
|
+
$if(lof)$
|
516
|
+
\listoffigures
|
517
|
+
$endif$
|
518
|
+
$body$
|
519
|
+
|
520
|
+
$if(natbib)$
|
521
|
+
$if(bibliography)$
|
522
|
+
$if(biblio-title)$
|
523
|
+
$if(book-class)$
|
524
|
+
\renewcommand\bibname{$biblio-title$}
|
525
|
+
$else$
|
526
|
+
\renewcommand\refname{$biblio-title$}
|
527
|
+
$endif$
|
528
|
+
$endif$
|
529
|
+
\bibliography{$for(bibliography)$$bibliography$$sep$,$endfor$}
|
530
|
+
|
531
|
+
$endif$
|
532
|
+
$endif$
|
533
|
+
$if(biblatex)$
|
534
|
+
\printbibliography$if(biblio-title)$[title=$biblio-title$]$endif$
|
535
|
+
|
536
|
+
$endif$
|
537
|
+
$for(include-after)$
|
538
|
+
$include-after$
|
539
|
+
|
540
|
+
$endfor$
|
541
|
+
\end{document}
|
Binary file
|
Binary file
|