[466] | 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 2 | %%%%%%%%%%%%%%%%%%%%%%%%% JINST.cls 1.0.1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 3 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 4 | %% |
---|
| 5 | %% This file is Copyright JINST 2006: it can be freely distributed but |
---|
| 6 | %% NOT modified preserving its name, even in similar forms. |
---|
| 7 | %% |
---|
| 8 | %% JINST.cls is a LaTeX2e class file used to typeset manuscripts in |
---|
| 9 | %% Journal of Instrumentation (http://jinst.sissa.it) style. It was |
---|
| 10 | %% written by P. Dall'Aglio as a modification of the class JHEP3.cls |
---|
| 11 | %% |
---|
| 12 | %% JINST.cls is only for internal use of the JINST typesetting office. |
---|
| 13 | %% |
---|
| 14 | %% For bugs, comments, suggestions email to jinst-eo@jhep.sissa.it |
---|
| 15 | %% |
---|
| 16 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 17 | %% \CharacterTable |
---|
| 18 | %% {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 |
---|
| 19 | %% 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 |
---|
| 20 | %% Digits \0\1\2\3\4\5\6\7\8\9 |
---|
| 21 | %% Exclamation \! Double quote \" Hash (number) \# |
---|
| 22 | %% Dollar \$ Percent \% Ampersand \& |
---|
| 23 | %% Acute accent \' Left paren \( Right paren \) |
---|
| 24 | %% Asterisk \* Plus \+ Comma \, |
---|
| 25 | %% Minus \- Point \. Solidus \/ |
---|
| 26 | %% Colon \: Semicolon \; Less than \< |
---|
| 27 | %% Equals \= Greater than \> Question mark \? |
---|
| 28 | %% Commercial at \@ Left bracket \[ Backslash \\ |
---|
| 29 | %% Right bracket \] Circumflex \^ Underscore \_ |
---|
| 30 | %% Grave accent \` Left brace \{ Vertical bar \| |
---|
| 31 | %% Right brace \} Tilde \~} |
---|
| 32 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 33 | \NeedsTeXFormat{LaTeX2e}[1995/12/01] |
---|
| 34 | \ProvidesClass{JINST} [2006/07/11 v1.0.1 LaTeX document class - P.D.] |
---|
| 35 | |
---|
| 36 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 37 | \def\logo{\raisebox{-10.5\p@}{\hb@xt@85\p@{\includegraphics{JINSTlogo}\hfil}}} |
---|
| 38 | |
---|
| 39 | %%%%%%%%%%%%%%%%%%%%%%%%%%%% NEW SWITCHES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 40 | \newif\if@preprint\@preprinttrue % DEFAULT IS PREPRINT! |
---|
| 41 | \newif\if@draft \@draftfalse % DEFAULT IS NOT DRAFT |
---|
| 42 | \newif\if@hyper \@hypertrue % DEFAULT IS HYPER |
---|
| 43 | \newif\if@proc \@procfalse % DEFAULT IS NOT PROC |
---|
| 44 | |
---|
| 45 | \newif\if@author\@authorfalse % |
---|
| 46 | \newif\if@abstract\@abstractfalse % FOR FRONTMATTER DECLARATIONS |
---|
| 47 | \newif\if@keywords\@keywordsfalse % |
---|
| 48 | \newif\if@todotoc\@todotocfalse % |
---|
| 49 | \newif\if@rece\@recefalse % |
---|
| 50 | \newif\if@revi\@revifalse % |
---|
| 51 | \newif\if@acce\@accefalse % |
---|
| 52 | \newif\if@publi\@publifalse % |
---|
| 53 | \newif\if@Jcopy\@Jcopyfalse % |
---|
| 54 | \newif\if@conf\@conffalse % |
---|
| 55 | \newif\if@Jspecialurl\@Jspecialurlfalse |
---|
| 56 | \newif\if@Jcits\@Jcitsfalse |
---|
| 57 | \newif\ifpdf |
---|
| 58 | \ifx\pdfoutput\undefined |
---|
| 59 | \else |
---|
| 60 | \ifx\pdfoutput\relax |
---|
| 61 | \else |
---|
| 62 | \ifcase\pdfoutput |
---|
| 63 | \else |
---|
| 64 | \pdftrue |
---|
| 65 | \fi |
---|
| 66 | \fi |
---|
| 67 | \fi |
---|
| 68 | |
---|
| 69 | |
---|
| 70 | \if@compatibility |
---|
| 71 | \setlength\paperheight {297mm}% % DEFAULT FOR LATEX209 IS a4 |
---|
| 72 | \setlength\paperwidth {210mm}% |
---|
| 73 | \else % CHOSE PAPER: |
---|
| 74 | \DeclareOption{a4paper} |
---|
| 75 | {\setlength\paperheight {297mm}% |
---|
| 76 | \setlength\paperwidth {210mm}} |
---|
| 77 | \DeclareOption{a5paper}{\@OImess{}} % IGNORED a5 |
---|
| 78 | \DeclareOption{b5paper}{\@OImess{}} % IGNORED b5 |
---|
| 79 | \DeclareOption{letterpaper} |
---|
| 80 | {\setlength\paperheight {11in}% |
---|
| 81 | \setlength\paperwidth {8.5in}} |
---|
| 82 | \DeclareOption{legalpaper} |
---|
| 83 | {\setlength\paperheight {14in}% |
---|
| 84 | \setlength\paperwidth {8.5in}} |
---|
| 85 | \DeclareOption{executivepaper} |
---|
| 86 | {\setlength\paperheight {10.5in}% |
---|
| 87 | \setlength\paperwidth {7.25in}} |
---|
| 88 | \DeclareOption{landscape}{\@OImess{}} % IGNORED landscape |
---|
| 89 | \fi |
---|
| 90 | |
---|
| 91 | \newcommand\@ptsize{1} % DEFAULT SIZE IS 11 PT |
---|
| 92 | |
---|
| 93 | \DeclareOption{published}{% |
---|
| 94 | \ifpdf |
---|
| 95 | %\JINST@warnl{Option 'published' incompatible with |
---|
| 96 | %pdf output, turning to dvi output}\pdffalse\pdfoutput=0 |
---|
| 97 | \@preprintfalse |
---|
| 98 | \else |
---|
| 99 | \@preprintfalse% |
---|
| 100 | \fi} |
---|
| 101 | \DeclareOption{nocits}{\if@preprint\@OImess{ is default for preprints}\else |
---|
| 102 | \@Jcitsfalse |
---|
| 103 | \fi} |
---|
| 104 | |
---|
| 105 | \DeclareOption{cits}{%\if@preprint |
---|
| 106 | \@Jcitstrue %\else |
---|
| 107 | %\@OImess{ is automatic for published papers}\fi |
---|
| 108 | } |
---|
| 109 | |
---|
| 110 | \DeclareOption{hyper}{\@hypertrue} % HYPER IS 11 PT |
---|
| 111 | \DeclareOption{nohyper}{\@hyperfalse} % PAPER IS ALSO 11 PT (v1.3) |
---|
| 112 | \DeclareOption{paper}{\@hyperfalse} % PAPER IS ALSO 11 PT |
---|
| 113 | \DeclareOption{11pt}{\renewcommand\@ptsize{1}\ExecuteOptions{@FONT}} |
---|
| 114 | \DeclareOption{12pt}{\renewcommand\@ptsize{2}\ExecuteOptions{@FONT}} |
---|
| 115 | \if@compatibility\else % LATEX2.09 HAS NO 10PT |
---|
| 116 | \DeclareOption{10pt}{\renewcommand\@ptsize{0}\ExecuteOptions{@FONT}}% v1.4 |
---|
| 117 | \fi % CHOSEN TO FREE MEMORY LATER: |
---|
| 118 | \DeclareOption{@FONT}{\if@preprint % IF PREPRINT ALLOW ANY, |
---|
| 119 | \else % IF PUBLISHED: |
---|
| 120 | \renewcommand\@ptsize{1}\@NFmess{11pt}% ALWAYS 11PT |
---|
| 121 | \fi |
---|
| 122 | } |
---|
| 123 | |
---|
| 124 | \if@compatibility\else |
---|
| 125 | \DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}\fi |
---|
| 126 | \DeclareOption{twoside}{\if@preprint\if@hyper\@OImess{ in hyper-mode} |
---|
| 127 | \else\@twosidetrue\@mparswitchtrue\fi |
---|
| 128 | \else % FOR PUBLISHED |
---|
| 129 | \@OImess{ in published papers} |
---|
| 130 | \fi} |
---|
| 131 | \DeclareOption{notoc}{\if@preprint % to disable TOC |
---|
| 132 | \AtBeginDocument{\@todotocfalse} |
---|
| 133 | \else |
---|
| 134 | \@OImess{ in JINST papers} |
---|
| 135 | \fi} |
---|
| 136 | \DeclareOption{draft}{\setlength\overfullrule{5pt}% EXTENDED DRAFT |
---|
| 137 | \newcount\hour\newcount\minute |
---|
| 138 | \hour=\time \divide\hour by60 \minute=\time |
---|
| 139 | {\multiply\hour by60 \global\advance\minute by-\hour} |
---|
| 140 | \edef\militarytime{\number\hour:\ifnum\minute<10 0\fi\number\minute} |
---|
| 141 | \let\old@eqnnum\@eqnnum |
---|
| 142 | \def\@eqnnum{\old@eqnnum\rlap{\kern\marginparsep |
---|
| 143 | \if@twocolumn\if@firstcolumn |
---|
| 144 | \kern-2\marginparsep\kern-\columnwidth\ |
---|
| 145 | \llap\bgroup\else\bgroup\fi |
---|
| 146 | \else |
---|
| 147 | \if@twoside\ifodd\c@page |
---|
| 148 | \kern-2\marginparsep\kern-\textwidth |
---|
| 149 | \llap\bgroup\else\bgroup\fi |
---|
| 150 | \else\bgroup\fi |
---|
| 151 | \fi |
---|
| 152 | \sf\scriptsize\@eqnlabel\egroup}% |
---|
| 153 | \gdef\@eqnlabel{}} |
---|
| 154 | \let\@eqnlabel\relax |
---|
| 155 | \def\math@note#1{\gdef\@eqnlabel{LAB: #1}} |
---|
| 156 | \def\norm@note#1#2{\special{}% SORRY AGAIN. |
---|
| 157 | \ifinner{\ifdim\baselineskip=\z@% IN ARRAY.. |
---|
| 158 | \baselineskip18\p@\fi%% |
---|
| 159 | \ifhmode% ATTENTION TO RESTRICTED VMODE! |
---|
| 160 | \raisebox{.5\baselineskip}[\z@][\z@]{% |
---|
| 161 | \rlap{\sf\scriptsize #2}}% |
---|
| 162 | \else\vskip-\baselineskip% |
---|
| 163 | \raisebox{-.6\baselineskip}[\z@][\z@]{% |
---|
| 164 | \rlap{\sf\scriptsize #2}}% |
---|
| 165 | \fi}% |
---|
| 166 | \else\marginpar{\raggedright\if@twoside\ifodd\c@page% |
---|
| 167 | \raggedleft\fi\fi\sf\scriptsize #1#2}% |
---|
| 168 | \fi}% |
---|
| 169 | \AtBeginDocument{\newbox\drft@box\setbox\drft@box=\hbox{% |
---|
| 170 | \framebox[\textwidth]{\sf\small JINST DRAFT |
---|
| 171 | \ttfamily(\cur@opt)\hfill\sf\bfseries\jobname\sf, |
---|
| 172 | \today, \militarytime}}} |
---|
| 173 | \@drafttrue} |
---|
| 174 | |
---|
| 175 | \DeclareOption{titlepage}{\@OImess{}} % IGNORED |
---|
| 176 | \if@compatibility\else |
---|
| 177 | \DeclareOption{notitlepage}{\@OImess{}} % IGNORED |
---|
| 178 | \fi |
---|
| 179 | \if@compatibility\else |
---|
| 180 | \DeclareOption{onecolumn}{\@OImess{}} % IGNORED |
---|
| 181 | \fi |
---|
| 182 | \DeclareOption{twocolumn}{\@OImess{}} % IGNORED |
---|
| 183 | \DeclareOption{leqno}{\@OImess{}} %\input{leqno.clo}} IGNORED ... |
---|
| 184 | \DeclareOption{fleqn}{\@OImess{}} %\input{fleqn.clo}} IGNORED ... |
---|
| 185 | \DeclareOption{openbib}{\@OImess{}} % IGNORED |
---|
| 186 | |
---|
| 187 | |
---|
| 188 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%% MESSAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 189 | \newcommand\JINST@mess[1]{\typeout{Class JINST Message: \protect#1.}}% |
---|
| 190 | \newcommand\JINST@warn[1]{\ClassWarning{JINST}{#1}} |
---|
| 191 | \newcommand\JINST@warnl[1]{\ClassWarningNoLine{JINST}{#1}} |
---|
| 192 | \newcommand\JINST@igno[1]{\JINST@warn{IGNORED \protect#1}} |
---|
| 193 | \newcommand\JINST@ignol[1]{\JINST@warnl{IGNORED \protect#1}} |
---|
| 194 | \newcommand\@OImess[1]{\JINST@ignol{OPTION '\CurrentOption'#1}} |
---|
| 195 | \newcommand\@NFmess[1]{\JINST@mess{Normalsize set to #1}} |
---|
| 196 | \newcommand\@ENVwarn[1]{\JINST@warn{Please use \protect#1 in place |
---|
| 197 | of LaTeX environment}} |
---|
| 198 | %%%%%%%%%%%%%%%%%%%%%%%%%% PROCESS OPTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 199 | \ExecuteOptions{a4paper,oneside,hyper} %WERE ALSO 10pt,onecolumn |
---|
| 200 | \ProcessOptions |
---|
| 201 | |
---|
| 202 | %%%%%%%%%%%%%%%%%%%%%%%%%% REQUIRED PACKAGES %%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 203 | \RequirePackage{amssymb} |
---|
| 204 | \RequirePackage[T1]{fontenc} |
---|
| 205 | \RequirePackage{times} |
---|
| 206 | \RequirePackage{mathptmx} |
---|
| 207 | \ifpdf |
---|
| 208 | \RequirePackage[pdftex]{graphicx} |
---|
| 209 | \DeclareGraphicsExtensions{.pdf,.jpg,.jpeg} |
---|
| 210 | \else |
---|
| 211 | \RequirePackage{graphicx} |
---|
| 212 | \DeclareGraphicsExtensions{.ps,.eps,.pstex} |
---|
| 213 | \fi |
---|
| 214 | %%%%%%%%%%%%%%%%%%%%%%%% TRICKS FOR DOTLESS J %%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 215 | %\j and \jmath are missing in font Times. So I use the ones from |
---|
| 216 | % Computer Modern. Works acceptably, but in sf |
---|
| 217 | \DeclareSymbolFont{forjmath}{OT1}{cmr}{m}{sl} |
---|
| 218 | \DeclareMathSymbol{\Jmath}{\mathord}{forjmath}{'021} |
---|
| 219 | \def\jmath{\Jmath} |
---|
| 220 | \DeclareFontFamily{OT1}{cmr}{} |
---|
| 221 | \DeclareFontFamily{OT1}{cmss}{} |
---|
| 222 | \def\j{\ifmmode\Jmath\else{\fontencoding{OT1}\fontfamily{cmr}\selectfont\char'021}\fi} |
---|
| 223 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%% END DOTLESS J %%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 224 | |
---|
| 225 | |
---|
| 226 | |
---|
| 227 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 228 | %%%%%%%%%%%%%%%%%%%%%%%%%%%% START CODE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 229 | \input{size1\@ptsize.clo} |
---|
| 230 | \renewcommand{\baselinestretch}{1.1}\normalsize |
---|
| 231 | \setlength\lineskip{1\p@} |
---|
| 232 | \setlength\parindent{1.2\parindent} % AT 12pt 1.5em BECOMES 1.8em=tocindent |
---|
| 233 | \setlength\normallineskip{1\p@} |
---|
| 234 | \setlength\parskip{0\p@ \@plus \p@} |
---|
| 235 | \@lowpenalty 51 |
---|
| 236 | \@medpenalty 151 |
---|
| 237 | \@highpenalty 301 |
---|
| 238 | \widowpenalty 1000 |
---|
| 239 | \clubpenalty 1000 |
---|
| 240 | |
---|
| 241 | \setcounter{topnumber}{4} |
---|
| 242 | \renewcommand\topfraction{1} % default .7 |
---|
| 243 | \setcounter{bottomnumber}{1} |
---|
| 244 | \renewcommand\bottomfraction{.6} %.2 % .6 ???*** |
---|
| 245 | \setcounter{totalnumber}{5} |
---|
| 246 | \renewcommand\textfraction{0} |
---|
| 247 | \renewcommand\floatpagefraction{1} |
---|
| 248 | \setcounter{dbltopnumber}{3} |
---|
| 249 | \renewcommand\dbltopfraction{.7} |
---|
| 250 | \renewcommand\dblfloatpagefraction{1} |
---|
| 251 | |
---|
| 252 | \textwidth .72\paperwidth % WIDTH OF TEXT, REMAINS .28% FOR MARGINS |
---|
| 253 | % |
---|
| 254 | \setlength\@tempdima{.76\paperheight} % HEIGHT OF TEXT WITH FOOTNOTES |
---|
| 255 | \divide\@tempdima\baselineskip % EXCLUDING HEAD (AND FOOT) |
---|
| 256 | \@tempcnta=\@tempdima % rounded to integer (#lines-1) |
---|
| 257 | \setlength\textheight{\@tempcnta\baselineskip} |
---|
| 258 | \addtolength\textheight{\topskip} |
---|
| 259 | |
---|
| 260 | \voffset -1in |
---|
| 261 | \topmargin .05\paperheight % FROM TOP OF PAGE TO TOP OF HEADING (0=1inch) |
---|
| 262 | \headheight .02\paperheight % HEIGHT OF HEADING BOX. |
---|
| 263 | \headsep .03\paperheight % VERT. SPACE BETWEEN HEAD AND TEXT. |
---|
| 264 | \footskip .07\paperheight % FROM END OF TEX TO BASE OF FOOTER. (40pt) |
---|
| 265 | |
---|
| 266 | \marginparsep 9\p@ % HOR. SPACE BETWEEN TEXT AND MARGINAL NOTE |
---|
| 267 | \marginparpush 6\p@ % MIN. VERT. SPACE BETWEEN MARGINAL NOTES |
---|
| 268 | |
---|
| 269 | \hoffset -1in % TO ADJUST WITH PAPER: |
---|
| 270 | \if@twoside % IF TWO-SIDED: |
---|
| 271 | \oddsidemargin .13\paperwidth % LEFT MARGIN FOR ODD PAGES (10) |
---|
| 272 | \evensidemargin .15\paperwidth % LEFT MARGIN FOR EVEN PAGES (30) |
---|
| 273 | \marginparwidth .10\paperwidth % TEXTWIDTH OF MARGINALNOTES |
---|
| 274 | \reversemarginpar % BECAUSE OF TITLEPAGE. |
---|
| 275 | \else % IF ONE-SIDED: |
---|
| 276 | \oddsidemargin .14\paperwidth % LEFT MARGIN FOR ODD PAGES (20) |
---|
| 277 | \evensidemargin .14\paperwidth % LEFT MARGIN FOR EVEN PAGES (20) |
---|
| 278 | \marginparwidth .11\paperwidth % TEXTWIDTH OF MARGINALNOTES |
---|
| 279 | \fi % |
---|
| 280 | %%%%%%%%%%%%%%%%%%%%%%% HYPER (AND DRAFT) STUFF %%%%%%%%%%%%%%%%%%%%%%% |
---|
| 281 | \ifpdf |
---|
| 282 | \input pdfcolor.tex |
---|
| 283 | \else |
---|
| 284 | \fi |
---|
| 285 | |
---|
| 286 | \bgroup\catcode`\#=12\gdef\hash{#}\egroup % DEFINED \hash=#. |
---|
| 287 | \def\H@tilde{\string~} |
---|
| 288 | \newcommand{\href}[2]{\rule{0pt}{0pt}\bgroup\let~\H@tilde |
---|
| 289 | \if@hyper\ifpdf |
---|
| 290 | \def\hash{}% |
---|
| 291 | \pdfstartlink attr{/Border [1 1 1] /C [0 0 1]} |
---|
| 292 | user{/Subtype /Link /A << /S /URI /URI (#1) >>}% |
---|
| 293 | \pdfsetcolor{0 0 0 1}% |
---|
| 294 | \else |
---|
| 295 | \noexpand\special{html:<A href="#1">}% |
---|
| 296 | \fi |
---|
| 297 | \fi |
---|
| 298 | \rule{.2ex}{0pt}\rule[-.5ex]{0pt}{2.2ex}{#2}\rule[-.5ex]{0pt}{2.2ex}\rule{.1ex}{0pt}\egroup |
---|
| 299 | \if@hyper\ifpdf |
---|
| 300 | \Black\pdfendlink |
---|
| 301 | \else |
---|
| 302 | \special{html:</A>}% |
---|
| 303 | \fi |
---|
| 304 | \fi |
---|
| 305 | } |
---|
| 306 | % \intPlink was added because in pdflatex you need two different commands |
---|
| 307 | % for internal and external links. For latex they are the same. |
---|
| 308 | \newcommand{\intJlink}[2]{\rule{0pt}{0pt}\bgroup\let~\H@tilde |
---|
| 309 | \if@hyper\ifpdf |
---|
| 310 | \def\hash{}% |
---|
| 311 | \pdfstartlink attr{/Border [1 1 1] /C [0 0 1]} |
---|
| 312 | goto name{#1}% |
---|
| 313 | \pdfsetcolor{0 0 0 1}% |
---|
| 314 | \else |
---|
| 315 | \noexpand\special{html:<A href="#1">}% |
---|
| 316 | \fi |
---|
| 317 | \fi |
---|
| 318 | \rule[-.2ex]{0pt}{1.8ex}{#2}\rule[-.2ex]{0pt}{1.8ex}\egroup |
---|
| 319 | \if@hyper\ifpdf |
---|
| 320 | \Black\pdfendlink |
---|
| 321 | \else |
---|
| 322 | \special{html:</A>}% |
---|
| 323 | \fi |
---|
| 324 | \fi |
---|
| 325 | } |
---|
| 326 | |
---|
| 327 | |
---|
| 328 | \newcommand{\name}[1]{{\if@hyper\ifpdf |
---|
| 329 | \pdfdest name{#1} fith% |
---|
| 330 | \else |
---|
| 331 | \noexpand\special% NAME HAS NO TAGGED TEXT HERE. |
---|
| 332 | {html:<A name="#1">}\special{html:</A>}% |
---|
| 333 | \fi |
---|
| 334 | \fi}% |
---|
| 335 | } |
---|
| 336 | \newcommand{\base}[1]{\if@hyper\ifpdf |
---|
| 337 | \relax\JINST@warn{Command base undefined for pdf output} |
---|
| 338 | %\pdfdest baseurl{#1} fith% |
---|
| 339 | \else |
---|
| 340 | \bgroup\let~\H@tilde |
---|
| 341 | \noexpand\special % BASE HAS NO TAGGED TEXT. |
---|
| 342 | {html:<base href="#1">}\egroup |
---|
| 343 | \fi\fi} |
---|
| 344 | %------------------------------------------------------------------% |
---|
| 345 | % SECTION TAGS and THEIR REFERENCE IN TOC \d@t will be '.' for sections only |
---|
| 346 | \if@hyper |
---|
| 347 | \renewcommand{\@seccntformat}[1]{\name{sec\csname the#1\endcsname}% |
---|
| 348 | \csname the#1\endcsname\d@t\hspace{1ex}} |
---|
| 349 | \renewcommand{\numberline}[1]{\hb@xt@\@tempdima{\intJlink |
---|
| 350 | {\hash\hyp@typ#1}{#1}\d@t\hfil}} |
---|
| 351 | \else |
---|
| 352 | \renewcommand{\@seccntformat}[1]{\csname the#1\endcsname\d@t\hspace{1ex}} |
---|
| 353 | \renewcommand{\numberline}[1]{\hb@xt@\@tempdima{#1\d@t\hfil}} |
---|
| 354 | \fi |
---|
| 355 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 356 | %%%%%%%%%%%% this is to obtain collapsing citations %%%%%%%%%%%%%%%%%% |
---|
| 357 | \if@Jcits % only if 'cits' option is chosen |
---|
| 358 | \newcount\@tempcntc |
---|
| 359 | \def\@citex[#1]#2{% |
---|
| 360 | \@tempcnta\z@\@tempcntb\m@ne\def\@citea{}% |
---|
| 361 | \@cite{\@for\@citeb:=#2\do% for aech citation... |
---|
| 362 | {\edef\@citeb{\expandafter\@firstofone\@citeb}% eat trailing space |
---|
| 363 | \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi% write to aux |
---|
| 364 | \@ifundefined{b@\@citeb}% if label undefined.. |
---|
| 365 | {\@citeo\@tempcntb\m@ne\@citea% ... then ... |
---|
| 366 | \def\@citea{,\penalty\@m\ }{\reset@font\bf ?}% |
---|
| 367 | \G@refundefinedtrue\@latex@warning% |
---|
| 368 | {Citation `\@citeb' on page \thepage \space undefined}}% |
---|
| 369 | {\setbox\z@\hbox{\global\@tempcntc0\csname % ... else |
---|
| 370 | b@\@citeb\endcsname}% |
---|
| 371 | \advance\@tempcntb\@ne% |
---|
| 372 | \ifnum\@tempcntb=\@tempcntc% |
---|
| 373 | \else\advance\@tempcntb\m@ne\@citeo% |
---|
| 374 | \@tempcnta\@tempcntc\@tempcntb\@tempcntc |
---|
| 375 | \fi% |
---|
| 376 | }% |
---|
| 377 | }\@citeo}{#1}% |
---|
| 378 | \if@draft\norm@note{CIT: }{#2}\fi % **DRAFT** |
---|
| 379 | }% end definition of \@citex |
---|
| 380 | %This really prints out the cit-numbers |
---|
| 381 | \def\@citeo{\ifnum\@tempcnta>\@tempcntb% |
---|
| 382 | \else\@citea\def\@citea{,\penalty\@m\ }% |
---|
| 383 | \ifnum\@tempcnta=\@tempcntb% |
---|
| 384 | \intJlink{\hash bib\the\@tempcnta}{\the\@tempcnta}% if there is no range |
---|
| 385 | \else{\advance\@tempcnta\@ne% % if there is a range |
---|
| 386 | \ifnum\@tempcnta=\@tempcntb% |
---|
| 387 | \else\def\@citea{\,--\,}% |
---|
| 388 | \fi% |
---|
| 389 | \advance\@tempcnta\m@ne% |
---|
| 390 | \intJlink{\hash bib\the\@tempcnta}{\the\@tempcnta}\@citea%first |
---|
| 391 | \intJlink{\hash bib\the\@tempcntb}{\the\@tempcntb}}%last |
---|
| 392 | \fi% |
---|
| 393 | \fi} |
---|
| 394 | %%%%%%%%%%%%%%% until here %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 395 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 396 | %------------------------------------------------------------------% |
---|
| 397 | % CITATION TAGS ARE TOGETHER WITH BIB STUFF. |
---|
| 398 | % CITATION HREF |
---|
| 399 | \else % w.r.t. \if@Jcits above |
---|
| 400 | \def\@citex[#1]#2{% % UNFORTUNATELY REDEFINED!!!! |
---|
| 401 | \let\@citea\@empty |
---|
| 402 | \@cite{\@for\@citeb:=#2\do |
---|
| 403 | {\@citea\def\@citea{,\penalty\@m\ }% |
---|
| 404 | \edef\@citeb{\expandafter\@firstofone\@citeb}% |
---|
| 405 | \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi |
---|
| 406 | \@ifundefined{b@\@citeb}{\mbox{\reset@font\bf ?}% |
---|
| 407 | \G@refundefinedtrue |
---|
| 408 | \@latex@warning |
---|
| 409 | {Citation `\@citeb' on page \thepage \space undefined}}% |
---|
| 410 | {\edef\tmp@bn{\csname b@\@citeb\endcsname}% |
---|
| 411 | \hbox{\intJlink{\hash bib\tmp@bn}{\tmp@bn}}}}}{#1}% % **HYPER** |
---|
| 412 | \if@draft\norm@note{CIT: }{#2}\fi % **DRAFT** |
---|
| 413 | } |
---|
| 414 | \fi % w.r.t. \if@Jcits above |
---|
| 415 | |
---|
| 416 | %-----------------------------------------------------------------% |
---|
| 417 | % LABEL, REF AND PAGEREF, TEXTREF, ~ COMPATIBLE: |
---|
| 418 | \let\old@label\label % OLD LATEX COMMAND. |
---|
| 419 | \def\label{\bgroup\catcode`\>=15\catcode`\"=15 \catcode`\==15\@@label} |
---|
| 420 | \newcommand{\@@label}[1]{\egroup\name{ref-#1}% % LABEL IN HYPER TAG. |
---|
| 421 | \old@label{#1}% % |
---|
| 422 | \if@draft% % DRAFT: |
---|
| 423 | \ifmmode\math@note{#1}% |
---|
| 424 | \else\norm@note{}{LAB: #1}\fi% |
---|
| 425 | \fi% |
---|
| 426 | } |
---|
| 427 | \if@hyper |
---|
| 428 | \let\old@ref\ref \let\old@pageref\pageref % OLD LATEX COMMANDS. |
---|
| 429 | \renewcommand{\ref}[1]{\@ifundefined{r@#1}{}{\intJlink{\hash ref-#1}}% |
---|
| 430 | {\old@ref{#1}}} % LABEL INSIDE HREF. |
---|
| 431 | \renewcommand{\pageref}[1]{\@ifundefined{r@#1}{}{% % UNDEFINED => NO HREF |
---|
| 432 | \edef\tmp@ref{\noexpand\@secondoftwo\csname r@#1\endcsname}% |
---|
| 433 | \intJlink{\hash pag\tmp@ref}}{\old@pageref{#1}}} |
---|
| 434 | \fi |
---|
| 435 | \newcommand{\textref}[2]{\@ifundefined{r@#1} |
---|
| 436 | {% |
---|
| 437 | \protect\G@refundefinedtrue |
---|
| 438 | \nfss@text{\reset@font\bf ?#2?}% |
---|
| 439 | \@latex@warning{Reference `#1' on page \thepage \space |
---|
| 440 | undefined}} |
---|
| 441 | {\vrule height \z@ width \z@\intJlink{\hash ref-#1}{#2}}} |
---|
| 442 | %------------------------------------------------------------------% |
---|
| 443 | %%%%%%%%%%%%%%%%%%%%%%%%%% END HYPER-STUFF %%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 444 | |
---|
| 445 | %%%%%%%%%%%%%%%%%%%%%%%%%%% JINST HEADINGS %%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 446 | \def\ps@JINST{% |
---|
| 447 | \def\@oddfoot{\ifnum\thepage=0\if@preprint\else |
---|
| 448 | \Jcopyright@box\fi\hfill % copyright only on front page of published papers |
---|
| 449 | \if@Jspecialurl\copy\Jspecial@url\else\if@preprint\else\copy\Jpaper@url\fi\fi %possible url |
---|
| 450 | \else\reset@font\hfil-- \thepage\ --\hfil\fi} % page numbers on other pages |
---|
| 451 | \if@draft\edef\cur@opt{\@curroptions}\fi |
---|
| 452 | \def\@oddhead{\name{pag\thepage}\hfil\if@draft\copy\drft@box\fi} |
---|
| 453 | \if@twoside\let\@evenhead\@oddhead\let\@evenfoot\@oddfoot\fi |
---|
| 454 | \let\@mkboth\@gobbletwo |
---|
| 455 | \let\sectionmark\@gobble |
---|
| 456 | \let\subsectionmark\@gobble |
---|
| 457 | } |
---|
| 458 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%% TITLE PAGE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 459 | \def\maketitle{\JINST@ignol{\maketitle}} |
---|
| 460 | \newcommand\auto@maketitle{\begingroup |
---|
| 461 | \renewcommand\thefootnote{\@fnsymbol\c@footnote}% |
---|
| 462 | \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}% |
---|
| 463 | \long\def\@makefntext##1{\parindent 1em\noindent |
---|
| 464 | \hb@xt@1.8em{\hss\@textsuperscript{\normalfont\@thefnmark}}##1}% |
---|
| 465 | \let\footnote\thanks% |
---|
| 466 | \newpage % |
---|
| 467 | \@maketitle % CALL ACTUAL FORMATTING |
---|
| 468 | \@thanks % TITLE THANKS |
---|
| 469 | \thispagestyle{JINST} |
---|
| 470 | \setcounter{page}\z@ |
---|
| 471 | \newpage % FINE PAGINA |
---|
| 472 | \endgroup |
---|
| 473 | \setcounter{footnote}{0}% |
---|
| 474 | \if@todotoc % IF THERE IS A SECTION |
---|
| 475 | \noindent\rule\textwidth{.1pt} % THEN MAKE TOC... |
---|
| 476 | \vskip 2em \@plus 3ex \@minus 3ex |
---|
| 477 | \tableofcontents |
---|
| 478 | \vskip 2em \@plus 3ex \@minus 3ex |
---|
| 479 | \noindent\rule\textwidth{.1pt} |
---|
| 480 | \vskip 2em \@plus 3ex \@minus 3ex |
---|
| 481 | \fi |
---|
| 482 | \if@preprint\else |
---|
| 483 | \gdef\tableofcontents{\JINST@igno{\tableofcontents\space is automatic}} |
---|
| 484 | \fi |
---|
| 485 | \global\let\thanks\@gobble |
---|
| 486 | \global\let\@maketitle\relax % |
---|
| 487 | \global\let\@thanks\@empty % |
---|
| 488 | \global\let\@author\@empty % KILL ALL |
---|
| 489 | \global\let\@date\@empty % |
---|
| 490 | \global\let\@title\@empty % |
---|
| 491 | \global\let\@abstract\@empty % |
---|
| 492 | \global\let\title\relax % |
---|
| 493 | \global\let\author\relax % |
---|
| 494 | \global\let\date\relax % |
---|
| 495 | \global\let\and\relax % |
---|
| 496 | \global\let\email\@gobble |
---|
| 497 | \global\let\received\relax |
---|
| 498 | \global\let\revised\relax |
---|
| 499 | \global\let\accepted\relax |
---|
| 500 | \global\let\published\relax |
---|
| 501 | \global\let\JINSTcopydate\relax |
---|
| 502 | \global\let\Jspecialurl\relax |
---|
| 503 | \global\let\keywords\relax |
---|
| 504 | \global\let\endkeywords\relax |
---|
| 505 | } |
---|
| 506 | %%%%%%%%%%%%%%%%%%%%%%%%%% ACTUAL TITLEPAGE %%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 507 | \newskip\titlesk@ja % Skips for titlepage |
---|
| 508 | \newskip\titlesk@jb % |
---|
| 509 | \newskip\titlesk@jc % |
---|
| 510 | \titlesk@ja= 1.6em plus .4fil% % Before title |
---|
| 511 | \titlesk@jb= 2em plus .06fil minus .5ex% % Between title/rule |
---|
| 512 | \titlesk@jc= 2em plus .05fil minus 1.2ex% % Before authors |
---|
| 513 | |
---|
| 514 | \def\@maketitle{% % PAGE IS FLUSHED LEFT |
---|
| 515 | \begin{flushleft}% % PAY ATTENTION TO \par'S |
---|
| 516 | % page with queries for authors in proof |
---|
| 517 | \if@Jqueries |
---|
| 518 | \setcounter{page}{0} |
---|
| 519 | \noindent{\let\thanks\@gobble\let\footnote\@gobble% |
---|
| 520 | \large\sffamily\@title\par} % title |
---|
| 521 | \vskip.4\titlesk@jb |
---|
| 522 | \noindent{\Large\sffamily\bfseries\queriesname\hfill\par} % queriesname |
---|
| 523 | \vskip.7\titlesk@jb |
---|
| 524 | \hrule height 1\p@% otherwise = 1.5pt. % rule |
---|
| 525 | \vskip.7\titlesk@jb |
---|
| 526 | {\noindent\footnotesize Please reply to the following queries using |
---|
| 527 | the appropriate tool ``{\sc send proofs}'' at the bottom of the |
---|
| 528 | preprint page on \href{http://jinst.sissa.it}{\tt http://jinst.sissa.it}} |
---|
| 529 | \vskip\titlesk@jc |
---|
| 530 | \Jqueries@auth % queries |
---|
| 531 | \newpage |
---|
| 532 | \setcounter{page}{0} |
---|
| 533 | \fi |
---|
| 534 | %header for preprints |
---|
| 535 | \if@preprint %%% PREPRINT HEADER: |
---|
| 536 | \vskip-7em % |
---|
| 537 | \underline{\tiny Preprint typeset % |
---|
| 538 | in JINST style - % |
---|
| 539 | \if@hyper{HYPER VERSION} % |
---|
| 540 | \else{PAPER VERSION}\fi } % |
---|
| 541 | \normalsize\hfill% % |
---|
| 542 | \begin{tabular}[t]{r}\@preprint\end{tabular}% % PREPRINT NUMBERS |
---|
| 543 | \else % |
---|
| 544 | % header for published papers |
---|
| 545 | \vskip-7em\hfill |
---|
| 546 | {\small\scshape Published by Institute of Physics |
---|
| 547 | Publishing and SISSA} |
---|
| 548 | \vskip-1.35\baselineskip\logo\hrulefill |
---|
| 549 | \vskip-1.5\baselineskip\hskip21.73\p@% |
---|
| 550 | \hfill{\parbox[t]{30em}{\begin{flushright}\setlength\baselineskip{11pt}\footnotesize |
---|
| 551 | \Jrece@cs\\ |
---|
| 552 | \if@revi\Jrevi@cs\\\fi |
---|
| 553 | \Jacce@cs\\ |
---|
| 554 | \Jpubli@cs |
---|
| 555 | \end{flushright}}}% |
---|
| 556 | \fi\null |
---|
| 557 | % end headers |
---|
| 558 | \vskip \titlesk@ja % vspace before title |
---|
| 559 | % TITLE large sans-serif bf |
---|
| 560 | {\LARGE \sffamily\bfseries\@title\par} |
---|
| 561 | % |
---|
| 562 | \vskip \titlesk@jb % vspace between title and rule |
---|
| 563 | % RULE |
---|
| 564 | \hrule height 1.5\p@% |
---|
| 565 | % |
---|
| 566 | \vskip \titlesk@jb % vspace between rule and authors |
---|
| 567 | % AUTHORS\\ADDRESSES |
---|
| 568 | \vskip-\auth@skip |
---|
| 569 | {\normalsize \bfseries \sffamily \@author \par} |
---|
| 570 | % |
---|
| 571 | \vskip \titlesk@jc % vspace between authors and abstract |
---|
| 572 | % ABSTRACT |
---|
| 573 | \parbox\textwidth{\abstract@cs}% |
---|
| 574 | \normalsize % why reset size? |
---|
| 575 | % KEYWORDS IF PRESENT |
---|
| 576 | \if@keywords |
---|
| 577 | \vskip .9\titlesk@jc % vspace between abstract and keywords |
---|
| 578 | \par |
---|
| 579 | \@keywords |
---|
| 580 | \fi |
---|
| 581 | % DEDICATION, IF PRESENT |
---|
| 582 | \dedic@box |
---|
| 583 | \end{flushleft}% % FINISHED. |
---|
| 584 | } |
---|
| 585 | %%%%%%%%%%%%%%%%%%%%%%%%%%% STANDARD STUFF %%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 586 | \setcounter{secnumdepth}{3} |
---|
| 587 | \newcounter {part} |
---|
| 588 | \newcounter {section} |
---|
| 589 | \newcounter {subsection}[section] |
---|
| 590 | \newcounter {subsubsection}[subsection] |
---|
| 591 | \newcounter {paragraph}[subsubsection] |
---|
| 592 | \newcounter {subparagraph}[paragraph] |
---|
| 593 | \renewcommand\thepart {\@Roman\c@part} |
---|
| 594 | \renewcommand\thesection {\@arabic\c@section} |
---|
| 595 | \renewcommand\thesubsection {\thesection.\@arabic\c@subsection} |
---|
| 596 | \renewcommand\thesubsubsection{\thesubsection.\@arabic\c@subsubsection} |
---|
| 597 | \renewcommand\theparagraph {\thesubsubsection.\@arabic\c@paragraph} |
---|
| 598 | \renewcommand\thesubparagraph {\theparagraph.\@arabic\c@subparagraph} |
---|
| 599 | %%%%%%%%%%%%%%%%%%%%%%%%%%% SECTION FORMATS %%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 600 | \newcommand\secstyle{\bfseries} |
---|
| 601 | \def\ts@flag{\let\d@t.% % Sections get ``.'' |
---|
| 602 | \immediate\write\@auxout % IF THERE IS A SECTION |
---|
| 603 | {\string\global\string\@todotoctrue}} % THEN SIGNAL IN AUX. |
---|
| 604 | |
---|
| 605 | \newcommand\part{\par |
---|
| 606 | \addvspace{4ex}% |
---|
| 607 | \@afterindentfalse |
---|
| 608 | \secdef\@part\@spart} |
---|
| 609 | |
---|
| 610 | \def\@part[#1]#2{\ts@flag |
---|
| 611 | \ifnum \c@secnumdepth >\m@ne |
---|
| 612 | \refstepcounter{part}% % DAMN LATEX !!! BELOW, |
---|
| 613 | \addcontentsline{toc}{part}{\string\intJlink % UNFORTUNATELY, NO NUMBERLINE: |
---|
| 614 | {\string\hash\space part\the\c@part}% |
---|
| 615 | {\thepart}\hspace{1em}#1}% |
---|
| 616 | \else |
---|
| 617 | \addcontentsline{toc}{part}{#1}% |
---|
| 618 | \fi |
---|
| 619 | {\parindent \z@ \raggedright |
---|
| 620 | \interlinepenalty \@M |
---|
| 621 | \normalfont |
---|
| 622 | \ifnum \c@secnumdepth >\m@ne |
---|
| 623 | \name{part\the\c@part}\Large\bfseries \partname~\thepart |
---|
| 624 | \par\nobreak |
---|
| 625 | \fi |
---|
| 626 | \huge \bfseries #2% |
---|
| 627 | \markboth{}{}\par}% |
---|
| 628 | \nobreak |
---|
| 629 | \vskip 3ex |
---|
| 630 | \@afterheading\let\d@t\relax} |
---|
| 631 | \def\@spart#1{% |
---|
| 632 | {\parindent \z@ \raggedright |
---|
| 633 | \interlinepenalty \@M |
---|
| 634 | \normalfont |
---|
| 635 | \huge \bfseries #1\par}% |
---|
| 636 | \nobreak |
---|
| 637 | \vskip 3ex |
---|
| 638 | \@afterheading} |
---|
| 639 | |
---|
| 640 | \newcommand\section{\@startsection{section}{1}{\z@}% |
---|
| 641 | {-3.5ex \@plus -1.3ex \@minus -.7ex}% |
---|
| 642 | {2.3ex \@plus.4ex \@minus .4ex}% |
---|
| 643 | {\normalfont\large\secstyle}} |
---|
| 644 | \newcommand\subsection{\@startsection{subsection}{2}{\z@}% |
---|
| 645 | {-2.3ex\@plus -1ex \@minus -.5ex}% |
---|
| 646 | {1.2ex \@plus .3ex \@minus .3ex}% |
---|
| 647 | {\normalfont\normalsize\secstyle}} |
---|
| 648 | \newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% |
---|
| 649 | {-2.3ex\@plus -1ex \@minus -.5ex}% |
---|
| 650 | {1ex \@plus .2ex \@minus .2ex}% |
---|
| 651 | {\normalfont\normalsize\secstyle}} |
---|
| 652 | \newcommand\paragraph{\@startsection{paragraph}{4}{\z@}% |
---|
| 653 | {1.75ex \@plus1ex \@minus.2ex}% |
---|
| 654 | {-1em}% |
---|
| 655 | {\normalfont\normalsize\bfseries}} |
---|
| 656 | \newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}% |
---|
| 657 | {1.75ex \@plus1ex \@minus .2ex}% |
---|
| 658 | {-1em}% |
---|
| 659 | {\normalfont\normalsize\bfseries}} |
---|
| 660 | |
---|
| 661 | % ---- turnaround for sections with figures ------ % |
---|
| 662 | \def\bef@sec{\iffigprocessing\JINST@warnl{Floating figure \the\ffigcount\space |
---|
| 663 | and startsection colliding}\fi |
---|
| 664 | \iftabprocessing\JINST@warnl{Floating table \the\ftabcount\space |
---|
| 665 | and startsection colliding}\fi |
---|
| 666 | \edef\bef@everypar{\the\everypar}} % HACK FOR FLOATS AND \everypar |
---|
| 667 | \def\aft@sec{\let\d@t\relax % RESTORE: NO DOTTED SUBSECS.. |
---|
| 668 | \edef\tmp@everypar{\the\everypar}% % DELETED CLUBPENALTY, BELOW. |
---|
| 669 | \everypar\expandafter{\bef@everypar{\tmp@everypar}}}% RESTORE. |
---|
| 670 | \let\old@sec\section % |
---|
| 671 | \let\old@ssec\subsection % |
---|
| 672 | \let\old@sssec\subsubsection % OLD SECTIONING COMMANDS. |
---|
| 673 | \let\old@par\paragraph % |
---|
| 674 | \let\old@spar\subparagraph % |
---|
| 675 | % ------- new forms ------- % |
---|
| 676 | \renewcommand{\section}{\secdef\JINST@sec\JINST@secs} |
---|
| 677 | \renewcommand{\subsection}{\secdef\JINST@ssec\JINST@ssecs} |
---|
| 678 | \renewcommand{\subsubsection}{\secdef\JINST@sssec\JINST@sssecs} |
---|
| 679 | \renewcommand{\paragraph}{\secdef\JINST@par\JINST@pars} |
---|
| 680 | \renewcommand{\subparagraph}{\secdef\JINST@spar\JINST@spars} |
---|
| 681 | % ---- unstarred forms ---- % |
---|
| 682 | \def\JINST@sec[#1]#2{\ts@flag\bef@sec\old@sec[#1]{#2}\aft@sec} |
---|
| 683 | \def\JINST@ssec[#1]#2{\bef@sec\old@ssec[#1]{#2}\aft@sec} |
---|
| 684 | \def\JINST@sssec[#1]#2{\bef@sec\old@sssec[#1]{#2}\aft@sec} |
---|
| 685 | \def\JINST@par[#1]#2{\bef@sec\old@par[#1]{#2}\aft@sec} |
---|
| 686 | \def\JINST@spar[#1]#2{\bef@sec\old@spar[#1]{#2}\aft@sec} |
---|
| 687 | % ----- starred forms ----- % |
---|
| 688 | \def\JINST@secs#1{\bef@sec\old@sec*{#1}\aft@sec} |
---|
| 689 | \def\JINST@ssecs#1{\bef@sec\old@ssec*{#1}\aft@sec} |
---|
| 690 | \def\JINST@sssecs#1{\bef@sec\old@sssec*{#1}\aft@sec} |
---|
| 691 | \def\JINST@pars#1{\bef@sec\old@par*{#1}\aft@sec} |
---|
| 692 | \def\JINST@spars#1{\bef@sec\old@spar*{#1}\aft@sec} |
---|
| 693 | % ----- end hack for sections with floats --------% |
---|
| 694 | |
---|
| 695 | \if@twocolumn |
---|
| 696 | \setlength\leftmargini {2em} |
---|
| 697 | \else |
---|
| 698 | \setlength\leftmargini {2.5em} |
---|
| 699 | \fi |
---|
| 700 | \leftmargin \leftmargini |
---|
| 701 | \setlength\leftmarginii {2.2em} |
---|
| 702 | \setlength\leftmarginiii {1.87em} |
---|
| 703 | \setlength\leftmarginiv {1.7em} |
---|
| 704 | \setlength\leftmarginv {1em} |
---|
| 705 | \setlength\leftmarginvi {1em} |
---|
| 706 | \setlength \labelsep {.5em} |
---|
| 707 | \setlength \labelwidth{\leftmargini} |
---|
| 708 | \addtolength\labelwidth{-\labelsep} |
---|
| 709 | \@beginparpenalty -\@lowpenalty |
---|
| 710 | \@endparpenalty -\@lowpenalty |
---|
| 711 | \@itempenalty -\@lowpenalty |
---|
| 712 | \renewcommand\theenumi{\@arabic\c@enumi} |
---|
| 713 | \renewcommand\theenumii{\@alph\c@enumii} |
---|
| 714 | \renewcommand\theenumiii{\@roman\c@enumiii} |
---|
| 715 | \renewcommand\theenumiv{\@Alph\c@enumiv} |
---|
| 716 | \newcommand\labelenumi{\theenumi.} |
---|
| 717 | \newcommand\labelenumii{(\theenumii)} |
---|
| 718 | \newcommand\labelenumiii{\theenumiii.} |
---|
| 719 | \newcommand\labelenumiv{\theenumiv.} |
---|
| 720 | \renewcommand\p@enumii{\theenumi} |
---|
| 721 | \renewcommand\p@enumiii{\theenumi(\theenumii)} |
---|
| 722 | \renewcommand\p@enumiv{\p@enumiii\theenumiii} |
---|
| 723 | \newcommand\labelitemi{$\m@th\bullet$} |
---|
| 724 | \newcommand\labelitemii{\normalfont\bfseries --} |
---|
| 725 | \newcommand\labelitemiii{$\m@th\ast$} |
---|
| 726 | \newcommand\labelitemiv{$\m@th\cdot$} |
---|
| 727 | \newenvironment{description} |
---|
| 728 | {\list{}{\labelwidth\z@ \itemindent-\leftmargin |
---|
| 729 | \let\makelabel\descriptionlabel}} |
---|
| 730 | {\endlist} |
---|
| 731 | \newcommand*\descriptionlabel[1]{\hspace\labelsep |
---|
| 732 | \normalfont\bfseries #1} |
---|
| 733 | %%%%%%%%%%%%%%%%%%%%%%%%%% AUTHORS/ADDRESSES %%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 734 | % *** After proceedings, the authors go in a hbox. => \break does not work!! |
---|
| 735 | % *** if no address nobody closes the box! |
---|
| 736 | \newif\if@speaker\@speakerfalse |
---|
| 737 | \newif\if@dblspeak\@dblspeakfalse |
---|
| 738 | \newtoks\prev@t |
---|
| 739 | \newtoks\cur@t |
---|
| 740 | \newbox\@firstaubox |
---|
| 741 | \newskip\addr@skip\addr@skip=.6em\@plus.02fil\@minus.3ex %\fi |
---|
| 742 | \newskip\auth@skip\auth@skip=.6em\@plus.03fil\@minus.2ex %\fi |
---|
| 743 | \renewcommand\@author{\parskip\z@ |
---|
| 744 | \def\\{\egroup % CLOSE & aftergroup! |
---|
| 745 | \par % FIRST TIME \\=>ADDR. |
---|
| 746 | \vskip\addr@skip % GLUE UNDER AUTHOR |
---|
| 747 | \hskip1em% % ADDRESS INDENT |
---|
| 748 | \vbox\bgroup\hsize=.9\textwidth % |
---|
| 749 | \small\it\raggedright % STYLE FOR ADDRESSES |
---|
| 750 | \def\\{\par\leavevmode\ignorespaces}%\let\\\relax% |
---|
| 751 | \leavevmode\ignorespaces}% |
---|
| 752 | } |
---|
| 753 | \renewcommand\author[1]{% |
---|
| 754 | \global\@authortrue % |
---|
| 755 | \prev@t=\expandafter{\@author}% % TWO TOKEN LISTS. |
---|
| 756 | \cur@t={\vskip\auth@skip % glue before auth. |
---|
| 757 | \vtop\bgroup #1\egroup % ACTUAL AUTH.\\ADD. |
---|
| 758 | \par}% % |
---|
| 759 | \long\xdef\@author{\the\prev@t\the\cur@t}%STORE ALL IN \@AUTHOR |
---|
| 760 | } |
---|
| 761 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% RECEIVED %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 762 | \newcommand\received[1]{\gdef\Jrece@cs{{\scshape\receivedname} |
---|
| 763 | {\itshape #1}}\@recetrue\let\received\gobble} |
---|
| 764 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% REVISED %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 765 | \newcommand\revised[1]{\gdef\Jrevi@cs{{\scshape\revisedname} |
---|
| 766 | {\itshape #1}}\@revitrue\let\revised\gobble} |
---|
| 767 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ACCEPTED %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 768 | \newcommand\accepted[1]{\gdef\Jacce@cs{{\scshape\acceptedname} |
---|
| 769 | {\itshape #1}}\@accetrue\let\accepted\gobble} |
---|
| 770 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% PUBLISHED %%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 771 | \newcommand\published[1]{\gdef\Jpubli@cs{{\scshape\publishedname} |
---|
| 772 | {\itshape #1$\vphantom{,}$}}\@publitrue\let\published\gobble} |
---|
| 773 | %%%%%%%%%%%%%%%%%%%%%%%%%% COPYRIGHT DATE %%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 774 | \newbox\Jcopy@date |
---|
| 775 | \newcommand\JINSTcopydate[1]{\global\setbox\Jcopy@date |
---|
| 776 | \hbox{\scriptsize #1}\global\@Jcopytrue} |
---|
| 777 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% DEDICATED %%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 778 | \gdef\dedic@box{\relax} |
---|
| 779 | \newcommand\dedicated[1]{\gdef\dedic@box{\vskip2em minus 1.2ex |
---|
| 780 | \vbox{\small\it\raggedleft #1}}} |
---|
| 781 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% QUERIES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 782 | \newif\if@Jqueries\@Jqueriesfalse |
---|
| 783 | \gdef\Jqueries@auth{\relax} |
---|
| 784 | \newcommand\QueriesForAuth[1]{\@Jqueriestrue\gdef\Jqueries@auth{% |
---|
| 785 | {\raggedright #1}}} |
---|
| 786 | %%%%%%%%%%%%%%%%%%%%%%%%%%% ACKNOWELEDGMENTS %%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 787 | \newcommand\acknowledgments{\section*{\acknowlname}} |
---|
| 788 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EMAIL %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 789 | \newcommand\email[1]{{\tt\href{mailto:#1}{#1}}} |
---|
| 790 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% PREPRINT %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 791 | \let\@preprint\relax |
---|
| 792 | \newcommand\preprint[1]{\long\gdef\@preprint{#1}} |
---|
| 793 | %%%%%%%%%%%%%%%%% SPECIAL URL overrides paper@url %%%%%%%%%%%%%%%%%%%%% |
---|
| 794 | \newbox\Jspecial@url |
---|
| 795 | \newcommand\Jspecialurl[1]{\global\setbox\Jspecial@url\hbox{\tiny\ttfamily |
---|
| 796 | #1}\@Jspecialurltrue} |
---|
| 797 | %%%%%%%%%%%%%%%%%%%%%%%%% FILE NAME AND URL %%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 798 | %\global\newbox\Jacce@month |
---|
| 799 | %\global\newcount\Jacce@year |
---|
| 800 | %\global\newbox\Jacce@number |
---|
| 801 | %\def\Jsplit@ident#1(#2)#3.{\global\setbox\Jacce@month\hbox{\tiny\ttfamily #1} |
---|
| 802 | % \global\Jacce@year= #2 |
---|
| 803 | % \global\setbox\Jacce@number\hbox{\tiny\ttfamily #3} |
---|
| 804 | |
---|
| 805 | %\gdef\Jfile@name{\hbox{\tiny\ttfamily |
---|
| 806 | % jinst\unhcopy\Jacce@month\the\Jacce@year\unhcopy\Jacce@number}} |
---|
| 807 | |
---|
| 808 | \newbox\Jpaper@url |
---|
| 809 | \global\setbox\Jpaper@url\hbox{\tiny\ttfamily http://www.iop.org/EJ/jinst/} |
---|
| 810 | %\Jfile@name/\Jfile@name.pdf}} |
---|
| 811 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% COPYRIGHT %%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 812 | \gdef\Jcopyright@box{\hbox{\if@preprint\else{\scriptsize $\copyright$ |
---|
| 813 | \if@Jcopy\unhbox\Jcopy@date\else\the\year\fi\ IOP Publishing Ltd\ and SISSA}\fi}} |
---|
| 814 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ABSTRACT %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 815 | %% *** For beton! We need a cs, not a box. Maybe also for refs.. %%%%%% |
---|
| 816 | |
---|
| 817 | \newcommand{\abstract}[1]% % ABSTR. IN NORMALSIZE |
---|
| 818 | {\gdef\abstract@cs{ % cs FOR WHOLE ABSTRACT |
---|
| 819 | {\noindent{\scshape\abstractname}\ \ignorespaces #1}} |
---|
| 820 | \normalsize |
---|
| 821 | \global\@abstracttrue\let\abstract\gobble} |
---|
| 822 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% KEYWORDS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 823 | \def\@keywords{\relax}% % CS FOR WHOLE KEYWORDS |
---|
| 824 | \def\keywords{\bgroup\gdef\@comma{,}\catcode`\ =\active\catcode`,=\active |
---|
| 825 | \@@keywords} |
---|
| 826 | \begingroup |
---|
| 827 | \catcode`\ =\active\catcode`,=\active\global |
---|
| 828 | \def\@@keywords#1{\gdef\@keywords{\noindent{\scshape\keywordsname} |
---|
| 829 | \bgroup\def, {+}\def {_}% %ATTENTION: NO EXPANSION. |
---|
| 830 | %\href{http://jinst.sissa.it/stdsearch}% |
---|
| 831 | {\let,\@comma\let \ #1}. |
---|
| 832 | \egroup}\egroup\global\@keywordstrue\let\keywords\gobble}% |
---|
| 833 | \endgroup |
---|
| 834 | %%%%%%%%%%%%%%%%%%%%%%%%%% OTHER ENVIRONMENTS %%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 835 | \newenvironment{verse} |
---|
| 836 | {\let\\\@centercr |
---|
| 837 | \list{}{\itemsep \z@ |
---|
| 838 | \itemindent -1.5em% |
---|
| 839 | \listparindent\itemindent |
---|
| 840 | \rightmargin \leftmargin |
---|
| 841 | \advance\leftmargin 1.5em}% |
---|
| 842 | \item\relax} |
---|
| 843 | {\endlist} |
---|
| 844 | \newenvironment{quotation} |
---|
| 845 | {\list{}{\listparindent 1.5em% |
---|
| 846 | \itemindent \listparindent |
---|
| 847 | \rightmargin \leftmargin |
---|
| 848 | \parsep \z@ \@plus\p@}% |
---|
| 849 | \item\relax} |
---|
| 850 | {\endlist} |
---|
| 851 | \newenvironment{quote} |
---|
| 852 | {\list{}{\rightmargin\leftmargin}% |
---|
| 853 | \item\relax} |
---|
| 854 | {\endlist} |
---|
| 855 | |
---|
| 856 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% THEOREMS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 857 | \newif\if@twothms\@twothmsfalse |
---|
| 858 | |
---|
| 859 | \if@preprint%\ifx\@thmcountersep\@undefined |
---|
| 860 | %\def\@xthm#1#2{\@begintheorem{#2}{\csname the#1\endcsname.}\ignorespaces}% after thm number |
---|
| 861 | \else % if published |
---|
| 862 | \def\@xthm#1#2{\@begintheorem{#2\if@twothms\else.\fi} % theorems are numbered |
---|
| 863 | {\if@twothms\csname the#1\endcsname.\fi} % only if more than one |
---|
| 864 | \ifnum \csname the#1\endcsname>1 \immediate\write\@auxout% and not within sections |
---|
| 865 | {\string\global\string\@twothmstrue}\fi |
---|
| 866 | \ignorespaces} |
---|
| 867 | \fi |
---|
| 868 | |
---|
| 869 | \newcommand\Proof{\noindent\emph{Proof.}\ } |
---|
| 870 | |
---|
| 871 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% APPENDIX %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 872 | \newcommand\appendix{\par |
---|
| 873 | \setcounter{section}{0}% |
---|
| 874 | \setcounter{subsection}{0}% |
---|
| 875 | \renewcommand\thesection{\@Alph\c@section}} |
---|
| 876 | |
---|
| 877 | %%%%%%%%%%%%%%%%%%%%%%%%%%% SOME MORE LENGHTS %%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 878 | \setlength\arraycolsep{2\p@} % TO MATCH eqnarrays<->equations |
---|
| 879 | \setlength\tabcolsep{6\p@} |
---|
| 880 | \setlength\arrayrulewidth{.4\p@} |
---|
| 881 | \setlength\doublerulesep{2\p@} |
---|
| 882 | \setlength\tabbingsep{\labelsep} |
---|
| 883 | \skip\@mpfootins = \skip\footins |
---|
| 884 | \setlength\fboxsep{3\p@} |
---|
| 885 | \setlength\fboxrule{.4\p@} |
---|
| 886 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%% THE EQUATION %%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 887 | \renewcommand\theequation{\ifnum\c@section=0\else\thesection.\fi |
---|
| 888 | \@arabic\c@equation} |
---|
| 889 | |
---|
| 890 | %%%%%%%%%%%%%%%%%%%%%%%%%%%% FIGURES, TABLES %%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 891 | \newcounter{figure} |
---|
| 892 | \renewcommand\thefigure{\@arabic\c@figure} |
---|
| 893 | \def\fps@figure{Htbp} |
---|
| 894 | \def\ftype@figure{1} |
---|
| 895 | \def\ext@figure{lof} |
---|
| 896 | \def\fnum@figure{\figurename~\thefigure} |
---|
| 897 | \newenvironment{figure} |
---|
| 898 | {\@float{figure}} |
---|
| 899 | {\end@float} |
---|
| 900 | \newenvironment{figure*} |
---|
| 901 | {\@dblfloat{figure}} |
---|
| 902 | {\end@dblfloat} |
---|
| 903 | \newcounter{table} |
---|
| 904 | \renewcommand\thetable{\@arabic\c@table} |
---|
| 905 | \def\fps@table{tbp} |
---|
| 906 | \def\ftype@table{2} |
---|
| 907 | \def\ext@table{lot} |
---|
| 908 | \def\fnum@table{\tablename~\thetable} |
---|
| 909 | \newenvironment{table} |
---|
| 910 | {\@float{table}} |
---|
| 911 | {\end@float} |
---|
| 912 | \newenvironment{table*} |
---|
| 913 | {\@dblfloat{table}} |
---|
| 914 | {\end@dblfloat} |
---|
| 915 | %%-----------------------------------------------------------------%% |
---|
| 916 | \newcommand{\FIGURE}[2][v]{\begin{floatingfigure}[#1]#2 |
---|
| 917 | \end{floatingfigure}} |
---|
| 918 | \newcommand{\TABLE}[2][v]{\begin{floatingtable}[#1]{#2} |
---|
| 919 | \end{floatingtable}} |
---|
| 920 | \newcommand{\EPSFIGURE}[3][v]{\begin{floatingfigure}[#1]\epsfig{file=#2} |
---|
| 921 | \caption{#3}\end{floatingfigure}} |
---|
| 922 | \newcommand{\TABULAR}[4][v]{\begin{floatingtable}[#1]{\begin{tabular}{#2} |
---|
| 923 | #3\end{tabular}}\caption{#4} |
---|
| 924 | \end{floatingtable}} |
---|
| 925 | %Check below, and put automatic width *** |
---|
| 926 | \newcommand{\DOUBLEFIGURE}[5][ht]{\@dblfloat{figure}[#1]\centerline{% |
---|
| 927 | \parbox{.45\textwidth}{\centerline{\epsfig{file=#2}}}~~~~ |
---|
| 928 | \parbox{.45\textwidth}{\centerline{\epsfig{file=#3}}}} |
---|
| 929 | \centerline{\parbox[t]{.45\textwidth}{\caption{#4}}~~~~ |
---|
| 930 | \parbox[t]{.45\textwidth}{\caption{#5}}}\end@dblfloat} |
---|
| 931 | \newcommand{\DOUBLETABLE}[5][ht]{\@dblfloat{table}[#1]\centerline{% |
---|
| 932 | \parbox{.45\textwidth}{\centerline{#2}}~~~~ |
---|
| 933 | \parbox{.45\textwidth}{\centerline{#3}}} |
---|
| 934 | \centerline{\parbox[t]{.45\textwidth}{\caption{#4}}~~~~ |
---|
| 935 | \parbox[t]{.45\textwidth}{\caption{#5}}}\end@dblfloat} |
---|
| 936 | %%%%%%---------------- FROM FLOATFLT PACKAGE ------------------%%%%%%%% |
---|
| 937 | %% Original file `floatflt.sty', modified by F.Nesti <nesti@sissa.it> to: |
---|
| 938 | %% be inserted in JINST.cls; |
---|
| 939 | %% correct float placement when shifting past pages; |
---|
| 940 | %% correct incompatibility with \marginpar; |
---|
| 941 | %% correct incompatibility with \@startsection; |
---|
| 942 | %% correct persisting indentation in following pars; |
---|
| 943 | %% let float also at beginning of pages; |
---|
| 944 | %% avoid the widht specification. |
---|
| 945 | %% |
---|
| 946 | %% Original was 1994-1996 by Mats Dahlgren <matsd@physchem.kth.se>. |
---|
| 947 | %% |
---|
| 948 | %%%%%%%%\NeedsTeXFormat{LaTeX2e}[1994/06/01] %LEFT THIS STUFF TO |
---|
| 949 | %%%%%%%%\ProvidesPackage{floatflt}[1996/02/27 v. 1.3] %RECONVERT TO PACKAGE. |
---|
| 950 | \newcounter{OptionTest} |
---|
| 951 | \if@twoside |
---|
| 952 | \setcounter{OptionTest}{0} |
---|
| 953 | \else % POS: 2side=p/1side=r |
---|
| 954 | \setcounter{OptionTest}{1} |
---|
| 955 | \fi |
---|
| 956 | %%%%%%%%\DeclareOption{rflt}{\setcounter{OptionTest}{1}} |
---|
| 957 | %%%%%%%%\DeclareOption{lflt}{\setcounter{OptionTest}{2}} % CHOSEN. |
---|
| 958 | %%%%%%%%\DeclareOption{vflt}{\setcounter{OptionTest}{0}} |
---|
| 959 | %%%%%%%%\DeclareOption*{\OptionNotUsed} |
---|
| 960 | %%%%%%%%\ProcessOptions |
---|
| 961 | \newbox\@tmpbox |
---|
| 962 | \newbox\figbox |
---|
| 963 | \newbox\tabbox |
---|
| 964 | \newbox\pagebox |
---|
| 965 | \newcount\ffigcount |
---|
| 966 | \newcount\ftabcount |
---|
| 967 | \newcount\hangcount |
---|
| 968 | \newcount\nosuccesstryfig |
---|
| 969 | \newcount\nosuccesstrytab |
---|
| 970 | \newdimen\figgutter \figgutter=1truepc |
---|
| 971 | \newdimen\tabgutter \tabgutter=1truepc |
---|
| 972 | \newdimen\fl@wd |
---|
| 973 | \newdimen\fl@ht |
---|
| 974 | \newdimen\htdone \htdone=\z@ |
---|
| 975 | \newdimen\pageht |
---|
| 976 | \newdimen\startpageht |
---|
| 977 | \newdimen\floatfltwidth |
---|
| 978 | \newdimen\fltitemwidth |
---|
| 979 | \newif\iftryingfig \tryingfigfalse |
---|
| 980 | \newif\iftryingtab \tryingtabfalse |
---|
| 981 | \newif\ifdoingfig \doingfigfalse |
---|
| 982 | \newif\ifdoingtab \doingtabfalse |
---|
| 983 | \newif\iffigprocessing \figprocessingfalse |
---|
| 984 | \newif\iftabprocessing \tabprocessingfalse |
---|
| 985 | \newif\ifpageafterfig \pageafterfigfalse |
---|
| 986 | \newif\ifpageaftertab \pageaftertabfalse |
---|
| 987 | \newif\ifoddpages |
---|
| 988 | \newif\ifoutput |
---|
| 989 | \newtoks\outputpretest |
---|
| 990 | \def\@captype{} |
---|
| 991 | %%---------------- ORRIBLE HACKS, SORRY -------------------------%% |
---|
| 992 | \let\old@marginpar\marginpar % |
---|
| 993 | \renewcommand\marginpar[1]{{\outputpretest={\outputtrue}% REDEF \marginpar. |
---|
| 994 | \old@marginpar{#1}}} % |
---|
| 995 | \def\g@addto#1#2{{\toks@\expandafter{#1#2}% |
---|
| 996 | \xdef#1{\the\toks@}}}% |
---|
| 997 | \def\postpone@captions{% % |
---|
| 998 | \global\let\tmp@caption\caption % \label, LATER. |
---|
| 999 | \global\let\later@capt\relax % UN PO' PESANTI |
---|
| 1000 | \gdef\later@label{}% % MA D'ALTRONDE... |
---|
| 1001 | \let\J@ref\ref\def\ref{\protect\J@ref}% % protect ref in captions.. |
---|
| 1002 | \renewcommand\caption{\@ifnextchar[\J@@caption\J@caption}% |
---|
| 1003 | \newcommand\J@caption[1]{\gdef\later@capt{\tmp@caption{##1}}}% LOCAL!! |
---|
| 1004 | \newcommand\J@@caption[2][v]% |
---|
| 1005 | {\gdef\later@capt{\tmp@caption[##1]{##2}}}% LOCAL!! |
---|
| 1006 | \renewcommand\@@label[1]{\egroup\name{ref-##1}% % TAG WHERE CALLED, AT LEAST, |
---|
| 1007 | \if@draft\norm@note{}{LAB: ##1}\fi% & DRAFTNOTE. |
---|
| 1008 | \g@addto\later@label{\old@label{##1}}}% |
---|
| 1009 | } |
---|
| 1010 | \AtEndDocument{\iftryingfig\JINST@warnl{Floating figure \the\ffigcount\space |
---|
| 1011 | remains undone}\fi |
---|
| 1012 | \iftryingtab\JINST@warnl{Floating table \the\ftabcount\space |
---|
| 1013 | remains undone}\fi} |
---|
| 1014 | %%----------------- FIGURE ---------------------------------------%% |
---|
| 1015 | \newenvironment{floatingfigure}[1][v]% |
---|
| 1016 | {\@tfor \@tempa :=#1\do {\xdef\@fside{\@tempa}}% |
---|
| 1017 | \global\advance\ffigcount by 1% |
---|
| 1018 | \iffigprocessing {\count0=\ffigcount\advance\count0 by -1% |
---|
| 1019 | \JINST@warnl{Floating figures \the\count0\space\space and |
---|
| 1020 | \the\ffigcount\space colliding}}\fi |
---|
| 1021 | \iftabprocessing \JINST@warnl{Floating table \the\ftabcount\space and |
---|
| 1022 | floating figure \the\ffigcount\space colliding}\fi |
---|
| 1023 | \postpone@captions |
---|
| 1024 | \global\setbox\@tmpbox=\hbox\bgroup% begin of figbox %HBOX FOR AUTO WIDTH! |
---|
| 1025 | } |
---|
| 1026 | {% |
---|
| 1027 | \egroup% % CALCULATE WIDTH (NO CAPTION FOR NOW) |
---|
| 1028 | \global\setlength{\floatfltwidth}{\the\wd\@tmpbox}% |
---|
| 1029 | % New behavior: wd < .6 columnwidth => floatflt. |
---|
| 1030 | % wd < columnwidth => float{figure} |
---|
| 1031 | % wd > columnwidth => dblfloat{figure} |
---|
| 1032 | \ifdim\floatfltwidth<.6\columnwidth% % IF NOT TOO WIDE OK: |
---|
| 1033 | \global\setbox\figbox=\vbox{\hsize=\floatfltwidth |
---|
| 1034 | \def\@captype{figure}% |
---|
| 1035 | \noindent\unhbox\@tmpbox |
---|
| 1036 | \later@capt\later@label}% |
---|
| 1037 | \global\figprocessingtrue |
---|
| 1038 | \global\everypar={\tryfig\oldeverypar}% must be set globally! |
---|
| 1039 | \figinsert\par |
---|
| 1040 | \else% % ELSE NORMAL LATEX FIGURE, SIGH. |
---|
| 1041 | % \JINST@mess{Floating figure \the\ffigcount\space is |
---|
| 1042 | % wide becomes a LaTeX float}% |
---|
| 1043 | \if\@fside v \def\@fside{ht}\fi |
---|
| 1044 | \ifdim\floatfltwidth<\columnwidth |
---|
| 1045 | \def\@@tempa{\@float{figure}[}\let\@@tempb\end@float |
---|
| 1046 | \else |
---|
| 1047 | \def\@@tempa{\@dblfloat{figure}[}\let\@@tempb\end@dblfloat |
---|
| 1048 | \fi |
---|
| 1049 | \expandafter\@@tempa\@fside]\center\unhbox\@tmpbox\later@capt\later@label\@@tempb |
---|
| 1050 | \fi |
---|
| 1051 | } |
---|
| 1052 | %%------------ TABLE ----------------------------------------------%% |
---|
| 1053 | \newenvironment{floatingtable}[1][v]% |
---|
| 1054 | {\@tfor \@tempa :=#1\do {\global\edef\@tside{\@tempa}}% |
---|
| 1055 | \global\advance\ftabcount by 1% |
---|
| 1056 | \iftabprocessing {\count0=\ftabcount\advance\count0 by -1% |
---|
| 1057 | \JINST@warnl{Floating tables \the\count0\space |
---|
| 1058 | \space and \the\ftabcount \space colliding}}\fi |
---|
| 1059 | \iffigprocessing \JINST@warnl{Floating figure \the\ffigcount\space and |
---|
| 1060 | floating table \the\ftabcount\space colliding}\fi |
---|
| 1061 | \postpone@captions |
---|
| 1062 | \global\setbox\@tmpbox=\hbox\bgroup% begin of tabbox, ACTUALLY AN HBOX. |
---|
| 1063 | } |
---|
| 1064 | {% |
---|
| 1065 | \egroup% end of \tabbox, % ACTUALLY \@tmpbox |
---|
| 1066 | \global\setlength{\floatfltwidth}{\the\wd\@tmpbox}% |
---|
| 1067 | \ifdim\floatfltwidth<.6\columnwidth% % IF NOT TOO WIDE OK: |
---|
| 1068 | \global\setbox\tabbox=\vbox{\hsize=\floatfltwidth |
---|
| 1069 | \def\@captype{table}% |
---|
| 1070 | \noindent\unhbox\@tmpbox |
---|
| 1071 | \later@capt\later@label}% |
---|
| 1072 | \global\tabprocessingtrue |
---|
| 1073 | \global\everypar={\trytab\oldeverypar}% |
---|
| 1074 | \tabinsert\par% |
---|
| 1075 | \else% % ELSE NORMAL LATEX TABLE. |
---|
| 1076 | % \JINST@mess{Floating table \the\ftabcount\space is |
---|
| 1077 | % wide becomes a LaTeX float}% |
---|
| 1078 | \ifdim\floatfltwidth<1.1\columnwidth |
---|
| 1079 | \if\@tside v \def\@tside{ht}\fi |
---|
| 1080 | \def\@@tempa{\@float{table}[}\let\@@tempb\end@float |
---|
| 1081 | \else |
---|
| 1082 | \if\@tside v \def\@tside{t}\fi |
---|
| 1083 | \def\@@tempa{\@dblfloat{table}[}\let\@@tempb\end@dblfloat |
---|
| 1084 | \fi |
---|
| 1085 | \expandafter\@@tempa\@tside]% % ACTUALLY CALL THE LATEX FLOAT |
---|
| 1086 | \center\unhbox\@tmpbox\later@capt\later@label |
---|
| 1087 | \@@tempb |
---|
| 1088 | \fi% |
---|
| 1089 | } |
---|
| 1090 | %----------- prepare for tries ----------------------------% |
---|
| 1091 | \def\figinsert{% |
---|
| 1092 | \global\nosuccesstryfig=0% |
---|
| 1093 | \global\outputpretest={\do@test}% |
---|
| 1094 | \global\tryingfigtrue \global\doingfigfalse% |
---|
| 1095 | \global\pageafterfigfalse}% |
---|
| 1096 | \def\tabinsert{% |
---|
| 1097 | \global\nosuccesstrytab=0% |
---|
| 1098 | \global\outputpretest={\do@test}% |
---|
| 1099 | \global\tryingtabtrue \global\doingtabfalse% |
---|
| 1100 | \global\pageaftertabfalse}% |
---|
| 1101 | %----------- init -----------------------------------------% |
---|
| 1102 | \AtBeginDocument{% |
---|
| 1103 | \edef\oldoutput{\the\output} |
---|
| 1104 | \output={\the\outputpretest\ifoutput\oldoutput\fi}% |
---|
| 1105 | \outputpretest={\outputtrue}% |
---|
| 1106 | \edef\oldeverypar{\the\everypar}% PERCHE' NESSUNO LO RIMETTE PIU' A POSTO?*** |
---|
| 1107 | } |
---|
| 1108 | %---- tests during \outputpretest -------------------------% |
---|
| 1109 | \def\do@test{% |
---|
| 1110 | \ifnum\outputpenalty=-10005 |
---|
| 1111 | % \output |
---|
| 1112 | \setbox\pagebox=\vbox{\unvbox255}% |
---|
| 1113 | \global\pageht=\ht\pagebox |
---|
| 1114 | \global\outputfalse |
---|
| 1115 | \unvbox\pagebox |
---|
| 1116 | \dimen0=\pageht\advance\dimen0 by 2 \baselineskip |
---|
| 1117 | \ifdim\dimen0>\vsize\pagebreak[4]\global\pageht\z@\fi |
---|
| 1118 | \else |
---|
| 1119 | \global\outputtrue |
---|
| 1120 | \ifnum\outputpenalty>-\@Mi %ie \marginpar's give penalty. |
---|
| 1121 | \ifdoingtab\global\pageaftertabtrue\fi |
---|
| 1122 | \ifdoingfig\global\pageafterfigtrue\fi |
---|
| 1123 | \fi |
---|
| 1124 | \fi}% |
---|
| 1125 | %-------- check for side ----------------------------------% |
---|
| 1126 | \def\chk@side#1{% DEFINED \fl@sid, BUT IF CHOSEN A DEFAULT, ELIMINATE ALL *** |
---|
| 1127 | {\edef\fl@sid{#1}% |
---|
| 1128 | \if\fl@sid r\global\oddpagestrue\fi |
---|
| 1129 | \if\fl@sid l\global\oddpagesfalse\fi |
---|
| 1130 | \if\fl@sid p% |
---|
| 1131 | \ifodd\c@page\global\oddpagesfalse |
---|
| 1132 | \else\global\oddpagestrue\fi |
---|
| 1133 | \fi |
---|
| 1134 | \if\fl@sid v% |
---|
| 1135 | \ifnum\theOptionTest=0% |
---|
| 1136 | \ifodd\c@page\global\oddpagesfalse |
---|
| 1137 | \else\global\oddpagestrue\fi |
---|
| 1138 | \else |
---|
| 1139 | \ifodd\theOptionTest\global\oddpagestrue |
---|
| 1140 | \else\global\oddpagesfalse\fi |
---|
| 1141 | \fi |
---|
| 1142 | \fi |
---|
| 1143 | }}% |
---|
| 1144 | %-------- get point in page -------------------------------% |
---|
| 1145 | \def\get@pageht{{\everypar={\relax}\setbox0=\lastbox |
---|
| 1146 | \parindent=\wd0 \parskip=\z@ \par |
---|
| 1147 | \penalty-10005 \leavevmode}}% |
---|
| 1148 | %-------- try at everypar ---------------------------------% |
---|
| 1149 | \def\tryfig{% |
---|
| 1150 | \global\fl@ht\ht\figbox |
---|
| 1151 | \global\fl@wd\wd\figbox |
---|
| 1152 | \global\let\fl@gut\figgutter |
---|
| 1153 | \iftryingfig |
---|
| 1154 | \get@pageht |
---|
| 1155 | \dimen0=\vsize |
---|
| 1156 | \advance\dimen0 by -\pageht |
---|
| 1157 | \advance\dimen0 by -2\baselineskip |
---|
| 1158 | \ifdim\dimen0>\fl@ht |
---|
| 1159 | \chk@side\@fside |
---|
| 1160 | \dimen0=0.3\baselineskip |
---|
| 1161 | \vrule depth \dimen0 width \z@%height 1.5\baselineskip |
---|
| 1162 | \vadjust{\kern -\dimen0 |
---|
| 1163 | \vtop to \dimen0{% |
---|
| 1164 | \baselineskip=\dimen0 |
---|
| 1165 | \vss \vbox to 1ex{% |
---|
| 1166 | \ifoddpages |
---|
| 1167 | \hb@xt@\hsize{\hss\copy\figbox}% |
---|
| 1168 | \else% leftsetting |
---|
| 1169 | \hb@xt@\hsize{\copy\figbox\hss}% |
---|
| 1170 | \fi |
---|
| 1171 | \vss}\null}}% |
---|
| 1172 | \global\tryingfigfalse |
---|
| 1173 | \global\doingfigtrue |
---|
| 1174 | \global\startpageht=\pageht |
---|
| 1175 | \global\htdone=\z@ |
---|
| 1176 | \dohang |
---|
| 1177 | \ifnum\nosuccesstryfig>0% |
---|
| 1178 | \JINST@mess{Flt. fig. \the\ffigcount\space set on page \the\count0, |
---|
| 1179 | shifted \the\nosuccesstryfig\space par(s) forward}% |
---|
| 1180 | % \else |
---|
| 1181 | % \JINST@mess{Floating figure \the\ffigcount\space |
---|
| 1182 | % set on page \the\count0}% |
---|
| 1183 | \fi |
---|
| 1184 | \else |
---|
| 1185 | \global\advance\nosuccesstryfig by 1 |
---|
| 1186 | \fi |
---|
| 1187 | \else% % IF NOT TRYING |
---|
| 1188 | \ifdoingfig |
---|
| 1189 | \get@pageht |
---|
| 1190 | \global\htdone=\pageht |
---|
| 1191 | \global\advance\htdone by -\startpageht |
---|
| 1192 | \ifpageafterfig |
---|
| 1193 | \global\doingfigfalse% IN CASE A PAGEBREAK JUST BELOW? |
---|
| 1194 | \else |
---|
| 1195 | \dimen0=\fl@ht |
---|
| 1196 | \advance\dimen0 by .85\baselineskip % .85 ENOUGH: WE ARE AT NEW PAR |
---|
| 1197 | % \typeout{FLOAT HT: \the\dimen0, HTDONE: \the\htdone} |
---|
| 1198 | \ifdim\htdone<\dimen0% |
---|
| 1199 | \dohang |
---|
| 1200 | \else |
---|
| 1201 | \global\doingfigfalse |
---|
| 1202 | \fi |
---|
| 1203 | \fi |
---|
| 1204 | \ifdoingfig\else\global\figprocessingfalse\fi% IF NO MORE DOING. |
---|
| 1205 | \else |
---|
| 1206 | \global\outputpretest={\outputtrue}% NOT RESTORE EVPAR IF NOT DOING? |
---|
| 1207 | \fi% % END IF DOING |
---|
| 1208 | \fi% % END IF TRYING |
---|
| 1209 | } |
---|
| 1210 | \def\trytab{% |
---|
| 1211 | \global\fl@ht\ht\tabbox |
---|
| 1212 | \global\fl@wd\wd\tabbox |
---|
| 1213 | \global\let\fl@gut\tabgutter |
---|
| 1214 | \iftryingtab |
---|
| 1215 | \get@pageht |
---|
| 1216 | \dimen0=\vsize |
---|
| 1217 | \advance\dimen0 by -\pageht |
---|
| 1218 | \advance\dimen0 by -2\baselineskip |
---|
| 1219 | \ifdim\dimen0>\fl@ht |
---|
| 1220 | \chk@side\@tside |
---|
| 1221 | \dimen0=0.3\baselineskip |
---|
| 1222 | \vrule depth \dimen0 width \z@ |
---|
| 1223 | \vadjust{\kern -\dimen0 |
---|
| 1224 | \vtop to \dimen0{% |
---|
| 1225 | \baselineskip=\dimen0 |
---|
| 1226 | \vss \vbox to 1ex{% |
---|
| 1227 | \ifoddpages |
---|
| 1228 | \hb@xt@\hsize{\hss\copy\tabbox}% |
---|
| 1229 | \else% leftsetting |
---|
| 1230 | \hb@xt@\hsize{\copy\tabbox\hss}% |
---|
| 1231 | \fi |
---|
| 1232 | \vss}\null}}% |
---|
| 1233 | \global\tryingtabfalse |
---|
| 1234 | \global\doingtabtrue |
---|
| 1235 | \global\startpageht=\pageht |
---|
| 1236 | \global\htdone=\z@ |
---|
| 1237 | \dohang |
---|
| 1238 | \ifnum\nosuccesstrytab>0% |
---|
| 1239 | \JINST@mess{Flt. tab. \the\ftabcount\space set on page \the\count0, |
---|
| 1240 | shifted \the\nosuccesstrytab\space par(s) forward}% |
---|
| 1241 | % \else |
---|
| 1242 | % \JINST@mess{Floating table \the\ftabcount\space |
---|
| 1243 | % set on page \the\count0}% |
---|
| 1244 | \fi |
---|
| 1245 | \else |
---|
| 1246 | \global\advance\nosuccesstrytab by 1 |
---|
| 1247 | \fi |
---|
| 1248 | \else |
---|
| 1249 | \ifdoingtab |
---|
| 1250 | \get@pageht |
---|
| 1251 | \global\htdone=\pageht |
---|
| 1252 | \global\advance\htdone by -\startpageht |
---|
| 1253 | \ifpageaftertab |
---|
| 1254 | \global\doingtabfalse |
---|
| 1255 | \else |
---|
| 1256 | \dimen0=\fl@ht |
---|
| 1257 | \advance\dimen0 by .85\baselineskip % .85 ENOUGH: WE ARE AT NEW PAR |
---|
| 1258 | \ifdim\htdone<\dimen0% |
---|
| 1259 | \dohang |
---|
| 1260 | \else |
---|
| 1261 | \global\doingtabfalse |
---|
| 1262 | \fi |
---|
| 1263 | \fi |
---|
| 1264 | \ifdoingtab\relax\else\global\tabprocessingfalse\fi |
---|
| 1265 | \else |
---|
| 1266 | \global\outputpretest={\outputtrue}% |
---|
| 1267 | \fi |
---|
| 1268 | \fi |
---|
| 1269 | } |
---|
| 1270 | %----- hanging lord -----------------------------% |
---|
| 1271 | \def\dohang{% |
---|
| 1272 | \dimen0=\fl@ht |
---|
| 1273 | \advance\dimen0 by -\htdone |
---|
| 1274 | \advance\dimen0 by 1.999\baselineskip % (16/12/98) WAS 1.49 BUT |
---|
| 1275 | \hangcount=\dimen0 % TEX ROUNDS ON STRICT INTEGERS |
---|
| 1276 | \divide\hangcount by \baselineskip % IN THIS DIVISION! |
---|
| 1277 | % \typeout{HANGCOUNT: \the\hangcount.} |
---|
| 1278 | % \ifnum\hangcount > 0 % IF ZERO ALSO INDENT MUST BE NULL. (7/6/97) |
---|
| 1279 | \dimen0=\fl@wd |
---|
| 1280 | \advance\dimen0 by \fl@gut |
---|
| 1281 | \ifoddpages |
---|
| 1282 | \global\hangindent=-\dimen0% placing right |
---|
| 1283 | \else |
---|
| 1284 | \global\hangindent=\dimen0% placing left |
---|
| 1285 | \fi |
---|
| 1286 | \global\hangafter=-\hangcount |
---|
| 1287 | % \fi |
---|
| 1288 | } |
---|
| 1289 | %----------------------- TWO NEWITEMS ---------------------% |
---|
| 1290 | \newcommand{\fltitem}[2][\z@]{\setlength{\fltitemwidth}{\linewidth}% |
---|
| 1291 | \addtolength{\fltitemwidth}{-\floatfltwidth}% |
---|
| 1292 | \addtolength{\fltitemwidth}{-0.5em}% |
---|
| 1293 | \item \parbox[t]{\fltitemwidth}{#2}\\[#1]} |
---|
| 1294 | \newcommand{\fltditem}[3][\z@]{\setlength{\fltitemwidth}{\linewidth}% |
---|
| 1295 | \addtolength{\fltitemwidth}{-\floatfltwidth}% |
---|
| 1296 | \addtolength{\fltitemwidth}{-0.5em}% |
---|
| 1297 | \item[#2] \parbox[t]{\fltitemwidth}{#3}\\[#1]} |
---|
| 1298 | %%%%%%\endinput |
---|
| 1299 | %%% |
---|
| 1300 | %%% End of ex-file `floatflt.sty'. |
---|
| 1301 | |
---|
| 1302 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% CAPTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 1303 | \newlength\abovecaptionskip |
---|
| 1304 | \newlength\belowcaptionskip |
---|
| 1305 | \setlength\abovecaptionskip{8\p@} |
---|
| 1306 | \setlength\belowcaptionskip{0\p@} |
---|
| 1307 | \long\def\@makecaption#1#2{% |
---|
| 1308 | \if@hyper{\edef\@pippo{the\@captype} |
---|
| 1309 | \name{\@captype\expandafter\csname\@pippo\endcsname}}\fi% |
---|
| 1310 | \vskip\abovecaptionskip |
---|
| 1311 | {\let\label\@gobble% % FN 10.2.97 REMOVED LATEX BUG: |
---|
| 1312 | \let\index\@gobble% % LARGE CAPTIONS PROCESS LABEL |
---|
| 1313 | \let\glossary\@gobble% % TWO TIMES. |
---|
| 1314 | \sbox\@tempboxa{\small {\bfseries #1.} #2}% % |
---|
| 1315 | \global\dimen0\wd\@tempboxa}% % |
---|
| 1316 | \ifdim \dimen0 >\hsize |
---|
| 1317 | \small {\bfseries #1.} #2\par |
---|
| 1318 | \else |
---|
| 1319 | \global\@minipagefalse \sbox\@tempboxa{\small {\bfseries #1.} #2}% |
---|
| 1320 | \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% |
---|
| 1321 | \fi |
---|
| 1322 | \vskip\belowcaptionskip} |
---|
| 1323 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FONTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 1324 | \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} |
---|
| 1325 | \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} |
---|
| 1326 | \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} |
---|
| 1327 | \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} |
---|
| 1328 | \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} |
---|
| 1329 | \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} |
---|
| 1330 | \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} |
---|
| 1331 | \DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal} |
---|
| 1332 | \DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal} |
---|
| 1333 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TOC %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 1334 | \newcommand\tocsecs{} |
---|
| 1335 | \newcommand\@pnumwidth{1.55em} |
---|
| 1336 | \newcommand\@tocrmarg{2.55em} |
---|
| 1337 | \newcommand\@dotsep{4.5} |
---|
| 1338 | \setcounter{tocdepth}{3} |
---|
| 1339 | \newcommand\tableofcontents{% |
---|
| 1340 | \section*{\contentsname\label{-TOC-}} |
---|
| 1341 | \@starttoc{toc}% |
---|
| 1342 | \gdef\tableofcontents{\JINST@igno{\tableofcontents\space already done}}} |
---|
| 1343 | \newcommand*\l@part[2]{\def\hyp@typ{part}% |
---|
| 1344 | \ifnum \c@tocdepth >-2\relax |
---|
| 1345 | \addpenalty\@secpenalty |
---|
| 1346 | \addvspace{2.25em \@plus\p@}% |
---|
| 1347 | \begingroup |
---|
| 1348 | \setlength\@tempdima{3em}% |
---|
| 1349 | \parindent \z@ \rightskip \@pnumwidth |
---|
| 1350 | \parfillskip -\@pnumwidth |
---|
| 1351 | {\leavevmode |
---|
| 1352 | \large \bfseries \tocsecs#1\hfil \hb@xt@\@pnumwidth{\hss |
---|
| 1353 | \intJlink{\hash pag#2}{#2}}}\par |
---|
| 1354 | \nobreak |
---|
| 1355 | \if@compatibility |
---|
| 1356 | \global\@nobreaktrue |
---|
| 1357 | \everypar{\global\@nobreakfalse\everypar{}}% |
---|
| 1358 | \fi |
---|
| 1359 | \endgroup |
---|
| 1360 | \fi} |
---|
| 1361 | \newcommand*\l@section[2]{\def\hyp@typ{sec}% |
---|
| 1362 | \ifnum \c@tocdepth >\z@ |
---|
| 1363 | \addpenalty\@secpenalty |
---|
| 1364 | \addvspace{1.0em \@plus\p@}% |
---|
| 1365 | \setlength\@tempdima{1.8em}% %WIDTH OF SECT. N. |
---|
| 1366 | \begingroup |
---|
| 1367 | \let\d@t.% |
---|
| 1368 | \parindent \z@ \rightskip \@pnumwidth |
---|
| 1369 | \parfillskip -\@pnumwidth |
---|
| 1370 | \leavevmode \bfseries |
---|
| 1371 | \advance\leftskip\@tempdima |
---|
| 1372 | \hskip -\leftskip |
---|
| 1373 | \tocsecs#1\nobreak\hfil %HREF HERE WOULD GET ALSO THE TITLE(...) |
---|
| 1374 | \nobreak\hb@xt@\@pnumwidth{\hss \intJlink{\hash pag#2}{#2}}\par |
---|
| 1375 | \endgroup |
---|
| 1376 | \fi} |
---|
| 1377 | |
---|
| 1378 | \newcommand*\l@subsection{\def\hyp@typ{sec}\@tocline{2}{1.8em}{2.3em}} |
---|
| 1379 | \newcommand*\l@subsubsection{\def\hyp@typ{sec}\@tocline{3}{4.1em}{3.1em}} |
---|
| 1380 | \newcommand*\l@paragraph{\def\hyp@typ{sec}\@tocline{4}{7.2em}{4.3em}} |
---|
| 1381 | \newcommand*\l@subparagraph{\def\hyp@typ{sec}\@tocline{5}{10.5em}{5em}} |
---|
| 1382 | |
---|
| 1383 | \if@hyper |
---|
| 1384 | \let\old@dtl\@dottedtocline |
---|
| 1385 | \def\@dottedtocline#1#2#3#4#5{\old@dtl{#1}{#2}{#3}{#4}{% |
---|
| 1386 | \intJlink{\hash pag#5}{#5}}} |
---|
| 1387 | \fi |
---|
| 1388 | |
---|
| 1389 | \def\@tocline#1#2#3#4#5{% |
---|
| 1390 | \ifnum #1>\c@tocdepth \else |
---|
| 1391 | \vskip \z@ \@plus.2\p@ |
---|
| 1392 | {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip |
---|
| 1393 | \parindent #2\relax\@afterindenttrue |
---|
| 1394 | \interlinepenalty\@M |
---|
| 1395 | \leavevmode |
---|
| 1396 | \@tempdima #3\relax |
---|
| 1397 | \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip |
---|
| 1398 | {#4}\nobreak |
---|
| 1399 | \hfill |
---|
| 1400 | \nobreak |
---|
| 1401 | \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor \intJlink{\hash pag#5}{#5}}% |
---|
| 1402 | \par}% |
---|
| 1403 | \fi} |
---|
| 1404 | |
---|
| 1405 | |
---|
| 1406 | %%%%%%%%%%%%%%%%%%%%%% LIST OF FIGURES AND TABLES %%%%%%%%%%%%%%%%%%%%% |
---|
| 1407 | \if@draft % ONLY IF DRAFT! ... |
---|
| 1408 | \newcommand\listoffigures{% |
---|
| 1409 | \section*{\listfigurename |
---|
| 1410 | \@mkboth{\MakeUppercase\listfigurename}% |
---|
| 1411 | {\MakeUppercase\listfigurename}}% |
---|
| 1412 | \@starttoc{lof}% |
---|
| 1413 | } |
---|
| 1414 | \newcommand*\l@figure{\def\hyp@typ{figure}\@dottedtocline{1}{1.5em}{2.3em}} |
---|
| 1415 | \newcommand\listoftables{% |
---|
| 1416 | \section*{\listtablename |
---|
| 1417 | \@mkboth{% |
---|
| 1418 | \MakeUppercase\listtablename}{\MakeUppercase\listtablename}}% |
---|
| 1419 | \@starttoc{lot}% |
---|
| 1420 | } |
---|
| 1421 | \newcommand*\l@table{\def\hyp@typ{table}\@dottedtocline{1}{1.5em}{2.3em}} |
---|
| 1422 | \else |
---|
| 1423 | \newcommand\listoffigures{\JINST@ignol{List of figures (draft mode only)}} |
---|
| 1424 | \newcommand\listoftables{\JINST@ignol{List of tables (draft mode only)}} |
---|
| 1425 | \fi |
---|
| 1426 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%% BIBLIOGRAPHY %%%%%%%%%%%%%%%%%%%%%%%%%%%%*** |
---|
| 1427 | \newdimen\bibindent |
---|
| 1428 | \setlength\bibindent{1.5em} |
---|
| 1429 | \newenvironment{thebibliography}[1]% %UNFORTUNATELY MODIFIED.. |
---|
| 1430 | {\bgroup\raggedright\small\section*{\refname |
---|
| 1431 | \@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}}% |
---|
| 1432 | \list{\name{bib\@arabic\c@enumiv}% HOPE! |
---|
| 1433 | \@biblabel{\@arabic\c@enumiv}}% |
---|
| 1434 | {\settowidth\labelwidth{\@biblabel{#1}}% |
---|
| 1435 | \leftmargin\labelwidth |
---|
| 1436 | \advance\leftmargin\labelsep |
---|
| 1437 | \@openbib@code |
---|
| 1438 | \usecounter{enumiv}% |
---|
| 1439 | \let\p@enumiv\@empty |
---|
| 1440 | \renewcommand\theenumiv{\@arabic\c@enumiv}}% |
---|
| 1441 | \sloppy\clubpenalty4000\widowpenalty4000% |
---|
| 1442 | \sfcode`\.\@m} |
---|
| 1443 | {\def\@noitemerr |
---|
| 1444 | {\@latex@warning{Empty `thebibliography' environment}}% |
---|
| 1445 | \endlist\egroup} |
---|
| 1446 | \newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em} |
---|
| 1447 | \if@draft |
---|
| 1448 | \let\old@bbt\@bibitem\let\old@lbbt\@lbibitem% LOOK THE DISASTER HERE BELOW. |
---|
| 1449 | \def\@lbibitem[#1]#2{\old@lbbt[#1]{#2}\reversemarginpar{\sf\bfseries\small#2}} |
---|
| 1450 | \def\@bibitem#1{\old@bbt{#1}\reversemarginpar{\sf\bfseries\small#1}} |
---|
| 1451 | \fi |
---|
| 1452 | \let\@openbib@code\@empty |
---|
| 1453 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JOURNALS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 1454 | \def\@spires#1{\href{http://www-spires.slac.stanford.edu/spires/find/hep/www?j=#1}} |
---|
| 1455 | % %PITY THAT target IS NOT IMPLEMENTED. |
---|
| 1456 | \catcode`\%=12 |
---|
| 1457 | \catcode`\|=14 |
---|
| 1458 | |%%%% SM publications |
---|
| 1459 | \newcommand\jcap[3] {\href{http://www.iop.org/EJ/abstract/1475-7516/#2/#1/#3} |
---|
| 1460 | {{\it JCAP }{\bf #1} (#2) #3}} |
---|
| 1461 | \newcommand\jhep[3] {\href{http://www.iop.org/EJ/abstract/1126-6708/#2/#1/#3} |
---|
| 1462 | {{\it JHEP }{\bf #1} (#2) #3}} |
---|
| 1463 | \def\splitJINST#120#2#3#4#5#6#7#8#9{\href{http://www.iop.org/EJ/abstract/1748-0221/#1/#5#6/#4#5#6#7#8#9} |
---|
| 1464 | {20#2#3 {\it JINST }{\bf #1} #4#5#6#7#8#9}} |
---|
| 1465 | \newcommand\jinst[3] {\splitJINST#1#2#3} |
---|
| 1466 | |
---|
| 1467 | \def\splitJSTAT 20#1#2#3#4#5#6#7#8{\href{http://www.iop.org/EJ/abstract/1742-5468/20#1#2/#4#5/#3#4#5#6#7#8} |
---|
| 1468 | {{\it J. Stat. Mech.\ }(20#1#2) #3#4#5#6#7#8}} |
---|
| 1469 | \newcommand\jstat[2]{\splitJSTAT#1#2} |
---|
| 1470 | \newcommand\pos[1]{\href{http://pos.sissa.it/cgi-bin/reader/contribution.cgi?id=#1}{\tt #1}} |
---|
| 1471 | |%%%% APS journals |
---|
| 1472 | \newcommand\pr[3]{\href{http://dx.doi.org/10.1103/PhysRev.#1.#3} |
---|
| 1473 | {\emph{Phys.\ Rev.} {\bf #1} (#2) #3}} |
---|
| 1474 | \newcommand\pra[3]{\href{http://dx.doi.org/10.1103/PhysRevA.#1.#3} |
---|
| 1475 | {\emph{Phys.\ Rev.} {\bf A #1} (#2) #3}} |
---|
| 1476 | \newcommand\prb[3]{\href{http://dx.doi.org/10.1103/PhysRevB.#1.#3} |
---|
| 1477 | {\emph{Phys.\ Rev.} {\bf B #1} (#2) #3}} |
---|
| 1478 | \newcommand\prc[3]{\href{http://dx.doi.org/10.1103/PhysRevC.#1.#3} |
---|
| 1479 | {\emph{Phys.\ Rev.} {\bf C #1} (#2) #3}} |
---|
| 1480 | \newcommand\prd[3]{\href{http://dx.doi.org/10.1103/PhysRevD.#1.#3} |
---|
| 1481 | {\emph{Phys.\ Rev.} {\bf D #1} (#2) #3}} |
---|
| 1482 | \newcommand\prl[3]{\href{http://dx.doi.org/10.1103/PhysRevLett.#1.#3} |
---|
| 1483 | {\emph{Phys.\ Rev.\ Lett.} {\bf #1} (#2) #3}} |
---|
| 1484 | |%%%% Others |
---|
| 1485 | \newcommand\econf[3] {\@spires{ECONF%2C#1%2C#3} |
---|
| 1486 | {{\it eConf\ }{\bf #1} (#2) #3}} |
---|
| 1487 | \newcommand\rsi[3]{\href{http://scitation.aip.org/getabs/servlet/GetabsServlet?prog=normal&id=RSINAK0000#1000001#3000001} |
---|
| 1488 | {\emph{Rev.\ Sci.\ Instrum.} {\bf #1} (#2) #3}} |
---|
| 1489 | | }}}}}}}}}}}}}}}}}}}}}} "|" is here a comment (catcode defined above) to |
---|
| 1490 | | }}}}}}}}}}}}}}}}}}}}}} include parenthesis for emacs to parse properly. |
---|
| 1491 | \newcommand\ibid[3]{{\it ibid.\ }{\bf #1} (#2) #3} |
---|
| 1492 | \catcode`\%=14 |
---|
| 1493 | \catcode`\|=12 |
---|
| 1494 | % HEPTH's: \hepth{9912999} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 1495 | \newcommand{\hepth}[1]{\href{http://www.arxiv.org/abs/hep-th/#1}{\tt hep-th/#1}} |
---|
| 1496 | \newcommand{\hepph}[1]{\href{http://www.arxiv.org/abs/hep-ph/#1}{\tt hep-ph/#1}} |
---|
| 1497 | \newcommand{\heplat}[1]{\href{http://www.arxiv.org/abs/hep-lat/#1}{\tt hep-lat/#1}} |
---|
| 1498 | \newcommand{\hepex}[1]{\href{http://www.arxiv.org/abs/hep-ex/#1}{\tt hep-ex/#1}} |
---|
| 1499 | \newcommand{\nuclth}[1]{\href{http://www.arxiv.org/abs/nucl-th/#1}{\tt nucl-th/#1}} |
---|
| 1500 | \newcommand{\nuclex}[1]{\href{http://www.arxiv.org/abs/nucl-ex/#1}{\tt nucl-ex/#1}} |
---|
| 1501 | \newcommand{\grqc}[1]{\href{http://www.arxiv.org/abs/gr-qc/#1}{\tt gr-qc/#1}} |
---|
| 1502 | \newcommand{\qalg}[1]{\href{http://www.arxiv.org/abs/q-alg/#1}{\tt q-alg/#1}} |
---|
| 1503 | \newcommand{\dgga}[1]{\href{http://www.arxiv.org/abs/dg-ga/#1}{\tt dg-ga/#1}} |
---|
| 1504 | \newcommand{\accphys}[1]{\href{http://www.arxiv.org/abs/accphys/#1}{\tt accphys/#1}} |
---|
| 1505 | \newcommand{\alggeom}[1]{\href{http://www.arxiv.org/abs/alg-geom/#1}{\tt alg-geom/#1}} |
---|
| 1506 | \newcommand{\astroph}[1]{\href{http://www.arxiv.org/abs/astro-ph/#1}{\tt astro-ph/#1}} |
---|
| 1507 | \newcommand{\chaodyn}[1]{\href{http://www.arxiv.org/abs/chao-dyn/#1}{\tt chao-dyn/#1}} |
---|
| 1508 | \newcommand{\condmat}[1]{\href{http://www.arxiv.org/abs/cond-mat/#1}{\tt cond-mat/#1}} |
---|
| 1509 | \newcommand{\nlinsys}[1]{\href{http://www.arxiv.org/abs/nlin-sys/#1}{\tt nlin-sys/#1}} |
---|
| 1510 | \newcommand{\quantph}[1]{\href{http://www.arxiv.org/abs/quant-ph/#1}{\tt quant-ph/#1}} |
---|
| 1511 | \newcommand{\solvint}[1]{\href{http://www.arxiv.org/abs/solv-int/#1}{\tt solv-int/#1}} |
---|
| 1512 | \newcommand{\suprcon}[1]{\href{http://www.arxiv.org/abs/supr-con/#1}{\tt supr-con/#1}} |
---|
| 1513 | \newcommand{\mathph}[1]{\href{http://www.arxiv.org/abs/math-ph/#1}{\tt math-ph/#1}} |
---|
| 1514 | \newcommand{\physics}[1]{\href{http://www.arxiv.org/abs/physics/#1}{\tt physics/#1}} |
---|
| 1515 | \newcommand{\Math}[2]{\href{http://www.arxiv.org/abs/math.#1/#2}{\tt math.#1/#2}} |
---|
| 1516 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% BopHook %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 1517 | \ifpdf |
---|
| 1518 | \newcommand\Jwatermark[1]{\relax} |
---|
| 1519 | \JINST@warnl{ATTENTION!!! watermark disabled. Add it with pdftk |
---|
| 1520 | (use compilaJINSTpdflatex for instance)} |
---|
| 1521 | \else |
---|
| 1522 | \newcommand\Jwatermark[1]{\special{!userdict begin |
---|
| 1523 | /iseven {dup dup 2 idiv 2 mul eq} bind def |
---|
| 1524 | /BHend { |
---|
| 1525 | translate rotate |
---|
| 1526 | /Courier findfont 30 scalefont setfont |
---|
| 1527 | 0 0 moveto 0.80 setgray (#1) show grestore} |
---|
| 1528 | bind def |
---|
| 1529 | statusdict /duplexmode known |
---|
| 1530 | {statusdict begin duplexmode end} |
---|
| 1531 | {false} |
---|
| 1532 | ifelse |
---|
| 1533 | {/bop-hook {gsave iseven {-90 550 570} {+90 50 300} ifelse BHend} def} |
---|
| 1534 | {/bop-hook {gsave -90 550 570 BHend} def} |
---|
| 1535 | ifelse |
---|
| 1536 | end |
---|
| 1537 | }\let\JHEP\gobble} |
---|
| 1538 | \fi |
---|
| 1539 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FOOTNOTES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 1540 | \skip\footins = 1\bigskipamount plus 2pt minus 4pt |
---|
| 1541 | |
---|
| 1542 | \addtolength{\footnotesep}{1pt} |
---|
| 1543 | \renewcommand\footnoterule{% % NO HYPER... |
---|
| 1544 | \kern-3\p@ |
---|
| 1545 | \hrule\@width.4\columnwidth |
---|
| 1546 | \kern2.6\p@} |
---|
| 1547 | \newcommand\@makefntext[1]{% |
---|
| 1548 | \parindent 1em% |
---|
| 1549 | \noindent |
---|
| 1550 | \hb@xt@1.8em{\hss\@makefnmark}#1} |
---|
| 1551 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% NAMES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 1552 | \newcommand\contentsname{Contents} |
---|
| 1553 | \if@draft\newcommand\listfigurename{List of figures} |
---|
| 1554 | \newcommand\listtablename{List of tables}\fi |
---|
| 1555 | \newcommand\refname{References} |
---|
| 1556 | \newcommand\indexname{Index} |
---|
| 1557 | \newcommand\figurename{Figure} |
---|
| 1558 | \newcommand\tablename{Table} |
---|
| 1559 | \newcommand\partname{Part} |
---|
| 1560 | \newcommand\appendixname{Appendix} |
---|
| 1561 | \newcommand\abstractname{Abstract:} |
---|
| 1562 | \newcommand\keywordsname{Keywords:} |
---|
| 1563 | \newcommand\receivedname{Received:} |
---|
| 1564 | \newcommand\revisedname{Revised:} |
---|
| 1565 | \newcommand\acceptedname{Accepted:} |
---|
| 1566 | \newcommand\publishedname{Published:} |
---|
| 1567 | \newcommand\acknowlname{Acknowledgments} |
---|
| 1568 | \newcommand\queriesname{Queries for the author} |
---|
| 1569 | \newcommand\today{} |
---|
| 1570 | \edef\today{\ifcase\month\or |
---|
| 1571 | January\or February\or March\or April\or May\or June\or |
---|
| 1572 | July\or August\or September\or October\or November\or December\fi |
---|
| 1573 | \space\number\day, \number\year} |
---|
| 1574 | |
---|
| 1575 | \setlength\columnsep{20\p@} |
---|
| 1576 | \setlength\columnseprule{0\p@} |
---|
| 1577 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% DEFAULTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
---|
| 1578 | \pagestyle{JINST} |
---|
| 1579 | \pagenumbering{arabic} |
---|
| 1580 | \@addtoreset{equation}{section} |
---|
| 1581 | \if@preprint |
---|
| 1582 | \else |
---|
| 1583 | \let\pagestyle\@gobble |
---|
| 1584 | \let\thispagestyle\@gobble |
---|
| 1585 | \let\pagenumbering\@gobble |
---|
| 1586 | \fi |
---|
| 1587 | \onecolumn |
---|
| 1588 | |
---|
| 1589 | % FOR REQUESTED FRONTMATTER ... |
---|
| 1590 | \AtBeginDocument{\bgroup% SOME NICE (LOCAL) MESSAGES... |
---|
| 1591 | \def\@APPwarn#1{\JINST@warnl{\protect#1 should appear |
---|
| 1592 | before \protect\begin{document}}}% |
---|
| 1593 | \def\@APPerr#1{\ClassError{JINST}{\protect#1 should appear |
---|
| 1594 | before \protect\begin{document}}}% |
---|
| 1595 | \if@author\else\@APPerr{Some \protect\author{...}}\fi |
---|
| 1596 | \if@abstract\else\@APPerr{\abstract{...}}\fi |
---|
| 1597 | \if@preprint |
---|
| 1598 | \else |
---|
| 1599 | \if@rece\else\@APPerr{\received{...}}\fi |
---|
| 1600 | \if@acce\else\@APPerr{\accepted{...}}\fi |
---|
| 1601 | \if@publi\else\@APPerr{\published{...}}\fi |
---|
| 1602 | \if@keywords\else\@APPwarn{\keywords{...}}\fi |
---|
| 1603 | \fi |
---|
| 1604 | \egroup |
---|
| 1605 | \auto@maketitle}% |
---|
| 1606 | \endinput |
---|
| 1607 | %% |
---|
| 1608 | %% End of file `JINST.cls'. |
---|