Skip to content

Commit 9cfda82

Browse files
robjhyndmancderv
andauthored
Adding INFORMS template (#460)
Co-authored-by: Christophe Dervieux <christophe.dervieux@gmail.com>
1 parent 92a101e commit 9cfda82

File tree

14 files changed

+4619
-2
lines changed

14 files changed

+4619
-2
lines changed

DESCRIPTION

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,8 @@ Authors@R: c(
5050
person("Matthias", "Templ", role = c("ctb"), email = "matthias.templ@gmail.com", comment = c(ORCID = "0000-0002-8638-5276", github = "matthias-da")),
5151
person("Alvaro", "Uzaheta", role = c("ctb"), email = "alvaro.uzaheta@gess.ethz.ch", comment = c(github = "auzaheta")),
5252
person("JooYoung", "Seo", role=c("ctb"), email="jseo1005@illinois.edu", comment = c(ORCID = "0000-0002-4064-6012")),
53-
person("Callum", "Arnold", role = c("ctb"), email = "cal.rk.arnold@gmail.com", comment = c(github = "arnold-c"))
53+
person("Callum", "Arnold", role = c("ctb"), email = "cal.rk.arnold@gmail.com", comment = c(github = "arnold-c")),
54+
person("Rob", "Hyndman", role = c("aut"), email = "Rob.Hyndman@monash.edu", comment = c(ORCID = "0000-0002-2140-5352"))
5455
)
5556
Description: A suite of custom R Markdown formats and templates for
5657
authoring journal articles and conference submissions.

NAMESPACE

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ export(frontiers_article)
2020
export(glossa_article)
2121
export(ieee_article)
2222
export(ims_article)
23+
export(informs_article)
2324
export(jasa_article)
2425
export(jedm_article)
2526
export(joss_article)

NEWS.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# rticles 0.23 (development version)
22

3+
## NEW FEATURES
4+
5+
- New `informs_article()` template for submissions to INFORMS journals (thanks, @robjhyndman, #460).
6+
37
# rticles 0.22
48

59
## BREAKING CHANGE

R/article.R

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,24 @@ ims_article <- function(journal = c("aoas", "aap", "aop", "aos", "sts"),
238238
)
239239
}
240240

241+
#' @section `informs_article`: Format for creating submissions to
242+
#' INFORMS journals. Adapted from \samp{https://pubsonline.informs.org/authorportal/latex-style-files}.
243+
#'
244+
#' It requires a minimum version of 2.10 for Pandoc.
245+
#' @export
246+
#' @rdname article
247+
informs_article <- function(..., keep_tex = TRUE, citation_package = "natbib") {
248+
if (citation_package != "natbib") {
249+
stop("INFORMS template only supports `natbib` for citation processing.")
250+
}
251+
if (!rmarkdown::pandoc_available("2.10")) {
252+
stop("informs_article requires a minimum of pandoc 2.10.")
253+
}
254+
pdf_document_format(
255+
"informs", keep_tex = keep_tex, citation_package = citation_package, ...
256+
)
257+
}
258+
241259
#' @section `jasa_article`: Format for creating submissions to the
242260
#' Journal of the Acoustical Society of America. Adapted from
243261
#' <https://acousticalsociety.org/preparing-latex-manuscripts/>.

README.Rmd

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ Currently included templates and their contributors are the following:
6161
| [Glossa](https://www.glossa-journal.org) | [\@stefanocoretta](https://github.com/stefanocoretta) | [#361](https://github.com/rstudio/rticles/pull/361) | `glossa_article()` |
6262
| [IEEE Transaction](http://www.ieee.org/publications_standards/publications/authors/author_templates.html) | [\@Emaasit](https://github.com/Emaasit), [\@espinielli](https://github.com/espinielli), [\@nathanweeks](https://github.com/nathanweeks), [\@DunLug](https://github.com/DunLug) | [\#97](https://github.com/rstudio/rticles/pull/97), [\#169](https://github.com/rstudio/rticles/pull/169), [\#227](https://github.com/rstudio/rticles/pull/227), [\#263](https://github.com/rstudio/rticles/pull/263), [\#264](https://github.com/rstudio/rticles/pull/264), [\#265](https://github.com/rstudio/rticles/pull/265) | `ieee_article()` |
6363
| [IMS: Institute of Mathematical Statistics](https://imstat.org/) [AoAS: Annals of Applied Statistics](https://imstat.org/journals-and-publications/annals-of-applied-statistics/) | [\@auzaheta](https://github.com/auzaheta)| [\#372](https://github.com/rstudio/rticles/pull/372) | `ims_article()`|
64+
| [INFORMS: Institute for Operations Research and the Management Sciences](https://informs.org/) | [\@robjhyndman](https://github.com/robjhyndman)| [\#460](https://github.com/rstudio/rticles/pull/460) | `informs_article()`|
6465
| [JASA: Journal of the Acoustical Society of America](https://asa.scitation.org/journal/jas) | [\@stefanocoretta](https://github.com/stefanocoretta)| [\#364](https://github.com/rstudio/rticles/pull/364) | `jasa_article()` |
6566
| [Journal of Educational Data Mining](https://jedm.educationaldatamining.org/index.php/JEDM/about/submissions) journal submissions | [\@jooyoungseo](https://github.com/jooyoungseo) | [#251](https://github.com/rstudio/rticles/pull/251) | `jedm_article()` |
6667
| [JOSS: Journal of Open Source Software](https://joss.theoj.org/) [JOSE: Journal of Open Source Education](https://jose.theoj.org/)| [\@noamross](https://github.com/noamross)| [\#229](https://github.com/rstudio/rticles/pull/229) | `joss_article()` |
@@ -80,7 +81,7 @@ Currently included templates and their contributors are the following:
8081
| [SIM: Statistics in Medicine](https://onlinelibrary.wiley.com/journal/10970258) | [\@ellessenne](https://github.com/ellessenne)| [\#231](https://github.com/rstudio/rticles/pull/231) | `sim_article()`|
8182
| [Taylor & Francis](https://www.tandfonline.com/)| [\@dleutnant](https://github.com/dleutnant)| [\#218](https://github.com/rstudio/rticles/pull/218) | `tf_article()` |
8283
| [The R Journal](https://journal.r-project.org/) ||| `rjournal_article()` |
83-
| [TRB](https://trb.secure-platform.com/a/page/TRBPaperReview) | [@gregmacfarlane](https://github.com/gregmacfarlane) | [#427](https://github.com/rstudio/rticles/pull/427) | `trb_article()` |
84+
| [TRB](https://trb.secure-platform.com/a/page/TRBPaperReview) | [\@gregmacfarlane](https://github.com/gregmacfarlane) | [#427](https://github.com/rstudio/rticles/pull/427) | `trb_article()` |
8485
| [Wellcome Open Research](https://wellcomeopenresearch.org) | [\@arnold-c](https://github.com/arnold-c) | [#436](https://github.com/rstudio/rticles/pull/436) | `wellcomeor_article()`|
8586

8687
You can also get the list of available journal names with `rticles::journals()`.

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ Currently included templates and their contributors are the following:
8787
| [Glossa](https://www.glossa-journal.org) | [@stefanocoretta](https://github.com/stefanocoretta) | [#361](https://github.com/rstudio/rticles/pull/361) | `glossa_article()` |
8888
| [IEEE Transaction](http://www.ieee.org/publications_standards/publications/authors/author_templates.html) | [@Emaasit](https://github.com/Emaasit), [@espinielli](https://github.com/espinielli), [@nathanweeks](https://github.com/nathanweeks), [@DunLug](https://github.com/DunLug) | [#97](https://github.com/rstudio/rticles/pull/97), [#169](https://github.com/rstudio/rticles/pull/169), [#227](https://github.com/rstudio/rticles/pull/227), [#263](https://github.com/rstudio/rticles/pull/263), [#264](https://github.com/rstudio/rticles/pull/264), [#265](https://github.com/rstudio/rticles/pull/265) | `ieee_article()` |
8989
| [IMS: Institute of Mathematical Statistics](https://imstat.org/) [AoAS: Annals of Applied Statistics](https://imstat.org/journals-and-publications/annals-of-applied-statistics/) | [@auzaheta](https://github.com/auzaheta) | [#372](https://github.com/rstudio/rticles/pull/372) | `ims_article()` |
90+
| [INFORMS: Institute for Operations Research and the Management Sciences](https://informs.org/) | [@robjhyndman](https://github.com/robjhyndman) | [#460](https://github.com/rstudio/rticles/pull/460) | `informs_article()` |
9091
| [JASA: Journal of the Acoustical Society of America](https://asa.scitation.org/journal/jas) | [@stefanocoretta](https://github.com/stefanocoretta) | [#364](https://github.com/rstudio/rticles/pull/364) | `jasa_article()` |
9192
| [Journal of Educational Data Mining](https://jedm.educationaldatamining.org/index.php/JEDM/about/submissions) journal submissions | [@jooyoungseo](https://github.com/jooyoungseo) | [#251](https://github.com/rstudio/rticles/pull/251) | `jedm_article()` |
9293
| [JOSS: Journal of Open Source Software](https://joss.theoj.org/) [JOSE: Journal of Open Source Education](https://jose.theoj.org/) | [@noamross](https://github.com/noamross) | [#229](https://github.com/rstudio/rticles/pull/229) | `joss_article()` |
Lines changed: 202 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,202 @@
1+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2+
%% Author template for INFORMS Journal on Data Science (ijds) [interim solution; new styles under construction]
3+
%% Mirko Janc, Ph.D., INFORMS, mirko.janc@informs.org
4+
%% ver. 0.91, March 2015 - updated November 2020 by Matthew Walls, matthew.walls@informs.org
5+
%% Adapted for rticles by Rob J Hyndman Rob.Hyndman@monash.edu. Dec 2021
6+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7+
\documentclass[$if(fontsize)$$fontsize$,$endif$$if(papersize)$$papersize$,$endif$$for(classoption)$$classoption$$sep$,$endfor$,$journal$,$if(blind)$blindrev$else$nonblindrev$endif$]{informs}
8+
9+
\OneAndAHalfSpacedXI
10+
%%\OneAndAHalfSpacedXII % Current default line spacing
11+
%%\DoubleSpacedXII
12+
%%\DoubleSpacedXI
13+
14+
%% BEGIN MY ADDITIONS %%
15+
\usepackage{hyperref}
16+
$if(highlighting-macros)$
17+
% Pandoc syntax highlighting
18+
$highlighting-macros$
19+
$endif$
20+
21+
% tightlist command for lists without linebreak
22+
\providecommand{\tightlist}{%
23+
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
24+
25+
$if(tables)$
26+
% From pandoc table feature
27+
\usepackage{longtable,booktabs,array}
28+
$if(multirow)$
29+
\usepackage{multirow}
30+
$endif$
31+
\usepackage{calc} % for calculating minipage widths
32+
% Correct order of tables after \paragraph or \subparagraph
33+
\usepackage{etoolbox}
34+
\makeatletter
35+
\patchcmd\longtable{\par}{\if@noskipsec\mbox{}\fi\par}{}{}
36+
\makeatother
37+
% Allow footnotes in longtable head/foot
38+
\IfFileExists{footnotehyper.sty}{\usepackage{footnotehyper}}{\usepackage{footnote}}
39+
\makesavenoteenv{longtable}
40+
$endif$
41+
42+
$if(csl-refs)$
43+
% Pandoc citation processing
44+
\newlength{\cslhangindent}
45+
\setlength{\cslhangindent}{1.5em}
46+
\newlength{\csllabelwidth}
47+
\setlength{\csllabelwidth}{3em}
48+
\newlength{\cslentryspacingunit} % times entry-spacing
49+
\setlength{\cslentryspacingunit}{\parskip}
50+
% for Pandoc 2.8 to 2.10.1
51+
\newenvironment{cslreferences}%
52+
{$if(csl-hanging-indent)$\setlength{\parindent}{0pt}%
53+
\everypar{\setlength{\hangindent}{\cslhangindent}}\ignorespaces$endif$}%
54+
{\par}
55+
% For Pandoc 2.11+
56+
\newenvironment{CSLReferences}[2] % #1 hanging-ident, #2 entry spacing
57+
{% don't indent paragraphs
58+
\setlength{\parindent}{0pt}
59+
% turn on hanging indent if param 1 is 1
60+
\ifodd #1
61+
\let\oldpar\par
62+
\def\par{\hangindent=\cslhangindent\oldpar}
63+
\fi
64+
% set entry spacing
65+
\setlength{\parskip}{#2\cslentryspacingunit}
66+
}%
67+
{}
68+
\usepackage{calc}
69+
\newcommand{\CSLBlock}[1]{#1\hfill\break}
70+
\newcommand{\CSLLeftMargin}[1]{\parbox[t]{\csllabelwidth}{#1}}
71+
\newcommand{\CSLRightInline}[1]{\parbox[t]{\linewidth - \csllabelwidth}{#1}\break}
72+
\newcommand{\CSLIndent}[1]{\hspace{\cslhangindent}#1}
73+
$endif$
74+
75+
$for(header-includes)$
76+
$header-includes$
77+
$endfor$
78+
79+
%% END MY ADDITIONS %%
80+
81+
82+
% Natbib setup for author-year style
83+
\usepackage{natbib}
84+
\bibpunct[, ]{(}{)}{,}{a}{}{,}%
85+
\def\bibfont{\small}%
86+
\def\bibsep{\smallskipamount}%
87+
\def\bibhang{24pt}%
88+
\def\newblock{\ }%
89+
\def\BIBand{and}%
90+
91+
92+
%% Setup of theorem styles. Outcomment only one.
93+
%% Preferred default is the first option.
94+
\TheoremsNumberedThrough % Preferred (Theorem 1, Lemma 1, Theorem 2)
95+
%\TheoremsNumberedByChapter % (Theorem 1.1, Lema 1.1, Theorem 1.2)
96+
\ECRepeatTheorems
97+
98+
%% Setup of the equation numbering system. Outcomment only one.
99+
%% Preferred default is the first option.
100+
\EquationsNumberedThrough % Default: (1), (2), ...
101+
%\EquationsNumberedBySection % (1.1), (1.2), ...
102+
103+
% For new submissions, leave this number blank.
104+
% For revisions, input the manuscript number assigned by the on-line
105+
% system along with a suffix ".Rx" where x is the revision number.
106+
\MANUSCRIPTNO{$manuscriptno$}
107+
108+
%%%%%%%%%%%%%%%%
109+
\begin{document}
110+
%%%%%%%%%%%%%%%%
111+
112+
% Outcomment only when entries are known. Otherwise leave as is and
113+
% default values will be used.
114+
%\setcounter{page}{1}
115+
%\VOLUME{00}%
116+
%\NO{0}%
117+
%\MONTH{Xxxxx}% (month or a similar seasonal id)
118+
%\YEAR{0000}% e.g., 2005
119+
%\FIRSTPAGE{000}%
120+
%\LASTPAGE{000}%
121+
%\SHORTYEAR{00}% shortened year (two-digit)
122+
%\ISSUE{0000} %
123+
%\LONGFIRSTPAGE{0001} %
124+
%\DOI{10.1287/xxxx.0000.0000}%
125+
126+
% Author's names for the running heads
127+
% Sample depending on the number of authors;
128+
\RUNAUTHOR{%
129+
$if(authors/allbutlast)$
130+
$for(authors/allbutlast)$$it.familyname$$sep$, $endfor$
131+
and $for(authors/last)$$it.familyname$$endfor$
132+
$else$
133+
${authors/last}
134+
$endif$
135+
}
136+
% \RUNAUTHOR{Jones and Wilson}
137+
% \RUNAUTHOR{Jones, Miller, and Wilson}
138+
% \RUNAUTHOR{Jones et al.} % for four or more authors
139+
% Enter authors following the given pattern:
140+
%\RUNAUTHOR{}
141+
142+
$if(shorttitle)$
143+
\RUNTITLE{$shorttitle$}
144+
$else$
145+
\RUNTITLE{$title$}
146+
$endif$
147+
148+
\TITLE{$title$}
149+
150+
\ARTICLEAUTHORS{%
151+
$for(authors)$
152+
\AUTHOR{$authors.othernames$ $authors.familyname$}
153+
\AFF{$authors.affiliation$, \EMAIL{$authors.email$}}
154+
155+
$endfor$%
156+
}
157+
158+
\ABSTRACT{$abstract$}
159+
160+
\KEYWORDS{$for(keywords)$$keywords$$sep$; $endfor$}
161+
162+
\maketitle
163+
164+
$for(include-before)$
165+
$include-before$
166+
167+
$endfor$
168+
169+
$body$
170+
171+
% Appendix here
172+
% Options are (1) APPENDIX (with or without general title) or
173+
% (2) APPENDICES (if it has more than one unrelated sections)
174+
% Outcomment the appropriate case if necessary
175+
%
176+
% \begin{APPENDIX}{<Title of the Appendix>}
177+
% \end{APPENDIX}
178+
%
179+
% or
180+
%
181+
% \begin{APPENDICES}
182+
% \section{<Title of Section A>}
183+
% \section{<Title of Section B>}
184+
% etc
185+
% \end{APPENDICES}
186+
187+
188+
% Acknowledgments here
189+
\ACKNOWLEDGMENT{$acknowledgment$}
190+
191+
$if(bibliography)$
192+
\bibliographystyle{informs2014}
193+
\bibliography{$bibliography$}
194+
$endif$
195+
196+
$for(include-after)$
197+
$include-after$
198+
199+
$endfor$
200+
201+
202+
\end{document}

0 commit comments

Comments
 (0)