diff --git a/DESCRIPTION b/DESCRIPTION index 73967a88a..c5504cff4 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -44,7 +44,8 @@ Authors@R: c( person("Shixiang", "Wang", role = c("aut", "ctb"), email = "w_shixiang@163.com", comment = c(ORCID = "0000-0001-9855-7357")), person('Jay', 'Hesselberth', role = c('aut', 'ctb'), email = 'jay.hesselberth@gmail.com', comment = c(ORCID = '0000-0002-6299-179X')), person("Alfredo", "Hernández", role = c("ctb"), email = "aldomann.designs@gmail.com", comment = c(ORCID = "0000-0002-2660-4545")), - person("Christophe", "Dervieux", role = c("aut"), email = "cderv@rstudio.com", comment = c(ORCID = "0000-0003-4474-2498")) + person("Christophe", "Dervieux", role = c("aut"), email = "cderv@rstudio.com", comment = c(ORCID = "0000-0003-4474-2498")), + person("Stefano", "Coretta", role = c("ctb"), email = "stefano.coretta@gmail.com", comment = c(ORCID = "0000-0001-9627-5532", github = "stefanocoretta")) ) Description: A suite of custom R Markdown formats and templates for authoring journal articles and conference submissions. diff --git a/NAMESPACE b/NAMESPACE index 476d8615c..b4cfca6bb 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -17,6 +17,7 @@ export(ctex_article) export(elsevier_article) export(frontiers_article) export(ieee_article) +export(jasa_article) export(joss_article) export(journals) export(jss_article) diff --git a/NEWS.md b/NEWS.md index 793cad51a..feb0e5482 100644 --- a/NEWS.md +++ b/NEWS.md @@ -17,6 +17,8 @@ fix for the LaTeX problem sanitized with the last `rticles` update (thanks, @RLu - Update all templates regarding CSLReference environment following changes in Pandoc's default template. +- Add article template `jasa_article()` for the *Journal of the Acoustical Society of America* (JASA) (thanks, @stefanocoretta, #364) + rticles 0.17 --------------------------------------------------------------------- diff --git a/R/article.R b/R/article.R index 7f78626c3..8a0d56156 100644 --- a/R/article.R +++ b/R/article.R @@ -175,6 +175,20 @@ frontiers_article <- function(..., keep_tex = TRUE) { pdf_document_format("frontiers", keep_tex = keep_tex, ...) } +#' @section \code{jasa_article}: Format for creating submissions to the +#' Journal of the Acoustical Society of America. Adapted from +#' \url{https://acousticalsociety.org/preparing-latex-manuscripts/}. +#' @export +#' @rdname article +jasa_article <- function( + ..., keep_tex = TRUE, latex_engine = "xelatex", citation_package = "natbib" +) { + pdf_document_format( + "jasa", keep_tex = keep_tex, latex_engine = latex_engine, + citation_package = citation_package, ... + ) +} + #' @section \code{lipics_article}: Format for creating submissions to #' LIPIcs - Leibniz International Proceedings Informatics - articles. #' Adapted from the official Instructions for Authors at diff --git a/README.md b/README.md index 4960a2cb6..a38cd19b5 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,7 @@ Currently included templates and their contributors are the following: | [Elsevier](https://www.elsevier.com) | [@cboettig](https://github.com/cboettig) | [#27](https://github.com/rstudio/rticles/pull/27) | `elsevier_article()` | | [Frontiers](https://www.frontiersin.org/) | [@muschellij2](https://github.com/muschellij2) | [#211](https://github.com/rstudio/rticles/pull/211) | `frontiers_article()` | | [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()` | +| [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()` | | [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()` | | [JSS: Journal of Statistical Software](https://www.jstatsoft.org) | | | `jss_article()` | | [LIPIcs](https://www.dagstuhl.de/en/publications/lipics) | [@nuest](https://github.com/nuest) | [#288](https://github.com/rstudio/rticles/pull/288) | `lipics_article()` | diff --git a/inst/rmarkdown/templates/jasa/resources/template.tex b/inst/rmarkdown/templates/jasa/resources/template.tex new file mode 100644 index 000000000..9b92801d8 --- /dev/null +++ b/inst/rmarkdown/templates/jasa/resources/template.tex @@ -0,0 +1,203 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% JASA LaTeX Template File +% To make articles using JASA.cls, Version 1.1 +% September 14, 2019 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%% Step 1: +%% Uncomment the style that you want to use: + +%%%%%%% For Preprint +%% For manuscript, 12pt, one column style + +\documentclass[$for(classoption)$$classoption$$sep$,$endfor$]{JASA} + +%%%%% Preprint Options %%%%% +%% The track changes option allows you to mark changes +%% and will produce a list of changes, their line number +%% and page number at the end of the article. +%\documentclass[preprint,trackchanges]{JASA} + + +%% NumberedRefs is used for numbered bibliography and citations. +%% Default is Author-Year style. +%% \documentclass[preprint,NumberedRefs]{JASA} + +%%%%%%% For Reprint +%% For appearance of finished article; 2 columns, 10 pt fonts + +% \documentclass[reprint]{JASA} + +%%%%% Reprint Options %%%%% + +%% For testing to see if author has exceeded page length request, use 12pt option +%\documentclass[reprint,12pt]{JASA} + + +%% NumberedRefs is used for numbered bibliography and citations. +%% Default is Author-Year style. +% \documentclass[reprint,NumberedRefs]{JASA} + +%% TurnOnLineNumbers +%% Make lines be numbered in reprint style: +% \documentclass[reprint,TurnOnLineNumbers]{JASA} + +$if(natbib)$ +\usepackage{natbib} +$endif$ + +$if(listings)$ +\usepackage{listings} +$endif$ +$if(lhs)$ +\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{} +$endif$ + +% Pandoc syntax highlighting +$if(highlighting-macros)$ +$highlighting-macros$ +$endif$ + +% Pandoc citation processing +$if(csl-refs)$ +\newlength{\csllabelwidth} +\setlength{\csllabelwidth}{3em} +\newlength{\cslhangindent} +\setlength{\cslhangindent}{1.5em} +% for Pandoc 2.8 to 2.10.1 +\newenvironment{cslreferences}% + {$if(csl-hanging-indent)$\setlength{\parindent}{0pt}% + \everypar{\setlength{\hangindent}{\cslhangindent}}\ignorespaces$endif$}% + {\par} +% For Pandoc 2.11+ +\newenvironment{CSLReferences}[3] % #1 hanging-ident, #2 entry spacing +{% don't indent paragraphs + \setlength{\parindent}{0pt} + % turn on hanging indent if param 1 is 1 + \ifodd #1 \everypar{\setlength{\hangindent}{\cslhangindent}}\ignorespaces\fi + % set entry spacing + \ifnum #2 > 0 + \setlength{\parskip}{#2\baselineskip} + \fi +}% +{} +\usepackage{calc} % for calculating minipage widths +\newcommand{\CSLBlock}[1]{#1\hfill\break} +\newcommand{\CSLLeftMargin}[1]{\parbox[t]{\csllabelwidth}{#1}} +\newcommand{\CSLRightInline}[1]{\parbox[t]{\linewidth - \csllabelwidth}{#1}} +\newcommand{\CSLIndent}[1]{\hspace{\cslhangindent}#1} +$endif$ + +$if(verbatim-in-note)$ +\usepackage{fancyvrb} +\VerbatimFootnotes % allows verbatim text in footnotes +$endif$ + +$for(header-includes)$ +$header-includes$ +$endfor$ + +\begin{document} +%% the square bracket argument will send term to running head in +%% preprint, or running foot in reprint style. + +\title[$if(shorttitle)$$shorttitle$$endif$]{$title$} + +% ie +%\title[JASA/Sample JASA Article]{Sample JASA Article} + +%% repeat as needed + +$for(author)$ +\author{$author.name$} +% ie +%\affiliation{Department1, University1, City, State ZipCode, Country} +\affiliation{$author.affiliation$} +%% for corresponding author +$if(author.email)$\email{$author.email$}$endif$ +%% for additional information +$if(author.thanks)$\thanks{$author.thanks$}$endif$ +$endfor$ + +% ie +% \author{Author Four} +% \email{author.four@university.edu} +% \thanks{Also at Another University, City, State ZipCode, Country.} + +%% For preprint only, +% optional, if you want want this message to appear in upper left corner of title page +$if(preprint_notice)$\preprint{$preprint_notice$}$endif$ + +%ie +%\preprint{Author, JASA} + +% optional, if desired: +%\date{\today} +$if(date)$\date{\today}$endif$ + +$if(abstract)$ +\begin{abstract} +% Put your abstract here. Abstracts are limited to 200 words for +% regular articles and 100 words for Letters to the Editor. Please no +% personal pronouns, also please do not use the words ``new'' and/or +% ``novel'' in the abstract. An article usually includes an abstract, a +% concise summary of the work covered at length in the main body of the +% article. +$abstract$ +\end{abstract} +$endif$ + +%% pacs numbers not used + +\maketitle + +% End of title page for Preprint option --------------------------------- % + +%% See preprint.tex/.pdf or reprint.tex/.pdf for many examples + +$for(include-before)$ +$include-before$ +$endfor$ + +% Body of the article +$body$ + +% ------------------------------------------------------------------------------------------------------------------- +% Appendix (optional) + +%\appendix +%\section{Appendix title} + +%If only one appendix, please use +%\appendix* +%\section{Appendix title} + + +%======================================================= + +%Use \bibliography{}+ +%to make your bibliography with BibTeX. + +%======================================================= + +$if(natbib)$ +$if(bibliography)$ +$if(biblio-title)$ +$if(book-class)$ +\renewcommand\bibname{$biblio-title$} +$else$ +\renewcommand\refname{$biblio-title$} +$endif$ +$endif$ +\bibliography{$for(bibliography)$$bibliography$$sep$,$endfor$} +$endif$ +$endif$ +$if(biblatex)$ +\printbibliography$if(biblio-title)$[title=$biblio-title$]$endif$ +$endif$ + +$for(include-after)$ +$include-after$ +$endfor$ + +\end{document} diff --git a/inst/rmarkdown/templates/jasa/skeleton/JASA.cls b/inst/rmarkdown/templates/jasa/skeleton/JASA.cls new file mode 100755 index 000000000..689a9fdc7 --- /dev/null +++ b/inst/rmarkdown/templates/jasa/skeleton/JASA.cls @@ -0,0 +1,1397 @@ +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% JASA.cls Version 1.1 %% +%% %% +%% Most recent revisions, Oct 10, 2019 %% +%% %% +%% Copyright 2017, 2018, 2019 %% +%% Acoustical Society of America %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% JASA.cls +%% Developed and maintained by Amy Hendrickson +%% TeXnology Inc +%% http://www.texnology.com +%% amyh@texnology.com +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\currversion{1.1} + +%% +%% These files are distributed +%% WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~}% +%% +%%% date = "2/15/2017", +%%% author = "Amy Hendrickson (mailto:amyh@texnology.com)" + +%%% This work may be distributed and/or modified under the +%%% conditions of the LaTeX Project Public License, either version 1.3c +%%% of this license or (at your option) any later version. +%%% The latest version of this license is in +%%% http://www.latex-project.org/lppl.txt +%%% and version 1.3 or later is part of all distributions of LaTeX +%%% version 2005/12/01 or later. +% +%%% This work has the LPPL maintenance status `maintained'. +% +%%% The Current Maintainer of this work is Arthur Newhall +%%% This work consists of the file JASAnew.cls + +%%% copyright = "Copyright (C) 2017 Acoustical Society of America +%%% +%%% This work may be distributed and/or modified under the +%%% conditions of the LaTeX Project Public License, either version 1.3 +%%% of this license or (at your option) any later version. +%%% The latest version of this license is in +%%% http://www.latex-project.org/lppl.txt +%%% and version 1.3 or later is part of all distributions of LaTeX +%%% version 2003/12/01 or later. +%%% +%%% This work has the LPPL maintenance status "maintained". +%%% +%%% The Current Maintainer of this work is the Acoustical Society of America. +%%% +%%% This work consists of all files listed in the document README. +%%% +%%% address = "Acoustical Society of America, +%%% USA", +%%% telephone = "+1 ???", +%%% FAX = "", +%%% email = "anewhall@whoi.edu +%%% codetable = "ISO/ASCII", +%%% keywords = "latex, JASATeXnew, journal", +%%% supported = "yes", +%%% abstract = "formatter for JASA journal submissions", +%%% } + +\ProvidesClass{JASA}%%% + [2019/09/09 Version 1.1, document class]% +{} +\ClassInfo{JASA}{% +^^J +Written by Amy Hendrickson, amyh@texnology.com, http://www.texnology.com +^^J +^^J +}% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Make sure authors are using RevTeX4-1 + \IfFileExists{revtex4-1.cls}{ + \def\@revtex@cls{revtex4-1} + }{ +\typeout{^^J^^J Please update your system to include +revtex4-1.cls^^J^^J +We recommend downloading a current version of TeX Live, MacTeX, +or MikTeX to have all the current files}\stop + } + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Options. Document style options, and additional feature options. + +% These are the General document style options, 2 choices + +%% For Submission of your paper: +% preprint : onecolumn, doublespace, 12pt fonts + +%% For checking to see how many pages your paper will have when published +%% (approximately) +% reprint : twocolumn, single space, optional 12pt fonts + +% Default document style option: +% preprint + +\newif\ifmanuscript +\newif\iftwelvepoint +\newif\ifdoublespace +\newif\if@two@col +\newif\ifnumlines + +%% Manuscript is double spaced and single columned. +\DeclareOption{preprint}{\global\manuscripttrue\twelvepointtrue +\@two@colfalse\doublespacetrue}% + +%% Preprints are single spaced and double columned. +\newif\ifpreprint +\DeclareOption{reprint}{\global\manuscriptfalse\twelvepointfalse +\doublespacefalse\global\timestrue} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Additional feature options: + +% times : uses times font as the default +% trackchanges : required to see the revision mark up and print output +% 12pt ; for authors to check length of paper +% authoryearcite ; for setting citations and bib entries to author/year style + +%% add line numbers to reprint +\newif\ifturnonlinenumbers +\DeclareOption{TurnOnLineNumbers}{\global\turnonlinenumberstrue} +%% in case someone forgets to put in the caps: +\DeclareOption{turnonlinenumbers}{\global\turnonlinenumberstrue} + +\newif\iftimes +\DeclareOption{times}{\global\timestrue} + +\newif\iftrack +\DeclareOption{trackchanges}{\global\tracktrue} + +\DeclareOption{12pt}{\global\twelvepointtrue} + +\newif\ifauthoryear +\DeclareOption{author-year}{% +\global\authoryeartrue} + +\DeclareOption{NumberedRefs}{% +\global\authoryearfalse} + +%% in case someone forgets to capitalize: +\DeclareOption{numberedrefs}{% +\global\authoryearfalse} + +\global\authoryeartrue + +\newif\ifgrouped +\DeclareOption{authaffil}{% +\global\groupedtrue} + + +%% End Options + +%% manuscript is default style +\ExecuteOptions{preprint} + +\ProcessOptions + +%% +%%%%%%%%%%%%% +%% Passing options to revtex while loading: + \ifmanuscript %% preprint style + \LoadClass[onecolumn, amsmath, amssymb, preprint, + aip,floatfix]{revtex4-1} + \else % reprint style +%% no track changes allowed in Reprint style +\iftrack +\global\trackfalse +\typeout{^^J^^J Invalid Option! Track Changes not allowed in Reprint Style!^^J^^J} +\stop +\fi + \LoadClass[twocolumn, amsmath, + amssymb,reprint,aip,floatfix]{revtex4-1} + \fi + + +%%%%%%%%%%%%% +% +\ifauthoryear +\setcitestyle{authoryear,round,aysep={,},yysep={,},citesep={;}} +% changes formatting style from numeric brackets to author/year, with semicolon separating citations. +\fi + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Load packages +\usepackage{graphicx}% Include figure files +\usepackage{dcolumn}% Align table columns on decimal point +\usepackage{bm}% bold math +\usepackage{amsmath,amsfonts}% popular packages from the American Mathematical Society +\usepackage{latexsym}% +\usepackage{lineno} +\usepackage{array} +\usepackage{adjustbox} + +\usepackage{soul} + +%% for editing changes +\usepackage{xcolor} +\definecolor{asalinkcolor}{cmyk}{1,.5,0,0} + + \usepackage[bookmarks=false, % show bookmarks bar? + pdfnewwindow=true, % links in new window + colorlinks=true, % false: boxed links; true: colored links + linkcolor=asalinkcolor, % color of internal links + citecolor=asalinkcolor, % color of links to bibliography + filecolor=asalinkcolor, % color of file links + urlcolor=asalinkcolor, % color of external links +final=true + ]{hyperref} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Font families +%% modification of bk10.clo, and bk12.clo, standard LaTeX distribution +%% +%% Implements doublespace used in `manuscript' option +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +%%% preprint is 12pt, reprint is 10pt, unless 12pt option is used + +%% Modified bk12.clo + +%% for section heads +\newcommand\bigsmall{\@setfontsize\bigsmall{9.5pt}{12}} + +\iftwelvepoint +\renewcommand\normalsize{% +\ifdoublespace % manuscript + \@setfontsize\normalsize\@xiipt{20}% +\else + \@setfontsize\normalsize\@xiipt{13}% +\fi %% end doublespace/no double space + \abovedisplayskip 12\p@ \@plus3\p@ \@minus7\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@ + \belowdisplayskip \abovedisplayskip + \let\@listi\@listI} + +\normalsize + +%% for section heads +\renewcommand\bigsmall{\@setfontsize\bigsmall{9.5pt}{12}} + +\renewcommand\small{% +\ifdoublespace % manuscript + \@setfontsize\small\@xipt{20}% +\else + \@setfontsize\small\@xipt{13.6}% +\fi +%% end doublespace/no double space + \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 9\p@ \@plus3\p@ \@minus5\p@ + \parsep 4.5\p@ \@plus2\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} + +\renewcommand\footnotesize{% +\ifdoublespace % manuscriptstyle + \@setfontsize\footnotesize\@xpt{18} +\else + \@setfontsize\footnotesize\@xpt\@xiipt +\fi + \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 6\p@ \@plus2\p@ \@minus2\p@ + \parsep 3\p@ \@plus2\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} +\ifdoublespace % manuscript style +\renewcommand\scriptsize{\@setfontsize\scriptsize\@viiipt{14}} +\renewcommand\tiny{\@setfontsize\tiny\@vipt{10}} +\renewcommand\large{\@setfontsize\large\@xivpt{18}} +\renewcommand\Large{\@setfontsize\Large\@xviipt{22}} +\renewcommand\LARGE{\@setfontsize\LARGE\@xxpt{25}} +\renewcommand\huge{\@setfontsize\huge\@xxvpt{30}} +\else +\renewcommand\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}} +\renewcommand\tiny{\@setfontsize\tiny\@vipt\@viipt} +\renewcommand\large{\@setfontsize\large\@xivpt{22}} +\renewcommand\Large{\@setfontsize\Large\@xviipt{24}} +\renewcommand\LARGE{\@setfontsize\LARGE\@xxpt{28}} +\renewcommand\huge{\@setfontsize\huge\@xxvpt{30}} +\newcommand\titlefont{\@setfontsize\titlefont{17pt}{18}} + +\fi +\let\Huge=\huge +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\else %% not twelvepoint, now tenpoint +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% no doublespace here, because the only doublespace is in `manuscript style' which is 12pt + +\renewcommand\normalsize{% + \@setfontsize\normalsize\@xpt{11.5}% + \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@ + \belowdisplayskip \abovedisplayskip + \let\@listi\@listI} + +\normalsize + + +\renewcommand\small{% + \@setfontsize\small\@ixpt{12}% + \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@ + \abovedisplayshortskip \z@ \@plus2\p@ + \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 4\p@ \@plus2\p@ \@minus2\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} + +\renewcommand\footnotesize{% + \@setfontsize\footnotesize\@viiipt{9}% + \abovedisplayskip 6\p@ \@plus2\p@ \@minus4\p@ + \abovedisplayshortskip \z@ \@plus\p@ + \belowdisplayshortskip 3\p@ \@plus\p@ \@minus2\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 3\p@ \@plus\p@ \@minus\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep}% + \belowdisplayskip \abovedisplayskip +} + +%% Standard 10pt font sizes +\renewcommand\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt} +\renewcommand\tiny{\@setfontsize\tiny\@vpt\@vipt} +\renewcommand\large{\@setfontsize\large\@xiipt{14}} +\renewcommand\Large{\@setfontsize\Large\@xivpt{18}} +\renewcommand\LARGE{\@setfontsize\LARGE\@xviipt{22}} +\newcommand\titlefont{\@setfontsize\titlefont{17pt}{18}} +\renewcommand\huge{\@setfontsize\huge\@xxpt{25}} +\renewcommand\Huge{\@setfontsize\Huge\@xxvpt{30}} + +\fi + +\newcommand\xsmall{\@setfontsize\xsmall\@ixpt{11}} + +%% End font sizes +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@} +\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@} +\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@} +\setlength\headheight{12\p@} + + + +\def\@listi{\leftmargin\leftmargini + \parsep 4\p@ \@plus2\p@ \@minus\p@ + \topsep 8\p@ \@plus2\p@ \@minus4\p@ + \itemsep4\p@ \@plus2\p@ \@minus\p@} +\let\@listI\@listi +\@listi +\def\@listii {\leftmargin\leftmarginii + \labelwidth\leftmarginii + \advance\labelwidth-\labelsep + \topsep 4\p@ \@plus2\p@ \@minus\p@ + \parsep 2\p@ \@plus\p@ \@minus\p@ + \itemsep \parsep} +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii + \advance\labelwidth-\labelsep + \topsep 2\p@ \@plus\p@\@minus\p@ + \parsep \z@ + \partopsep \p@ \@plus\z@ \@minus\p@ + \itemsep \topsep} +\def\@listiv {\leftmargin\leftmarginiv + \labelwidth\leftmarginiv + \advance\labelwidth-\labelsep} +\def\@listv {\leftmargin\leftmarginv + \labelwidth\leftmarginv + \advance\labelwidth-\labelsep} +\def\@listvi {\leftmargin\leftmarginvi + \labelwidth\leftmarginvi + \advance\labelwidth-\labelsep} + + +%%%%%%%%%%%%%%%%%%%%%%%%% +%% Track Changes +%% Amy Hendrickson, Feb 2016, revised Sept 2019 + +\providecolor{trackcolor}{rgb}{1,0,0} + +\newcount\refchangenumber + +\def\added{\@ifnextchar[{\xadded}{\yadded}} + +\long\def\xadded[#1]#2{% +\iftrack{\global\advance\refchangenumber by 1\relax% +\ifnumlines +\xdef\doit{\noexpand\linelabel{\the\refchangenumber}}\doit\else% +\xdef\doit{\noexpand\label{\the\refchangenumber}{}{}{}}\doit\fi% +\color{trackcolor}([#1] Added: #2)}%% +\expandafter\gdef\csname +changenum\the\refchangenumber\endcsname{Added: [#1] +\textcolor{trackcolor}{#2}, }\else#2\fi} + +\long\def\yadded#1{% +\iftrack{\global\advance\refchangenumber by 1\relax% +\ifnumlines +\xdef\doit{\noexpand\linelabel{\the\refchangenumber}}\doit\else% +\xdef\doit{\noexpand\label{\the\refchangenumber}{}{}{}}\doit\fi% +\color{trackcolor}(Added: #1)}%% +\expandafter\gdef\csname changenum\the\refchangenumber\endcsname{Added: +\textcolor{trackcolor}{#1}, }\else#1\fi} + +\def\deleted{\@ifnextchar[{\xdeleted}{\ydeleted}} + +\long\def\xdeleted[#1]#2{% +\iftrack{\global\advance\refchangenumber by 1\relax% +\ifnumlines +\xdef\doit{\noexpand\linelabel{\the\refchangenumber}}\doit\else% +\xdef\doit{\noexpand\label{\the\refchangenumber}{}{}{}}\doit\fi% +\color{trackcolor}([#1] Deleted: \st{#2})}%% +\expandafter\gdef\csname +changenum\the\refchangenumber\endcsname{Deleted: [#1] +\textcolor{trackcolor}{\st{#2}}, }\else \fi} + +\long\def\ydeleted#1{% +\iftrack{\global\advance\refchangenumber by 1\relax% +\ifnumlines +\xdef\doit{\noexpand\linelabel{\the\refchangenumber}}\doit\else% +\xdef\doit{\noexpand\label{\the\refchangenumber}{}{}{}}\doit\fi% +\color{trackcolor}(Deleted: \st{#1})}%% +\expandafter\gdef\csname +changenum\the\refchangenumber\endcsname{Deleted: +\textcolor{trackcolor}{\st{#1}}, }\else\fi} + + +\def\replaced{\@ifnextchar[{\xreplaced}{\yreplaced}} + +\long\def\xreplaced[#1]#2#3{% +\iftrack +\global\advance\refchangenumber by 1 +\ifnumlines\xdef\doit{\noexpand\linelabel{\the\refchangenumber}}\doit\else% +\xdef\doit{\noexpand\label{\the\refchangenumber}}\doit\fi% +{\color{trackcolor}([#1] Replaced: \st{#2}} +{\color{black}replaced with:} {\color{trackcolor} #3)}% +\expandafter\gdef\csname +changenum\the\refchangenumber\endcsname{Replaced: [#1] +{\color{trackcolor}\st{#2}} {\color{black} replaced with:} +{\color{trackcolor}#3}, }\else#3\fi} + +\long\def\yreplaced#1#2{% +\iftrack +\global\advance\refchangenumber by 1 +\ifnumlines\xdef\doit{\noexpand\linelabel{\the\refchangenumber}}\doit\else% +\xdef\doit{\noexpand\label{\the\refchangenumber}}\doit\fi% +{\color{trackcolor}(Replaced: \st{#1}} +{\color{black}replaced with:} {\color{trackcolor} #2)}% +\expandafter\gdef\csname changenum\the\refchangenumber\endcsname{Replaced: +{\color{trackcolor}\st{#1}} {\color{black} replaced with:} +{\color{trackcolor}#2}, }\else#2\fi} + + +\global\@mparswitchfalse +\def\explain#1{ +\iftrack\marginpar{\vskip26pt\vtop to 0pt{\hsize30pt\hyphenpenalty10000 +\noindent\baselineskip10pt{\color{red}{\boldmath$\leftarrow$}\\ +\raggedright +\footnotesize\sf\baselineskip10pt +\relax#1\vskip1sp}\vss}}\fi} + +\newcount\listchangenum + +\def\listofchanges{\iftrack +%\clearpage +\ifnum\refchangenumber>0 +\ifnumlines\nolinenumbers\fi +\vskip36pt +\hrule +\noindent{\vrule height 14pt width0pt depth 6pt\large\bf List of Changes} +\hrule +\vskip18pt +\nobreak +{\parskip=4pt \parindent-18pt \leftskip=18pt +\loop +\vskip-1pt\relax +\global\advance\listchangenum by 1\relax +\expandafter\ifx\csname changenum\the\listchangenum\endcsname\relax +\else +\csname changenum\the\listchangenum\endcsname\ on page +\pageref{\the\listchangenum}% +\ifnumlines +\setbox0=\hbox{\lineref{\the\listchangenum}}% +\ifdim\wd0>20pt% +\else% +, line\ +\lineref{\the\listchangenum}% +\fi\fi. +\repeat} +\fi\fi +%\thispagestyle{empty} +\vfill +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Figlines for positioning multiple illustrations in +%% one figure environment. + +\long\def\figline#1{\vskip6pt\noindent\hbox to\hsize{#1}\vskip6pt} + +\long\def\figcolumn#1{\bgroup +\let\fig\columnfig +\vskip2pt\relax#1\egroup\vskip2pt} +\let\savelabel\label + + +\long\def\narrowcaption#1#2{\hfill$\vcenter to 0pt +{\vss\hsize=#1 +\let\small\xsmall\caption{#2}\vskip2\baselineskip\vss}$\def\@currentlabel{\the\c@figure}} + +\def\boxedfig#1#2#3{\hfill\fbox{\vbox{\parskip=0pt\relax\baselineskip=12pt +\hsize=#2 +\includegraphics[width=#2]{#1}\vskip3pt\vtop{\hsize=#2 +\c@figureplusone=\c@figure +\global\advance\c@figureplusone by 1 +\gdef\@currentlabelname{figure} +\gdef\@currentlabel{\the\c@figureplusone#3} +\gdef\@currentHref{figure.\the\c@figureplusone} +\centerline{#3}}}}\hfill} + +\newcount\c@figureplusone + +\def\fig#1#2#3{\ $\vcenter{\parskip=0pt\baselineskip=12pt +\relax\hsize=#2 +\includegraphics[width=#2]{#1}\vskip3pt\vtop{\hsize=#2 +\c@figureplusone=\c@figure +\global\advance\c@figureplusone by 1 +\gdef\@currentlabelname{figure} +\gdef\@currentlabel{\the\c@figureplusone#3} +\gdef\@currentHref{figure.\the\c@figureplusone} +\centering +\relax #3\vskip1sp\vskip1sp}}$\ +} + + +\def\columnfig#1#2#3{% +\vtop{\vskip3pt\baselineskip=12pt +\parskip=0pt +\centerline{\includegraphics[width=#2]{#1}}\def\three{#3} +\ifx\three\empty \else +\vskip1pt +\centerline{\vrule height 12pt width0pt depth 8pt +\footnotesize +\c@figureplusone=\c@figure +\global\advance\c@figureplusone by 1 +\gdef\@currentlabelname{figure} +\gdef\@currentlabel{\the\c@figureplusone#3} +\gdef\@currentHref{figure.\the\c@figureplusone} +\hsize=#2 +#3}\fi}\vskip3pt} + +\def\leftfig#1#2#3{\vbox{\parskip=0pt\relax\baselineskip=12pt\relax\hsize=#2 +\includegraphics[width=#2]{#1}\vskip3pt\vtop{\gdef\@currentlabel{\the\c@figure} +\hsize=#2 +\centering +\c@figureplusone=\c@figure +\global\advance\c@figureplusone by 1 +\gdef\@currentlabelname{figure} +\gdef\@currentlabel{\the\c@figureplusone#3} +\gdef\@currentHref{figure.\the\c@figureplusone} +#3\vskip1sp\vskip1sp}}\hfill} + +\def\rightfig#1#2#3{\hfill\vbox{\parskip=0pt\relax\baselineskip=12pt\relax\hsize=#2 +\includegraphics[width=#2]{#1}\vskip3pt\vtop{\gdef\@currentlabel{\the\c@figure} +\hsize=#2 +\c@figureplusone=\c@figure +\global\advance\c@figureplusone by 1 +\gdef\@currentlabelname{figure} +\gdef\@currentlabel{\the\c@figureplusone#3} +\gdef\@currentHref{figure.\the\c@figureplusone} +\centering#3\vskip1sp}}} + +\def\rotatefig#1#2#3#4{\hfill\vbox{\centering\parskip=0pt\relax\baselineskip=12pt\hsize=#3 +\includegraphics[width=#3,angle=#1]{#2}\vskip3pt\vtop{\centering +\gdef\@currentlabel{\the\c@figure} +\footnotesize +\hsize=#3 +\c@figureplusone=\c@figure +\global\advance\c@figureplusone by 1 +\gdef\@currentlabelname{figure} +\gdef\@currentlabel{\the\c@figureplusone#4} +\gdef\@currentHref{figure.\the\c@figureplusone} +#4\vskip1pt +}}\hfill} + +\def\sidebysidefigures#1#2/#3#4{\figline{% +\vbox{\hsize=.5\textwidth +\centerline{\includegraphics[width=.45\textwidth]{#1}}\vskip-\baselineskip +\centerline{\vtop{\hsize=.45\textwidth\caption{#2}}}} +\vbox{\hsize=.5\textwidth +\centerline{\includegraphics[width=.45\textwidth]{#3}}\vskip-\baselineskip +\centerline{\vtop{\hsize=.45\textwidth\caption{#4}}}}% +}} + + +%%%%%%%%%% End Fig line Macros %%%%%%%%%% + +%% Section heads rewritten for preprint +\def\section{\@startsection {section}{1}{\z@ }{0.8cm \@plus .5ex \@minus .2ex}{0.5cm} +{\boldmath\normalfont \small \bfseries }} + +\def\sectionfont{\small\bfseries} +\def\subsection{\@startsection {subsection}{2}{\z@ }{.8cm \@plus .5ex \@minus .2ex}{.5cm} +{\boldmath\normalfont \small \bfseries }} + +\def\subsubsection{\@startsection {subsubsection}{3}{\z@ }{.8cm +\@plus 1ex \@minus .2ex}{.5cm} {\boldmath\normalfont \small \bfseries\itshape }} + +\def\paragraph{\@startsection {paragraph}{4}{\parindent }{\z@ }{-1em}{\normalfont \normalsize +\itshape }} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%% used for both preprint and reprint: +\newcount\currentpage +\def\setpagenumber#1{\ifmanuscript\else\global\currentpage=#1\relax\fi} + +%% not for author use: +% \def\volume#1{\def\thevolume{#1}} +% \def\volnumber#1{\def\thevolnumber{#1}} + +\let\savedocument\document +\def\document{\savedocument\ifnum\currentpage>0\setcounter{page}{\the\currentpage}\fi} + +\def\shorttitle#1{\def\theshorttitle{#1}} +\let\theshorttitle\relax + +\def\runningfootauthor#1{\def\therunningfootauthor{#1 \etal}} +\let\therunningfootauthor\relax + +\def\editorinitials#1{\def\theeditor{#1}} +\editorinitials{XYZ} + +\def\DOInumber#1{\def\theDOI{/#1}} +\def\theDOI{(DOI number)} + +\def\copyrightyear#1{\def\thecopyrightyear{#1}} + +\def\copyrightinfo#1{\def\thecopyrightinfo{#1}} + +\advance\textheight -12pt + +\def\acknowledgments{\section*{Acknowledgments}} +\def\endacknowledgments{\vskip12pt} + +\def\frontmatter@abstractfont{% +\global\numlinestrue +\linenumbers +\normalsize + \adjust@abstractwidth +}% + +\newif\iftitle +\global\titletrue + + +%% this was under \ifmanuscript +\long\def\maketitle{\let \Hy@saved@footnotemark \@footnotemark +\let \Hy@saved@footnotetext \@footnotetext +\let \@footnotemark \H@@footnotemark \let \@footnotetext +\H@@footnotetext +\@ifnextchar [\Hy@maketitle@optarg {\HyOrg@maketitle +\Hy@maketitle@end +}\ifmanuscript\linenumbers\else\ifturnonlinenumbers +\linenumbersep=4pt +\linenumbers\fi\fi} + +\ifmanuscript +\def\ps@titlepage{ +\def \@oddhead {\iftitle\global\titlefalse\hfill\thepreprint\global\let\thepreprint\relax +\else\hfill\@runningtitle \fi} +\let \@evenhead \@oddhead +\def \@oddfoot {\hb@xt@ \z@ {\byrevtex \hss }\hfil \preprintsty@sw {\thepage }{}\quad \checkindate \hfil } +\let \@evenfoot \@oddfoot } + +\thispagestyle{titlepage} +\pagestyle{titlepage} + + + +\AtBeginDocument{\global\reprintcolumnwidth=246pt + %% in response to feedback asking for \columnwidth to be the + %% same with preprint and reprint styles; author should use \reprintcolumnwidth. +\def\arraystretch{1.2}\ifgrouped\clo@groupedaddress\fi} + +\def\@ssect@ltx#1#2#3#4#5#6[#7]#8{% + \def\H@svsec{\phantomsection}% + \@tempskipa #5\relax + \@ifdim{\@tempskipa>\z@}{% + \begingroup + \interlinepenalty \@M + #6{% + \@ifundefined{@hangfroms@#1}{\@hang@froms}{\csname @hangfroms@#1\endcsname}% + {\hskip#3\relax\H@svsec}{\ifnum#2=1\noindent\hskip-\parindent\fi#8}% + }% + \@@par + \endgroup + \@ifundefined{#1smark}{\@gobble}{\csname #1smark\endcsname}{#7}% + \addcontentsline{toc}{#1}{\protect\numberline{}#8}% + }{% + \def\@svsechd{% + #6{% + \@ifundefined{@runin@tos@#1}{\@runin@tos}{\csname @runin@tos@#1\endcsname}% + {\hskip#3\relax\H@svsec}{#8}% + }% + \@ifundefined{#1smark}{\@gobble}{\csname #1smark\endcsname}{#7}% + \addcontentsline{toc}{#1}{\protect\numberline{}#8}% + }% + }% + \@xsect{#5}% +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%% These commands are for reprint +++ + +\else + + +\def\frontmatter@authorformat{% + \frontmatter@@indent + \sffamily +\advance\baselineskip\p@ +\parskip8pt\relax %11.5\p@\relax +}% + +%% Section heads rewritten for Reprint + +\def\section{\@startsection {section}{1}{\z@ }{16pt} +{7pt} +{\noindent\boldmath \bigsmall \bfseries\sffamily }} + +\def\sectionfont{\bigsmall\bfseries\sffamily} + +\def\subsection{\@startsection {subsection}{2}{\z@ }{16pt}{7pt} +{\noindent\boldmath\bigsmall\normalfont \bfseries\sffamily }} + +\def\subsubsection{\@startsection {subsubsection}{3}{\z@ }{14pt +minus 2pt}{6pt} {\noindent\boldmath\normalsize\normalfont +%\small +\bfseries\itshape\sffamily }} + +\def\paragraph{\@startsection {paragraph}{4}{\parindent }{3pt}{-18pt}{\small +%\bfseries +\itshape +\sffamily }} + +\parskip=0pt +\parindent=18pt +\def\@seccntformat#1{\csname the#1\endcsname.\hskip2pt\relax} + +%% a bit more vertical space between horizontal lines, makes table more readable +\AtBeginDocument{\def\arraystretch{1.2}\ifgrouped\clo@groupedaddress\fi} + +%%%%%%%% Adjustments to aip.rtx %%%%%%%%%%%%%%% + +\def\frontmatter@title@above{\addvspace{6\p@}}% +\def\frontmatter@title@format{% + \preprintsty@sw{}{\titlefont}% +\spaceskip=8pt plus 6pt + \bfseries + \raggedright + \parskip\z@skip +\advance\rightskip .7in +}% +\def\frontmatter@title@below{\addvspace{12\p@}}% + +\def\frontmatter@affiliationfont{% +% \frontmatter@@indent + \preprintsty@sw{}{\small}% + \it +\rightskip=1in +}% + + +%% abstract +\def\adjust@abstractwidth{% + \parindent0pt\relax +\advance\rightskip1in + \advance\leftskip.5in\relax + \@totalleftmargin\leftskip + \@afterheading\@afterindentfalse +}% + + +\def\frontmatter@abstractfont{% +\normalsize + \adjust@abstractwidth +}% + + +%% default values +\copyrightinfo{Acoustical Society of America.} +\copyrightyear{\the\year} + +%% need all this just to get line in below abstract! +\def\titleblock@produce{% + \begingroup + \ltx@footnote@pop + \def\@mpfn{mpfootnote}% + \def\thempfn{\thempfootnote}% + \c@mpfootnote\z@ + \let\@makefnmark\frontmatter@makefnmark + \frontmatter@setup + \thispagestyle{titlepage}\label{FirstPage}% + \frontmatter@title@produce + \groupauthors@sw{% + \frontmatter@author@produce@group + }{% + \frontmatter@author@produce@script + }% + \frontmatter@RRAPformat{% + \expandafter\produce@RRAP\expandafter{\@date}% + \expandafter\produce@RRAP\expandafter{\@received}% + \expandafter\produce@RRAP\expandafter{\@revised}% + \expandafter\produce@RRAP\expandafter{\@accepted}% + \expandafter\produce@RRAP\expandafter{\@published}% + }% + \frontmatter@abstract@produce + \vskip-4pt + \noindent\normalsize\hskip.5in\hbox to 402pt{{\it\copyright\thecopyrightyear\ + \thecopyrightinfo}\qquad + [\href{https://doi.org\theDOI}{https://doi.org\theDOI}]\hfill} +\vskip9pt +\noindent\normalsize\hskip.5in\hbox to402pt{[\theeditor]\hfill Pages: +\@startpage--\pageref{finalpage}}\vskip20pt + \@ifx@empty\@pacs{}{% + \@pacs@produce\@pacs + }% + \@ifx@empty\@keywords{}{% + \@keywords@produce\@keywords + }% + \par + \frontmatter@finalspace + \endgroup +\pagestyle{reprint} +}% + + +\long\def\make@footnotetext#1{% + \set@footnotefont + \set@footnotewidth + \@parboxrestore + \protected@edef\@currentlabel{% + \csname p@\@mpfn\endcsname\@thefnmark + }% + \color@begingroup + \@makefntext{% + \rule\z@\footnotesep\ignorespaces#1% + \@finalstrut\strutbox\vadjust{\vskip\z@skip}% + }% + \color@endgroup + \minipagefootnote@drop +}% + +\def\footnoterule{\dimen@ \skip \footins +\divide \dimen@ \tw@ \kern -\dimen@ \hrule width120pt\kern \dimen@} + +\advance\textheight 24pt + + +\def\ps@titlepage{ +\def\@oddhead{\hfill}\let\@evenhead\@oddhead +\def\@evenfoot{{\footnotesize\sf\ifodd\c@page\else\the\c@page\qquad\fi +J. Acoust. Soc. Am.\ \ /\ \ \today +\hfill +\@shorttitle \ifodd\c@page\qquad\the\c@page\fi}} +\let\@oddfoot\@evenfoot +} + + +\pagestyle{titlepage} +\thispagestyle{titlepage} +\fi + + +\def\etal{{\footnotesize\sffamily\itshape et al.}} + + + +%% to avoid an error, hope this doesn't cause problems... +\def\select@language#1{} + + +\let\saveenddocument\enddocument + +\def\enddocument{% +\listofchanges +\ifmanuscript\else +%\newpage +\phantomsection +\ \label{finalpage}%% to be able to hyperlink to final page +\fi +\eject +\saveenddocument +}% + + +\let\undefinedpagestyle\relax + + + +\def\preprint#1{\def\thepreprint{#1}} +\let\thepreprint\relax + +% get rid of error message +\ifauthoryear +\let\NAT@force@numbers\relax +\fi + +%%%%%%%%%%%% +\newcounter{multimedia} + +\long\def\multimedia#1#2{\vskip12pt\global\advance\c@multimedia by 1 +\phantomsection +{\leftskip18pt +\noindent\hskip-18pt\href{{#1}}{Mm.\ \the\c@multimedia.\ \ }% +\xdef\@currentlabel{\the\c@multimedia}% +#2\vskip12pt}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% bibliography, endnotes if authoryear + +\let\savethebibliography\thebibliography +\def\@theenmark{0} + +\ifauthoryear +\bibliographystyle{jasaauthyear2} +\def\bibhang{8pt} +\let\bibsection\relax +\def\thebibliography#1{\theendnotes\ +\savethebibliography{#1} +\global\advance\c@NAT@ctr by \@theenmark +} +\def\endthebibliography{ + \edef\@currentlabel{\arabic{NAT@ctr}}% + \label{LastBibItem}% +\relax} +\else +\bibliographystyle{jasanum2} +\def\@bibstyle{jasanum2}%apsrev4-1}% +\def\thebibliography#1{\savethebibliography{#1}\advance\parskip3pt\relax} +\def\endthebibliography{ \edef\@currentlabel{\arabic{NAT@ctr}}% + \label{LastBibItem}\relax} +\fi + + +\ifauthoryear +\usepackage{endnotes} +\def\enoteformat{\vskip3pt\rightskip=0pt \leftskip=3pt +\parindent=0pt +\leavevmode\llap{\hbox{$^{\@theenmark}$}}} + +\def\@makeenmark{\hbox{\expandafter\hyperlink{end\@theenmark}{$^{\@theenmark}$}}} + +\def\theendnotes{\immediate\closeout\@enotes \global\@enotesopenfalse + \begingroup + \makeatletter + \def\@doanenote##1##2>{\def\@theenmark{##1}\par\begingroup + \edef\@currentlabel{\csname p@endnote\endcsname\@theenmark} %DW +\hypertarget{end\@theenmark}{} + \enoteformat} + \def\@endanenote{\par\endgroup}% + \def\ETC.{\errmessage{Some long endnotes will be truncated; % + use BIGLATEX to avoid this}% + \def\ETC.{\relax}} + \enoteheading + \enotesize + \@input{\jobname.ent}% + \endgroup} + +\let\footnote\endnote +\fi + +\def\enoteheading{\vskip24pt} + +\def\notesname{} + +\widowpenalty10000 +\clubpenalty10000 + +\textfloatsep=12pt + +\def\dodoi#1{doi: \href{https://doi.org/#1}{\nolinkurl{#1}}} +\def\dourl#1{\href{http://#1}{\nolinkurl{#1}}} + + + + +\def\appendixname{APPENDIX} + + +\def\@appendixcntformat#1{\appendixname\ \csname +thesection\endcsname: }% + +\def\appendixsection{\x@startsection {section}{1}{\z@ }{0.8cm \@plus +1ex \@minus .2ex}{0.5cm} {\sectionfont}} + +%% this is a fix for people with hyperref older than 2011, to prevent an error +\expandafter\ifx\csname Hy@AlphNoErr\endcsname\relax +\def\Hy@AlphNoErr#1{\ifnum \value {#1}>26 Alph\number \value{#1} +\else \ifnum \value {#1}<1 Alph\number \value {#1} +\else \Alph {#1}\fi \fi}% +\fi + +\def\appendix{% +\let\@sectioncntformat\@appendixcntformat +\let\section\appendixsection +\@ifundefined{chapter}{\gdef \theHsection {\Hy@AlphNoErr {section}}} +{\gdef \theHchapter {\Hy@AlphNoErr {chapter}}} +\xdef \Hy@chapapp {\Hy@appendixstring }\HyOrg@appendix} + + +\def\x@startsection#1#2#3#4#5#6{% + \if@noskipsec \leavevmode \fi + \par + \@tempskipa #4\relax + \@afterindenttrue + \ifdim \@tempskipa <\z@ + \@tempskipa -\@tempskipa \@afterindentfalse + \fi + \if@nobreak + \everypar{}% + \else + \addpenalty\@secpenalty\addvspace\@tempskipa + \fi + \@ifstar + {\@ssect{#3}{#4}{#5}{#6}}% + {\@dblarg{\x@sect{#1}{#2}{#3}{#4}{#5}{#6}}}} + +\def\eatone#1{} + +\def\catchlabel#1{\gdef\savecatchlabel{\label{#1}}} + +\def\x@sect#1#2#3#4#5#6[#7]#8{% +\let\savecatchlabel\relax +\global\setbox0=\hbox{\let\label\catchlabel#8} + \ifnum #2>\c@secnumdepth + \let\@svsec\@empty + \else + \refstepcounter{#1}% + \protected@edef\@svsec{\@appendixcntformat{#1}\relax}% + \fi + \@tempskipa #5\relax + \ifdim \@tempskipa>\z@ + \begingroup + #6{% + \@hangfrom{\hskip #3\relax\@svsec +}% +%% make appendix title be uppercase: +{\expandafter\ifx\csname savecatchlabel\endcsname\relax +\else\let\label\eatone + \interlinepenalty \@M \uppercase{#8}\fi} +\@@par}% + \endgroup + \csname #1mark\endcsname{#7}% + \addcontentsline{toc}{#1}{% + \ifnum #2>\c@secnumdepth \else + \protect\numberline{\csname the#1\endcsname}% + \fi + #7}% + \else + \def\@svsechd{% + #6{\hskip #3\relax + \@svsec #8}% + \csname #1mark\endcsname{#7}% + \addcontentsline{toc}{#1}{% + \ifnum #2>\c@secnumdepth \else + \protect\numberline{\csname the#1\endcsname}% + \fi + #7}}% + \fi + \@xsect{#5} +\expandafter\ifx\csname savecatchlabel\endcsname\relax\else +\def\@currentlabelname{Appendix} +\savecatchlabel\fi +} + +\def\@sect@ltx#1#2#3#4#5#6[#7]#8{% + \@ifnum{#2>\c@secnumdepth}{% + \def\H@svsec{\phantomsection}% + \let\@svsec\@empty + }{% + \H@refstepcounter{#1}% + \def\H@svsec{% + \phantomsection + }% + \protected@edef\@svsec{{#1}}% + \@ifundefined{@#1cntformat}{% + \prepdef\@svsec\@seccntformat + }{% + \expandafter\prepdef + \expandafter\@svsec + \csname @#1cntformat\endcsname + }% + }% + \@tempskipa #5\relax + \@ifdim{\@tempskipa>\z@}{% + \begingroup + \interlinepenalty \@M + #6{% + \@ifundefined{@hangfrom@#1}{\@hang@from}{\csname @hangfrom@#1\endcsname}% + {\hskip#3\relax\H@svsec}{\@svsec}{#8}% + }% + \@@par + \endgroup + \@ifundefined{#1mark}{\@gobble}{\csname #1mark\endcsname}{#7}% + \addcontentsline{toc}{#1}{% + \@ifnum{#2>\c@secnumdepth}{% + \protect\numberline{}% + }{% + \protect\numberline{\csname the#1\endcsname}% + }% + #8}% + }{% + \def\@svsechd{% + #6{% + \@ifundefined{@runin@to@#1}{\@runin@to}{\csname @runin@to@#1\endcsname}% +%% added period below for paragraph + {\hskip#3\relax\H@svsec}{\@svsec}{#8.}% + }% + \@ifundefined{#1mark}{\@gobble}{\csname #1mark\endcsname}{#7}% + \addcontentsline{toc}{#1}{% + \@ifnum{#2>\c@secnumdepth}{% + \protect\numberline{}% + }{% + \protect\numberline{\csname the#1\endcsname}% + }% + #8}% + }% + }% + \@xsect{#5}% +}% + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% This is to make ) after email but not after affiliation markers. + +\def\frontmatter@makefnmark{% + \@textsuperscript{% + \normalfont\@thefnmark%( +\ifemail)\global\emailfalse\fi% +}% +}% + +\newif\ifemail +\renewcommand*\email[1][]{\begingroup\global\emailtrue\sanitize@url\@email{#1}}% + +\def\@email#1#2{% + \endgroup + \@AF@join{#1%$^{)}$ +\href{mailto:#2}{#2}}% +}% + +%% Authors should use \citep. This will make the results the same +%% if they forget. + +\let\cite\citep +\advance\belowcaptionskip12pt + +\def\endruledtabular{\vskip9pt} + +\newdimen\reprintcolumnwidth +\global\reprintcolumnwidth=246pt + +%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\nofloatfigure{\@ifnextchar[\xnofloatfigure\ynofloatfigure} + +\def\xnofloatfigure[#1]{\vskip12pt\bgroup +\global\advance\c@figure by 1 +\def\@captype{figure}% +\def\@currentlabel{\the\c@figure}% +\def\@currentlabelname{figure} +\def\@currentHref{figure*.\the\c@figure} +\expandafter \hyper@@anchor \expandafter {\@currentHref }{\relax }{} +%% +\long\def\caption##1{\vskip1sp\leftskip=0pt\relax\rightskip=0pt\relax +\parfillskip=0pt plus 1fil +\small +\vskip\abovecaptionskip\noindent +FIG.~\the\c@figure.\ ##1\vskip\belowcaptionskip}% +\noindent\ignorespaces +} + +\def\ynofloatfigure{\vskip12pt\bgroup +\global\advance\c@figure by 1 +\def\@captype{figure}% +\def\@currentlabel{\the\c@figure}% +\def\@currentlabelname{figure} +\def\@currentHref{figure*.\the\c@figure} +\expandafter \hyper@@anchor \expandafter {\@currentHref }{\relax }{} +%% +\long\def\caption##1{\vskip1sp\leftskip=0pt\relax\rightskip=0.0pt +\relax\parfillskip=0pt plus 1fil +\small\vskip\abovecaptionskip\noindent +FIG.~\the\c@figure.\ ##1\vskip\belowcaptionskip}% +\noindent\ignorespaces +} + +\def\endnofloatfigure{\egroup\vskip12pt} + +\newcommand*{\citen}[1]{% + \begingroup% + \romannumeral-`\x % remove space at the beginning of \setcitestyle + \setcitestyle{numbers}% + \cite{#1}% + \endgroup% +} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% This is to make ) after thanks but not after affiliation or email markers. + +\def\frontmatter@makefnmark{% + \@textsuperscript{% + \normalfont\@thefnmark%( +\ifthanks)%\global\thanksfalse +\fi% +}% +}% + +\newif\ifthanks +\renewcommand*\thanks[1][]{\begingroup +\global\thankstrue\sanitize@url\@thanks{#1}}% + +%% This is at the bottom of the page +\def\@thanks#1#2{\endgroup + \@AF@join{#1%$^{)}$ +{#2}}% +} + +\def\altaffiliation#1{\thanks{#1}} +\def\altaffil#1{\thanks{#1}} + + +\endinput + +Change Log +Sept 25, 2019 +1) Change revtex4-2 to 4-1 to accomodate EM uptake. +Probably temporary + +August/September 16, 2019 + +1) revtex4.2 changed to revtex4-2 + +2) \def\dodoi#1{doi: \href{http://dx.doi.org/#1}{\nolinkurl{#1}}} +changed to +\def\dodoi#1{doi: \href{https://doi.org/#1}{\nolinkurl{#1}}} +to match the RevTeX4-2 convention. + +3) New commands: \begin{nofloatfigure}...\end{nofloatfigure} +which allows long captions to continue onto next page or column. +The figure will print whereever it is typed in. Label will be +hyperlinked as it would with +\begin{figure}\caption{\label{text}}\end{figure} + +4) sidebysidefigure now uses: \sidebysidefigure{#1}{#2}/{#3}{#4} + +5) Fixes to all the figure commands so that we can label and +reference separate parts of the figure, ie, figure 1(a) etc. +Includes \narrowcaption, \boxedfig, \fig, \columnfig, +\leftfig, \rightfig, \rotatefig, \sidebysidefigures. + +6) Added \citen{} to make numerical citation >> not << be +superscripted. + +7) Long figure caption, accomodated with \begin{nofloatfigure}... +\end{nofloatfigure} which prints where it is typed in and +will continue over columns or pages as necessary. +References will be hyperlinked as they would with +\begin{figure}\caption{\label{text}}\end{figure} + +8) Figline now allows labels, entered after \fig{}.. +\figline{\fig{fig here}{letter}\label{figlabel}} +This will allow authors to label +and reference separate parts of the figure, ie, figure 1(a) etc. +Includes \narrowcaption, \boxedfig, \fig, \columnfig, +\leftfig, \rightfig, \rotatefig, \sidebysidefigures. + +9)Track changes, fixed bug in \deleted[]{}, and made deleted +work correctly in abstract. + +Tip: Here's how to embed citations within \replaced{}{}: +\replaced{\hbox{\citep{xyz}}{\hbox{\citep{zyx}} + +10) Changed \setcitestyle to include \yysep={,}: +\setcitestyle{authoryear,round,aysep={,},yysep={,},citesep={;}} +which makes comma appear between multiple mentions of author in +single citation, ie +(Jones, A., 2017a,b,c,d). (avoids superscripted commas when not +using authref style.) + +Also, when using jasaauthyear2.bst, we were getting an extra +space before the final period when formatting Technical Report +in bibliography. Fixed. + +11) New field for jasanum2.bst, jasaauthyear2.bst . +newspaper entry, matching specs for each. +Samples found in bibsamp1 and bibsamp2. + + +12)Problem with label in appendix section head, fixed. + +13) Change to jasanum2.bst, in response to author suggestion, +so there will not be a problem when field entry is not found. + +14) Added \altaffiliation{}, will work like Jasa-EL + +Use like this: +\affiliation{Department1, University1, City, State ZipCode, +Country}\altaffil{Alternate Department, University, City, State +ZipCode, Country} + +15) Changes to .bst files: + +A) Changes to jasaauthyear2.bst in response to bibsamp1-feedback: + +Added `reprinted' to format.in.ed.booktitle + +Got rid of 2001 in sampbib.bib to fix ISO4020 bib item + +Changed note field in sampbib.bib in K. Smith entry, to simply: in press + +Changed note field in sampbib.bib for A. Tolstoy to end the same as Smith + +B) Changes to jasanum2.bst in response to bibsamp2-feedback + + Change to FUNCTION {output.nonnull} to accomodate empty fields. + Change to FUNCTION {standards} to add comma after author. + Checked format of newspaper entries. + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/inst/rmarkdown/templates/jasa/skeleton/figsamp.jpg b/inst/rmarkdown/templates/jasa/skeleton/figsamp.jpg new file mode 100755 index 000000000..3e6ccc835 Binary files /dev/null and b/inst/rmarkdown/templates/jasa/skeleton/figsamp.jpg differ diff --git a/inst/rmarkdown/templates/jasa/skeleton/jasaauthyear2.bst b/inst/rmarkdown/templates/jasa/skeleton/jasaauthyear2.bst new file mode 100755 index 000000000..4a9da70fe --- /dev/null +++ b/inst/rmarkdown/templates/jasa/skeleton/jasaauthyear2.bst @@ -0,0 +1,2345 @@ + +%% Changes added by Amy Hendrickson, TeXnology Inc, +%% Oct 10, 2019 +%% Change to newspaper function +%% +%% Sept 8, 2019 +%% added newspaper as a heading, formatted to specs. +%% Added `reprinted' to format.in.ed.booktitle + + +%% April 7, 2017, June 2017, July 18, 2017 +%% Article: '', changed to ,'' , added optional number after volume, not bold, +%% changes to incollection, including adding new field: transnote, to be +%% entered after title and before booktitle. +%% inproceedings, moved year to immediately after author, made other changes. +%% +%% +%% This is file `jasaauthyear.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% merlin.mbs (with options: `head,ay,nat,nm-rev,keyxyr,dt-beg,yr-par,yrp-per,dtbf,note-yr,tit-qq,qx,jttl-rm,thtit-a,vol-bf,vnum-x,volp-com,num-xser,jnm-x,pub-par,pre-edn,edby,blk-com,ppx,ed,xedn,jabr,etal-it,url,url-blk,bibinfo,nfss,{}') +%% physjour.mbs (with options: `ay,nat,nm-rev,keyxyr,dt-beg,yr-par,yrp-per,dtbf,note-yr,tit-qq,qx,jttl-rm,thtit-a,vol-bf,vnum-x,volp-com,num-xser,jnm-x,pub-par,pre-edn,edby,blk-com,ppx,ed,xedn,jabr,etal-it,url,url-blk,bibinfo,nfss,{}') +%% geojour.mbs (with options: `ay,nat,nm-rev,keyxyr,dt-beg,yr-par,yrp-per,dtbf,note-yr,tit-qq,qx,jttl-rm,thtit-a,vol-bf,vnum-x,volp-com,num-xser,jnm-x,pub-par,pre-edn,edby,blk-com,ppx,ed,xedn,jabr,etal-it,url,url-blk,bibinfo,nfss,{}') +%% photjour.mbs (with options: `ay,nat,nm-rev,keyxyr,dt-beg,yr-par,yrp-per,dtbf,note-yr,tit-qq,qx,jttl-rm,thtit-a,vol-bf,vnum-x,volp-com,num-xser,jnm-x,pub-par,pre-edn,edby,blk-com,ppx,ed,xedn,jabr,etal-it,url,url-blk,bibinfo,nfss,{}') +%% merlin.mbs (with options: `tail,ay,nat,nm-rev,keyxyr,dt-beg,yr-par,yrp-per,dtbf,note-yr,tit-qq,qx,jttl-rm,thtit-a,vol-bf,vnum-x,volp-com,num-xser,jnm-x,pub-par,pre-edn,edby,blk-com,ppx,ed,xedn,jabr,etal-it,url,url-blk,bibinfo,nfss,{}') +%% ---------------------------------------- +%% *** JASA Author-year *** +%% +%% Copyright 1994-2002 Patrick W Daly + % =============================================================== + % IMPORTANT NOTICE: + % This bibliographic style (bst) file has been generated from one or + % more master bibliographic style (mbs) files, listed above. + % + % This generated file 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. + % =============================================================== + % Name and version information of the main mbs file: + % \ProvidesFile{merlin.mbs}[2002/10/21 4.05 (PWD, AO, DPC)] + % For use with BibTeX version 0.99a or later + %------------------------------------------------------------------- + % This bibliography style file is intended for texts in ENGLISH + % This is an author-year citation style bibliography. As such, it is + % non-standard LaTeX, and requires a special package file to function properly. + % Such a package is natbib.sty by Patrick W. Daly + % The form of the \bibitem entries is + % \bibitem[Jones et al.(1990)]{key}... + % \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}... + % The essential feature is that the label (the part in brackets) consists + % of the author names, as they should appear in the citation, with the year + % in parentheses following. There must be no space before the opening + % parenthesis! + % With natbib v5.3, a full list of authors may also follow the year. + % In natbib.sty, it is possible to define the type of enclosures that is + % really wanted (brackets or parentheses), but in either case, there must + % be parentheses in the label. + % The \cite command functions as follows: + % \citet{key} ==>> Jones et al. (1990) + % \citet*{key} ==>> Jones, Baker, and Smith (1990) + % \citep{key} ==>> (Jones et al., 1990) + % \citep*{key} ==>> (Jones, Baker, and Smith, 1990) + % \citep[chap. 2]{key} ==>> (Jones et al., 1990, chap. 2) + % \citep[e.g.][]{key} ==>> (e.g. Jones et al., 1990) + % \citep[e.g.][p. 32]{key} ==>> (e.g. Jones et al., p. 32) + % \citeauthor{key} ==>> Jones et al. + % \citeauthor*{key} ==>> Jones, Baker, and Smith + % \citeyear{key} ==>> 1990 + %--------------------------------------------------------------------- + +ENTRY + { address + author + booktitle + chapter + date + description + doi + edition + editor + howpublished + institution + journal + key + language + month + note + number + organization + pages + publisher + school + series + transnote + title + type + url + volume + year + } + {} + { label extra.label sort.label short.list } +INTEGERS { output.state before.all mid.sentence after.sentence after.block } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} +STRINGS { s t} + +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION {new.output.nonnull} +{ 's := + output.state mid.sentence = +%% changed to get rid of comma before (publisher...) + { " " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {xoutput} +{ duplicate$ empty$ + 'pop$ + 'new.output.nonnull + if$ +} + +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +FUNCTION {xoutput.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'new.output.nonnull + if$ +} + +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {add.blank} +{ " " * before.all 'output.state := +} + +FUNCTION {date.block} +{ + new.sentence +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {non.stop} +{ duplicate$ + "}" * add.period$ + #-1 #1 substring$ "." = +} + +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} +FUNCTION {bolden} +{ duplicate$ empty$ + { pop$ "" } + { "\textbf{" swap$ * "}" * } + if$ +} +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {vol.tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "" } + { "" } + if$ + swap$ +} + +FUNCTION {capitalize} +{ "u" change.case$ "t" change.case$ } + +FUNCTION {space.word} +{ " " swap$ * " " * } + % Here are the language-specific definitions for explicit words. + % Each function has a name bbl.xxx where xxx is the English word. + % The language selected here is ENGLISH +FUNCTION {bbl.and} +{ "and"} + +FUNCTION {bbl.etal} +{ "et~al." } + +FUNCTION {bbl.editors} +{ "eds." } + +FUNCTION {bbl.editor} +{ "ed." } + +FUNCTION {bbl.edby} +{ "edited by" } + +FUNCTION {bbl.edition} +{ "ed." } + +FUNCTION {bbl.volume} +{""} + +FUNCTION {xbbl.volume} +{"Vol. "} + +FUNCTION {bbl.of} +{ "of" } + +FUNCTION {bbl.number} +{ "number" } + +FUNCTION {bbl.nr} +{ "no." } + +FUNCTION {bbl.in} +{ "in" } + +FUNCTION {bbl.reprintedin} +{ "reprinted in" } + +FUNCTION {bbl.pages} +{ "pp." } + +FUNCTION {bbl.page} +{ "p." } + +FUNCTION {bbl.chapter} +{ "Chap." } + +FUNCTION {bbl.techrep} +{ "Technical Report" } + +FUNCTION {bbl.mthesis} +{ "Master's thesis" } + +FUNCTION {bbl.phdthesis} +{ "Ph.D. thesis" } + +MACRO {jan} {"January"} + +MACRO {feb} {"February"} + +MACRO {mar} {"March"} + +MACRO {apr} {"April"} + +MACRO {may} {"May"} + +MACRO {jun} {"June"} + +MACRO {jul} {"July"} + +MACRO {aug} {"August"} + +MACRO {sep} {"September"} + +MACRO {oct} {"October"} + +MACRO {nov} {"November"} + +MACRO {dec} {"December"} + + %------------------------------------------------------------------- + % Begin module: + % \ProvidesFile{physjour.mbs}[2002/01/14 2.2 (PWD)] +MACRO {aa}{"Astron. \& Astrophys."} +MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."} +MACRO {aj} {"Astron. J."} +MACRO {aph} {"Acta Phys."} +MACRO {advp} {"Adv. Phys."} +MACRO {ajp} {"Amer. J. Phys."} +MACRO {ajm} {"Amer. J. Math."} +MACRO {amsci} {"Amer. Sci."} +MACRO {anofd} {"Ann. Fluid Dyn."} +MACRO {am} {"Ann. Math."} +MACRO {ap} {"Ann. Phys. (NY)"} +MACRO {adp} {"Ann. Phys. (Leipzig)"} +MACRO {ao} {"Appl. Opt."} +MACRO {apl} {"Appl. Phys. Lett."} +MACRO {app} {"Astroparticle Phys."} +MACRO {apj} {"Astrophys. J."} +MACRO {apjsup} {"Astrophys. J. Suppl."} +MACRO {apss} {"Astrophys. Space Sci."} +MACRO {araa} {"Ann. Rev. Astron. Astrophys."} +MACRO {baas} {"Bull. Amer. Astron. Soc."} +MACRO {baps} {"Bull. Amer. Phys. Soc."} +MACRO {cmp} {"Comm. Math. Phys."} +MACRO {cpam} {"Commun. Pure Appl. Math."} +MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"} +MACRO {cpc} {"Comp. Phys. Comm."} +MACRO {cqg} {"Class. Quant. Grav."} +MACRO {cra} {"C. R. Acad. Sci. A"} +MACRO {fed} {"Fusion Eng. \& Design"} +MACRO {ft} {"Fusion Tech."} +MACRO {grg} {"Gen. Relativ. Gravit."} +MACRO {ieeens} {"IEEE Trans. Nucl. Sci."} +MACRO {ieeeps} {"IEEE Trans. Plasma Sci."} +MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"} +MACRO {ip} {"Infrared Phys."} +MACRO {irp} {"Infrared Phys."} +MACRO {jap} {"J. Appl. Phys."} +MACRO {jasa} {"J. Acoust. Soc. America"} +MACRO {jcp} {"J. Comp. Phys."} +MACRO {jetp} {"Sov. Phys.--JETP"} +MACRO {jfe} {"J. Fusion Energy"} +MACRO {jfm} {"J. Fluid Mech."} +MACRO {jmp} {"J. Math. Phys."} +MACRO {jne} {"J. Nucl. Energy"} +MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."} +MACRO {jnm} {"J. Nucl. Mat."} +MACRO {jpc} {"J. Phys. Chem."} +MACRO {jpp} {"J. Plasma Phys."} +MACRO {jpsj} {"J. Phys. Soc. Japan"} +MACRO {jsi} {"J. Sci. Instrum."} +MACRO {jvst} {"J. Vac. Sci. \& Tech."} +MACRO {nat} {"Nature"} +MACRO {nature} {"Nature"} +MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"} +MACRO {nf} {"Nucl. Fusion"} +MACRO {nim} {"Nucl. Inst. \& Meth."} +MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."} +MACRO {np} {"Nucl. Phys."} +MACRO {npb} {"Nucl. Phys. B"} +MACRO {nt/f} {"Nucl. Tech./Fusion"} +MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"} +MACRO {inc} {"Nuovo Cimento"} +MACRO {nc} {"Nuovo Cimento"} +MACRO {pf} {"Phys. Fluids"} +MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."} +MACRO {pfb} {"Phys. Fluids B: Plasma Phys."} +MACRO {pl} {"Phys. Lett."} +MACRO {pla} {"Phys. Lett. A"} +MACRO {plb} {"Phys. Lett. B"} +MACRO {prep} {"Phys. Rep."} +MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"} +MACRO {pp} {"Phys. Plasmas"} +MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"} +MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"} +MACRO {prl} {"Phys. Rev. Lett."} +MACRO {pr} {"Phys. Rev."} +MACRO {physrev} {"Phys. Rev."} +MACRO {pra} {"Phys. Rev. A"} +MACRO {prb} {"Phys. Rev. B"} +MACRO {prc} {"Phys. Rev. C"} +MACRO {prd} {"Phys. Rev. D"} +MACRO {pre} {"Phys. Rev. E"} +MACRO {ps} {"Phys. Scripta"} +MACRO {procrsl} {"Proc. Roy. Soc. London"} +MACRO {rmp} {"Rev. Mod. Phys."} +MACRO {rsi} {"Rev. Sci. Inst."} +MACRO {science} {"Science"} +MACRO {sciam} {"Sci. Am."} +MACRO {sam} {"Stud. Appl. Math."} +MACRO {sjpp} {"Sov. J. Plasma Phys."} +MACRO {spd} {"Sov. Phys.--Doklady"} +MACRO {sptp} {"Sov. Phys.--Tech. Phys."} +MACRO {spu} {"Sov. Phys.--Uspeki"} +MACRO {st} {"Sky and Telesc."} + % End module: physjour.mbs + %------------------------------------------------------------------- + % Begin module: + % \ProvidesFile{geojour.mbs}[2002/07/10 2.0h (PWD)] +MACRO {aisr} {"Adv. Space Res."} +MACRO {ag} {"Ann. Geophys."} +MACRO {anigeo} {"Ann. Geofis."} +MACRO {angl} {"Ann. Glaciol."} +MACRO {andmet} {"Ann. d. Meteor."} +MACRO {andgeo} {"Ann. d. Geophys."} +MACRO {andphy} {"Ann. Phys.-Paris"} +MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."} +MACRO {atph} {"Atm\'osphera"} +MACRO {aao} {"Atmos. Ocean"} +MACRO {ass}{"Astrophys. Space Sci."} +MACRO {atenv} {"Atmos. Environ."} +MACRO {aujag} {"Aust. J. Agr. Res."} +MACRO {aumet} {"Aust. Meteorol. Mag."} +MACRO {blmet} {"Bound.-Lay. Meteorol."} +MACRO {bams} {"Bull. Amer. Meteorol. Soc."} +MACRO {cch} {"Clim. Change"} +MACRO {cdyn} {"Clim. Dynam."} +MACRO {cbul} {"Climatol. Bull."} +MACRO {cap} {"Contrib. Atmos. Phys."} +MACRO {dsr} {"Deep-Sea Res."} +MACRO {dhz} {"Dtsch. Hydrogr. Z."} +MACRO {dao} {"Dynam. Atmos. Oceans"} +MACRO {eco} {"Ecology"} +MACRO {empl}{"Earth, Moon and Planets"} +MACRO {envres} {"Environ. Res."} +MACRO {envst} {"Environ. Sci. Technol."} +MACRO {ecms} {"Estuarine Coastal Mar. Sci."} +MACRO {expa}{"Exper. Astron."} +MACRO {geoint} {"Geofis. Int."} +MACRO {geopub} {"Geofys. Publ."} +MACRO {geogeo} {"Geol. Geofiz."} +MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."} +MACRO {gfd} {"Geophys. Fluid Dyn."} +MACRO {geomag} {"Geophys. Mag."} +MACRO {georl} {"Geophys. Res. Lett."} +MACRO {grl} {"Geophys. Res. Lett."} +MACRO {ga} {"Geophysica"} +MACRO {gs} {"Geophysics"} +MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."} +MACRO {ijawp} {"Int. J. Air Water Pollut."} +MACRO {ijc} {"Int. J. Climatol."} +MACRO {ijrs} {"Int. J. Remote Sens."} +MACRO {jam} {"J. Appl. Meteorol."} +MACRO {jaot} {"J. Atmos. Ocean. Technol."} +MACRO {jatp} {"J. Atmos. Terr. Phys."} +MACRO {jastp} {"J. Atmos. Solar-Terr. Phys."} +MACRO {jce} {"J. Climate"} +MACRO {jcam} {"J. Climate Appl. Meteor."} +MACRO {jcm} {"J. Climate Meteor."} +MACRO {jcy} {"J. Climatol."} +MACRO {jgr} {"J. Geophys. Res."} +MACRO {jga} {"J. Glaciol."} +MACRO {jh} {"J. Hydrol."} +MACRO {jmr} {"J. Mar. Res."} +MACRO {jmrj} {"J. Meteor. Res. Japan"} +MACRO {jm} {"J. Meteor."} +MACRO {jpo} {"J. Phys. Oceanogr."} +MACRO {jra} {"J. Rech. Atmos."} +MACRO {jaes} {"J. Aeronaut. Sci."} +MACRO {japca} {"J. Air Pollut. Control Assoc."} +MACRO {jas} {"J. Atmos. Sci."} +MACRO {jmts} {"J. Mar. Technol. Soc."} +MACRO {jmsj} {"J. Meteorol. Soc. Japan"} +MACRO {josj} {"J. Oceanogr. Soc. Japan"} +MACRO {jwm} {"J. Wea. Mod."} +MACRO {lao} {"Limnol. Oceanogr."} +MACRO {mwl} {"Mar. Wea. Log"} +MACRO {mau} {"Mausam"} +MACRO {meteor} {"``Meteor'' Forschungsergeb."} +MACRO {map} {"Meteorol. Atmos. Phys."} +MACRO {metmag} {"Meteor. Mag."} +MACRO {metmon} {"Meteor. Monogr."} +MACRO {metrun} {"Meteor. Rundsch."} +MACRO {metzeit} {"Meteor. Z."} +MACRO {metgid} {"Meteor. Gidrol."} +MACRO {mwr} {"Mon. Weather Rev."} +MACRO {nwd} {"Natl. Weather Dig."} +MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."} +MACRO {npg} {"Nonlin. Proc. Geophys."} +MACRO {om} {"Oceanogr. Meteorol."} +MACRO {ocac} {"Oceanol. Acta"} +MACRO {oceanus} {"Oceanus"} +MACRO {paleoc} {"Paleoceanography"} +MACRO {pce} {"Phys. Chem. Earth"} +MACRO {pmg} {"Pap. Meteor. Geophys."} +MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."} +MACRO {physzeit} {"Phys. Z."} +MACRO {pps} {"Planet. Space Sci."} +MACRO {pss} {"Planet. Space Sci."} +MACRO {pag} {"Pure Appl. Geophys."} +MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."} +MACRO {quatres} {"Quat. Res."} +MACRO {rsci} {"Radio Sci."} +MACRO {rse} {"Remote Sens. Environ."} +MACRO {rgeo} {"Rev. Geophys."} +MACRO {rgsp} {"Rev. Geophys. Space Phys."} +MACRO {rdgeo} {"Rev. Geofis."} +MACRO {revmeta} {"Rev. Meteorol."} +MACRO {sgp}{"Surveys in Geophys."} +MACRO {sp} {"Solar Phys."} +MACRO {ssr} {"Space Sci. Rev."} +MACRO {tellus} {"Tellus"} +MACRO {tac} {"Theor. Appl. Climatol."} +MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"} +MACRO {wrr} {"Water Resour. Res."} +MACRO {weather} {"Weather"} +MACRO {wafc} {"Weather Forecast."} +MACRO {ww} {"Weatherwise"} +MACRO {wmob} {"WMO Bull."} +MACRO {zeitmet} {"Z. Meteorol."} + % End module: geojour.mbs + %------------------------------------------------------------------- + % Begin module: + % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)] + +MACRO {appopt} {"Appl. Opt."} +MACRO {bell} {"Bell Syst. Tech. J."} +MACRO {ell} {"Electron. Lett."} +MACRO {jasp} {"J. Appl. Spectr."} +MACRO {jqe} {"IEEE J. Quantum Electron."} +MACRO {jlwt} {"J. Lightwave Technol."} +MACRO {jmo} {"J. Mod. Opt."} +MACRO {josa} {"J. Opt. Soc. America"} +MACRO {josaa} {"J. Opt. Soc. Amer.~A"} +MACRO {josab} {"J. Opt. Soc. Amer.~B"} +MACRO {jdp} {"J. Phys. (Paris)"} +MACRO {oc} {"Opt. Commun."} +MACRO {ol} {"Opt. Lett."} +MACRO {phtl} {"IEEE Photon. Technol. Lett."} +MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."} +MACRO {sse} {"Solid-State Electron."} +MACRO {sjot} {"Sov. J. Opt. Technol."} +MACRO {sjqe} {"Sov. J. Quantum Electron."} +MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."} +MACRO {stph} {"Sov. Phys.--Techn. Phys."} +MACRO {stphl} {"Sov. Techn. Phys. Lett."} +MACRO {vr} {"Vision Res."} +MACRO {zph} {"Z. f. Physik"} +MACRO {zphb} {"Z. f. Physik~B"} +MACRO {zphd} {"Z. f. Physik~D"} + +MACRO {CLEO} {"CLEO"} +MACRO {ASSL} {"Adv. Sol.-State Lasers"} +MACRO {OSA} {"OSA"} + % End module: photjour.mbs +%% Copyright 1994-2002 Patrick W Daly +MACRO {acmcs} {"ACM Comput. Surv."} + +MACRO {acta} {"Acta Inf."} + +MACRO {cacm} {"Commun. ACM"} + +MACRO {ibmjrd} {"IBM J. Res. Dev."} + +MACRO {ibmsj} {"IBM Syst.~J."} + +MACRO {ieeese} {"IEEE Trans. Software Eng."} + +MACRO {ieeetc} {"IEEE Trans. Comput."} + +MACRO {ieeetcad} + {"IEEE Trans. Comput. Aid. Des."} + +MACRO {ipl} {"Inf. Process. Lett."} + +MACRO {jacm} {"J.~ACM"} + +MACRO {jcss} {"J.~Comput. Syst. Sci."} + +MACRO {scp} {"Sci. Comput. Program."} + +MACRO {sicomp} {"SIAM J. Comput."} + +MACRO {tocs} {"ACM Trans. Comput. Syst."} + +MACRO {tods} {"ACM Trans. Database Syst."} + +MACRO {tog} {"ACM Trans. Graphic."} + +MACRO {toms} {"ACM Trans. Math. Software"} + +MACRO {toois} {"ACM Trans. Office Inf. Syst."} + +MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."} + +MACRO {tcs} {"Theor. Comput. Sci."} + +FUNCTION {bibinfo.check} +{ swap$ + duplicate$ missing$ + { + pop$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ pop$ + } + { swap$ + "\bibinfo{" swap$ * "}{" * swap$ * "}" * + } + if$ + } + if$ +} + +FUNCTION {bibinfo.warn} +{ swap$ + duplicate$ missing$ + { + swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ "empty " swap$ * " in " * cite$ * warning$ + } + { swap$ + "\bibinfo{" swap$ * "}{" * swap$ * "}" * + } + if$ + } + if$ +} + + +FUNCTION {format.url} +{ url empty$ + { "" } + { "\dourl{" url * "}" * } + if$ +} + +FUNCTION {format.doi} +{ doi empty$ + { "" } + { "\dodoi{" doi * "}" * } + if$ +} + +STRINGS { bibinfo} +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}{, jj}{, f.}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + numnames #2 > + { "" * }%% <<== was empty + 'skip$ + if$ + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal emphasize * + } + {", " * % <<== this line wasn't here + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.names.ed} +{ + 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{f.~}{vv~}{ll}{, jj}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + numnames #2 > + { "," * } + 'skip$ + if$ + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + + " " * bbl.etal emphasize * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} + +FUNCTION {format.key} +{ empty$ + { key field.or.null } + { "" } + if$ +} + +FUNCTION {format.misckey} +{ empty$ + { key field.or.null } + { ", " } + if$ +} + + + + +FUNCTION {format.authors} +{ author "author" format.names +} + +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { + "," * + " " * + get.bbl.editor + * + } + if$ +} + +FUNCTION {format.note} +{ + note empty$ + { "" } + { note #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + } + if$ +} + +FUNCTION {format.transnote} +{ + transnote empty$ + { "" } + { transnote #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + transnote #2 global.max$ substring$ * "transnote" bibinfo.check + ";" *} + if$ +} + +FUNCTION {format.parentransnote} +{ + transnote empty$ + { "" } + {"(" * transnote #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + transnote #2 global.max$ substring$ * "transnote" bibinfo.check +")" * } + if$ +} + + +FUNCTION {format.noparentitle} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + "\plainquote{" swap$ * +%% ++ +%% "}, " * + "} " * + } + if$ +} + + + +FUNCTION {format.transtitle} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + "\plainquote{" swap$ * +%% ++ + "} " * + } + if$ +} + +FUNCTION {end.quote.title} +{ title empty$ + 'skip$ + { before.all 'output.state := } + if$ +} +FUNCTION {format.full.names} +{'s := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal emphasize * + } + { + numnames #2 > + { "," * } + 'skip$ + if$ + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.editor.key.full} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {author.key.full} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {editor.key.full} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ +} + +FUNCTION {make.full.names} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.full + { type$ "proceedings" = + 'editor.key.full + 'author.key.full + if$ + } + if$ +} + +FUNCTION {format.language} +{ language "language" format.names +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[{" write$ + label write$ + ")" make.full.names duplicate$ short.list = + { pop$ } + { * } + if$ + "}]{" * write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +FUNCTION {n.dashify} +{ + 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {word.in} +{ bbl.in + " " * } + +FUNCTION {reprintword.in} +{ bbl.reprintedin + " " * } + +FUNCTION {format.date} +{ year "year" bibinfo.check duplicate$ empty$ + { + } + 'skip$ + if$ + bolden + extra.label * + before.all 'output.state := + " (" swap$ * ")" * +} + +FUNCTION {format.description} +{ description "description" bibinfo.check duplicate$ empty$ + { + } + 'skip$ + if$ + extra.label * + before.all 'output.state := + " ``" swap$ * ",'' " * +} + +FUNCTION {format.misc.date} +{ year "year" bibinfo.check duplicate$ empty$ + { + } + 'skip$ + if$ + bolden + extra.label * + before.all 'output.state := + "" swap$ * +} + +FUNCTION {format.btitle} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + emphasize + } + if$ +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { bbl.volume volume vol.tie.or.space.prefix +bolden "volume" bibinfo.check * * + series "series" bibinfo.check + duplicate$ empty$ 'pop$ + { swap$ bbl.of space.word * swap$ + emphasize * } + if$ + "volume and number" number either.or.check + } + if$ +} + +FUNCTION {format.bvolume.inpro} +{ volume empty$ + { "" } +{xbbl.volume volume * +} + if$ +} + + +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { series empty$ + { number "number" bibinfo.check } + { output.state mid.sentence = + { bbl.number } + { bbl.number capitalize } + if$ + number tie.or.space.prefix "number" bibinfo.check * * + bbl.in space.word * + series "series" bibinfo.check * + } + if$ + } + if$ + } + { "" } + if$ +} + +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { + output.state mid.sentence = + { "l" } + { "t" } + if$ change.case$ + "edition" bibinfo.check + " " * bbl.edition * + } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { duplicate$ multi.page.check + { + n.dashify + } + { + } + if$ + "pages" bibinfo.check + } + if$ +} +FUNCTION {format.journal.pages} +{ pages duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ + { pop$ pop$ format.pages } + { + ", " * + swap$ + n.dashify + "pages" bibinfo.check + * + } + if$ + } + if$ +} +%% ++ +FUNCTION {format.vol.num.pages} +{ volume field.or.null +bolden + number empty$ + 'skip$ + { "(" number * ")" * * + volume empty$ + { }% + 'skip$ + if$ + } + if$ +format.journal.pages + } + + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + + + +FUNCTION {format.booktitle} +{ + booktitle "booktitle" bibinfo.check + emphasize +} + +FUNCTION {format.in.ed.booktitle} +{ format.booktitle duplicate$ empty$ 'skip$ + { + editor "editor" format.names.ed duplicate$ empty$ 'pop$ + { + bbl.edby + " " * swap$ * + swap$ + "," * + " " * swap$ + * } + if$ + "in " swap$ * + } + if$ +} + +FUNCTION {format.thesis.type} +{ type duplicate$ empty$ + 'pop$ + { swap$ pop$ + "t" change.case$ "type" bibinfo.check + } + if$ +} + +FUNCTION {format.title} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + "\enquote{" swap$ * + "} " * + } + if$ +} + +FUNCTION {format.tr.number} +{ number "number" bibinfo.check + type duplicate$ empty$ + { pop$ bbl.techrep } + 'skip$ + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ "t" change.case$ } + { tie.or.space.prefix * * } + if$ +} +FUNCTION {format.article.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} + +%% +++ New and very difficult: +FUNCTION {format.book.pages} +{ pages duplicate$ empty$ 'skip$ + { duplicate$ multi.page.check + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + } + if$ +} + +FUNCTION {format.book.crossref} +{ volume duplicate$ empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + pop$ word.in + } + { bbl.volume + swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word * + } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {format.incoll.inproc.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} + +FUNCTION {format.incollection.chapter.pages} +{ chapter empty$ + 'format.book.pages + { type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + pages empty$ + 'skip$ + {", " * format.book.pages * +} + if$ + } + if$ +} + +FUNCTION {format.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { + add.blank "(" * + t empty$ + { address "address" bibinfo.check * + } + { t * + address empty$ + 'skip$ + { ", " * address "address" bibinfo.check * } + if$ + } + if$ + ")" * + } + if$ +} + +%%+=+ +FUNCTION {format.in.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { +%% this line puts in too many commas +% add.blank ", " * + t empty$ + { address "address" bibinfo.check * + } + { t * + address empty$ + 'skip$ +%% not this + { ", " * address "address" bibinfo.check * } + if$ + } + if$ + "" * + } + if$ +} + +FUNCTION {format.inproceedings.publisher.address} +{ publisher "publisher" bibinfo.warn format.in.org.or.pub +} + + + +%% ++ +FUNCTION {format.noparens.org.or.pub} +{ 't := + " " + address empty$ t empty$ and + 'skip$ + { +%% put comma in below +% add.blank +"" * + t empty$ + { address "address" bibinfo.check * + } + { t * + address empty$ + 'skip$ +%% keep comma below! + { ", " * address "address" bibinfo.check * } + if$ + } + if$ + "" * + } + if$ +} + +FUNCTION {format.publisher.address} +{ publisher "publisher" bibinfo.warn format.org.or.pub +} + +FUNCTION {format.proceedings.publisher.address} +{ publisher "publisher" bibinfo.warn format.org.or.pub +} + +% same as above but called for +FUNCTION {format.bookpublisher.address} +{ publisher "publisher" bibinfo.warn format.org.or.pub +} + +FUNCTION {format.inproceedings.address} +{ publisher "publisher" bibinfo.warn format.noparens.org.or.pub +} + + +FUNCTION {format.organization.address} +{ organization "organization" bibinfo.check format.org.or.pub +} + + +FUNCTION {format.inproceedings.organization.address} +{ organization "organization" bibinfo.check format.in.org.or.pub +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + author format.key output +%% + year empty$ +{} +{format.date "year" output.check} +if$ + date.block + format.title "title" output.check + end.quote.title + crossref missing$ + { +journal empty$ +{} + { journal + "journal" bibinfo.check + "journal" output.check + add.blank} +if$ + format.vol.num.pages output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.url output + format.doi output + format.note xoutput + fin.entry +} + +FUNCTION {xnewspaper} +{ output.bibitem + format.authors "author" output.check + format.title "title" output.check + end.quote.title + crossref missing$ + { + publisher "," * + "publisher" bibinfo.check + "publisher" xoutput.check + add.blank +%% format.vol.num.pages output +%% +date empty$ +{} +{"(" * +date "," * +"date" bibinfo.check +"date" xoutput.check +add.blank +} +if$ +year empty$ +{} + {%newspaperformat. +format.date "year" output.check} +if$ + } + { } + if$ + format.url xoutput + format.doi xoutput + format.note output + fin.entry +} + +FUNCTION {newspaper} +{ output.bibitem + format.authors "author" output.check + author format.key output +%% + year empty$ +{} +{format.date "year" output.check} +if$ + date.block + format.title "title" output.check + end.quote.title +%% + crossref missing$ + { +publisher empty$ +{} + { publisher "" * + "publisher" bibinfo.check + "publisher" output.check + add.blank} +if$ + format.vol.num.pages output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ +%% +date empty$ +{} +{" (" * "\unskip" * date ")" * +"date" bibinfo.check +"date" xoutput.check +"\ignorespaces" *} +if$ + format.url output + format.doi output + format.note xoutput + fin.entry +} + +FUNCTION {translation} +{ output.bibitem + format.authors "author" output.check + author format.key output +%% + year empty$ +{} +{format.date "year" output.check} +if$ + date.block + format.transtitle "title" output.check + end.quote.title +format.parentransnote output +%transnote empty$ +%{} +%{"(" transnote "), " * * } +%if$ + crossref missing$ + { +journal empty$ +{} + { journal + "journal" bibinfo.check + "journal" output.check + add.blank} +if$ + format.vol.num.pages output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.url output + format.doi output + format.note output + fin.entry +} + + +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + year empty$ +{} +{format.date "year" output.check +add.period$ +} +if$ +% + format.number.series xoutput + title empty$ +{} +{format.btitle "title" xoutput.check} +if$ + crossref missing$ + { %% these three are not relevant + format.bvolume output +% format.number.series output + format.edition output +%% new to avoid error message +publisher empty$ +{} +{format.bookpublisher.address output} +if$ +%% new command, ok so far +% format.book.pages output + } + { + format.book.crossref output.nonnull + } + if$ +%% +chapter empty$ +{format.book.pages output} +{format.chapter.pages output} +if$ + format.url output + format.note output + fin.entry +} + +%% new ++ +FUNCTION {computercode} +{ output.bibitem + language empty$ + { + } + {"{\footnotesize\sc" * format.language output.nonnull +"}" * +%% good +year empty$ +{} + {format.date "year" output.check "." *} +if$ +description empty$ +{" " *} +{format.description "description" output.check} +if$ + crossref missing$ + { } + 'skip$ + if$ + } + if$ +"{\let\emph\relax" * + format.btitle "title" xoutput.check +"}\eatspace" * + crossref missing$ + { %% these three are not relevant + format.bvolume output + format.number.series output + format.edition output +%% all new: +publisher empty$ +{" " *} +{publisher "publisher" output.check +"\eatspace" * +} +if$ +address empty$ +{" " *} +{address "address" output.check +} +if$ +% +%% new command, ok so far +% format.book.pages output + } + { + format.book.crossref output.nonnull + } + if$ + format.url output + format.doi output + format.note output + fin.entry +} + + +FUNCTION {booklet} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + end.quote.title + howpublished "howpublished" bibinfo.check output + address "address" bibinfo.check output + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { + format.bvolume output + format.chapter.pages "chapter and pages" output.check + format.number.series output + format.edition output + format.publisher.address output + } + { + format.chapter.pages "chapter and pages" output.check + format.book.crossref output.nonnull + } + if$ + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + title empty$ +{} +{ format.title "title" output.check + end.quote.title} +if$ + crossref missing$ + { format.transnote output +format.in.ed.booktitle "booktitle" xoutput.check + format.bvolume output + format.number.series output + format.edition output +%% next two line are new +publisher empty$ +{} + { format.publisher.address output} +if$ + format.incollection.chapter.pages output + } + { format.incoll.inproc.crossref output.nonnull +% new + format.incollection.chapter.pages xoutput + } + if$ + format.url output + format.doi output + format.note output + fin.entry +} + + +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check +%% new + format.date "year" output.check "." * + format.title "title" xoutput.check + end.quote.title + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.number.series output + publisher empty$ +%% change from this to next line +%% { format.organization.address output } + {format.inproceedings.organization.address output} + { organization "organization" bibinfo.check output + format.inproceedings.publisher.address output + } + if$ +%% not here +% format.date "year" output.check +%% new + format.bvolume.inpro output + format.book.pages output + } + { format.incoll.inproc.crossref output.nonnull +%% new + format.book.pages output + } + if$ + format.url output + format.doi output + format.note output + fin.entry +} + + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + organization "organization" bibinfo.check output + address "address" bibinfo.check output + format.edition output + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + end.quote.title + bbl.mthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output +key empty$ +{} +{format.misckey output} +if$ +year empty$ +{} + {" (" * format.misc.date "year" output.check ")" *} +if$ + date.block + format.noparentitle output + end.quote.title + howpublished "howpublished" bibinfo.check output + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + end.quote.title + bbl.phdthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + format.editors output + editor format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + format.bvolume output + format.number.series output + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + format.url output + format.doi output + format.note output + fin.entry +} + + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + author format.key output +year empty$ +{} + {format.date "year" output.check "." *} +if$ + date.block +title empty$ +{} +{ format.title + "title" output.check + end.quote.title} +if$ + format.tr.number output.nonnull +% institution "institution" bibinfo.warn output +% address "address" bibinfo.check output +%% all new: +%publisher empty$ +%{" " *} +%{publisher "publisher" output.check +%"\eatspace" * +%} +%if$ +%address empty$ +%{" " *} +%{address "address" output.check +%} +%if$ +%%% +publisher empty$ +{"" *} +{format.publisher.address output} +if$ + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + end.quote.title + format.url output + format.doi output + format.note "note" output.check + fin.entry +} + +FUNCTION {default.type} { misc } +READ +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} +INTEGERS { len } +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + 's + if$ +} +FUNCTION {format.lab.names} +{ 's := + "" 't := + s #1 "{vv~}{ll}" format.name$ + s num.names$ duplicate$ + #2 > + { pop$ + " " * bbl.etal emphasize * + } + { #2 < + 'skip$ + { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { + " " * bbl.etal emphasize * + } + { bbl.and space.word * s #2 "{vv~}{ll}" format.name$ + * } + if$ + } + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.label} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.short.authors} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.label + { type$ "proceedings" = + 'editor.key.label + 'author.key.label + if$ + } + if$ + 'short.list := +} + +FUNCTION {calc.label} +{ calc.short.authors + short.list + "(" + * + year duplicate$ empty$ + short.list key field.or.null = or + { pop$ "" } + 'skip$ + if$ + * + 'label := +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" + format.name$ 't := + nameptr #1 > + { + " " * + namesleft #1 = t "others" = and + { "zzzzz" * } + { t sortify * } + if$ + } + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {sort.format.title} +{ 't := + "A " #2 + "An " #3 + "The " #4 t chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { author sort.format.names } + if$ +} +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} +FUNCTION {editor.sort} +{ editor empty$ + { key empty$ + { "to sort, need editor or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ +} +FUNCTION {presort} +{ calc.label + label sortify + " " + * + type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.sort + 'author.sort + if$ + } + if$ + #1 entry.max$ substring$ + 'sort.label := + sort.label + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} +SORT +STRINGS { last.label next.extra } +INTEGERS { last.extra.num number.label } +FUNCTION {initialize.extra.label.stuff} +{ #0 int.to.chr$ 'last.label := + "" 'next.extra := + #0 'last.extra.num := + #0 'number.label := +} +FUNCTION {forward.pass} +{ last.label label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + label 'last.label := + } + if$ + number.label #1 + 'number.label := +} +FUNCTION {reverse.pass} +{ next.extra "b" = + { "a" 'extra.label := } + 'skip$ + if$ + extra.label 'next.extra := + extra.label + duplicate$ empty$ + 'skip$ + { "{\natexlab{" swap$ * "}}" * } + if$ + 'extra.label := + label extra.label * 'label := +} +EXECUTE {initialize.extra.label.stuff} +ITERATE {forward.pass} +REVERSE {reverse.pass} +FUNCTION {bib.sort.order} +{ sort.label + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} +ITERATE {bib.sort.order} +SORT +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" number.label int.to.str$ * "}" * + write$ newline$ + "\def\enquote#1{``#1,''}" + write$ newline$ + "\def\plainquote#1{``#1''}" + write$ newline$ + "\expandafter\ifx\csname natexlab\endcsname\relax\def\natexlab#1{#1}\fi" + write$ newline$ + "\providecommand{\dourl}[1]{\href{http://#1}{\nolinkurl{#1}}}" + write$ newline$ + "\providecommand{\bibinfo}[2]{#2}" + write$ newline$ + "\providecommand{\noopsort}[1]{}" + write$ newline$ + "\providecommand{\switchargs}[2]{#2#1}" + write$ newline$ + " \def\eatspace #1{#1}" +%% + write$ newline$ +} +EXECUTE {begin.bib} +EXECUTE {init.state.consts} +ITERATE {call.type$} +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} +EXECUTE {end.bib} +%% End of customized bst file +%% +%% End of file `jasaauthyear.bst'. diff --git a/inst/rmarkdown/templates/jasa/skeleton/jasanum2.bst b/inst/rmarkdown/templates/jasa/skeleton/jasanum2.bst new file mode 100755 index 000000000..2393a2816 --- /dev/null +++ b/inst/rmarkdown/templates/jasa/skeleton/jasanum2.bst @@ -0,0 +1,2081 @@ +%% Current version: Sept 5, 2019 +%% Change to FUNCTION {output.nonnull} to accomodate empty fields. +%% Change to FUNCTION {standards} to add comma after author. +%% Added @newpaper field. +%% +%% +%% Previous version: June 2017 +%% Journal changes: Added issue number, took `edition' out so that .ed can be entered in .bib file; +%% Book changes: made (publisher, city, year) in parens, +%% added page numbers, added p. or pp. in front of appropriate page number. +%% Inbook checked; incollection, Changed '', to ,''; changed volume to Vol.; +%% no parens around year in phdthesis; +%% Inproceedings, page numbers at end; commas in right place; +%% new function: computercode, with `language' taking the place of `author' in book function, +%% new formatting; +%% +%% This is file `jasanum.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% merlin.mbs (with options: `head,seq-no,nm-init,ed-au,yr-par,xmth,tit-qq,qx,jttl-rm,thtit-a,vol-bf,vnum-x,volp-com,num-xser,jnm-x,pub-par,pre-edn,edby,blk-com,ppx,ed,xedn,jabr,etal-it,url,url-blk,bibinfo,nfss,{}') +%% physjour.mbs (with options: `seq-no,nm-init,ed-au,yr-par,xmth,tit-qq,qx,jttl-rm,thtit-a,vol-bf,vnum-x,volp-com,num-xser,jnm-x,pub-par,pre-edn,edby,blk-com,ppx,ed,xedn,jabr,etal-it,url,url-blk,bibinfo,nfss,{}') +%% geojour.mbs (with options: `seq-no,nm-init,ed-au,yr-par,xmth,tit-qq,qx,jttl-rm,thtit-a,vol-bf,vnum-x,volp-com,num-xser,jnm-x,pub-par,pre-edn,edby,blk-com,ppx,ed,xedn,jabr,etal-it,url,url-blk,bibinfo,nfss,{}') +%% photjour.mbs (with options: `seq-no,nm-init,ed-au,yr-par,xmth,tit-qq,qx,jttl-rm,thtit-a,vol-bf,vnum-x,volp-com,num-xser,jnm-x,pub-par,pre-edn,edby,blk-com,ppx,ed,xedn,jabr,etal-it,url,url-blk,bibinfo,nfss,{}') +%% merlin.mbs (with options: `tail,seq-no,nm-init,ed-au,yr-par,xmth,tit-qq,qx,jttl-rm,thtit-a,vol-bf,vnum-x,volp-com,num-xser,jnm-x,pub-par,pre-edn,edby,blk-com,ppx,ed,xedn,jabr,etal-it,url,url-blk,bibinfo,nfss,{}') +%% ---------------------------------------- +%% *** JASA Numerical references *** +%% +%% Copyright 1994-2002 Patrick W Daly + % =============================================================== + % IMPORTANT NOTICE: + % This bibliographic style (bst) file has been generated from one or + % more master bibliographic style (mbs) files, listed above. + % + % This generated file 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. + % =============================================================== + % Name and version information of the main mbs file: + % \ProvidesFile{merlin.mbs}[2002/10/21 4.05 (PWD, AO, DPC)] + % For use with BibTeX version 0.99a or later + %------------------------------------------------------------------- + % This bibliography style file is intended for texts in ENGLISH + % This is a numerical citation style, and as such is standard LaTeX. + % It requires no extra package to interface to the main text. + % The form of the \bibitem entries is + % \bibitem{key}... + % Usage of \cite is as follows: + % \cite{key} ==>> [#] + % \cite[chap. 2]{key} ==>> [#, chap. 2] + % where # is a number determined by the ordering in the reference list. + % The order in the reference list is that by which the works were originally + % cited in the text, or that in the database. + %--------------------------------------------------------------------- + +ENTRY + { address + author + booktitle + chapter + date + description + doi + edition + editor + howpublished + institution + journal + key + language + month + note + Note1 + number + organization + pages + publisher + school + series + title + transnote + type + url + volume + year + } + {} + { label } +INTEGERS { output.state before.all mid.sentence after.sentence after.block } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} +STRINGS { s t} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = +{ duplicate$ empty$ + 'pop$ + {", " * write$} + if$ +} +%% below, change new as of Sept 5, 2019 +%% { ", " * write$ } +%% + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION {new.output.nonnull} +{ 's := + output.state mid.sentence = +%% changed to get rid of comma before (publisher...) + { " " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {xoutput} +{ duplicate$ empty$ + 'pop$ + 'new.output.nonnull + if$ +} + +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +FUNCTION {zoutput.check} +{ 't := + duplicate$ empty$ +% { pop$ "empty " t * " in " * cite$ * warning$ } + { pop$ } + 'output.nonnull + if$ +} + +FUNCTION {xoutput.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'new.output.nonnull + if$ +} + + +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} + +FUNCTION {add.blank} +{ " " * before.all 'output.state := +} + +FUNCTION {add.page} +{ "p. " * before.all 'output.state := +} + +FUNCTION {add.pages} +{ "pps. " * before.all 'output.state := +} + +FUNCTION {date.block} +{ + skip$ +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {non.stop} +{ duplicate$ + "}" * add.period$ + #-1 #1 substring$ "." = +} + +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} +FUNCTION {bolden} +{ duplicate$ empty$ + { pop$ "" } + { "\textbf{" swap$ * "}" * } + if$ +} + +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {capitalize} +{ "u" change.case$ "t" change.case$ } + +FUNCTION {space.word} +{ " " swap$ * " " * } + % Here are the language-specific definitions for explicit words. + % Each function has a name bbl.xxx where xxx is the English word. + % The language selected here is ENGLISH +FUNCTION {bbl.and} +{ "and"} + +FUNCTION {bbl.etal} +{ "et~al." } + +FUNCTION {bbl.editors} +{ "eds." } + +FUNCTION {bbl.editor} +{ "ed." } + +FUNCTION {bbl.edby} +{ "edited by" } + +FUNCTION {bbl.edition} +{ "ed." } + +FUNCTION {bbl.volume} +{ "Vol." } + +FUNCTION {bbl.issue} +{ "issue" } + +FUNCTION {bbl.of} +{ "of" } + +FUNCTION {bbl.number} +{ "number" } + +FUNCTION {bbl.nr} +{ "no." } + +FUNCTION {bbl.in} +{ "in" } + +FUNCTION {bbl.pages} +{ "pp." } + +FUNCTION {bbl.page} +{ "p." } + +FUNCTION {bbl.chapter} +{ "Chap." } + +FUNCTION {bbl.techrep} +{ "" } + +FUNCTION {bbl.mthesis} +{ "Master's thesis" } + +FUNCTION {bbl.phdthesis} +{ "Ph.D. thesis" } + +MACRO {jan} {"January"} + +MACRO {feb} {"February"} + +MACRO {mar} {"March"} + +MACRO {apr} {"April"} + +MACRO {may} {"May"} + +MACRO {jun} {"June"} + +MACRO {jul} {"July"} + +MACRO {aug} {"August"} + +MACRO {sep} {"September"} + +MACRO {oct} {"October"} + +MACRO {nov} {"November"} + +MACRO {dec} {"December"} + + %------------------------------------------------------------------- + % Begin module: + % \ProvidesFile{physjour.mbs}[2002/01/14 2.2 (PWD)] +MACRO {aa}{"Astron. \& Astrophys."} +MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."} +MACRO {aj} {"Astron. J."} +MACRO {aph} {"Acta Phys."} +MACRO {advp} {"Adv. Phys."} +MACRO {ajp} {"Amer. J. Phys."} +MACRO {ajm} {"Amer. J. Math."} +MACRO {amsci} {"Amer. Sci."} +MACRO {anofd} {"Ann. Fluid Dyn."} +MACRO {am} {"Ann. Math."} +MACRO {ap} {"Ann. Phys. (NY)"} +MACRO {adp} {"Ann. Phys. (Leipzig)"} +MACRO {ao} {"Appl. Opt."} +MACRO {apl} {"Appl. Phys. Lett."} +MACRO {app} {"Astroparticle Phys."} +MACRO {apj} {"Astrophys. J."} +MACRO {apjsup} {"Astrophys. J. Suppl."} +MACRO {apss} {"Astrophys. Space Sci."} +MACRO {araa} {"Ann. Rev. Astron. Astrophys."} +MACRO {baas} {"Bull. Amer. Astron. Soc."} +MACRO {baps} {"Bull. Amer. Phys. Soc."} +MACRO {cmp} {"Comm. Math. Phys."} +MACRO {cpam} {"Commun. Pure Appl. Math."} +MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"} +MACRO {cpc} {"Comp. Phys. Comm."} +MACRO {cqg} {"Class. Quant. Grav."} +MACRO {cra} {"C. R. Acad. Sci. A"} +MACRO {fed} {"Fusion Eng. \& Design"} +MACRO {ft} {"Fusion Tech."} +MACRO {grg} {"Gen. Relativ. Gravit."} +MACRO {ieeens} {"IEEE Trans. Nucl. Sci."} +MACRO {ieeeps} {"IEEE Trans. Plasma Sci."} +MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"} +MACRO {ip} {"Infrared Phys."} +MACRO {irp} {"Infrared Phys."} +MACRO {jap} {"J. Appl. Phys."} +MACRO {jasa} {"J. Acoust. Soc. America"} +MACRO {jcp} {"J. Comp. Phys."} +MACRO {jetp} {"Sov. Phys.--JETP"} +MACRO {jfe} {"J. Fusion Energy"} +MACRO {jfm} {"J. Fluid Mech."} +MACRO {jmp} {"J. Math. Phys."} +MACRO {jne} {"J. Nucl. Energy"} +MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."} +MACRO {jnm} {"J. Nucl. Mat."} +MACRO {jpc} {"J. Phys. Chem."} +MACRO {jpp} {"J. Plasma Phys."} +MACRO {jpsj} {"J. Phys. Soc. Japan"} +MACRO {jsi} {"J. Sci. Instrum."} +MACRO {jvst} {"J. Vac. Sci. \& Tech."} +MACRO {nat} {"Nature"} +MACRO {nature} {"Nature"} +MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"} +MACRO {nf} {"Nucl. Fusion"} +MACRO {nim} {"Nucl. Inst. \& Meth."} +MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."} +MACRO {np} {"Nucl. Phys."} +MACRO {npb} {"Nucl. Phys. B"} +MACRO {nt/f} {"Nucl. Tech./Fusion"} +MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"} +MACRO {inc} {"Nuovo Cimento"} +MACRO {nc} {"Nuovo Cimento"} +MACRO {pf} {"Phys. Fluids"} +MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."} +MACRO {pfb} {"Phys. Fluids B: Plasma Phys."} +MACRO {pl} {"Phys. Lett."} +MACRO {pla} {"Phys. Lett. A"} +MACRO {plb} {"Phys. Lett. B"} +MACRO {prep} {"Phys. Rep."} +MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"} +MACRO {pp} {"Phys. Plasmas"} +MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"} +MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"} +MACRO {prl} {"Phys. Rev. Lett."} +MACRO {pr} {"Phys. Rev."} +MACRO {physrev} {"Phys. Rev."} +MACRO {pra} {"Phys. Rev. A"} +MACRO {prb} {"Phys. Rev. B"} +MACRO {prc} {"Phys. Rev. C"} +MACRO {prd} {"Phys. Rev. D"} +MACRO {pre} {"Phys. Rev. E"} +MACRO {ps} {"Phys. Scripta"} +MACRO {procrsl} {"Proc. Roy. Soc. London"} +MACRO {rmp} {"Rev. Mod. Phys."} +MACRO {rsi} {"Rev. Sci. Inst."} +MACRO {science} {"Science"} +MACRO {sciam} {"Sci. Am."} +MACRO {sam} {"Stud. Appl. Math."} +MACRO {sjpp} {"Sov. J. Plasma Phys."} +MACRO {spd} {"Sov. Phys.--Doklady"} +MACRO {sptp} {"Sov. Phys.--Tech. Phys."} +MACRO {spu} {"Sov. Phys.--Uspeki"} +MACRO {st} {"Sky and Telesc."} + % End module: physjour.mbs + %------------------------------------------------------------------- + % Begin module: + % \ProvidesFile{geojour.mbs}[2002/07/10 2.0h (PWD)] +MACRO {aisr} {"Adv. Space Res."} +MACRO {ag} {"Ann. Geophys."} +MACRO {anigeo} {"Ann. Geofis."} +MACRO {angl} {"Ann. Glaciol."} +MACRO {andmet} {"Ann. d. Meteor."} +MACRO {andgeo} {"Ann. d. Geophys."} +MACRO {andphy} {"Ann. Phys.-Paris"} +MACRO {afmgb} {"Arch. Meteor. Geophys. Bioklimatol."} +MACRO {atph} {"Atm\'osphera"} +MACRO {aao} {"Atmos. Ocean"} +MACRO {ass}{"Astrophys. Space Sci."} +MACRO {atenv} {"Atmos. Environ."} +MACRO {aujag} {"Aust. J. Agr. Res."} +MACRO {aumet} {"Aust. Meteorol. Mag."} +MACRO {blmet} {"Bound.-Lay. Meteorol."} +MACRO {bams} {"Bull. Amer. Meteorol. Soc."} +MACRO {cch} {"Clim. Change"} +MACRO {cdyn} {"Clim. Dynam."} +MACRO {cbul} {"Climatol. Bull."} +MACRO {cap} {"Contrib. Atmos. Phys."} +MACRO {dsr} {"Deep-Sea Res."} +MACRO {dhz} {"Dtsch. Hydrogr. Z."} +MACRO {dao} {"Dynam. Atmos. Oceans"} +MACRO {eco} {"Ecology"} +MACRO {empl}{"Earth, Moon and Planets"} +MACRO {envres} {"Environ. Res."} +MACRO {envst} {"Environ. Sci. Technol."} +MACRO {ecms} {"Estuarine Coastal Mar. Sci."} +MACRO {expa}{"Exper. Astron."} +MACRO {geoint} {"Geofis. Int."} +MACRO {geopub} {"Geofys. Publ."} +MACRO {geogeo} {"Geol. Geofiz."} +MACRO {gafd} {"Geophys. Astrophys. Fluid Dyn."} +MACRO {gfd} {"Geophys. Fluid Dyn."} +MACRO {geomag} {"Geophys. Mag."} +MACRO {georl} {"Geophys. Res. Lett."} +MACRO {grl} {"Geophys. Res. Lett."} +MACRO {ga} {"Geophysica"} +MACRO {gs} {"Geophysics"} +MACRO {ieeetap} {"IEEE Trans. Antenn. Propag."} +MACRO {ijawp} {"Int. J. Air Water Pollut."} +MACRO {ijc} {"Int. J. Climatol."} +MACRO {ijrs} {"Int. J. Remote Sens."} +MACRO {jam} {"J. Appl. Meteorol."} +MACRO {jaot} {"J. Atmos. Ocean. Technol."} +MACRO {jatp} {"J. Atmos. Terr. Phys."} +MACRO {jastp} {"J. Atmos. Solar-Terr. Phys."} +MACRO {jce} {"J. Climate"} +MACRO {jcam} {"J. Climate Appl. Meteor."} +MACRO {jcm} {"J. Climate Meteor."} +MACRO {jcy} {"J. Climatol."} +MACRO {jgr} {"J. Geophys. Res."} +MACRO {jga} {"J. Glaciol."} +MACRO {jh} {"J. Hydrol."} +MACRO {jmr} {"J. Mar. Res."} +MACRO {jmrj} {"J. Meteor. Res. Japan"} +MACRO {jm} {"J. Meteor."} +MACRO {jpo} {"J. Phys. Oceanogr."} +MACRO {jra} {"J. Rech. Atmos."} +MACRO {jaes} {"J. Aeronaut. Sci."} +MACRO {japca} {"J. Air Pollut. Control Assoc."} +MACRO {jas} {"J. Atmos. Sci."} +MACRO {jmts} {"J. Mar. Technol. Soc."} +MACRO {jmsj} {"J. Meteorol. Soc. Japan"} +MACRO {josj} {"J. Oceanogr. Soc. Japan"} +MACRO {jwm} {"J. Wea. Mod."} +MACRO {lao} {"Limnol. Oceanogr."} +MACRO {mwl} {"Mar. Wea. Log"} +MACRO {mau} {"Mausam"} +MACRO {meteor} {"``Meteor'' Forschungsergeb."} +MACRO {map} {"Meteorol. Atmos. Phys."} +MACRO {metmag} {"Meteor. Mag."} +MACRO {metmon} {"Meteor. Monogr."} +MACRO {metrun} {"Meteor. Rundsch."} +MACRO {metzeit} {"Meteor. Z."} +MACRO {metgid} {"Meteor. Gidrol."} +MACRO {mwr} {"Mon. Weather Rev."} +MACRO {nwd} {"Natl. Weather Dig."} +MACRO {nzjmfr} {"New Zeal. J. Mar. Freshwater Res."} +MACRO {npg} {"Nonlin. Proc. Geophys."} +MACRO {om} {"Oceanogr. Meteorol."} +MACRO {ocac} {"Oceanol. Acta"} +MACRO {oceanus} {"Oceanus"} +MACRO {paleoc} {"Paleoceanography"} +MACRO {pce} {"Phys. Chem. Earth"} +MACRO {pmg} {"Pap. Meteor. Geophys."} +MACRO {ppom} {"Pap. Phys. Oceanogr. Meteor."} +MACRO {physzeit} {"Phys. Z."} +MACRO {pps} {"Planet. Space Sci."} +MACRO {pss} {"Planet. Space Sci."} +MACRO {pag} {"Pure Appl. Geophys."} +MACRO {qjrms} {"Quart. J. Roy. Meteorol. Soc."} +MACRO {quatres} {"Quat. Res."} +MACRO {rsci} {"Radio Sci."} +MACRO {rse} {"Remote Sens. Environ."} +MACRO {rgeo} {"Rev. Geophys."} +MACRO {rgsp} {"Rev. Geophys. Space Phys."} +MACRO {rdgeo} {"Rev. Geofis."} +MACRO {revmeta} {"Rev. Meteorol."} +MACRO {sgp}{"Surveys in Geophys."} +MACRO {sp} {"Solar Phys."} +MACRO {ssr} {"Space Sci. Rev."} +MACRO {tellus} {"Tellus"} +MACRO {tac} {"Theor. Appl. Climatol."} +MACRO {tagu} {"Trans. Am. Geophys. Union (EOS)"} +MACRO {wrr} {"Water Resour. Res."} +MACRO {weather} {"Weather"} +MACRO {wafc} {"Weather Forecast."} +MACRO {ww} {"Weatherwise"} +MACRO {wmob} {"WMO Bull."} +MACRO {zeitmet} {"Z. Meteorol."} + % End module: geojour.mbs + %------------------------------------------------------------------- + % Begin module: + % \ProvidesFile{photjour.mbs}[1999/02/24 2.0b (PWD)] + +MACRO {appopt} {"Appl. Opt."} +MACRO {bell} {"Bell Syst. Tech. J."} +MACRO {ell} {"Electron. Lett."} +MACRO {jasp} {"J. Appl. Spectr."} +MACRO {jqe} {"IEEE J. Quantum Electron."} +MACRO {jlwt} {"J. Lightwave Technol."} +MACRO {jmo} {"J. Mod. Opt."} +MACRO {josa} {"J. Opt. Soc. America"} +MACRO {josaa} {"J. Opt. Soc. Amer.~A"} +MACRO {josab} {"J. Opt. Soc. Amer.~B"} +MACRO {jdp} {"J. Phys. (Paris)"} +MACRO {oc} {"Opt. Commun."} +MACRO {ol} {"Opt. Lett."} +MACRO {phtl} {"IEEE Photon. Technol. Lett."} +MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."} +MACRO {sse} {"Solid-State Electron."} +MACRO {sjot} {"Sov. J. Opt. Technol."} +MACRO {sjqe} {"Sov. J. Quantum Electron."} +MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."} +MACRO {stph} {"Sov. Phys.--Techn. Phys."} +MACRO {stphl} {"Sov. Techn. Phys. Lett."} +MACRO {vr} {"Vision Res."} +MACRO {zph} {"Z. f. Physik"} +MACRO {zphb} {"Z. f. Physik~B"} +MACRO {zphd} {"Z. f. Physik~D"} + +MACRO {CLEO} {"CLEO"} +MACRO {ASSL} {"Adv. Sol.-State Lasers"} +MACRO {OSA} {"OSA"} + % End module: photjour.mbs +%% Copyright 1994-2002 Patrick W Daly +MACRO {acmcs} {"ACM Comput. Surv."} + +MACRO {acta} {"Acta Inf."} + +MACRO {cacm} {"Commun. ACM"} + +MACRO {ibmjrd} {"IBM J. Res. Dev."} + +MACRO {ibmsj} {"IBM Syst.~J."} + +MACRO {ieeese} {"IEEE Trans. Software Eng."} + +MACRO {ieeetc} {"IEEE Trans. Comput."} + +MACRO {ieeetcad} + {"IEEE Trans. Comput. Aid. Des."} + +MACRO {ipl} {"Inf. Process. Lett."} + +MACRO {jacm} {"J.~ACM"} + +MACRO {jcss} {"J.~Comput. Syst. Sci."} + +MACRO {scp} {"Sci. Comput. Program."} + +MACRO {sicomp} {"SIAM J. Comput."} + +MACRO {tocs} {"ACM Trans. Comput. Syst."} + +MACRO {tods} {"ACM Trans. Database Syst."} + +MACRO {tog} {"ACM Trans. Graphic."} + +MACRO {toms} {"ACM Trans. Math. Software"} + +MACRO {toois} {"ACM Trans. Office Inf. Syst."} + +MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."} + +MACRO {tcs} {"Theor. Comput. Sci."} + +FUNCTION {bibinfo.check} +{ swap$ + duplicate$ missing$ + { + pop$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ pop$ + } + { swap$ + "\bibinfo{" swap$ * "}{" * swap$ * "}" * + } + if$ + } + if$ +} +FUNCTION {bibinfo.warn} +{ swap$ + duplicate$ missing$ + { + swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ "empty " swap$ * " in " * cite$ * warning$ + } + { swap$ + "\bibinfo{" swap$ * "}{" * swap$ * "}" * + } + if$ + } + if$ +} + + + +FUNCTION {format.url} +{ url empty$ + { "" } + { "\dourl{" url * "}" * } + if$ +} + +FUNCTION {format.doi} +{ doi empty$ + { "" } + { "\dodoi{" doi * "}" * } + if$ +} + + +STRINGS { bibinfo} +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{f.~}{vv~}{ll}{, jj}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + numnames #2 > + { "," * } + 'skip$ + if$ + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal emphasize * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.names.ed} +{ + format.names +} + +FUNCTION {format.authors} +{ author "author" format.names +} + + +FUNCTION {format.language} +{ language "language" format.names +} + + +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { + "," * + " " * + get.bbl.editor + * + } + if$ +} +FUNCTION {format.note} +{ + note empty$ + { "" } + { note #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + } + if$ +} + + + +FUNCTION {format.parentransnote} +{ + transnote empty$ + { "" } + {"(" * transnote #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + transnote #2 global.max$ substring$ * "transnote" bibinfo.check +")" * } + if$ +} + +%% comma after enquote?? +FUNCTION {format.title} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + "\enquote{" swap$ * + "}, " * + } + if$ +} + +FUNCTION {format.misc.title} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + "\enxquote{" swap$ * + "} " * + } + if$ +} + + +FUNCTION {end.quote.title} +{ title empty$ + 'skip$ + { before.all 'output.state := } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +%% +=+ +FUNCTION {footnote} +{ output.bibitem + format.note output + fin.entry +} + +FUNCTION {n.dashify} +{ 't := + "" + { t empty$ not } + { + t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {word.in} +{ bbl.in + " " * } + +FUNCTION {format.date} +{"" + duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ 'skip$ + { "there's a month but no year in " cite$ * warning$ } + if$ + * + } + { swap$ 'skip$ + { + swap$ + " " * swap$ + } + if$ + * + } + if$ + duplicate$ empty$ + 'skip$ + { + before.all 'output.state := + " (" swap$ * ")" * + } + if$ +} + +FUNCTION {newspaperformat.date} +{"" + duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ 'skip$ + { "there's a month but no year in " cite$ * warning$ } + if$ + * + } + { swap$ 'skip$ + { + swap$ + " " * swap$ + } + if$ + * + } + if$ + duplicate$ empty$ + 'skip$ + { + before.all 'output.state := + "" swap$ * ")" * + } + if$ +} + + +FUNCTION {format.book.date} +{"" + duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ 'skip$ + { "there's a month but no year in " cite$ * warning$ } + if$ + * + } + { swap$ 'skip$ + { + swap$ + "" * swap$ + } + if$ + * + } + if$ + duplicate$ empty$ + 'skip$ + { + before.all 'output.state := +% this seems ok, this isn't the bothersome comma + ", " swap$ * "" * + } + if$ +} + +%% new ++ +FUNCTION {format.newbook.date} +{"" + duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ 'skip$ + { "there's a month but no year in " cite$ * warning$ } + if$ + * + } + { swap$ 'skip$ + { + swap$ + " " * swap$ + } + if$ + * + } + if$ + duplicate$ empty$ + 'skip$ + { + before.all 'output.state := + " " swap$ * "" * + } + if$ +} + +FUNCTION {format.btitle} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + emphasize + } + if$ +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { bbl.volume volume tie.or.space.prefix + "volume" bibinfo.check * * + series "series" bibinfo.check + duplicate$ empty$ 'pop$ + { swap$ bbl.of space.word * swap$ + emphasize * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { series empty$ + { number "number" bibinfo.check } + { output.state mid.sentence = + { bbl.number } + { bbl.number capitalize } + if$ + number tie.or.space.prefix "number" bibinfo.check * * + bbl.in space.word * + series "series" bibinfo.check * + } + if$ + } + if$ + } + { "" } + if$ +} + +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { + output.state mid.sentence = + { "l" } + { "t" } + if$ change.case$ + "" bibinfo.check + " " * bbl.edition * + } + if$ +} +INTEGERS { multiresult } + +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} + +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { duplicate$ multi.page.check + { + n.dashify + } + { + } + if$ + "pages" bibinfo.check + } + if$ +} + +%% +++ New and very difficult: +FUNCTION {format.book.pages} +{ pages duplicate$ empty$ 'skip$ + { duplicate$ multi.page.check + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + } + if$ +} + +FUNCTION {format.journal.pages} +{ pages duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ + { pop$ pop$ format.pages } + { + ", " * + swap$ + n.dashify + "pages" bibinfo.check + * + } + if$ + } + if$ +} + +%%%%%% +%% added issue number and made it not be bold: +FUNCTION {format.vol.num.pages} +{ volume field.or.null +bolden + number empty$ + 'skip$ + { "(" number * ")" * * + volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + } + if$ +format.journal.pages + } + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + pages empty$ + 'skip$ + { ", " * format.pages * +} + if$ + } + if$ +} + +FUNCTION {format.incollection.chapter.pages} +{ chapter empty$ + 'format.book.pages + { type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + pages empty$ + 'skip$ + {", " * format.book.pages * +} + if$ + } + if$ +} + +FUNCTION {format.booktitle} +{ + booktitle "booktitle" bibinfo.check + emphasize +} +FUNCTION {format.in.ed.booktitle} +{ format.booktitle duplicate$ empty$ 'skip$ + { + editor "editor" format.names.ed duplicate$ empty$ 'pop$ + { + bbl.edby + " " * swap$ * + swap$ +%% not relevant + ", " * + " " * swap$ + * } + if$ + word.in swap$ * + } + if$ +} +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} +FUNCTION {format.thesis.type} +{ type duplicate$ empty$ + 'pop$ + { swap$ pop$ + "t" change.case$ "type" bibinfo.check + } + if$ +} +FUNCTION {format.tr.number} +{ number "number" bibinfo.check + type duplicate$ empty$ + { pop$ bbl.techrep +} + 'skip$ + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ "t" change.case$ } + { tie.or.space.prefix * * } + if$ +} + +FUNCTION {format.article.crossref} +{ + key duplicate$ empty$ + { pop$ + journal duplicate$ empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * warning$ } + { "journal" bibinfo.check emphasize word.in swap$ * } + if$ + } + { word.in swap$ * " " *} + if$ + " \cite{" * crossref * "}" * +} +FUNCTION {format.crossref.editor} +{ editor #1 "{vv~}{ll}" format.name$ + "editor" bibinfo.check + editor num.names$ duplicate$ + #2 > + { pop$ + "editor" bibinfo.check + " " * bbl.etal + emphasize + * + } + { #2 < + 'skip$ + { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { + "editor" bibinfo.check + " " * bbl.etal + emphasize + * + } + { + bbl.and space.word + * editor #2 "{vv~}{ll}" format.name$ + "editor" bibinfo.check + * + } + if$ + } + if$ + } + if$ +} +FUNCTION {format.book.crossref} +{ volume duplicate$ empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + pop$ word.in + } + { bbl.volume + swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word * + } + if$ + editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { series empty$ + { "need editor, key, or series for " cite$ * " to crossref " * + crossref * warning$ + "" * + } + { series emphasize * } + if$ + } + { key * } + if$ + } + { format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} +FUNCTION {format.incoll.inproc.crossref} +{ + editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { format.booktitle duplicate$ empty$ + { "need editor, key, or booktitle for " cite$ * " to crossref " * + crossref * warning$ + } + { word.in swap$ * } + if$ + } + { word.in key * " " *} + if$ + } + { word.in format.crossref.editor * " " *} + if$ + " \cite{" * crossref * "}" * +} + + + +%%+=+ +FUNCTION {format.in.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { +%% this line puts in too many commas +% add.blank ", " * + t empty$ + { address "address" bibinfo.check * + } + { t * + address empty$ + 'skip$ +%% not this, not again + { ", " * address "address" bibinfo.check * } + if$ + } + if$ + "" * + } + if$ +} + +FUNCTION {format.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { + add.blank "(" * + t empty$ + { address "address" bibinfo.check * + } + { t * + address empty$ + 'skip$ + { ", " * address "address" bibinfo.check * } + if$ + } + if$ + ")" * + } + if$ +} + +%% ++ new, added year +FUNCTION {format.book.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { + add.blank "(" * + t empty$ + { address "address" bibinfo.check * + } + { t * + address empty$ + 'skip$ + { ", " * address "address" bibinfo.check * } + if$ + } + if$ +%% +++ added, changed format.date to format.book.date// comma after ) in book +"" format.book.date "year" output.check * + ")" * + } + if$ +} + +FUNCTION {format.publisher.address} +{ publisher "publisher" bibinfo.warn format.org.or.pub +} + +FUNCTION {format.inproceedings.publisher.address} +{ publisher "publisher" bibinfo.warn format.in.org.or.pub +} + +FUNCTION {format.bookpublisher.address} +{ publisher "publisher" bibinfo.warn format.book.org.or.pub +} + + +FUNCTION {format.organization.address} +{ organization "organization" bibinfo.check format.org.or.pub +} + +FUNCTION {format.inproceedings.organization.address} +{ organization "organization" bibinfo.check format.in.org.or.pub +} + + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + format.title "title" output.check +% end.quote.title + crossref missing$ + { + journal + "journal" bibinfo.check + "journal" xoutput.check + add.blank + format.vol.num.pages output +year empty$ +{} + { format.date "year" output.check} +if$ + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.url xoutput + format.doi xoutput + format.note xoutput + fin.entry +} + +FUNCTION {newspaper} +{ output.bibitem + format.authors "author" output.check + format.title "title" output.check + end.quote.title + crossref missing$ + { + publisher + "publisher" bibinfo.check + "publisher" xoutput.check + add.blank + format.vol.num.pages output +%% +date empty$ +{} +{" (\ignorespaces" * date "," * +"date" bibinfo.check +"date" xoutput.check +add.blank +} +if$ +year empty$ +{} + { +newspaperformat.date "year" output.check} +if$ + } + { } + if$ + format.url xoutput + format.doi xoutput + format.note output + fin.entry +} + +%% ++ book, from good2.bst +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.number.series output + format.edition output +%% new command, ok, %% xoutput below june, 2017: + format.bookpublisher.address xoutput +%% new command, ok so far +publisher empty$ +{ +year empty$ +{} +{ +format.date "year" output.check +} +if$} +{} +if$ + format.book.pages output + } + { + format.book.crossref output.nonnull + } + if$ +%%% commented out so we can get parens including publisher name and year +% format.date "year" output.check + format.url output + format.note xoutput + fin.entry +} + +FUNCTION {standards} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + } + { format.authors "," * output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.btitle "title" xoutput.check + crossref missing$ + { format.bvolume output + format.number.series output + format.edition output +%% new command, ok, %% xoutput below june, 2017: + format.bookpublisher.address xoutput +%% new command, ok so far +publisher empty$ +{ +year empty$ +{} +{ +format.date "year" output.check +} +if$} +{} +if$ + format.book.pages output + } + { + format.book.crossref output.nonnull + } + if$ +%%% commented out so we can get parens including publisher name and year +% format.date "year" output.check + format.url output + format.note output + fin.entry +} + +FUNCTION {format.description} +{ description "description" bibinfo.check duplicate$ empty$ + { + } + 'skip$ + if$ +% extra.label * + before.all 'output.state := + " ``" swap$ * ",'' " * +} + +FUNCTION {format.transtitle} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + "\plainquote{" swap$ * +%% ++ + "} " * + } + if$ +} + +%% new, june 2017 +FUNCTION {translation} +{ output.bibitem + format.authors "author" output.check +% author format.key output +%% + format.transtitle "title" output.check + end.quote.title +format.parentransnote output + crossref missing$ + { +journal empty$ +{} + { journal + "journal" bibinfo.check + "journal" output.check + add.blank} +if$ + format.vol.num.pages output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.url output + format.doi output + format.note output + year empty$ +{} +{format.date "year" output.check} +if$ + date.block + fin.entry +} + +%% new ++ +FUNCTION {computercode} +{ output.bibitem +%% don't need key for this bib style +key empty$ +{} +{} +if$ + language empty$ + { + } + {"{\footnotesize\sc" * format.language output.nonnull +"}," * + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ +description empty$ +{" " *} +{format.description "description" xoutput.check} +if$ +%% + } + if$ +"{\let\emph\relax" * + format.btitle "title" xoutput.check +"}" * + crossref missing$ + { %% these three are not relevant + format.bvolume output + format.number.series output + format.edition output +%% +publisher empty$ +%% +{% no publisher + address empty$ + {year empty$ + {} + {" (\eatspace " * + year "year" xoutput.check + ")" * + } + if$ +} +{" (\eatspace" * address "address" xoutput.check +year empty$ +{} +{ year "year" output.check} +if$ +")" * +} +if$ +%% +} +%%%%%%%%%%%%% +%% new command, ok +{ format.bookpublisher.address xoutput} +if$ +%% +%% new command, ok so far + format.book.pages output + } + { + format.book.crossref output.nonnull + } + if$ +%%% commented out so we can get parens including publisher name and year +% format.date "year" output.check + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.btitle "title" output.check + crossref missing$ + { + format.bvolume output + format.chapter.pages "chapter and pages" output.check + format.number.series output + format.edition output + format.publisher.address output + } + { + format.chapter.pages "chapter and pages" output.check + format.book.crossref output.nonnull + } + if$ +%% this needs to go within parens for publisher +% format.date "year" output.check + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + format.title "title" output.check + end.quote.title + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.edition output +% +%% new command, ok + format.bookpublisher.address xoutput +%% new command, ok + format.incollection.chapter.pages output +%%% commented out so we can get parens including publisher name and year +% format.date "year" output.check + } + { format.incoll.inproc.crossref output.nonnull +%% new command + format.incollection.chapter.pages xoutput + } + if$ + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {booklet} +{ output.bibitem + format.authors output + format.title "title" output.check + end.quote.title + howpublished "howpublished" bibinfo.check output + address "address" bibinfo.check output + format.date output + format.url output + format.doi output + format.note output + fin.entry +} + +%% ++ +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + format.title "title" output.check + end.quote.title + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.number.series output + publisher empty$ +%% change from this to next line +%% { format.organization.address output } + {format.inproceedings.organization.address output} + { organization "organization" bibinfo.check output + format.inproceedings.publisher.address output + } + if$ + format.date "year" output.check +%% new + format.bvolume output + format.book.pages output + } + { format.incoll.inproc.crossref output.nonnull +%% new + format.book.pages output + } + if$ + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {conference} { inproceedings } +FUNCTION {manual} +{ output.bibitem + author empty$ + { organization "organization" bibinfo.check + duplicate$ empty$ 'pop$ + { output + address "address" bibinfo.check output + } + if$ + } + { format.authors output.nonnull } + if$ + format.btitle "title" output.check + author empty$ + { organization empty$ + { + address "address" bibinfo.check output + } + 'skip$ + if$ + } + { + organization "organization" bibinfo.check output + address "address" bibinfo.check output + } + if$ + format.edition output + format.date output + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + format.title + "title" output.check + end.quote.title + bbl.mthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.date "year" output.check + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + format.misc.title output + howpublished "howpublished" bibinfo.check output + format.date output + format.url output + format.doi output + format.note xoutput + fin.entry + empty.misc.check +} +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + format.title + "title" output.check + end.quote.title + bbl.phdthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.book.date "year" output.check + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + editor empty$ + { organization "organization" bibinfo.check output + } + { format.editors output.nonnull } + if$ + format.btitle "title" output.check + format.bvolume output + format.number.series output + editor empty$ + { publisher empty$ + 'skip$ + { + format.publisher.address output + } + if$ + } + { publisher empty$ + { + format.organization.address output } + { + organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + } + if$ + format.date "year" output.check + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + format.title + "title" output.check + end.quote.title + format.tr.number output.nonnull + institution "institution" bibinfo.warn output + address "address" bibinfo.check output +% format.date "year" output.check + format.date "year" zoutput.check + format.url output + format.doi output + format.note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + format.title "title" output.check + end.quote.title + format.date output + format.url output + format.doi output + format.note "note" output.check + fin.entry +} + +FUNCTION {default.type} { misc } +READ +STRINGS { longest.label } +INTEGERS { number.label longest.label.width } +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #1 'number.label := + #0 'longest.label.width := +} +FUNCTION {longest.label.pass} +{ number.label int.to.str$ 'label := + number.label #1 + 'number.label := + label width$ longest.label.width > + { label 'longest.label := + label width$ 'longest.label.width := + } + 'skip$ + if$ +} +EXECUTE {initialize.longest.label} +ITERATE {longest.label.pass} +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" longest.label * "}" * + write$ newline$ + "\def\enquote#1,{``#1,''}" + write$ newline$ + "\def\enxquote#1{``#1''}" + write$ newline$ + "\expandafter\ifx\csname url\endcsname\relax" + write$ newline$ + " \def\url#1{\texttt{#1}}\fi" + write$ newline$ + "\expandafter\ifx\csname urlprefix\endcsname\relax\def\urlprefix{URL }\fi" + write$ newline$ + "\providecommand{\bibinfo}[2]{#2}" + write$ newline$ + "\def\plainquote#1{``#1''}" + write$ newline$ + "\providecommand{\noopsort}[1]{}" + write$ newline$ + "\providecommand{\switchargs}[2]{#2#1}" + write$ newline$ + "\providecommand{\dourl}[1]{\href{http://#1}{\nolinkurl{#1}}}" + write$ newline$ + " \def\eatspace #1{#1}" + write$ newline$ +} +EXECUTE {begin.bib} +EXECUTE {init.state.consts} +ITERATE {call.type$} +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} +EXECUTE {end.bib} +%% End of customized bst file +%% +%% End of file `jasanum.bst'. + + + diff --git a/inst/rmarkdown/templates/jasa/skeleton/sampbib.bib b/inst/rmarkdown/templates/jasa/skeleton/sampbib.bib new file mode 100755 index 000000000..5bf2a061a --- /dev/null +++ b/inst/rmarkdown/templates/jasa/skeleton/sampbib.bib @@ -0,0 +1,579 @@ +%% Sept 2019 +@newspaper{newspaperSamp, +author={J. Gordinier}, +date={September 9}, +year={2015}, +title={Taking the din out of dining}, +publisher={The New York Times}, +volume={CLXIV}, +pages={D6-D8}, +} + +%% June 2017 + +@incollection{sampReprint2, +author={W. R. Hamilton}, +year={1837}, +title={Third supplement to an essay on +the theory of systems of waves}, +booktitle={The Mathematical Papers of Sir William Rowan Hamilton, +Vol II: Dynamics}, +editor={A. W. Conway and A. J. McConnell}, +publisher={Cambridge University Press}, +address={London}, +pages={162--211}, +transnote={Trans. R. Irish Soc. \bf 17\rm(Pt. 1), 1--144}} + +@misc{isoSamp, +author={{ISO 4020:2001}}, +year={2001}, +title={Road vehicles. {F}uel filters for diesel engines. {T}est methods}, +note={(International Organization for Standardization, +Geneva, Switzerland)}} + +@misc{sampMisc, +author={{ISO 4020:2001}}, +title={Road vehicles. {F}uel filters for diesel engines. {T}est methods}, +note={(International Organization for Standardization, +Geneva, Switzerland, 2001)} +} + +@article{sampMisc2, +author={Luizard, P. and Pelorson, X.}, +year={2017}, +title={Threshold of oscillation of a vocal fold replica with unilateral surface growths}, +volume={144}, +journal={J. Acoust. Soc. Am.}, +note={(published online)}} + + +@article{sampOnline, +author={Luizard, P. and Pelorson, X.}, +title={Threshold of oscillation of a vocal fold replica with unilateral surface growths}, +volume={144}, +journal={J. Acoust. Soc. Am.}, +note={(published online 2017)}} + + +@article{yang, +author={J. Yang}, +title={Piezoelecric transformer structural modeling---A review}, +journal={IEEE Trans. Ultrason. Ferroelectr. Freq. Control}, +volume={54}, +number={6}, +pages={1154-1174}, +year={2007}} + +%% don't change +@article{sampEprint, +author={A. G. Ramm}, +title={Invisible obstacles}, +url={arxiv.org/abs/math-ph/0608034}, +year={2006}} + +@article{sampEprint2, +author={A. G. Ramm}, +title={Invisible obstacles}, +url={arxiv.org/abs/math-ph/0608034}, +note={(2006)}} + +@article{sampEprint3, +author={A. G. Ramm}, +year={2006}, +title={Invisible obstacles}, +doi={10.1121/1.4947423.1}} + + + + + +@computercode{sampcode, +key={WAON, 2008}, +language={WAON}, +title={Version 3.1 User's Manual}, +publisher={Cybernet Systems Co., Ltd}, +year={2008}} + +@computercode{sampcode2, +key={DISPERSE, 2001}, +language={DISPERSE}, +title={User's Manual Version 2.0.16d}, +description={A system for generating dispersion curves}, +doi={10.1177/1045389X16667559}, +year={2001}} + +@misc{samppatent, +author={W. L. Tolin and A. M. Laud}, +title={New process for developing x rays}, +note={U.S. patent 6,943,801 +(March 3, 1977)}} + +@misc{samppatent2, +author={S. Klein}, +year={1979}, +note={{F}rench patent specification no.~79 09450}} + +@incollection{sampSeries, +author={C. H. Corliss and W. R. Bozman}, +title={Paper title}, +number={{N}atl. {B}ur. {S}tand. ({U.S.}) {M}onograph {N}o. 53}, +publisher={U.S. Government Printing Office, +Washington, DC}, +year={1962}} + +@article{sampReprint, +author={J. S. Bell}, +title={{O}n the {E}instein-{P}odolsky-{R}osen paradox}, +journal={Physics}, +volume={1}, +pages={195--213}, +year={1964}, +note={[reprinted in J. S. Bell, {\it Speakable and +Unspeakable in Quantum Mechanics} (Cambridge University +Press, Cambridge, UK, 1987)]} +} + + +@inproceedings{sampinproceedings, +author={Author}, +title={Title}, +booktitle={Book title}, +year={2017}, +editor={Editor}, +volume={22}, +pages={701}, +address={City, State}, +publisher={Publisher}, +note={Note}} + +@inproceedings{sampinproceedings2, +author={B. K. Mukerjee and S. Sherit}, +title={Characterization of piezoelectric +and materials for acoustic transducers: I. {R}esonance methods}, +booktitle={Proceedings of the 5th +International Congress Sound and Vibration}, +address={Adelaide, Australia}, +year={December 15--18, 1997}, +pages={385--393}} + +@inproceedings{sampinproceedings3, +author={L. A. Werner and K. Borke}, +title={Update on infants' increment detection +in tones and noise}, +booktitle={Proceedings of the 29th MidWinter Meeting of ARLO}, +year={2001}, +volume={1}, +pages={218--225}} + + +@standards{sampstandards, +author={{\rm ANSI S3.5-1997}}, +title={Methods for Calculation +of the Speech Intelligibility Index}, +publisher={Acoustical Society of America}, +address={New York}, +year={1997}} + +@standards{sampstandards2, +author={{AIUM}}, +title={Acoustic Output Measurement Standard for +Diagnostic Ultrasound Equipment, UD2-98}, +publisher={AIUM/NEMA}, +year={1998}} + +@book{amstand, +author={{American Standards Association}}, +year={1951}, +title={American Standard Specification for Audiometers for General +Diagnostic Purposes}, +address={New York}, +publisher={American Standards Association}, +note={{P}ub. No. 224.5-1951}} + +@book{ansi, +author={ANSI}, +year={1997}, +series={S3.5}, +title={American National Standard Methods for +Calculation of the Speech Intelligibility Index}, +publisher={Acoustical Society of America}, +address={New York}} + + + +@phdthesis{sampthesis, +author={J. B. Pierrehumber}, +title={The phonology and phonetics of {E}nglish intonation}, +type={Ph.{D}. Dissertation}, +school={Mass. Inst. of Tech.}, +address={Cambridge, MA}, +year={1980}} + +@techreport{samptechreport, +author={A. N Author}, +title={Technical Report Title}, +number={1000}, +institution={MIT Media Lab}, +year={2017}} + +@techreport{samptechreport2, +author={S. Sampson}, +title={Tech Report}, +institution={RISD}, +year={2011}, +type={Quantum Cryptography}, +number={212}, +address={Rochester, New York}, +note={Note}, +key={key}} + +@techreport{samptechreport3, +author={G. James and T. Carne and J. P. Lauffer}, +title={The natural excitation technique for modal +parameter extraction from operating wind turbines}, +institution={Sandia National Laboratories}, +year={2011}, +type={Report No. SAND92-1666, UC-261}} + + +@techreport{samptechreport4, +author={W. D. Wilson}, +title={Ultrasonic measurement of the velocity +of sound in distilled and sea water}, +institution={US Naval Ordnance Laboratory}, +note={1960}, +type={Naval Ordnance Report 6746}, +address={White Oak, MD}} + +@techreport{samptechreport5, +author={W. D. Wilson}, +title={Ultrasonic measurement of the velocity +of sound in distilled and sea water}, +institution={US Naval Ordnance Laboratory}, +year={1960}, +type={Naval Ordnance Report 6746}, +address={White Oak, MD}} + +@techreport{samptechreport6, +author={{National Defense Research Committee}}, +year={1946}, +type={{P}hysics of the +{S}ound in the {S}ea, {D}ivision 6 +Summary Technical Report}, +address={Washington, DC}, +publisher={National Defense Research Committee}, +note={{V}ol.~8}} + + +@misc{website, +key={Mars}, +note={Information on the Mars Microphone available at\\ +\url{http://sprg.ssl.berkeley.edu/marsmic/welcome.html} +(Last viewed April 15, 2008)}} + +@article{websiteauthyear, +author={P. Boersma and D. Weenick}, +year={2005}, +title={Praat: Doing phonetics by computer (version 4.3.14) [computer program]}, +url={http://www.praat.org}, +note={(Last viewed May 26, 2005)}} + +@translation{translation, +author={P. Riety}, +title={Retour sur la theorie du +thermophone a feuilles d'orr}, +transnote={``Look back on thermophone theory''}, +journal={Cahiers d'Acoustique}, +volume={70}, +pages={169--201}, +year={1955}} + +@incollection{sampincollection, +author={A. N. Author}, +title={Title In Book}, +booktitle={Book Title}, +edition={3rd}, +publisher={Publisher}, +address={City}, +year={2017}, +chapter={9}, +pages={201--213}, +note={Note here}} + +@incollection{sampincollection2, +author={A. N. Author}, +editor={A. N. Editor}, +title={Title in Book}, +booktitle={Book Title}, +volume={4}, +publisher={Publisher}, +year={2017}, +pages={201--213}} + + +@inbook{sampinbook, +author={A. N. Author}, +title={Book Title}, +edition={3rd}, +publisher={Publisher}, +address={City}, +year={2017}, +chapter={9}, +pages={201--213}, +note={Note here}} + +@inbook{sampinbook2, +editor={A. N. Editor}, +title={Book Title}, +address={City, State}, +publisher={Publisher}, +volume={44}, +year={2017}, +pages={201--203}} + +@inbook{sampinbook3, +Address = {San Diego}, +Publisher = {Academic}, +Author={A. N. Norris}, +Booktitle={Nonlinear Acoustics}, +Title={Finite-amplitude wave in solids}, +Editor={M. F. Hamilton and D. T. Blackstock}, +series={{S}pecial {S}eries in honor of {C}ataloguing}, +Chapter={9}, +Year={1998}, +Pages={263--277}} + + +@book{sampbook, +author={A. N. Author}, +title={Book Title}, +publisher={Publisher}, +address={City}, +year={2017}, +pages={201--213}, +note={Note here}} + +@book{sampbook2, +editor={A. N. Editor}, +title={Book Title}, +address={City, State}, +publisher={Publisher}, +year={2017}, +pages={201}} + +@book{sampbook3, +editor={A. N. Editor}, +title={Book Title}, +publisher={Publisher}, +year={2017}} + + +@article{samparticle, +author={A. N. Author}, +title={Article Title}, +journal={Journal}, +publisher={Publisher}, +year={2017}, +volume ={213}, +number={99}, +pages={201--213}, +month={January}, +note={Note here}} + +@article{samparticle2, +Author={A. N. Author}, +title={Article Title}, +journal={Journal}, +publisher={Publisher}, +year={2017}, +number={99}, +pages={201--213}, +month={January}, +} + + +@article{inpress1, +Address= {New York}, +Author={D. Beak and M. Willatzen and J. A. Jensen}, +Publisher = {McGraw-Hill}, +Title ={Parameter sensitivity study of a {F}ield {II} multilayer transducer model +on a convex transducer}, +Volume ={135}, +Journal= {Proc.-IEEE Untrason. Symp.}, +Note= {in press (2011)}} + +@book{inpress2, +Author = {K. Smith}, +Title ={Acoustics}, +Year={2011}, +Publisher={Springer}, +Address={New York}, +Note={in press}} + +@book{inpressSmith, +Author = {K. Smith}, +Title ={Acoustics}, +Publisher={Springer}, +Address={New York}, +Note={(in press, 2016)} +} + + +@incollection{inpress3, +Author={A. Tolstoy}, +Title ={Using low frequencies for geoacoustic inversion}, +Booktitle={Theoretical and Computational Acoustics 2010}, +year={2010}, +Note= {{D}resden, {G}ermany (in press)}} + + + +@incollection{sampincollection3, +Address = {San Diego}, +Publisher = {Academic}, +Author={A. N. Norris}, +Booktitle={Nonlinear Acoustics}, +Title={Finite-amplitude wave in solids}, +Editor={M. F. Hamilton and D. T. Blackstock}, +Chapter={9}, +Year={1998}, +Pages={263--277}} + +@incollection{sampincollection4, +Address = {New York}, +Publisher = {Academic}, +Author={H. E. Bass and L. C. Sutherland and +J. Piercy and L. Evans}, +Booktitle={Physical Acoustics}, +Editor={W. P. Mason and R. N. Thurston}, +chapter={1}, +Year={1984}} + + +@incollection{antibayes, +Address = {Cambridge}, +Author = {G. Baggio and K. Stenning and M. van Lambalgen}, +Booktitle = {Cambridge {H}andbook of {F}ormal {S}emantics}, +Date-Added = {2014-02-06 15:25:25 +0100}, +Date-Modified = {2014-02-06 15:28:59 +0100}, +Editor = {M. Aloni and P. Dekker}, +Publisher = {Cambridge {U}niversity {P}ress}, +Title = {The {C}ognitive {I}nterface}, +Year = {in press}} + + +@book{booksamp1, +Address= {New York}, +Author={J. P. Hollman}, +Publisher = {McGraw-Hill}, +Title ={Heat Transfer}, +Edition={8th}, +Year={1997}, +Pages={55}} + +@book{booksamp2, +Address = {Mahwah, New Jersey}, +Author = {J. R. Anderson}, +Publisher = {Lawrence {E}rlbaum {A}ssociates}, +Title = {The architecture of cognition}, +Year = {1983}, +Pages = {121--133}} + +@book{booksamp3, +Address = {Mahwah, New Jersey}, +Author = {G. R. Anderson}, +Publisher = {Lawrence {E}rlbaum {A}ssociates}, +Title = {No pagenumber test}, +Year = {1983}} + +@book{booksamp4, +author={D. M. Green and J. A. Swets}, +year={1988}, +title={Signal Detection Theory and Psychophysics}, +chapter={4}, +edition={revised}, +address={Los Altos, CA}, +publisher={Peninsula}} + +@article{joursamp1, +author = {R. S. Christian and R. E. Davies and A. B. Tubis and C. A. Anderson}, +title = {Effects of air loading on tympani membrane vibrations}, +journal = {J. Acoust. Soc. Am.}, +pages = {1336--1345}, +volume = {76}, +year = {1984}} + +@article{joursamp2, +Author = {T. R. Moore}, +Journal = {J. Acoust. Soc. Am.}, +Title = {Imaging vibrations and flow using electronic speckle pattern +interferometry}, +Volume = {120}, +Pages={3364}, +Year = {2006}} + + +@article{joursamp2b, +Author = {J. Pijnacker and B. Geurts and M. van Lambalgen and J. Buitelaar and P. Hagoort}, +Date-Added = {2014-02-06 15:14:32 +0100}, +Date-Modified = {2014-02-06 15:17:39 +0100}, +Journal = {Journal of {C}ognitive {N}euroscience}, +Number = {2}, +Pages = {471}, +Title = {Reasoning with Exceptions: An Event-related Brain Potentials Study}, +Volume = {23}, +Year = {2010}} + +@article{joursamp3, +Author = {J. C. Webster and R. G. Klumpp}, +Journal = {J. Acoust. Soc. Am.}, +Pages = {936--941}, +Title = {Effects of ambient noise and nearby talkers on a face-to-face communication +task}, +Volume = {34}, +Year = {1962}} + +@ARTICLE{joursamp4, + author = {Zahn, Ista}, + title = {Learning to {S}weave in {APA} style}, + journal = {The Prac\TeX\ Journal}, + year = {2008}, + volume = {2008}, + number = {1} +} + +@incollection{antibayes, +Address = {Cambridge}, +Author = {G. Baggio and K. Stenning and M. van Lambalgen}, +Booktitle = {Cambridge {H}andbook of {F}ormal {S}emantics}, +Date-Added = {2014-02-06 15:25:25 +0100}, +Date-Modified = {2014-02-06 15:28:59 +0100}, +Editor = {M. Aloni and P. Dekker}, +Publisher = {Cambridge {U}niversity {P}ress}, +Title = {The {C}ognitive {I}nterface}, +Year = {in press}} + +@article{pijnacker2, +Author = {J. Pijnacker and B. Geurts and M. van Lambalgen and J. Buitelaar and P. Hagoort}, +Date-Added = {2014-02-06 15:14:32 +0100}, +Date-Modified = {2014-02-06 15:17:39 +0100}, +Journal = {Journal of {C}ognitive {N}euroscience}, +Number = {2}, +Pages = {471--479}, +Title = {Reasoning with Exceptions: An Event-related Brain Potentials Study}, +Volume = {23}, +Year = {2010}} + +@incollection{integrity_const, +Author = {Godfrey, P. and Grant, J. and Gryz, J. and Minker, J.}, +Booktitle = {Logics for {D}atabases and {I}nformation {S}ystems}, +Date-Added = {2014-02-03 15:27:38 +0100}, +Date-Modified = {2014-02-08 11:53:32 +0100}, +Editor = {Chomicki, J. and Saake, G.}, +Pages = {265--306}, +Publisher = {Springer {US}}, +Series = {The {K}luwer {I}nternational {S}eries in {E}ngineering and {C}omputer {S}cience}, +Title = {Integrity Constraints: Semantics and Applications}, +Volume = {436}, +Year = {1998}} + diff --git a/inst/rmarkdown/templates/jasa/skeleton/skeleton.Rmd b/inst/rmarkdown/templates/jasa/skeleton/skeleton.Rmd new file mode 100644 index 000000000..6a2d5ee6e --- /dev/null +++ b/inst/rmarkdown/templates/jasa/skeleton/skeleton.Rmd @@ -0,0 +1,177 @@ +--- +title: This is a title and this is too +shorttitle: A subtitle goes on another line +author: +- name: Author's name + affiliation: Author's affiliation + email: e-mail\@uni.edu + thanks: other info +- name: Second author's name + affiliation: Second author's affiliation +output: rticles::jasa_article +abstract: | + Put your abstract here. Abstracts are limited to 200 words for + regular articles and 100 words for Letters to the Editor. Please no + personal pronouns, also please do not use the words ``new'' and/or + ``novel'' in the abstract. An article usually includes an abstract, a + concise summary of the work covered at length in the main body of the + article. + +# The following prints the current date (optional, set to false to remove). +date: true +classoption: + - preprint # Set to "reprint" to use the reprint style. +# The reprint style typesets the manuscript with two columns and 10pt font size. +# - NumberedRefs # Uncomment to use numbered references rather than the default author-year style. +# - trackchanges # Uncomment to track changes in the manuscript. (Use with preprint option). +# - 12pt # Uncomment this to check if you exceeded the 12 page limit. (Use with reprint option). +# - TurnOnLineNumbers # Uncomment to add line numbers in reprint. (Use with reprint.) + +# When using the preprint style, use the following to add a notice on the first page (optional). +preprint_notice: "Author-name, JASA" +bibliography: sampbib.bib + +# The Author-Year style is the default. If you want to use the numeric style, +# use "jasanum2.bst" instead. +biblio-style: jasaauthyear2.bst +--- + +```{r setup, include=FALSE} +# Use fig.process to rename figure files generated by R so that they comply with +# the journal naming policies. Remember to name plot chunks with the format +# "Figure1", "Figure2", etc... You will find the figure files in +# `[...]_files/figure-latex/`. + +knitr::opts_chunk$set( + echo = TRUE, + out.width="\\reprintcolumnwidth", + fig.process = function(x) { + x2 = sub('-\\d+([.][a-z]+)$', '\\1', x) + if (file.rename(x, x2)) x2 else x + } +) + +# The JASA LaTeX class depends on the LaTeX package "revtex4-1". If you are +# using a full LaTeX distro, you should make sure "revtex4-1" is installed, and +# install it if not. If you are using TinyTeX, the following code will take care +# of installing the package for you. + +if (tinytex:::is_tinytex() && !tinytex:::check_installed('revtex4-1')) { + tinytex::tlmgr_install("revtex4-1") +} +``` + +# Introduction + +This sample document demonstrates the use of JASA in manuscripts +prepared for submission to the Journal of the Acoustical Society of America. + +# Figures {#figures} + +```{r Figure1, echo=FALSE, fig.cap="Caption."} +knitr::include_graphics("figsamp.jpg") +``` + +The only figure formats allowed for submission are the following: `.pdf`, `.ps`, `.eps`, or `.jpg`. +Figure files must be named in this fashion: +`Figure\#.xxx`, where `\#` is the figure number and `xxx` is the file format +(`Figure1.eps`, `Figure2.jpg`, `Figure3a.ps`, `Figure3b.ps`, etc). + +```{r Figure2, echo=FALSE, fig.cap="A sine wave."} +t <- seq(0, 10, 0.1) +y <- sin(t) +plot(t, y, type = "l", xlab = "time", ylab = "Sine wave") +``` + + +# Inline and display math samples + +You can also include inline math, like $\sum\nolimits_{i=1}^N a_i$. + +The following is a matrix. + +$$ +A_{m,n} = + \begin{pmatrix} + a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\ + a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\ + \vdots & \vdots & \ddots & \vdots \\ + a_{m,1} & a_{m,2} & \cdots & a_{m,n} + \end{pmatrix} +$$ + + + +# Citations + +The code `[@key]` should usually be used for making +citations surrounded by parentheses, where `key` is the BibTeX cite-key. +If you need only the year in parentheses, you may use `@key`. + +Some examples: + +- Normal journal cite: [@joursamp1] + +- Volume number with issue number: [@joursamp3] + +- Journal article published online, not yet printed: [published +online, @sampMisc2] + +- Book reference: [@booksamp1] + +- In press: [in press, @inpress2] + +- Website: [@websiteauthyear] + +- Inproceedings: [@sampinproceedings3]. + + + + +::: {.acknowledgments data-latex=""} +This research was supported by ... +::: + + +\appendix + +To start the appendix, use the `\appendix` command. +This signals that all following section commands refer to appendixes +instead of regular sections. Therefore, the `\appendix` command +should be used only once---to set up the section commands to act as +appendices. Thereafter normal section commands are used. The heading +for a section can be left empty. For example, + +```latex +\appendix + +# +``` + +will produce an appendix heading that says "APPENDIX A" and + +```latex +\appendix + +# Background +``` + +will produce an appendix heading that says "APPENDIX A: BACKGROUND" +(note that the colon is set automatically). + +If there is only one appendix, then the letter "A" should not +appear. This is suppressed by using the star version of the appendix +command (`\appendix*` in the place of `\appendix`). + +# A little more on appendices + +Observe that this appendix was started by using + +```markdown +# A little more on appendices +``` + +Note the equation number in an appendix: + +$$E=mc^2$$ + diff --git a/inst/rmarkdown/templates/jasa/template.yaml b/inst/rmarkdown/templates/jasa/template.yaml new file mode 100644 index 000000000..6202aadcf --- /dev/null +++ b/inst/rmarkdown/templates/jasa/template.yaml @@ -0,0 +1,4 @@ +name: JASA Article +description: > + Template for articles of the Journal of the Acoustical Society of America +create_dir: true diff --git a/man/article.Rd b/man/article.Rd index efaa28575..5737743dd 100644 --- a/man/article.Rd +++ b/man/article.Rd @@ -15,6 +15,7 @@ \alias{ctex} \alias{elsevier_article} \alias{frontiers_article} +\alias{jasa_article} \alias{lipics_article} \alias{mdpi_article} \alias{mnras_article} @@ -77,6 +78,13 @@ elsevier_article( frontiers_article(..., keep_tex = TRUE) +jasa_article( + ..., + keep_tex = TRUE, + latex_engine = "xelatex", + citation_package = "natbib" +) + lipics_article( ..., latex_engine = "xelatex", @@ -196,6 +204,12 @@ custom Pandoc LaTeX template and different default values for other arguments \url{https://www.frontiersin.org/about/author-guidelines}. } +\section{\code{jasa_article}}{ + Format for creating submissions to the + Journal of the Acoustical Society of America. Adapted from + \url{https://acousticalsociety.org/preparing-latex-manuscripts/}. +} + \section{\code{lipics_article}}{ Format for creating submissions to LIPIcs - Leibniz International Proceedings Informatics - articles. diff --git a/tests/testit/test-formats.R b/tests/testit/test-formats.R index 627dc3852..ffd8aba8c 100644 --- a/tests/testit/test-formats.R +++ b/tests/testit/test-formats.R @@ -44,6 +44,7 @@ if (xfun::is_linux()) test_format("ctex") # only on linux due to fonts requireme test_format("elsevier") test_format("frontiers") test_format("ieee") +test_format("jasa") test_format("joss") test_format("jss") test_format("lipics")