| |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| \NeedsTeXFormat{LaTeX2e} |
| \ProvidesPackage{icml2026}[2025/10/29 v2.0 ICML Conference Style File] |
|
|
| |
| |
| |
| |
| \RequirePackage{times} |
|
|
| |
| \RequirePackage{fancyhdr} |
| \RequirePackage{xcolor} |
| \RequirePackage{algorithm} |
| \RequirePackage{algorithmic} |
| \RequirePackage{natbib} |
| \RequirePackage{eso-pic} |
| \RequirePackage{forloop} |
| \RequirePackage{url} |
| \RequirePackage{caption} |
|
|
| |
| \DeclareOption{accepted}{ |
| \renewcommand{\Notice@String}{\ICML@appearing} |
| \gdef\isaccepted{1} |
| } |
|
|
| |
| \DeclareOption{preprint}{ |
| \renewcommand{\Notice@String}{\ICML@preprint} |
| \gdef\ispreprint{1} |
| } |
|
|
| |
| \newcommand{\ICML@preprint}{ |
| \textit{Preprint. \today.} |
| } |
|
|
| \DeclareOption{nohyperref}{ |
| \gdef\nohyperref{1} |
| } |
|
|
| |
| \newif\ificmlshowauthors |
| \icmlshowauthorsfalse |
|
|
| |
| |
| |
| |
| |
| \newcommand{\ICML@appearing}{\textit{Proceedings of the |
| $\mathit{43}^{rd}$ International Conference on Machine Learning}, |
| Seoul, South Korea. PMLR 306, 2026. |
| Copyright 2026 by the author(s).} |
|
|
| |
| |
| |
| |
| |
| \newcommand{\Notice@String}{Preliminary work. Under review by the |
| International Conference on Machine Learning (ICML)\@. Do not distribute.} |
|
|
| |
| \ProcessOptions\relax |
|
|
| |
| \ifdefined\isaccepted \icmlshowauthorstrue \fi |
| \ifdefined\ispreprint \icmlshowauthorstrue \fi |
|
|
| \ifdefined\isaccepted\else\ifdefined\ispreprint\else\ifdefined\hypersetup |
| \hypersetup{pdfauthor={Anonymous Authors}} |
| \fi\fi\fi |
|
|
| \ifdefined\nohyperref\else\ifdefined\hypersetup |
| \definecolor{mydarkblue}{rgb}{0,0.08,0.45} |
| \hypersetup{ |
| pdftitle={}, |
| pdfsubject={Proceedings of the International Conference on Machine Learning 2026}, |
| pdfkeywords={}, |
| pdfborder=0 0 0, |
| pdfpagemode=UseNone, |
| colorlinks=true, |
| linkcolor=mydarkblue, |
| citecolor=mydarkblue, |
| filecolor=mydarkblue, |
| urlcolor=mydarkblue, |
| } |
| \fi |
| \fi |
|
|
|
|
|
|
| |
| |
| |
| |
|
|
| |
| \newcommand{\yrcite}[1]{\citeyearpar{#1}} |
| \renewcommand{\cite}[1]{\citep{#1}} |
|
|
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| \paperwidth=8.5in |
| \paperheight=11in |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| \newif\ifpdf |
| \ifx\pdfoutput\undefined |
| \else |
| \ifx\pdfoutput\relax |
| \else |
| \ifcase\pdfoutput |
| \else |
| \pdftrue |
| \fi |
| \fi |
| \fi |
|
|
| \ifpdf |
| |
| |
| \setlength{\pdfpagewidth}{8.5in} |
| \setlength{\pdfpageheight}{11in} |
| \fi |
|
|
| |
|
|
| \evensidemargin -0.23in |
| \oddsidemargin -0.23in |
| \setlength\textheight{9.0in} |
| \setlength\textwidth{6.75in} |
| \setlength\columnsep{0.25in} |
| \setlength\headheight{10pt} |
| \setlength\headsep{10pt} |
| \addtolength{\topmargin}{-20pt} |
| \addtolength{\topmargin}{-0.29in} |
|
|
| |
| |
| |
| |
| |
| \AtBeginDocument{ |
| \newif\ifmarginsmessedwith |
| \marginsmessedwithfalse |
| \ifdim\oddsidemargin=-16.62178pt \else oddsidemargin has been altered.\\ \marginsmessedwithtrue\fi |
| \ifdim\headheight=10.0pt \else headheight has been altered.\\ \marginsmessedwithtrue\fi |
| \ifdim\textheight=650.43pt \else textheight has been altered.\\ \marginsmessedwithtrue\fi |
| \ifdim\marginparsep=11.0pt \else marginparsep has been altered.\\ \marginsmessedwithtrue\fi |
| \ifdim\footskip=25.0pt \else footskip has been altered.\\ \marginsmessedwithtrue\fi |
| \ifdim\hoffset=0.0pt \else hoffset has been altered.\\ \marginsmessedwithtrue\fi |
| \ifdim\paperwidth=614.295pt \else paperwidth has been altered.\\ \marginsmessedwithtrue\fi |
| \ifdim\topmargin=-24.95781pt \else topmargin has been altered.\\ \marginsmessedwithtrue\fi |
| \ifdim\headsep=10.0pt \else headsep has been altered.\\ \marginsmessedwithtrue\fi |
| \ifdim\textwidth=487.8225pt \else textwidth has been altered.\\ \marginsmessedwithtrue\fi |
| \ifdim\marginparpush=5.0pt \else marginparpush has been altered.\\ \marginsmessedwithtrue\fi |
| \ifdim\voffset=0.0pt \else voffset has been altered.\\ \marginsmessedwithtrue\fi |
| \ifdim\paperheight=794.96999pt \else paperheight has been altered.\\ \marginsmessedwithtrue\fi |
| \ifmarginsmessedwith |
|
|
| \textbf{\large \em The page layout violates the ICML style.} |
|
|
| Please do not change the page layout, or include packages like geometry, |
| savetrees, or fullpage, which change it for you. |
|
|
| We're not able to reliably undo arbitrary changes to the style. Please remove |
| the offending package(s), or layout-changing commands and try again. |
|
|
| \fi} |
|
|
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| \def\ftype@copyrightbox{8} |
| \def\@copyrightspace{ |
| \@float{copyrightbox}[b] |
| \begin{center} |
| \setlength{\unitlength}{1pc} |
| \begin{picture}(20,1.5) |
| \put(0,2.5){\line(1,0){4.818}} |
| \put(0,0){\parbox[b]{19.75pc}{\small \Notice@String}} |
| \end{picture} |
| \end{center} |
| \end@float} |
|
|
| \setlength\footskip{25.0pt} |
| \flushbottom \twocolumn |
| \sloppy |
|
|
| |
| \def\addcontentsline#1#2#3{} |
|
|
| |
| |
|
|
| |
| \newbox\titrun |
|
|
| |
| \pagestyle{fancy} |
| \fancyhf{} |
| \fancyfoot[C]{\thepage} |
| |
| \renewcommand{\headrulewidth}{1pt} |
|
|
| |
| \def\icmltitlerunning#1{\gdef\@icmltitlerunning{#1}} |
|
|
| |
| \long\def\icmltitle#1{ |
|
|
| |
| |
| \ifx\undefined\@icmltitlerunning |
| \gdef\@icmltitlerunning{#1} |
| \fi |
|
|
| |
| \ifdefined\nohyperref\else\ifdefined\hypersetup |
| \hypersetup{pdftitle={#1}} |
| \fi\fi |
|
|
| |
| \global\setbox\titrun=\vbox{\small\bf\@icmltitlerunning} |
|
|
| |
| \gdef\@runningtitleerror{0} |
|
|
| |
| \ifdim\wd\titrun>\textwidth |
| \gdef\@runningtitleerror{1} |
| |
| \else \ifdim\ht\titrun>6.25pt |
| \gdef\@runningtitleerror{2} |
| \fi |
| \fi |
|
|
| |
| \ifnum\@runningtitleerror>0 |
| \typeout{} |
| \typeout{} |
| \typeout{*******************************************************} |
| \typeout{Title exceeds size limitations for running head.} |
| \typeout{Please supply a shorter form for the running head} |
| \typeout{with \string\icmltitlerunning{...}\space prior to \string\begin{document}} |
| \typeout{*******************************************************} |
| \typeout{} |
| \typeout{} |
| |
| \gdef\@icmltitlerunning{Title Suppressed Due to Excessive Size} |
| \fi |
|
|
| |
| \thispagestyle{plain} |
|
|
| {\center\baselineskip 18pt |
| \toptitlebar{\Large\bf #1}\bottomtitlebar} |
| } |
|
|
| |
| \fancyhead[C]{\small\bf\@icmltitlerunning} |
|
|
| \gdef\icmlfullauthorlist{} |
| \newcommand\addstringtofullauthorlist{\g@addto@macro\icmlfullauthorlist} |
| \newcommand\addtofullauthorlist[1]{ |
| \ifdefined\icmlanyauthors |
| \addstringtofullauthorlist{, #1} |
| \else |
| \addstringtofullauthorlist{#1} |
| \gdef\icmlanyauthors{1} |
| \fi |
| \ifdefined\hypersetup |
| \hypersetup{pdfauthor=\icmlfullauthorlist} |
| \fi |
| } |
|
|
| \def\toptitlebar{\hrule height1pt \vskip .25in} |
| \def\bottomtitlebar{\vskip .22in \hrule height1pt \vskip .3in} |
|
|
| \newenvironment{icmlauthorlist}{ |
| \setlength\topsep{0pt} |
| \setlength\parskip{0pt} |
| \begin{center} |
| }{ |
| \end{center} |
| } |
|
|
| \newcounter{@affiliationcounter} |
| \newcommand{\@pa}[1]{ |
| \ifcsname the@affil#1\endcsname |
| |
| \else |
| \ifcsname @icmlsymbol#1\endcsname |
| |
| \else |
| \stepcounter{@affiliationcounter} |
| \newcounter{@affil#1} |
| \setcounter{@affil#1}{\value{@affiliationcounter}} |
| \fi |
| \fi |
| \ifcsname @icmlsymbol#1\endcsname |
| \textsuperscript{\csname @icmlsymbol#1\endcsname\,} |
| \else |
| \textsuperscript{\arabic{@affil#1}\,} |
| \fi |
| } |
|
|
| \newcommand{\icmlauthor}[2]{ |
| \ificmlshowauthors |
| \mbox{\bf #1}\,\@for\theaffil:=#2\do{\@pa{\theaffil}} \addtofullauthorlist{#1} |
| \else |
| \ifdefined\@icmlfirsttime\else |
| \gdef\@icmlfirsttime{1} |
| \mbox{\bf Anonymous Authors}\@pa{@anon} \addtofullauthorlist{Anonymous Authors} |
| \fi |
| \fi |
| } |
|
|
| \newcommand{\icmlsetsymbol}[2]{ |
| \expandafter\gdef\csname @icmlsymbol#1\endcsname{#2} |
| } |
|
|
| \newcommand{\icmlaffiliation}[2]{ |
| \ificmlshowauthors |
| \ifcsname the@affil#1\endcsname |
| \expandafter\gdef\csname @affilname\csname the@affil#1\endcsname\endcsname{#2} |
| \else |
| {\bf AUTHORERR: Error in use of \textbackslash{}icmlaffiliation command. Label ``#1'' not mentioned in some \textbackslash{}icmlauthor\{author name\}\{labels here\} command beforehand. } |
| \typeout{} |
| \typeout{} |
| \typeout{*******************************************************} |
| \typeout{Affiliation label undefined. } |
| \typeout{Make sure \string\icmlaffiliation\space follows } |
| \typeout{all of \string\icmlauthor\space commands} |
| \typeout{*******************************************************} |
| \typeout{} |
| \typeout{} |
| \fi |
| \else |
| \expandafter\gdef\csname @affilname1\endcsname{Anonymous Institution, Anonymous City, Anonymous Region, Anonymous Country} |
| \fi |
| } |
|
|
| \newcommand{\icmlcorrespondingauthor}[2]{ |
| \ificmlshowauthors |
| \ifdefined\icmlcorrespondingauthor@text |
| \g@addto@macro\icmlcorrespondingauthor@text{, #1 \textless{}#2\textgreater{}} |
| \else |
| \gdef\icmlcorrespondingauthor@text{#1 \textless{}#2\textgreater{}} |
| \fi |
| \else |
| \gdef\icmlcorrespondingauthor@text{Anonymous Author \textless{}anon.email@domain.com\textgreater{}} |
| \fi |
| } |
|
|
| \newcommand{\icmlEqualContribution}{\textsuperscript{*}Equal contribution } |
|
|
|
|
| |
| \newif\ificml@noticeprinted |
| \icml@noticeprintedfalse |
| \AtEndDocument{ |
| \ificml@noticeprinted\relax\else |
| \PackageWarningNoLine{icml2026}{ |
| You did not call \string\printAffiliationsAndNotice{}. If you have no notice, |
| call \string\printAffiliationsAndNotice\string{} (empty braces). |
| } |
| \fi |
| } |
|
|
|
|
| \newcounter{@affilnum} |
| \newcommand{\printAffiliationsAndNotice}[1]{\global\icml@noticeprintedtrue |
| \stepcounter{@affiliationcounter} |
| {\let\thefootnote\relax\footnotetext{\hspace*{-\footnotesep}\ificmlshowauthors #1\fi |
| \forloop{@affilnum}{1}{\value{@affilnum} < \value{@affiliationcounter}}{ |
| \textsuperscript{\arabic{@affilnum}}\ifcsname @affilname\the@affilnum\endcsname |
| \csname @affilname\the@affilnum\endcsname |
| \else |
| {\bf AUTHORERR: Missing \textbackslash{}icmlaffiliation.} |
| \fi |
| }. |
| \ifdefined\icmlcorrespondingauthor@text |
| { }Correspondence to: \icmlcorrespondingauthor@text. |
| \else |
| {\bf AUTHORERR: Missing \textbackslash{}icmlcorrespondingauthor.} |
| \fi |
|
|
| \ \\ |
| \Notice@String |
| } |
| } |
| } |
|
|
| \long\def\icmladdress#1{ |
| {\bf The \textbackslash{}icmladdress command is no longer used. See the example\_paper PDF .tex for usage of \textbackslash{}icmlauther and \textbackslash{}icmlaffiliation.} |
| } |
|
|
| |
| \def\icmlkeywords#1{ |
| \ifdefined\nohyperref\else\ifdefined\hypersetup |
| \hypersetup{pdfkeywords={#1}} |
| \fi\fi |
| } |
|
|
| |
| \setcitestyle{authoryear,round,citesep={;},aysep={,},yysep={;}} |
|
|
| |
| \renewenvironment{abstract} |
| { |
| \centerline{\large\bf Abstract} |
| \vspace{-0.12in}\begin{quote}} |
| {\par\end{quote}\vskip 0.12in} |
|
|
| |
|
|
| \def\@startsection#1#2#3#4#5#6{\if@noskipsec \leavevmode \fi |
| \par \@tempskipa #4\relax |
| \@afterindenttrue |
| \ifdim \@tempskipa <\z@ \@tempskipa -\@tempskipa \fi |
| \if@nobreak \everypar{}\else |
| \addpenalty{\@secpenalty}\addvspace{\@tempskipa}\fi \@ifstar |
| {\@ssect{#3}{#4}{#5}{#6}}{\@dblarg{\@sict{#1}{#2}{#3}{#4}{#5}{#6}}}} |
|
|
| \def\@sict#1#2#3#4#5#6[#7]#8{\ifnum #2>\c@secnumdepth |
| \def\@svsec{}\else |
| \refstepcounter{#1}\edef\@svsec{\csname the#1\endcsname}\fi |
| \@tempskipa #5\relax |
| \ifdim \@tempskipa>\z@ |
| \begingroup #6\relax |
| \@hangfrom{\hskip #3\relax\@svsec.~}{\interlinepenalty \@M #8\par} |
| \endgroup |
| \csname #1mark\endcsname{#7}\addcontentsline |
| {toc}{#1}{\ifnum #2>\c@secnumdepth \else |
| \protect\numberline{\csname the#1\endcsname}\fi |
| #7}\else |
| \def\@svsechd{#6\hskip #3\@svsec #8\csname #1mark\endcsname |
| {#7}\addcontentsline |
| {toc}{#1}{\ifnum #2>\c@secnumdepth \else |
| \protect\numberline{\csname the#1\endcsname}\fi |
| #7}}\fi |
| \@xsect{#5}} |
|
|
| \def\@sect#1#2#3#4#5#6[#7]#8{\ifnum #2>\c@secnumdepth |
| \def\@svsec{}\else |
| \refstepcounter{#1}\edef\@svsec{\csname the#1\endcsname\hskip 0.4em }\fi |
| \@tempskipa #5\relax |
| \ifdim \@tempskipa>\z@ |
| \begingroup #6\relax |
| \@hangfrom{\hskip #3\relax\@svsec}{\interlinepenalty \@M #8\par} |
| \endgroup |
| \csname #1mark\endcsname{#7}\addcontentsline |
| {toc}{#1}{\ifnum #2>\c@secnumdepth \else |
| \protect\numberline{\csname the#1\endcsname}\fi |
| #7}\else |
| \def\@svsechd{#6\hskip #3\@svsec #8\csname #1mark\endcsname |
| {#7}\addcontentsline |
| {toc}{#1}{\ifnum #2>\c@secnumdepth \else |
| \protect\numberline{\csname the#1\endcsname}\fi |
| #7}}\fi |
| \@xsect{#5}} |
|
|
| |
| \def\thesection {\arabic{section}} |
| \def\thesubsection {\thesection.\arabic{subsection}} |
| \def\section{\@startsection{section}{1}{\z@}{-0.12in}{0.02in} |
| {\large\bf\raggedright}} |
| \def\subsection{\@startsection{subsection}{2}{\z@}{-0.10in}{0.01in} |
| {\normalsize\bf\raggedright}} |
| \def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-0.08in}{0.01in} |
| {\normalsize\sc\raggedright}} |
| \def\paragraph{\@startsection{paragraph}{4}{\z@}{1.5ex plus |
| 0.5ex minus .2ex}{-1em}{\normalsize\bf}} |
| \def\subparagraph{\@startsection{subparagraph}{5}{\z@}{1.5ex plus |
| 0.5ex minus .2ex}{-1em}{\normalsize\bf}} |
|
|
| |
| \footnotesep 6.65pt |
| \skip\footins 9pt |
| \def\footnoterule{\kern-3pt \hrule width 0.8in \kern 2.6pt } |
| \setcounter{footnote}{0} |
|
|
| |
| \parindent 0pt |
| \topsep 4pt plus 1pt minus 2pt |
| \partopsep 1pt plus 0.5pt minus 0.5pt |
| \itemsep 2pt plus 1pt minus 0.5pt |
| \parsep 2pt plus 1pt minus 0.5pt |
| \parskip 6pt |
|
|
| \leftmargin 2em \leftmargini\leftmargin \leftmarginii 2em |
| \leftmarginiii 1.5em \leftmarginiv 1.0em \leftmarginv .5em |
| \leftmarginvi .5em |
| \labelwidth\leftmargini\advance\labelwidth-\labelsep \labelsep 5pt |
|
|
| \def\@listi{\leftmargin\leftmargini} |
| \def\@listii{\leftmargin\leftmarginii |
| \labelwidth\leftmarginii\advance\labelwidth-\labelsep |
| \topsep 2pt plus 1pt minus 0.5pt |
| \parsep 1pt plus 0.5pt minus 0.5pt |
| \itemsep \parsep} |
| \def\@listiii{\leftmargin\leftmarginiii |
| \labelwidth\leftmarginiii\advance\labelwidth-\labelsep |
| \topsep 1pt plus 0.5pt minus 0.5pt |
| \parsep \z@ \partopsep 0.5pt plus 0pt minus 0.5pt |
| \itemsep \topsep} |
| \def\@listiv{\leftmargin\leftmarginiv |
| \labelwidth\leftmarginiv\advance\labelwidth-\labelsep} |
| \def\@listv{\leftmargin\leftmarginv |
| \labelwidth\leftmarginv\advance\labelwidth-\labelsep} |
| \def\@listvi{\leftmargin\leftmarginvi |
| \labelwidth\leftmarginvi\advance\labelwidth-\labelsep} |
|
|
| \abovedisplayskip 7pt plus2pt minus5pt |
| \belowdisplayskip \abovedisplayskip |
| \abovedisplayshortskip 0pt plus3pt |
| \belowdisplayshortskip 4pt plus3pt minus3pt |
|
|
| |
| |
| \def\@normalsize{\@setsize\normalsize{11pt}\xpt\@xpt} |
| \def\small{\@setsize\small{10pt}\ixpt\@ixpt} |
| \def\footnotesize{\@setsize\footnotesize{10pt}\ixpt\@ixpt} |
| \def\scriptsize{\@setsize\scriptsize{8pt}\viipt\@viipt} |
| \def\tiny{\@setsize\tiny{7pt}\vipt\@vipt} |
| \def\large{\@setsize\large{14pt}\xiipt\@xiipt} |
| \def\Large{\@setsize\Large{16pt}\xivpt\@xivpt} |
| \def\LARGE{\@setsize\LARGE{20pt}\xviipt\@xviipt} |
| \def\huge{\@setsize\huge{23pt}\xxpt\@xxpt} |
| \def\Huge{\@setsize\Huge{28pt}\xxvpt\@xxvpt} |
|
|
| |
| \captionsetup{ |
| skip=0.1in, |
| font=small, |
| labelfont={it,small}, |
| labelsep=period |
| } |
| \captionsetup[table]{position=above} |
| \captionsetup[figure]{position=below} |
|
|
| \def\fnum@figure{Figure \thefigure} |
| \def\fnum@table{Table \thetable} |
|
|
| |
| \def\abovestrut#1{\rule[0in]{0in}{#1}\ignorespaces} |
| \def\belowstrut#1{\rule[-#1]{0in}{#1}\ignorespaces} |
|
|
| \def\abovespace{\abovestrut{0.20in}} |
| \def\aroundspace{\abovestrut{0.20in}\belowstrut{0.10in}} |
| \def\belowspace{\belowstrut{0.10in}} |
|
|
| |
| \def\texitem#1{\par\noindent\hangindent 12pt |
| \hbox to 12pt {\hss #1 ~}\ignorespaces} |
| \def\icmlitem{\texitem{$\bullet$}} |
|
|
| |
| \long\def\comment#1{} |
|
|
| |
|
|
| |
| |
| |
| \makeatletter |
| \newbox\icmlrulerbox |
| \newcount\icmlrulercount |
| \newdimen\icmlruleroffset |
| \newdimen\cv@lineheight |
| \newdimen\cv@boxheight |
| \newbox\cv@tmpbox |
| \newcount\cv@refno |
| \newcount\cv@tot |
| |
| \newcount\cv@tmpc@ \newcount\cv@tmpc |
| \def\fillzeros[#1]#2{\cv@tmpc@=#2\relax\ifnum\cv@tmpc@<0\cv@tmpc@=-\cv@tmpc@\fi |
| \cv@tmpc=1 |
| \loop\ifnum\cv@tmpc@<10 \else \divide\cv@tmpc@ by 10 \advance\cv@tmpc by 1 \fi |
| \ifnum\cv@tmpc@=10\relax\cv@tmpc@=11\relax\fi \ifnum\cv@tmpc@>10 \repeat |
| \ifnum#2<0\advance\cv@tmpc1\relax-\fi |
| \loop\ifnum\cv@tmpc<#1\relax0\advance\cv@tmpc1\relax\fi \ifnum\cv@tmpc<#1 \repeat |
| \cv@tmpc@=#2\relax\ifnum\cv@tmpc@<0\cv@tmpc@=-\cv@tmpc@\fi \relax\the\cv@tmpc@} |
| |
| \def\makevruler[#1][#2][#3][#4][#5]{ |
| \begingroup\offinterlineskip |
| \textheight=#5\vbadness=10000\vfuzz=120ex\overfullrule=0pt |
| \global\setbox\icmlrulerbox=\vbox to \textheight{ |
| { |
| \parskip=0pt\hfuzz=150em\cv@boxheight=\textheight |
| \cv@lineheight=#1\global\icmlrulercount=#2 |
| \cv@tot\cv@boxheight\divide\cv@tot\cv@lineheight\advance\cv@tot2 |
| \cv@refno1\vskip-\cv@lineheight\vskip1ex |
| \loop\setbox\cv@tmpbox=\hbox to0cm{\hfil {\hfil\fillzeros[#4]\icmlrulercount}} |
| \ht\cv@tmpbox\cv@lineheight\dp\cv@tmpbox0pt\box\cv@tmpbox\break |
| \advance\cv@refno1\global\advance\icmlrulercount#3\relax |
| \ifnum\cv@refno<\cv@tot\repeat |
| } |
| } |
| \endgroup |
| } |
| \makeatother |
| |
|
|
| |
| \def\icmlruler#1{\makevruler[12pt][#1][1][3][\textheight]\usebox{\icmlrulerbox}} |
| \AddToShipoutPicture{ |
| \icmlruleroffset=\textheight |
| \advance\icmlruleroffset by 5.2pt |
| \color[rgb]{.7,.7,.7} |
| \ificmlshowauthors\else |
| \AtTextUpperLeft{ |
| \put(\LenToUnit{-35pt},\LenToUnit{-\icmlruleroffset}){ |
| \icmlruler{\icmlrulercount}} |
| |
| |
| } |
| \fi |
| } |
| \endinput |
|
|