summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/confproc/example/confproc.cls
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/confproc/example/confproc.cls')
-rw-r--r--Master/texmf-dist/doc/latex/confproc/example/confproc.cls473
1 files changed, 473 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/confproc/example/confproc.cls b/Master/texmf-dist/doc/latex/confproc/example/confproc.cls
new file mode 100644
index 00000000000..66a40a7fb7a
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/confproc/example/confproc.cls
@@ -0,0 +1,473 @@
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]%
+\ProvidesClass{confproc}
+ [2007/09/28 v0.3: Conference Proceedings class (VV)]
+\LoadClass{book}
+\DeclareOption{a4paper}
+ {\setlength\paperheight {297mm}%
+ \setlength\paperwidth {210mm}%
+ \setlength\oddsidemargin {-4.95truemm}%
+ \setlength\evensidemargin {-10.95truemm}%
+ \def\shiftsafourpaper{}}
+\DeclareOption{letterpaper}
+ {\setlength\paperheight {11in}%
+ \setlength\paperwidth {8.5in}%
+ \setlength\oddsidemargin {-4.95truemm}%
+ \setlength\evensidemargin {-4.95truemm}%
+ \def\shiftsletterpaper{}}
+\PassOptionsToPackage{a4paper,letterpaper}{book}
+\PassOptionsToPackage{a4paper,letterpaper}{hyperref}
+\DeclareOption{10pt}{\renewcommand\@ptsize{0}}
+\DeclareOption{11pt}{\renewcommand\@ptsize{1}}
+\DeclareOption{12pt}{\renewcommand\@ptsize{2}}
+\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse%
+ \def\conf@WithClearsinglepage{}}
+\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue%
+ \def\conf@WithCleardoublepage{}}
+\DeclareOption{onesidepapers}{%
+ \def\conf@WithClearsinglepagePapers{}}
+\DeclareOption{twosidepapers}{%
+ \def\conf@WithCleardoublepagePapers{}}
+\DeclareOption{compil=bibmerge}
+ {\typeout{confproc: LaTeX run-> bib. items only (merging process)}%
+ \def\conf@BibMerge{}}
+\DeclareOption{compil=bibbackref}
+ {\typeout{confproc: LaTeX run-> generating biblio back references}%
+ \def\conf@BibBackRef{}}
+\DeclareOption{compil=last}
+ {\typeout{!!! confproc: LaTeX run-> LAST !!!}%
+ \def\conf@FinalVersion{}}
+\DeclareOption{draft}
+ {\typeout{confproc: not including PDF files}%
+ \PassOptionsToPackage{draft}{pdfpages}%
+ \def\conf@DoNotIncludePDFs{}}
+\DeclareOption{final}
+ {\typeout{confproc: including PDF files}%
+ \PassOptionsToPackage{final}{pdfpages}%
+ \def\conf@IncludePDFs{}}
+\DeclareOption{electronic}%
+ {\typeout{confproc: adding colors for hyperlinks}%
+ \PassOptionsToPackage{colorlinks=true}{hyperref}%
+ \def\conf@procWithColors{}}
+\DeclareOption{printed}%
+ {\typeout{confproc: hyperref with no color for hyperlinks}
+ \PassOptionsToPackage{colorlinks=false}{hyperref}%
+ \def\conf@procWithoutColors{}}
+\DeclareOption{headers=no}%
+ {\typeout{confproc: no fancy headers}%
+ \def\conf@NoFancyHeaders{}}
+\DeclareOption{headers=pdfonly}%
+ {\typeout{confproc: fancy headers on inserted PDFs only}%
+ \def\conf@FancyHeadersOnPapers{}}
+\DeclareOption{headers=exceptpdf}%
+ {\typeout{confproc: fancy headers for all pages except PDFs}%
+ \def\conf@FancyHeadersExceptPapers{}}
+\DeclareOption{headers=allpages}%
+ {\typeout{confproc: fancy headers on all pages, PDFs included}%
+ \def\conf@FancyHeadersOnPapers{}%
+ \def\conf@FancyHeadersExceptPapers{}}
+\DeclareOption{twocolindex}
+ {\typeout{confproc: 2 columns index}%
+ \def\conf@TwoColumnIndex{}}
+\DeclareOption{threecolindex}
+ {\typeout{confproc: 3 columns index}%
+ \def\conf@ThreeColumnIndex{}}
+\DeclareOption{twocolbib}
+ {\typeout{confproc: 2 columns biblio}%
+ \def\conf@TwoColumnBib{}}
+\DeclareOption{onecolbib}
+ {\typeout{confproc: 1 column biblio}%
+ \def\conf@OneColumnBib{}}
+\DeclareOption{twocoltoc}
+ {\typeout{confproc: 2 columns TOC}%
+ \def\conf@TwoColumnTOC{}}
+\DeclareOption{onecoltoc}
+ {\typeout{confproc: 1 column TOC}%
+ \def\conf@OneColumnTOC{}}
+\DeclareOption{tocnumleft}
+ {\typeout{confproc: TOC numbering on left}%
+ \def\conf@TocNumberingLeft{}}
+\DeclareOption{tocnumright}
+ {\typeout{Confproc: TOC numbering on right}%
+ \def\conf@TocNumberingRight{}}
+\DeclareOption{movepagenumbers}
+ {\typeout{confproc: moving page numbers to check PDFs numbering}%
+ \def \conf@TestPageNumbering{}}
+\DeclareOption{cleardoublepage}%
+ {\typeout{confproc: using double page clearing}%
+ \def\conf@WithCleardoublepage{}}
+\DeclareOption{clearsinglepage}%
+ {\typeout{confproc: using double page clearing}%
+ \def\conf@WithClearsinglepage{}}
+\DeclareOption{debug}
+ {\typeout{Confproc: printing debug for confproc, hyperref}%
+ \PassOptionsToPackage{debug}{hyperref}%
+ \def\conf@procWithDebug{}}
+\DeclareOption{verbose}
+ {\typeout{Confproc: printing debug for confproc, hyperref}%
+ \PassOptionsToPackage{debug}{hyperref}%
+ \def\conf@procWithDebug{}}
+\DeclareOption*{\PackageWarning{procconf}%
+ {Unknown option `\CurrentOption'; passed to 'hyperref'}%
+ \PassOptionsToClass{\CurrentOption}{hyperref}}
+\ExecuteOptions{letterpaper,10pt,twoside,twosidepapers,%
+ compil=bibbackref,tocnumleft,onecoltoc,threecolindex,twocolbib,%
+ colorlinks=true,linkcolor=red,citecolor=blue,pagecolor=red,urlcolor=blue,%
+ bookmarksopen=true,bookmarksopenlevel=1,headers=no}
+\ProcessOptions
+\RequirePackage{graphicx}
+\RequirePackage{pdfpages}
+\RequirePackage{fancyhdr}
+\RequirePackage[nottoc,notbib,notindex]{tocbibind}
+\RequirePackage{titletoc}
+\ifdefined\conf@TwoColumnTOC
+ \RequirePackage[toc]{multitoc}
+\fi
+\RequirePackage{index}
+\RequirePackage{multicol}
+\ifdefined\conf@TwoColumnIndex
+ \renewenvironment{theindex}{%
+ \if@twocolumn \@restonecolfalse
+ \else \@restonecoltrue \fi
+ \vspace*{-0.8cm}
+ \section*{{\procindexname}}
+ \let\item\@idxitem
+ \columnseprule \z@
+ \columnsep 35\p@
+ \begin{multicols}{2}[%
+ \ifx\index@prologue\@empty\else
+ \index@prologue
+ \bigskip
+ \fi]%
+ \parindent\z@
+ \parskip\z@ \@plus .3\p@\relax
+ }{\end{multicols}%
+ \if@restonecol \onecolumn
+ \else \clearpage \fi}
+\else
+ \ifdefined\conf@ThreeColumnIndex%
+ \renewenvironment{theindex}{%
+ \if@twocolumn \@restonecolfalse
+ \else \@restonecoltrue \fi
+ \vspace*{-0.8cm}
+ \section*{{\procindexname}}
+ \let\item\@idxitem
+ \columnseprule \z@
+ \columnsep 35\p@
+ \begin{multicols}{3}[%
+ \ifx\index@prologue\@empty\else
+ \index@prologue
+ \bigskip
+ \fi]%
+ \parindent\z@
+ \parskip\z@ \@plus .3\p@\relax
+ }{\end{multicols}%
+ \if@restonecol \onecolumn
+ \else \clearpage \fi }
+ \fi
+\fi
+\RequirePackage{sectsty}
+\newcommand{\confcite}[1]{\cite{#1}}
+\RequirePackage{newapave}
+\RequirePackage{color}
+\definecolor{colorforlink}{rgb}{0,0,0.5}
+\definecolor{colorforpage}{rgb}{0,0,0.5}
+\definecolor{colorforcite}{rgb}{0,0.5,0}
+\definecolor{colorforurl}{cmyk}{0,1,0,0}
+\RequirePackage[pdftex,raiselinks,hyperindex,backref,pagebackref,%
+ plainpages=false,pdfpagelabels,breaklinks,linktocpage,%
+ pdfstartview=XYZ]{hyperref}
+\RequirePackage[figure,table]{hypcap}
+\newcommand{\procpdfauthor}{Proceedings author/editor}
+\newcommand{\procpdftitle}{Proceedings title}
+\newcommand{\procpdfsubject}{Proceedings description}
+\hypersetup{
+ pdfauthor = \procpdfauthor,
+ pdftitle = \procpdftitle,
+ pdfsubject = \procpdfsubject,
+ pdfkeywords = {},
+ pdfcreator = {LaTeX with `confproc' package},
+ pdfproducer = {pdfLaTeX}}
+\topmargin 0truept
+\headheight 12truept
+\footskip 0truept
+\textheight 229truemm
+\textwidth 175truemm
+\voffset -28truept
+\headsep 20truept
+\renewcommand{\contentsname}{\vspace*{-0.8cm}\Large %
+ \bfseries Conference Program}
+\newcommand{\procindexname}{\large \bfseries Index of Authors}
+\newcommand{\procbibname}{\large \bfseries Full Bibliography}
+\newcommand{\proclhead}{\em{\small{Proceedings of the blah blah blah}}}
+\newcommand{\proccfoot}{{\vskip 11mm}{\small Proc-\thepage}}
+\pagestyle{fancyplain}
+\renewcommand{\headrulewidth}{0pt}
+\renewcommand{\footrulewidth}{-5mm}
+\lhead{\proclhead}
+\rhead{}
+\lfoot{}
+\rfoot{}
+\cfoot{\proccfoot}{}
+\ifdefined \conf@FancyHeadersExceptPapers
+ \pagestyle{fancy}
+\else
+ \pagestyle{empty}
+\fi
+\newlength{\procoptfootskip}
+\ifdefined\conf@TestPageNumbering%
+ \setlength{\procoptfootskip}{3mm}%
+ \cfoot{\vskip \procoptfootskip \proccfoot}%
+\else%
+ \setlength{\procoptfootskip}{0mm}%
+\fi
+\ifdefined\conf@TocNumberingRight
+ \titlecontents{section}[2.5em]% left margin
+ {\vspace*{0.3em}}% space between two papers in the TOC
+ {}{}{\contentsmargin{0pt} \hfill \contentspage}% filler and page
+\else%
+ \dottedcontents{section}[]{\fillright}{}{1pc}
+ \titlecontents{section}[2.5em]%
+ {\vspace*{0.3em}}%
+ {\hspace*{-2.5em}\contentspage\hspace*{2.5em}}% left shifting page num.
+ {\hspace*{-2.5em}\contentspage\hspace*{2.5em}}% idem
+ {}% filler and page
+\fi
+\newcommand{\tocmattertocstyle}{
+\titlecontents{part}[-1em]{\addvspace{1pc}}%
+ {\contentspage\hspace*{3.2em}\contentsmargin{0pt}%
+ \makebox[0pt][r]{\huge\thecontentslabel\enspace}\large}%
+ {\contentspage\hspace*{3.2em}\contentsmargin{0pt}\large}%
+ {}[\addvspace{.5pc}]}
+\titlecontents{chapter}[-1em]{\addvspace{1pc}}%
+ {\contentspage\hspace*{3.2em}\contentsmargin{0pt}%
+ \makebox[0pt][r]{\huge\thecontentslabel\enspace}\large}%
+ {\contentspage\hspace*{3.2em}\contentsmargin{0pt}\large}%
+ {}[\addvspace{.5pc}]
+\ifdefined\conf@TocNumberingRight
+ \newcommand{\mainmattertocstyle}{
+ \titlecontents{chapter}[0pt]%
+ {\addvspace{1pc}\bfseries\itshape}%
+ {\contentsmargin{0pt}\bfseries%
+ \makebox[0pt][r]{\huge\thecontentslabel\enspace}\large}%
+ {\contentsmargin{0pt}\large}{}[\addvspace{.5pc}]%
+ \titlecontents{part}[0pt]%
+ {\addvspace{1pc}\bfseries}%
+ {\contentsmargin{0pt}\bfseries%
+ \makebox[0pt][r]{\huge\thecontentslabel\enspace}\large}%
+ {\contentsmargin{0pt}\large}{}[\addvspace{.5pc}]%
+\else
+ \ifdefined\conf@TocNumberingLeft% default
+ \newcommand{\mainmattertocstyle}{%
+ \titlecontents{chapter}[0pt]%
+ {\addvspace{1pc}\bfseries \itshape}%
+ {\contentsmargin{0pt}\bfseries %
+ \makebox[0pt][r]{\huge\thecontentslabel\enspace}\large}%
+ {\contentsmargin{0pt}\large}{}[\addvspace{.5pc}]%
+ \titlecontents{part}[0pt]%
+ {\addvspace{1pc}\bfseries}%
+ {\contentsmargin{0pt}\bfseries %
+ \makebox[0pt][r]{\huge\thecontentslabel\enspace}\large}%
+ {\contentsmargin{0pt}\large}{}[\addvspace{.5pc}]%
+ }
+ \else
+ \newcommand\mainmattertocstyle{}
+ \fi
+\fi
+\ifdefined\conf@TocNumberingRight
+ \newcommand{\backmattertocstyle}{
+ \titlecontents{section}[]{}{}{}{}[]%
+ \titlecontents{part}%
+ [0pt]{\addvspace{1pc}}{}{}%
+ {\contentsmargin{0pt} \large \hfill\contentspage}%
+ [\addvspace{.5pc}]%
+ }%
+\else%
+ \ifdefined\conf@TocNumberingLeft%
+ \newcommand{\backmattertocstyle}{%
+ \titlecontents{section}[]{}{}{}{}[]%
+ \titlecontents{part}%
+ [0pt]%
+ {\addvspace{1pc}}%
+ {\contentspage\hspace*{2.5em}\contentsmargin{0pt}%
+ \bfseries%
+ \makebox[0pt][r]{\huge\thecontentslabel\enspace}%
+ \large}%
+ {\contentspage\hspace*{2.5em}\contentsmargin{0pt} \large}%
+ {}%
+ [\addvspace{.5pc}]%
+ }%
+ \else%
+ \newcommand\backmattertocstyle{}%
+ \fi%
+\fi
+\ifdefined\conf@FancyHeadersExceptPapers
+ \newcommand{\otherpagestyle}{\pagestyle{fancy}}
+ \newcommand{\thisotherpagestyle}{\thispagestyle{fancy}}
+\else
+ \newcommand{\otherpagestyle}{\pagestyle{empty}}
+ \newcommand{\thisotherpagestyle}{\thispagestyle{empty}}
+\fi
+\ifdefined\conf@FancyHeadersOnPapers
+ \newcommand{\PDFpagestyle}{\thispagestyle{fancy}}
+\else
+ \newcommand{\PDFpagestyle}{\thispagestyle{empty}}
+\fi
+\chapterfont{\thisotherpagestyle}
+\ifdefined\conf@WithCleardoublepage
+ \newcommand{\clearsingleordoublepage}{\cleardoublepage}
+\else
+ \ifdefined\conf@WithClearsinglepage
+ \newcommand{\clearsingleordoublepage}{\clearpage}
+ \else
+ \newcommand{\clearsingleordoublepage}{\cleardoublepage}
+ \fi
+\fi
+\ifdefined\conf@FinalVersion
+ \newcommand{\UseBackRef}{}
+\else
+ \newcommand{\CreateBackRef}{}
+\fi
+\newlength{\LaTeXxShift}
+\newlength{\LaTeXyShift}
+\newlength{\WordxShift}
+\newlength{\WordyShift}
+\ifdefined\shiftsafourpaper
+ \setlength{\LaTeXxShift}{0pt}
+ \setlength{\LaTeXyShift}{28pt}
+ \setlength{\WordxShift}{10pt}
+ \setlength{\WordyShift}{-40pt}
+\else
+ \ifdefined\shiftsletterpaper
+ \setlength{\LaTeXxShift}{8.45pt}
+ \setlength{\LaTeXyShift}{-3pt}
+ \setlength{\WordxShift}{10pt}
+ \setlength{\WordyShift}{-40pt}
+ \fi
+\fi
+\newcommand{\papertitle}{}
+\newcommand{\paperauthors}{}
+\newcommand{\paperindex}{}
+\newcommand{\paperref}{}
+\newcommand{\paperpagenum}{}
+\newcommand{\papercite}{}
+\newcommand{\papertitlestyle}{}
+\newcommand{\paperauthorstyle}{\texorpdfstring{\newline\it}{\break}}
+\newcounter{paperpagenum}
+\newcommand{\proctoctitleauthor}[2]{%
+ \texorpdfstring{{\papertitlestyle#1}{\paperauthorstyle#2}}%
+ {{\papertitlestyle#1}}}
+\newcommand{\procinsertpaper}[9]{
+ \setcounter{paperpagenum}{#2}
+ #6%
+ \includepdf[noautoscale,offset= #1,pages=1,%
+ linktodoc,linkname=\PAPERPATH #8.pdf,%
+ addtotoc={1, section, 1, \proctoctitleauthor{#4}{#5}, #3},%
+ pagecommand = {#9\PDFpagestyle}%
+ ]{\PAPERPATH #8.pdf}%
+ \ifdefined\conf@BibMerge%
+ \includepdf[noautoscale,offset= #1,pages=\thepaperpagenum,%
+ linktodoc,linkname=\PAPERPATH #8.pdf,%
+ ]{\PAPERPATH #8.pdf}%
+ \PDFpagestyle{}%
+ \confcite{#7}%
+ \ifdefined\conf@procWithDebug
+ \typeout{confproc: bibliography insertion only}
+ \fi
+ \else
+ \ifdefined\CreateBackRef
+ \addtocounter{paperpagenum}{-1}
+ \includepdf[noautoscale,offset= #1,pages=2-\thepaperpagenum,%
+ linktodoc,linkname=\PAPERPATH #8.pdf,%
+ pagecommand = {\PDFpagestyle}%
+ ]{\PAPERPATH #8.pdf}%
+ \PDFpagestyle{}%
+ \confcite{#7}%
+ \ifdefined\conf@procWithDebug
+ \typeout{confproc: partial paper insertion (last page=bib items)}
+ \fi
+ \else
+ \ifdefined\UseBackRef
+ \includepdf[noautoscale,offset= #1,pages=2-,%
+ linktodoc,linkname=\PAPERPATH #8.pdf,%
+ pagecommand = {\PDFpagestyle}%
+ ]{\PAPERPATH #8.pdf}%
+ \fi
+ \ifdefined\conf@procWithDebug
+ \typeout{confproc: full paper insertion (last LaTeX run)}
+ \fi
+ \fi
+ \fi
+ \ifdefined\conf@procWithDebug
+ \typeout{---> file: #8.pdf (#2 pages)}
+ \typeout{---> title: #4}
+ \typeout{---> author(s): #5}
+ \typeout{---> index: #6}
+ \fi
+ \newpage
+ \ifdefined\conf@WithClearsinglepagePapers
+ \clearpage
+ \else
+ \ifdefined\conf@WithCleardoublepagePapers
+ \cleardoublepage
+ \fi
+ \fi
+}
+\setlength{\itemindent}{-2em}
+\setlength{\leftmargin}{1em}
+\setlength{\bibhang}{0.5em}
+\def\thebibliography#1{%
+ \section*{\bibname}
+ \addcontentsline{toc}{part}{\bibname}
+ \list
+ {\relax}{\setlength{\labelsep}{0em}
+ \setlength{\itemindent}{-\bibhang}
+ \setlength{\leftmargin}{\bibhang}}
+ \def\newblock{\hskip 0em plus 0.0em minus .07em} % DAFx-06
+ \sloppy\clubpenalty4000\widowpenalty4000
+ \sfcode`\.=1000\relax}
+\newcommand{\proctableofcontents}{%
+ \tocmattertocstyle
+ \clearsingleordoublepage
+ \addtocontents{toc}{\protect\vspace*{-1.3cm}}
+ \pdfbookmark[0]{Program}{contents}
+ \tableofcontents
+ \clearsingleordoublepage
+}
+\newcommand{\procday}[1]{%
+ \phantomsection%
+ \addcontentsline{toc}{part}{#1}}
+\newcommand{\session}[1]{%
+ \phantomsection%
+ \addcontentsline{toc}{chapter}{#1}}
+\newcommand{\paperswitch}{}
+\newcommand{\setbibitems}{%
+ \ifdefined\conf@TwoColumnBib%
+ \twocolumn
+ \fi
+ \ifdefined\conf@BibMerge%
+ \nocite{*}%
+ \else%
+ \clearsingleordoublepage%
+ \fi%
+ \renewcommand{\bibname}{\procbibname}
+%% \addcontentsline{toc}{part}{\procbibname}
+}
+\newcommand{\procbibintro}{{\it ~~~This bibliography is a compilation
+ of all bibliographic references from each paper. Page numbers that
+ appear at the end of each entry link to the bibliography sections that
+ include it. Please click on the URL or on the page number to access
+ the linked item.}}
+\newcommand{\insertindex}{
+ \clearsingleordoublepage
+ \onecolumn
+ \section*{~~}%
+ \addcontentsline{toc}{part}{\procindexname}%
+ \renewcommand{\proclhead}{}%
+ \renewcommand{\proccfoot}{}%
+ \renewcommand{\indexname}{\procindexname}%
+ \printindex}
+\InputIfFileExists{confproc.cfg}
+ {\typeout{************^^J%
+ * Local config file confproc.cfg used *^^J%
+ ************}
+ }{}%