sagej.cls 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585
  1. %---------------------------------------------------------------------------
  2. %Please be aware that the use of this LaTeX class file is governed by the
  3. %following conditions:
  4. %
  5. % based on the original LaTeX ARTICLE DOCUMENT STYLE
  6. % Copyright (C) 1988, 1989 by Leslie Lamport
  7. %
  8. % Copyright (c) 2013 SAGE Publications. All rights reserved.
  9. %
  10. %Rules of Use
  11. %
  12. %% You are NOT ALLOWED to change this file.
  13. %
  14. %
  15. %This class file is made available for use by authors who wish to prepare an
  16. %article for publication in a SAGE Publications journal.
  17. %The user may not exploit any part of the class file commercially.
  18. %
  19. %This class file is provided on an `as is' basis, without warranties of any
  20. %kind, either expressed or implied, including but not limited to warranties of
  21. %title, or implied warranties of merchantablility or fitness for a
  22. %particular purpose. There will be no duty on the author[s] of the software
  23. %or SAGE Publications to correct any errors or defects in the software.
  24. %Any statutory rights you may have remain unaffected by your acceptance of
  25. %these rules of use.
  26. %---------------------------------------------------------------------------
  27. %
  28. % Created by Alistair Smith, Sunrise Setting Ltd, 27 July 2013
  29. %
  30. % sagej.cls --- For SAGE Publications
  31. %
  32. % 9/6/15 Endnote bug fix.
  33. % 24/6/15 Add "comma" to vancouver natbib line; remove figure extension; Review option added.
  34. % 14/1/17 SAGE graphic removed and replaced by drawn box.
  35. \def\update{2017/01/17 v1.20}
  36. \newcommand{\journalclass}{sagej.cls}
  37. \newcommand{\journalclassshort}{sagej}
  38. %\newcommand{\DOI}{XXX}
  39. \NeedsTeXFormat{LaTeX2e}
  40. \ProvidesClass{sagej}[\update\ \journalclass]
  41. %\newcommand\hmmax{0}
  42. \newif\if@timesfont
  43. \DeclareOption{times}{%
  44. \@timesfonttrue}
  45. \newif\if@doublespace
  46. \DeclareOption{doublespace}{%
  47. \@doublespacetrue}
  48. \newif\if@sageh
  49. \DeclareOption{sageh}{%
  50. \@sagehtrue}
  51. \newif\if@sagev
  52. \DeclareOption{sagev}{%
  53. \@sagevtrue}
  54. \newif\if@sageapa
  55. \DeclareOption{sageapa}{%
  56. \@sageapatrue}
  57. %Setup the trim and text areas
  58. \newif\if@shortAfour
  59. \DeclareOption{shortAfour}{%
  60. \@shortAfourtrue}
  61. \newif\if@Afour
  62. \DeclareOption{Afour}{%
  63. \@Afourtrue}
  64. \newif\if@MCfour
  65. \DeclareOption{MCfour}{%
  66. \@MCfourtrue}
  67. \newif\if@PCfour
  68. \DeclareOption{PCfour}{%
  69. \@PCfourtrue}
  70. \newif\if@Royal
  71. \DeclareOption{Royal}{%
  72. \@Royaltrue}
  73. \newif\if@Crown
  74. \DeclareOption{Crown}{%
  75. \@Crowntrue}
  76. \newif\if@Review
  77. \DeclareOption{Review}{%
  78. \@Reviewtrue}
  79. \DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
  80. \ProcessOptions
  81. \LoadClass{article}
  82. \if@timesfont
  83. \RequirePackage{times}
  84. \usepackage[scaled=.95]{helvet}
  85. \fi
  86. \if@doublespace
  87. \RequirePackage[onehalfspacing]{setspace}
  88. \fi
  89. \RequirePackage{graphicx}
  90. \RequirePackage{latexsym,ifthen,rotating,calc,textcase,booktabs,color,endnotes}
  91. \RequirePackage{amsfonts,amssymb,amsbsy,amsmath,amsthm}
  92. %\RequirePackage{bm}
  93. \RequirePackage[errorshow]{tracefnt}
  94. \@twosidetrue
  95. \flushbottom
  96. \frenchspacing
  97. \let\sagesf\sf
  98. \if@PCfour
  99. \let\sagesf\rm
  100. \fi
  101. %papersize={width,height}
  102. \if@shortAfour
  103. \usepackage[text={170.5mm,226mm},%
  104. papersize={210mm,280mm},%
  105. columnsep=12pt,%
  106. headsep=21pt,%
  107. centering]{geometry}
  108. \usepackage{ftnright}
  109. \fi
  110. %papersize={width,height}
  111. \if@Afour
  112. \usepackage[text={174mm,258mm},%
  113. papersize={210mm,297mm},%
  114. columnsep=12pt,%
  115. headsep=21pt,%
  116. centering]{geometry}
  117. \usepackage{ftnright}
  118. \fi
  119. %papersize={width,height}
  120. \if@MCfour
  121. \usepackage[text={151.5mm,196mm},%
  122. papersize={189mm,246mm},%
  123. columnsep=12pt,%
  124. headsep=21pt,%
  125. centering]{geometry}
  126. \usepackage{ftnright}
  127. \fi
  128. %papersize={width,height}
  129. \if@PCfour
  130. \usepackage[text={138mm,198mm},%
  131. papersize={170mm,242mm},%
  132. columnsep=12pt,%
  133. headsep=21pt,%
  134. centering]{geometry}
  135. \usepackage{ftnright}
  136. \fi
  137. %papersize={width,height}%single column
  138. \if@Royal
  139. \usepackage[text={124mm,185mm},%
  140. papersize={156mm,234mm},%
  141. columnsep=12pt,%
  142. headsep=21pt,%
  143. centering]{geometry}
  144. \fi
  145. %papersize={width,height}%single column
  146. \if@Crown
  147. \usepackage[text={146.5mm,183mm},%
  148. papersize={7.25in,9.5in},%
  149. columnsep=12pt,%
  150. headsep=21pt,%
  151. centering]{geometry}
  152. \fi
  153. %For Review Single column, 12pt
  154. \if@Review
  155. \usepackage[text={124mm,185mm},%
  156. papersize={156mm,234mm},%
  157. columnsep=12pt,%
  158. headsep=21pt,%
  159. centering]{geometry}
  160. \renewcommand{\normalsize}{\fontsize{12}{14pt}\selectfont}
  161. \fi
  162. \parindent 1em
  163. \hyphenpenalty=1000
  164. \pretolerance=8000
  165. \tolerance=9500
  166. \hbadness=8000
  167. \vbadness=9000
  168. \displaywidowpenalty=0
  169. \clubpenalty=10000
  170. \widowpenalty=10000
  171. \lefthyphenmin=3%
  172. \righthyphenmin=3%
  173. \brokenpenalty=10000%
  174. \thinmuskip = 3mu
  175. \medmuskip = 4mu
  176. \thickmuskip = 5mu
  177. \setcounter{topnumber}{10}
  178. \def\topfraction{1}
  179. \setcounter{bottomnumber}{10}
  180. \def\bottomfraction{0.8}
  181. \setcounter{totalnumber}{10}
  182. \def\textfraction{0}
  183. \renewcommand{\floatpagefraction}{0.95}
  184. \setcounter{dbltopnumber}{10}
  185. \renewcommand{\dblfloatpagefraction}{0.95}
  186. \renewcommand{\dbltopfraction}{1}
  187. \renewcommand\small{%
  188. \@setfontsize\small\@ixpt{10.5}%
  189. \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
  190. \abovedisplayshortskip \z@ \@plus2\p@
  191. \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
  192. \def\@listi{\leftmargin\leftmargini
  193. \topsep 4\p@ \@plus2\p@ \@minus2\p@
  194. %\parsep 2\p@ \@plus\p@ \@minus\p@
  195. \itemsep \parsep}%
  196. \belowdisplayskip \abovedisplayskip
  197. }
  198. \newcommand{\refsize}{\fontsize{9}{12pt}\selectfont}
  199. \renewcommand{\footnotesize}{\fontsize{8}{10pt}\selectfont}
  200. \renewcommand{\scriptsize}{\fontsize{7.0}{8.5pt}\selectfont}
  201. \renewcommand{\large}{\fontsize{12}{14pt}\selectfont}
  202. \newcommand{\titlesize}{\fontsize{18.0}{20pt}\selectfont}
  203. \newbox\absbox
  204. \def\abstract{\lrbox\absbox\minipage{\textwidth}%
  205. \sagesf\normalsize%
  206. \section*{\normalsize Abstract}\vskip -1.5mm%
  207. }
  208. \def\endabstract{\endminipage\endlrbox}
  209. \def\keywords#1{%
  210. \gdef\@keywords{\begin{minipage}{\textwidth}{\normalsize\sagesf \textbf{Keywords}}\\ \parbox[t]{\textwidth}{#1}\end{minipage}}}
  211. \let\@keywords\@empty
  212. \skip\footins 20pt plus 8pt
  213. %\gdef\footnoterule{}
  214. \def\footnoterule{\kern-3\p@
  215. \hrule \@width \columnwidth \kern 3mm}
  216. \renewcommand{\thefootnote}{\fnsymbol{footnote}}
  217. \long\def\@makefntext#1{\parindent 1em%
  218. \noindent{$\m@th^{\@thefnmark}$}#1}
  219. \newcommand{\email}[1]{%
  220. \gdef\@email{%
  221. \footnotetext[0]{\sagesf Email: #1}}}
  222. \let\@email\@empty
  223. \def\corrauth#1{\gdef\@corrauth{%
  224. \footnotetext[0]{\par\vskip-3pt\sagesf\noindent\textbf{Corresponding author:}\\ #1}}}
  225. \let\@corrauth\@empty
  226. \def\affiliation#1{%
  227. \gdef\@affiliation{%
  228. \footnotetext[0]{\sagesf #1}}}
  229. \let\@affiliation\@empty
  230. \def\affilnum#1{${}^{\text{{#1}}}$}
  231. \renewcommand\maketitle{\par
  232. \begingroup
  233. \if@twocolumn
  234. \ifnum \col@number=\@ne
  235. \@maketitle
  236. \else
  237. \twocolumn[\@maketitle]%
  238. \fi
  239. \else
  240. \newpage
  241. \global\@topnum\z@ % Prevents figures from going at top of page.
  242. \@maketitle
  243. \fi
  244. \thispagestyle{title}\label{FirstPage}\@affiliation\@corrauth\@email%
  245. \endgroup
  246. %\setcounter{footnote}{0}%
  247. \global\let\affiliation\relax
  248. \global\let\thanks\relax
  249. \global\let\maketitle\relax
  250. \global\let\@maketitle\relax
  251. \global\let\@thanks\@empty
  252. \global\let\@author\@empty
  253. \global\let\@date\@empty
  254. \global\let\@title\@empty
  255. \global\let\@affiliation\@empty
  256. \global\let\title\relax
  257. \global\let\author\relax
  258. \global\let\date\relax
  259. \global\let\and\relax
  260. }
  261. \def\@maketitle{%
  262. \if@Royal
  263. \vspace*{-20pt}
  264. \fi
  265. \if@Crown
  266. \vspace*{-20pt}
  267. \fi
  268. \vspace*{-34pt}%
  269. \null%
  270. \begin{center}
  271. \if@PCfour
  272. \begin{rm}
  273. \else
  274. \begin{sf}
  275. \fi
  276. \begin{minipage}[t]{\textwidth-57.625mm}
  277. \vskip 12.5pt%
  278. {\raggedright\titlesize\textbf{\@title} \par}%
  279. \vskip 1.5em%
  280. \vskip 12.5mm%
  281. \end{minipage}\hspace{15mm}\begin{minipage}[t]{42.625mm}
  282. \hbox{}\scriptsize\journalname\\
  283. \hbox{}\volumenumber(\issuenumber):\startpage--\endpage\\
  284. \hbox{}\copyright The Author(s) \volumeyear\\
  285. \hbox{}Reprints and permission:\\
  286. \hbox{}sagepub.co.uk/journalsPermissions.nav\\
  287. \hbox{}DOI: 10.1177/ToBeAssigned\\
  288. \hbox{}www.sagepub.com/\\[2.3pt]
  289. %\hbox{}\includegraphics[height=4mm]{SAGE_Logo}
  290. \hbox{}{\fboxsep 1.5pt\framebox[14mm]{{\normalsize SAGE}}}
  291. \end{minipage}
  292. {\par\large%
  293. \if@Royal
  294. \vspace*{6mm}
  295. \fi
  296. \if@Crown
  297. \vspace*{6mm}
  298. \fi%
  299. \lineskip .5em%
  300. {\raggedright\textbf{\@author}
  301. \par}}
  302. \vskip 40pt%
  303. {\noindent\usebox\absbox\par}
  304. {\vspace{20pt}%
  305. %
  306. {\noindent\normalsize\@keywords}\par}
  307. \if@PCfour
  308. \end{rm}
  309. \else
  310. \end{sf}
  311. \fi
  312. \end{center}
  313. \if@Royal
  314. \vspace*{-4.5mm}
  315. \fi
  316. \if@Crown
  317. \vspace*{-4.5mm}
  318. \fi
  319. \vspace{22pt}
  320. \par%
  321. }
  322. \def\startpage{\pageref{FirstPage}}
  323. \def\endpage{\pageref{LastPage}}
  324. \def\volumeyear{0000}
  325. \def\volumenumber{XX}
  326. \def\issuenumber{X}
  327. \def\journalname{Journal Title}
  328. \def\runninghead#1{\markboth{{#1}}{}}
  329. \def\ps@title{%
  330. \def\@oddhead{\parbox{\textwidth}{\mbox{}\\[-1pt]%
  331. \noindent\rule{\textwidth}{0.5pt}%
  332. }}%
  333. \let\@evenhead\@oddhead
  334. \def\@oddfoot{\parbox[t]{\textwidth}{%
  335. {\scriptsize{\it Prepared using \textsf{\journalclass} [Version: \update]}}}}
  336. \let\@evenfoot\@oddfoot}
  337. \def\ps@sagepage{%
  338. \let\@mkboth\@gobbletwo
  339. \def\@evenhead{\parbox{\textwidth}{%
  340. \normalsize\sagesf\thepage\hfill\itshape\journalname\ \volumenumber(\issuenumber)\\[-6pt]
  341. \noindent\rule{\textwidth}{0.25pt}}}
  342. \def\@oddhead{\parbox{\textwidth}{%
  343. \normalsize\sagesf{\itshape{\leftmark}}\hfill\thepage\\[-6pt]
  344. \noindent\rule{\textwidth}{0.25pt}}}
  345. \def\@evenfoot{\parbox[t]{\textwidth}{%
  346. \scriptsize{\it Prepared using \textsf{\journalclass}}}}
  347. \def\@oddfoot{\@evenfoot}
  348. }
  349. %\renewcommand{\@seccntformat}[1]{{\csname the#1\endcsname.}\hspace{0.5em}}
  350. \setcounter{secnumdepth}{-2}
  351. \newdimen\@bls
  352. \@bls=\baselineskip
  353. \renewcommand\section{\@startsection {section}{1}{\z@}%
  354. {1.2\@bls plus .3\@bls minus .1\@bls}%
  355. {5pt\@afterindentfalse}%
  356. {\sagesf\large\bfseries\raggedright}}
  357. \renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
  358. {0.9\@bls plus .3\@bls minus .1\@bls}%
  359. {4pt\@afterindentfalse}%
  360. {\sagesf\large\itshape\raggedright}}
  361. \renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
  362. {0.5\@bls plus .3\@bls minus .1\@bls}%
  363. {-0.5em\@afterindentfalse}%
  364. {\sagesf\normalsize\itshape}}
  365. \renewcommand\paragraph{\@startsection{paragraph}{4}{1em}%
  366. {0.3\@bls plus .3\@bls minus .1\@bls}%
  367. {-0.5em\@afterindentfalse}%
  368. {\sagesf\normalsize\itshape}}
  369. \def\enumerate{\ifnum \@enumdepth >3 \@toodeep\else
  370. \advance\@enumdepth \@ne
  371. \edef\@enumctr{enum\romannumeral\the\@enumdepth}\list
  372. {\csname label\@enumctr\endcsname}{\usecounter
  373. {\@enumctr}\itemsep 0pt\parsep 0pt
  374. \def\makelabel##1{\hss\llap{##1}}}\fi}
  375. \let\endenumerate =\endlist
  376. \def\itemize{\ifnum \@itemdepth >3 \@toodeep\else \advance\@itemdepth \@ne
  377. \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
  378. \list{\csname\@itemitem\endcsname}{\itemsep 0pt\parsep 0pt
  379. \def\makelabel##1{\hss\llap{##1}}}\fi}
  380. \let\enditemize =\endlist
  381. \RequirePackage{caption}
  382. \DeclareCaptionLabelSeparator{sageperiod}{.\hspace*{1ex}}
  383. \captionsetup[figure]{font=small,labelfont={sf,bf},textfont=sf,labelsep=sageperiod,justification=raggedright,singlelinecheck=false}
  384. \captionsetup[table]{position=top,labelsep=sageperiod,font=small,labelfont={sf,bf},textfont=sf,justification=raggedright,skip=2pt,singlelinecheck=false}
  385. \def\@begintheorem#1#2[#3]{%
  386. \deferred@thm@head{\the\thm@headfont \thm@indent
  387. \@ifempty{#1}{\let\thmname\@gobble}{\let\thmname\@iden}%
  388. \@ifempty{#2}{\let\thmnumber\@gobble}{\let\thmnumber\@iden}%
  389. \@ifempty{#3}{\let\thmnote\@gobble}{\let\thmnote\@iden}%
  390. \thm@swap\swappedhead\thmhead{#1}{#2\the\thm@headpunct}{#3}%
  391. %\the\thm@headpunct
  392. \thmheadnl % possibly a newline.
  393. \hskip\thm@headsep
  394. }%
  395. \ignorespaces}
  396. \def\thmhead@plain#1#2#3{%
  397. \thmname{#1}\thmnumber{\@ifnotempty{#1}{ }{#2}}%
  398. \thmnote{ {\the\thm@notefont #3. }}}
  399. \newenvironment{acks}[1]%
  400. {\subsection*{\normalsize\sagesf\bfseries Acknowledgements}\begin{refsize}\noindent #1}%
  401. {\end{refsize}}
  402. \newenvironment{funding}[1]%
  403. {\subsection*{\normalsize\sagesf\bfseries Funding}\begin{refsize}\noindent #1}%
  404. {\end{refsize}}
  405. \newenvironment{sm}[1]%
  406. {\subsection*{\normalsize\sagesf\bfseries Supplemental material}\begin{refsize}\noindent #1}%
  407. {\end{refsize}}
  408. \newenvironment{dci}[1]%
  409. {\subsection*{\normalsize\sagesf\bfseries Declaration of conflicting interests}\begin{refsize}\noindent #1}%
  410. {\end{refsize}}
  411. \newenvironment{biog}[1]%
  412. {\subsection*{\normalsize\sagesf\bfseries Author biography}\begin{refsize}\noindent #1}%
  413. {\end{refsize}}
  414. \newenvironment{biogs}[1]%
  415. {\subsection*{\normalsize\sagesf\bfseries Author Biographies}\begin{refsize}\noindent #1}%
  416. {\end{refsize}}
  417. %Endnotes
  418. \def\enotesize{\refsize}
  419. \def\enoteheading{\subsection*{\normalsize\sagesf\bfseries\notesname}%
  420. \mbox{}\par\vskip-\baselineskip}
  421. %\renewcommand\makeenmark{\theenmark.\hspace{0.75em}}
  422. \renewcommand{\enoteformat}{%
  423. \rightskip\z@ \leftskip15pt \parindent=0pt
  424. \leavevmode{\makebox[0cm][r]{%
  425. \hbox to15pt{\@theenmark.\hfill}}}}
  426. \newtheoremstyle{sage}
  427. {6pt plus 2pt minus 2pt}% space above
  428. {6pt plus 2pt minus 2pt}% space below
  429. {\it}% Body font
  430. {}% Indent amount
  431. {\bfseries}% Theorem head font
  432. {.}% Punctuation after theorem head
  433. {0.75em}% Space after theorem head
  434. {}% Theorem head spec
  435. \theoremstyle{sage}
  436. \renewenvironment{proof}[1][\proofname]{\par
  437. %AS\pushQED{\qed}%
  438. \normalfont \topsep6\p@\@plus6\p@\relax
  439. \trivlist
  440. \item[\hskip\labelsep
  441. \bfseries
  442. #1\@addpunct{.}]\ignorespaces
  443. }{%
  444. %AS\popQED
  445. \endtrivlist\@endpefalse
  446. }
  447. %\renewenvironment{thebibliography}{%
  448. %\section*{\normalsize\refname}
  449. %\list{}{\topsep=0\p@\parsep=0\p@
  450. %\partopsep=0\p@\itemsep=1\p@\labelsep=0\p@\itemindent=-20\p@
  451. %\labelwidth=0\p@\leftmargin=20\p@
  452. %}\refsize\rm
  453. %\def\newblock{\ }
  454. %\sloppy\clubpenalty4000\widowpenalty4000
  455. %\sfcode`\.=1000\relax}{\endlist}
  456. \if@sageh
  457. \usepackage{natbib}
  458. \bibpunct{(}{)}{;}{}{}{,}
  459. \setlength{\bibsep}{1pt}
  460. \setlength{\bibhang}{16pt}
  461. \renewcommand{\bibfont}{\refsize}
  462. \renewcommand\refname{{\normalsize References}}
  463. \fi
  464. \if@sagev
  465. \usepackage[super,sort&compress,comma]{natbib}
  466. %\bibpunct{(}{)}{;}{}{}{,}
  467. \renewcommand{\bibnumfmt}[1]{#1.}
  468. \setlength{\bibsep}{0pt}
  469. %\setlength{\bibhang}{20pt}
  470. \renewcommand{\bibfont}{\refsize}
  471. \renewcommand\refname{{\normalsize References}}
  472. \fi
  473. \if@sageapa
  474. %\usepackage{apalike}
  475. \usepackage{mslapa}
  476. \setlength{\bibhang}{16pt}
  477. \@ifundefined{chapter}{\def\thebibliography#1{\section*{\refname}\list
  478. {\relax}{\setlength{\labelsep}{0em}
  479. \setlength{\itemindent}{-\bibhang}
  480. \setlength{\leftmargin}{\bibhang}
  481. \setlength{\itemsep}{0pt}
  482. \parsep 0pt}%AS
  483. \def\newblock{\hskip .11em plus .33em minus .07em}
  484. \sloppy\clubpenalty4000\widowpenalty4000
  485. \sfcode`\.=1000\relax}}%
  486. \fi
  487. \AtEndDocument{%
  488. \label{LastPage}}
  489. \pagestyle{sagepage}
  490. \if@shortAfour
  491. \twocolumn
  492. \fi
  493. \if@Afour
  494. \twocolumn
  495. \fi
  496. \if@MCfour
  497. \twocolumn
  498. \fi
  499. \if@PCfour
  500. \twocolumn
  501. \fi
  502. \normalsize
  503. \sloppy