diff options
author | Karl Berry <karl@freefriends.org> | 2010-09-11 23:13:58 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-09-11 23:13:58 +0000 |
commit | 273b76dcd2208b1ec892b19752d928cb5dce2246 (patch) | |
tree | d3dab44f8a9526da9b55507043a08594df70eda2 /Master/texmf-dist/tex/latex/confproc | |
parent | ee1a2bb8d1dd8eef46592f2783f67198507feac7 (diff) |
confproc 0.7 (6aug10)
git-svn-id: svn://tug.org/texlive/trunk@19668 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/confproc')
-rw-r--r-- | Master/texmf-dist/tex/latex/confproc/confproc.cfg | 33 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/confproc/confproc.cls | 1307 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/confproc/newapave.sty | 6 |
3 files changed, 945 insertions, 401 deletions
diff --git a/Master/texmf-dist/tex/latex/confproc/confproc.cfg b/Master/texmf-dist/tex/latex/confproc/confproc.cfg new file mode 100644 index 00000000000..8b98a32e52d --- /dev/null +++ b/Master/texmf-dist/tex/latex/confproc/confproc.cfg @@ -0,0 +1,33 @@ +%% +%% This is file `confproc.cfg', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% confproc.dtx (with options: `config') +%% +%% This is `confproc.cfg', a configuration file for the confproc package. +%% Copyright (c) 2010 by Vincent Verfaille <verf[...].confproc@gmail.com> +%% +%% This file is part of the confproc package. +%% ------------------------------------------- +%% +%% It may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License, either version 1.2 of this license or +%% (at your option) any later version. +%% +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.2 or later is part of all distributions of LaTeX version +%% 1999/12/01 or later. +%% +%% This file may not be distributed without the original source file +%% `confproc.dtx'. +%% +%% The list of all files belonging to the confproc package is given in +%% the `readme.txt' file. +%% +%% For more details, LaTeX the source `confproc.dtx'. +%% +\ProvidesFile{confproc.cfg} + [2010/08/05 v0.7: Configuration for confproc (VV)] diff --git a/Master/texmf-dist/tex/latex/confproc/confproc.cls b/Master/texmf-dist/tex/latex/confproc/confproc.cls index 638692b6b3a..7997d269916 100644 --- a/Master/texmf-dist/tex/latex/confproc/confproc.cls +++ b/Master/texmf-dist/tex/latex/confproc/confproc.cls @@ -1,131 +1,382 @@ \NeedsTeXFormat{LaTeX2e}[1994/12/01]% \ProvidesClass{confproc} - [2007/10/17 v0.4f: 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}% + [2010/08/05 v0.7: Conference Proceedings class (VV)] +\RequirePackage{kvoptions} +\RequirePackage{kvoptions-patch} +\RequirePackage{xifthen} +\SetupKeyvalOptions{family=confproc,prefix=confproc@} +\newcommand*{\confproc}[1]{\setkeys{confproc}{#1}} +\DeclareStringOption{compil}{\PackageWarning{confproc}{Option % + "compil=bib*" ignored since v0.5; use "bib=*" instead of "compil=bib*"}} +\DeclareVoidOption{draft}{\PackageWarning{confproc}{Option "draft" % + ignored since v0.5; use "papers=draft" instead}} +\DeclareVoidOption{final}{\PackageWarning{confproc}{Option "final" % + ignored since v0.5; use "papers=final" instead}} +\DeclareVoidOption{tocnumleft}{\PackageWarning{confproc}{Option % + "tocnumleft" ignored since v0.5; use "tocnum=left" instead}} +\DeclareVoidOption{tocnumright}{\PackageWarning{confproc}{Option % + "tocnumright" ignored since v0.5; use "tocnum=right" instead}} +\DeclareVoidOption{cleardoublepage}{\PackageWarning{confproc}{Option % + "cleardoublepage" ignored since v0.5; use "twosidepapers" instead}} +\DeclareVoidOption{clearsinglepage}{\PackageWarning{confproc}{Option % + "clearsinglepage" ignored since v0.5; use "onesidepapers" instead}} +\DeclareVoidOption{10pt}{% + \expandafter\PassOptionsToPackage + \expandafter{\CurrentOption}{book}} +\DeclareVoidOption{11pt}{% + \expandafter\PassOptionsToPackage + \expandafter{\CurrentOption}{book}} +\DeclareVoidOption{12pt}{% + \expandafter\PassOptionsToPackage + \expandafter{\CurrentOption}{book}} +\newif\if@proc@letterpaper +\DeclareVoidOption{letterpaper}{% + \@proc@letterpapertrue + \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}% + \def\shiftsletterpaper{}% + \PassOptionsToClass{\CurrentOption}{book}% + \PassOptionsToPackage{\CurrentOption}{hyperref}} +\DeclareVoidOption{a4paper}{% + \@proc@letterpaperfalse + \setlength\paperheight {297mm}% + \setlength\paperwidth {210mm}% + \setlength\oddsidemargin {-4.95truemm}% + \setlength\evensidemargin {-10.95truemm}% + \def\shiftsafourpaper{}% + \PassOptionsToClass{\CurrentOption}{book}% + \PassOptionsToPackage{\CurrentOption}{hyperref}} +\DeclareVoidOption{oneside}{\@twosidefalse \@mparswitchfalse% + \PassOptionsToPackage{\CurrentOption}{book}} +\DeclareVoidOption{twoside}{\@twosidetrue \@mparswitchtrue% + \PassOptionsToPackage{\CurrentOption}{book}} +\DeclareBoolOption[true]{twosidepapers} +\DeclareComplementaryOption{onesidepapers}{twosidepapers} +\DeclareStringOption[final]{papers} +\DeclareBoolOption[true]{electronic} +\DeclareComplementaryOption{printed}{electronic} +\DeclareStringOption[0mm]{binding} +\DeclareStringOption[allpages]{headers} +\DeclareStringOption[none]{bib} +\DeclareStringOption[all]{paperselec} +\DeclareBoolOption[false]{twocoltoc} +\DeclareComplementaryOption{onecoltoc}{twocoltoc} +\DeclareStringOption[left]{tocnum} +\DeclareBoolOption[true]{twocolbib} +\DeclareComplementaryOption{onecolbib}{twocolbib} +\DeclareBoolOption[true]{twocolindex} +\DeclareComplementaryOption{threecolindex}{twocolindex} +\DeclareBoolOption[false]{checktitle} +\DeclareBoolOption[false]{checkauthor} +\DeclareStringOption[black]{colorheaders} +\DeclareBoolOption[false]{showmarginlines} +\DeclareBoolOption[false]{showpapernumber} +\DeclareBoolOption[false]{movepagenumber} +\DeclareBoolOption[false]{debug} +\DeclareBoolOption[false]{verbose} +\DeclareBoolOption[false]{pdftk} +\DeclareStringOption[.]{pdftkfolder} +\DeclareStringOption[Conference]{pdftksubject} +\DeclareStringOption[pdftk 1.12 + Ghostscript 8.71]{pdftkproducer} +\DeclareStringOption[LaTeX2e + confproc 0.7]{pdftkcreator} +\DeclareStringOption{hyperref}[] +\DeclareStringOption{geometry}[] +\DeclareStringOption{afterhyperref}[] +\DeclareStringOption{beforehyperref}[] +\DeclareDefaultOption{\PackageWarning{confproc}{Unknown % + option `\CurrentOption'; passed to 'hyperref'}% + \PassOptionsToClass{\CurrentOption}{hyperref}} +\ExecuteOptions{letterpaper,10pt,twoside,twosidepapers,% + electronic,binding=0mm,papers=final,paperselec=all,headers=allpages,% + onecoltoc,tocnum=left,threecolindex,twocolbib,bib=none,% + checktitle=false,checkauthor=false,showmarginlines=false,% + showpapernumber=false,movepagenumber=false,colorheaders=black,% + verbose=false,debug=false,pdftk=false,% + hyperref={colorlinks=true,linkcolor=red,citecolor=blue,urlcolor=blue,% + bookmarksopen=true,bookmarksopenlevel=1}% + geometry={text={6.9in,9in},% + inner=0.8in,top=1in,bottom=1in,% + headsep=7.05mm,footskip=10mm,voffset=-5mm}} +\ProcessKeyvalOptions* +\ifconfproc@electronic% \PassOptionsToPackage{colorlinks=true}{hyperref}% - \def\conf@procWithColors{}} -\DeclareOption{printed}% - {\typeout{confproc: hyperref with no color for hyperlinks} + \PackageInfo{confproc}{use color links with hyperref}% +\else \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,electronic,headers=no,compil=bibbackref,% - tocnumleft,onecoltoc,threecolindex,twocolbib,% - colorlinks=true,linkcolor=red,citecolor=blue,pagecolor=red,urlcolor=blue,% - bookmarksopen=true,bookmarksopenlevel=1} -\ProcessOptions + \PackageInfo{confproc}{does not use color links with hyperref}% +\fi + +\newlength{\proc@binding} +\ifthenelse% + {\equal{\confproc@binding}{}} + {\setlength{\proc@binding}{0mm} + \PackageInfo{confproc}{setting binding to default (0mm)}} + {\setlength{\proc@binding}{\confproc@binding} + \PackageInfo{confproc}{setting binding to \confproc@binding}} + +\newif\if@proc@IncludePDFs +\newif\if@proc@ReplacePDFs +\newif\if@proc@IncludeFullPDFs +\newwrite\npagesfile +\ifthenelse% + {\equal{\confproc@papers}{empty}}% + {\PackageInfo{confproc}{replacing PDF files by information pages}% + \@proc@ReplacePDFstrue + \@proc@IncludeFullPDFsfalse + \@proc@IncludePDFsfalse + \immediate\openout\npagesfile=\jobname.nps} + {\ifthenelse% + {\equal{\confproc@papers}{draft}}% + {\PackageInfo{confproc}{not including PDF files with 'pdfpages'}% + \PassOptionsToPackage{draft}{pdfpages}% + \@proc@ReplacePDFsfalse + \@proc@IncludeFullPDFsfalse + \@proc@IncludePDFsfalse + \immediate\openout\npagesfile=\jobname.nps} + {\ifthenelse% + {\equal{\confproc@papers}{final}} + {\PackageInfo{confproc}{including PDF files with 'pdfpages'}% + \PassOptionsToPackage{final}{pdfpages}% + \@proc@ReplacePDFsfalse + \@proc@IncludeFullPDFsfalse + \@proc@IncludePDFstrue + \immediate\openout\npagesfile=\jobname.nps} + {\ifthenelse% + {\equal{\confproc@papers}{countpages}} + {\PackageInfo{confproc}{counting each paper's number of % + pages by including all its pages} + \@proc@ReplacePDFsfalse + \@proc@IncludeFullPDFstrue + \@proc@IncludePDFsfalse + \immediate\openout\npagesfile=\jobname.npc} + {\PackageWarning{confproc}{unknown option % + `papers=\confproc@papers' ; using `papers=final'}% + \@proc@ReplacePDFsfalse{} + \@proc@IncludeFullPDFsfalse + \@proc@IncludePDFstrue + \immediate\openout\npagesfile=\jobname.nps} + } + } + } + +\newif\if@proc@FancyHeadersOnPapers +\newif\if@proc@FancyHeadersExceptPapers +\ifthenelse% + {\equal{\confproc@headers}{none}} + {\PackageInfo{confproc}{no headers}% + \@proc@FancyHeadersOnPapersfalse + \@proc@FancyHeadersExceptPapersfalse} + {\ifthenelse% + {\equal{\confproc@headers}{pdfonly}} + {\PackageInfo{confproc}{headers on inserted PDFs only}% + \@proc@FancyHeadersOnPaperstrue + \@proc@FancyHeadersExceptPapersfalse} + {\ifthenelse% + {\equal{\confproc@headers}{exceptpdf}} + {\PackageInfo{confproc}{headers for all pages except PDFs}% + \@proc@FancyHeadersOnPapersfalse + \@proc@FancyHeadersExceptPaperstrue} + {\ifthenelse% + {\equal{\confproc@headers}{allpages}} + {\PackageInfo{confproc}{headers on all pages, PDFs included}% + \@proc@FancyHeadersOnPaperstrue + \@proc@FancyHeadersExceptPaperstrue} + {\PackageWarning{confproc}{unknown % + 'headers=\confproc@headers' option (using 'headers=allpages')}} + } + } + } + +\newif\if@proc@BibNone +\newif\if@proc@BibRemoveCiteHdr +\ifthenelse% + {\equal{\confproc@bib}{merge}}% + {\PackageInfo{confproc}{bib: display 1st+last page of each paper}% + \@proc@BibNonefalse% + \def\conf@BibMerge{}% + \@proc@BibRemoveCiteHdrfalse}% + {\ifthenelse% + {\equal{\confproc@bib}{backref}}% + {\PackageInfo{confproc}{bib: displays back references}% + \@proc@BibNonefalse% + \def\conf@BibBackRef{}% + \@proc@BibRemoveCiteHdrfalse}% + {\ifthenelse% + {\equal{\confproc@bib}{final}}% + {\PackageInfo{confproc}{bib: hide bib items using `nocite'}% + \@proc@BibNonefalse% + \@proc@BibRemoveCiteHdrtrue}% + {\PackageInfo{confproc}{bibliography: none}% + \@proc@BibNonetrue}% + }% + } +\if@proc@BibRemoveCiteHdr + \newcommand{\confcite}[1]{\nocite{#1}} + \PackageInfo{confproc}{removing citations (with nocite{*}): % + next run should be the last (will loose hyperlinks)} +\else \newcommand{\confcite}[1]{\cite{#1}} +\fi +\newif\if@proc@TocNumberingRight +\ifthenelse% + {\equal{\confproc@tocnum}{left}}% + {\PackageInfo{confproc}{TOC numbering on left}% + \@proc@TocNumberingRightfalse} + {\ifthenelse% + {\equal{\confproc@tocnum}{right}}% + {\PackageInfo{confproc}{TOC numbering on right}% + \@proc@TocNumberingRighttrue} + {\PackageWarning{confproc}{unknown tocnum=\confproc@tocnum % + (using 'right' instead)}% + \@proc@TocNumberingRighttrue} + } + +\ifconfproc@checkauthor + \PackageInfo{confproc}{add 'author list' field on the paper's 1st page}% +\else \PackageInfo{confproc}{do not add author list}% +\fi +\ifconfproc@checktitle + \PackageInfo{confproc}{add title field on the paper's 1st page}% +\else \PackageInfo{confproc}{do not add title}% +\fi +\ifconfproc@showmarginlines + \PackageInfo{confproc}{show margin lines to check template-complience}% +\else \PackageInfo{confproc}{do not show margin lines}% +\fi +\ifconfproc@showpapernumber + \PackageInfo{confproc}{add paper number below page number}% +\else \PackageInfo{confproc}{do not add paper number below page number}% +\fi + +\ifconfproc@twosidepapers + \PackageInfo{confproc}{papers opening on right (odd) side} +\else + \PackageInfo{confproc}{papers opening on any side} +\fi + +\newif\if@proc@verbose +\@proc@verbosefalse +\ifconfproc@verbose + \@proc@verbosetrue + \PackageInfo{confproc}{verbose mode turned on} +\else \PackageInfo{confproc}{verbose mode turned off} +\fi +\ifconfproc@debug + \@proc@verbosefalse + \PackageInfo{confproc}{verbose mode turned off and debug turned on} + \PassOptionsToPackage{debug}{hyperref} +\else \PackageInfo{confproc}{debug mode turned on} +\fi +\PassOptionsToPackage{\confproc@hyperref}{hyperref} +\PassOptionsToPackage{\confproc@geometry}{geometry} +\ifconfproc@verbose + \typeout{________________} + \if@proc@letterpaper + \typeout{| | Document formatting:} + \typeout{| | ____ letterpaper} + \else + \typeout{| | Document formatting:} + \typeout{| | ____ a4paper} + \fi + \iffalse\@twoside \typeout{| | ____ twoside=false (=oneside)} + \else \typeout{| | ____ twoside=true} + \fi + \ifconfproc@twosidepapers \typeout{| | ____ twosidepapers=true} + \else \typeout{| | twosidepapers=false (=onesidepaper)} + \fi + \typeout{| | Proceedings-specific formatting:} + \ifconfproc@electronic \typeout{| | ____ electronic=true (file version)} + \else \typeout{| | ____ electronic=false (printed)} + \fi + \typeout{| | ____ binding=\confproc@binding (for printed version)} + \typeout{| | ____ papers=\confproc@papers (paper insertion)} + \typeout{| | ____ headers=\confproc@headers (header add to pages)} + + \typeout{| | List of papers:} + \typeout{| | ____ paperselec=\confproc@paperselec} + + \typeout{| | Lists (toc, bib, index):} + \ifconfproc@twocoltoc \typeout{| | ____ twocoltoc=true} + \else \typeout{| | ____ twocoltoc=false (=onecoltoc)} + \fi + \ifthenelse{\equal{\confproc@tocnum}{left}}% + {\typeout{| | ____ tocnum=left}} + {\typeout{| | ____ tocnum=right}} + \ifconfproc@twocolbib \typeout{| | ____ twocolbib=true} + \else \typeout{| | ____ twocolbib=false (=onecolbib)} + \fi + \typeout{| | ____ bib=\confproc@bib} + \ifconfproc@twocolindex \typeout{| | ____ twocolindex=true} + \else \typeout{| | ____ twocolindex=false (=threecolindex)} + \fi + + \typeout{| | Help for layout design:} + \ifconfproc@checkauthor + \typeout{| | ____ checkauthor=true (add author list to 1st page)} + \else + \typeout{| | ____ checkauthor=false (do not add author list to 1st page)} + \fi + \ifconfproc@checktitle + \typeout{| | ____ checktitle=true (add title to 1st page)} + \else + \typeout{| | ____ checktitle=false (do not add title to 1st page)} + \fi + + \ifconfproc@showpapernumber + \typeout{| | ____ showpapernumber=true (add paper number)} + \else + \typeout{| | ____ showpapernumber=false (do not add paper number)} + \fi + \ifconfproc@movepagenumber + \typeout{| | ____ movepagenumber=true (move paper number for checking)} + \else + \typeout{| | ____ movepagenumber=false (do not move paper number)} + \fi + \ifconfproc@showmarginlines + \typeout{| | ____ showmarginlines=true (add template format)} + \else + \typeout{| | ____ showmarginlines=false (do not add template format)} + \fi + \typeout{| | ____ colorheaders=\confproc@colorheaders (color for header/footer)} + + \typeout{| | Verbose:} + \ifconfproc@debug \typeout{| | ____ debug=true (for hyperref)} + \else \typeout{| | ____ debug=false (for hyperref)} + \fi + \ifconfproc@verbose \typeout{| | ____ verbose=true (for confproc+hyperref)} + \else \typeout{| | ____ verbose=false (for confproc+hyperref)} + \fi + \ifconfproc@pdftk + \typeout{| | ____ pdftk=true (for use with pdftk to add PDF metadata)} + \typeout{| | ____ pdftkfolder=\confproc@pdftkfolder (folder where .pdftk files are saved)} + \typeout{| | ____ pdftksubject=\confproc@pdftksubject (subject for individual PDF metadata)} + \typeout{| | ____ pdftkproducer=\confproc@pdftkproducer (producer for individual PDF metadata)} + \typeout{| | ____ pdftkcreator=\confproc@pdftkcreator (creator for individual PDF metadata)} + \else \typeout{| | ____ pdftk=false (for use with pdftk to add PDF metadata)} + \fi + \typeout{| | passed to hyperref: \confproc@hyperref} + \typeout{| | passed to geometry: \confproc@geometry} + \typeout{________________} + \typeout{ } +\fi +\ifconfproc@pdftk + \newwrite\pdftkinfoall + \immediate\openout\pdftkinfoall=\jobname.pdftk + \newwrite\pdftkinfofile +\fi +\LoadClass[10pt,letterpaper]{book} \RequirePackage{graphicx} \RequirePackage{pdfpages} \RequirePackage{fancyhdr} \RequirePackage[nottoc,notbib,notindex]{tocbibind} -\RequirePackage{titletoc} -\ifdefined\conf@TwoColumnTOC +\RequirePackage[rightlabels]{titletoc} +\ifconfproc@twocoltoc \RequirePackage[toc]{multitoc} \fi \RequirePackage{index} \RequirePackage{multicol} -\ifdefined\conf@TwoColumnIndex +\ifconfproc@twocolindex \renewenvironment{theindex}{% \if@twocolumn \@restonecolfalse \else \@restonecoltrue \fi @@ -145,7 +396,6 @@ \if@restonecol \onecolumn \else \clearpage \fi} \else - \ifdefined\conf@ThreeColumnIndex% \renewenvironment{theindex}{% \if@twocolumn \@restonecolfalse \else \@restonecoltrue \fi @@ -164,10 +414,8 @@ }{\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} @@ -177,334 +425,255 @@ \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} +%%\RequirePackage[figure,table]{hypcap} +\RequirePackage{bookmark} +\newcommand{\procpdfauthor}{[Proceedings author/editor]} +\newcommand{\procpdftitle}{[Proceedings title]} +\newcommand{\procpdfsubject}{[Proceedings short title] % + ([Proceedings Acronym]), [City], [Country], [Dates]} \AtBeginDocument{ \hypersetup{ pdfauthor = \procpdfauthor, pdftitle = \procpdftitle, pdfsubject = \procpdfsubject, pdfkeywords = {}, - pdfcreator = {LaTeX with `confproc' package}, + pdfcreator = {LaTeX + confproc v0.7}, pdfproducer = {pdfLaTeX}}} -\topmargin 0truept -\headheight 12truept -\footskip 14mm -\textheight 229truemm -\textwidth 175truemm -\voffset -28truept -\headsep 20truept +\iffalse\@twoside + \usepackage[bindingoffset=\proc@binding]{geometry} +\else% + \usepackage[twoside,bindingoffset=\proc@binding]{geometry} +\fi \renewcommand{\contentsname}{Conference Program} \renewcommand{\bibname}{Full Bibliography} \renewcommand{\indexname}{Index of Authors} -\newcommand{\proclhead}{\em \small Proceedings of the blah blah blah} -\newcommand{\proccfoot}{\small Proc-\thepage} +\newcommand{\proclhead}{} +\newcommand{\procchead}{{\color{red}Proceedings of the... \hfill % + 01--29 February, 2001}} +\newcommand{\procrhead}{} +\newcommand{\proclfoot}{} +\newcommand{\proccfoot}{{\small \color{red} Proc-\thepage}} +\newcommand{\procrfoot}{} \pagestyle{fancyplain} \renewcommand{\headrulewidth}{0pt} \renewcommand{\footrulewidth}{-5mm} -\lhead{\proclhead} -\rhead{} +\newlength{\procfootvskip} +\setlength{\procfootvskip}{0cm} +\newlength{\procoptfootvskip} +\ifconfproc@movepagenumber \setlength{\procoptfootvskip}{3mm}% +\else \setlength{\procoptfootvskip}{0mm} \fi +\lhead{\color{\confproc@colorheaders}\proclhead} +\chead{\color{\confproc@colorheaders}\procchead} +\rhead{\color{\confproc@colorheaders}\procrhead} \lfoot{} \rfoot{} -\cfoot{\proccfoot}{} +\cfoot{\color{\confproc@colorheaders}\vskip\procfootvskip% + \vskip\procoptfootvskip\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 +\if@proc@TocNumberingRight + \titlecontents{section}[0em]% left margin + {\vspace*{0.5mm}}% space between two papers in the TOC + {}% + {}% + {\hfill \hspace*{-2.5em}\makebox[0pt][r]{\contentspage}\hspace*{2.5em}}% filler and page + [\addvspace{0.5mm}]% space after \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 + {\vspace*{0.5mm}}% + {\hspace*{-2.5em}\makebox[0pt][r]{\contentspage}\hspace*{2.5em}}% left shifting page num. + {\hspace*{-2.5em}\makebox[0pt][r]{\contentspage}\hspace*{2.5em}}% idem {}% filler and page + [\addvspace{0.5mm}]% space after \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 +\if@proc@TocNumberingRight + \newcommand{\frontmattertocstyle}{ + \titlecontents{part}[0em]% + {\addvspace{3mm}}% + {\Large\bfseries}% + {\Large\bfseries}% + {}% + [\addvspace{0.5mm}] + \titlecontents{chapter}[0em]% + {\addvspace{2mm}}% + {\large\bfseries\itshape}% + {\large\bfseries\itshape}% + {}% + [\addvspace{0.5mm}] + } +\else + \newcommand{\frontmattertocstyle}{ + \titlecontents{part}[0em]% + {\addvspace{3mm}}% + {\Large\bfseries}% + {\Large\bfseries}% + {}% + [\addvspace{0.5mm}] + \titlecontents{chapter}[0em]% + {\addvspace{2mm}}% + {\large\bfseries\itshape}% + {\large\bfseries\itshape}% + {}% + [\addvspace{0.5mm}] + } +\fi +\if@proc@TocNumberingRight \newcommand{\mainmattertocstyle}{ + \titlecontents{part}[0pt]% + {\addvspace{3mm}}% + {\Large\bfseries}% + {\Large\bfseries}% + {}% + [\addvspace{0.5mm}] \titlecontents{chapter}[0pt]% - {\addvspace{1pc}\bfseries\itshape}% - {\contentsmargin{0pt}\bfseries% - \makebox[0pt][r]{\huge\thecontentslabel\enspace}\large}% - {\contentsmargin{0pt}\large}{}[\addvspace{.5pc}]% + {\addvspace{2mm}}% + {\large\bfseries\itshape}% + {\large\bfseries\itshape}% + {}% + [\addvspace{0.5mm}] + } +\else % left TOC page numbers + \newcommand{\mainmattertocstyle}{ \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{section}[2.5em]% - {\vspace*{0.3em}}% - {\hspace*{-2.5em}\contentspage\hspace*{2.5em}}% - {\hspace*{-2.5em}\contentspage\hspace*{2.5em}}% - {}% - \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 + {\addvspace{3mm}}% + {\Large\bfseries}% + {\Large\bfseries}% + {}% + [\addvspace{0.5mm}] + \titlecontents{chapter}[0pt]% + {\addvspace{2mm}}% + {\large\bfseries\itshape}% + {\large\bfseries\itshape}% + {}% + [\addvspace{0.5mm}] + } \fi +\newcounter{npagespreamble} \renewcommand\mainmatter{% - \cleardoublepage + \PackageInfo{confproc}{counted \arabic{npagespreamble} pages in the preamble} + \cleardoublepage \@mainmattertrue - \pagenumbering{arabic} - \mainmattertocstyle} -\ifdefined\conf@TocNumberingRight + \pagenumbering{arabic}} +\if@proc@TocNumberingRight \newcommand{\backmattertocstyle}{ - \titlecontents{section}[]{}{}{}{}[]% \titlecontents{part}% - [0pt]{\addvspace{1pc}}{}{}% - {\contentsmargin{0pt} \large \hfill\contentspage}% - [\addvspace{.5pc}]% + [0pt]% + {\addvspace{3mm}}% + {\Large\bfseries}% + {\Large\bfseries}% + {\hfill \hspace*{-2.5em}\contentspage\hspace*{2.5em}}% + [\addvspace{0.5mm}] + \titlecontents{chapter}% + [0pt]% + {\addvspace{2mm}}% + {\large\bfseries\itshape}% + {\large\bfseries\itshape}% + {\hfill \hspace*{-2.5em}\contentspage\hspace*{2.5em}}% + [\addvspace{0.5mm}] + }% +\else + \newcommand{\backmattertocstyle}{% + \titlecontents{part}% + [0pt]% + {\addvspace{3mm}}% + {\makebox[0pt][r]{\contentspage}\hspace*{2.5em}\Large\bfseries}% + {\makebox[0pt][r]{\contentspage}\hspace*{2.5em}\Large\bfseries}% + {}% + [\addvspace{0.5mm}] + \titlecontents{chapter}% + [0pt]% + {\addvspace{2mm}}% + {\makebox[0pt][r]{\contentspage}\hspace*{2.5em}\large\itshape\bfseries}% + {\makebox[0pt][r]{\contentspage}\hspace*{2.5em}\large\itshape\bfseries}% + {}% + [\addvspace{0.5mm}] }% -\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\bfseries}% - {\contentspage\hspace*{2.5em}\contentsmargin{0pt} \large\bfseries}% - {}% - [\addvspace{.5pc}]% - }% - \else% - \newcommand\backmattertocstyle{}% - \fi% \fi \renewcommand\backmatter{% - \if@openright - \cleardoublepage - \else - \clearpage - \fi + \if@openright \cleardoublepage + \else \clearpage \fi \@mainmatterfalse - \backmattertocstyle} -\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 + \cfoot{\color{\confproc@colorheaders}\vskip \procfootvskip % + \vskip \procoptfootvskip \proccfoot}} +\newcommand{\otherpagestyle}{ + \if@proc@FancyHeadersExceptPapers\pagestyle{fancy} + \else \pagestyle{empty} \fi} +\newcommand{\thisotherpagestyle}{ + \if@proc@FancyHeadersExceptPapers\thispagestyle{fancy} + \else \thispagestyle{empty} \fi} +\newcommand{\PDFpagestyle}{ + \if@proc@FancyHeadersOnPapers\thispagestyle{fancy} + \else\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{\clearsingleordoublepage}{ + \iffalse\@twoside \clearpage + \else \cleardoublepage \fi} +\newlength{\LaTeXxShift} \setlength{\LaTeXxShift}{0pt} +\newlength{\LaTeXyShift} \setlength{\LaTeXyShift}{0pt} +\newlength{\WordxShift} \setlength{\WordxShift}{0pt} +\newlength{\WordyShift} \setlength{\WordyShift}{0pt} +\newcommand{\conf@paper@title}{} +\newcommand{\conf@paper@authors}{} +\newcommand{\conf@paper@index}{} +\newcommand{\conf@paper@ref}{} +\newcommand{\conf@paper@pagenum}{} +\newcommand{\conf@paper@cite}{} \newcommand{\papertitlestyle}{} \newcommand{\paperauthorstyle}{\texorpdfstring{\newline\itshape}{\break}} -\newcounter{paperpagenum} +\newcounter{npages} \newcommand{\proctoctitleauthor}[2]{% - \texorpdfstring{{\papertitlestyle#1}{\paperauthorstyle#2}}% - {{\papertitlestyle#1}}} -%% \begin{macrocode} -\newcommand{\procinsertpaper}[9]{ - \setcounter{paperpagenum}{#2} - #6% - \ifnum\thepaperpagenum=1 - \ifdefined\conf@procWithDebug\typeout{confproc: 1-page long paper}\fi - \ifdefined\UseBackRef - \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}% - \else - \includepdf[noautoscale,offset= #1,pages=1,% - linktodoc,linkname=\PAPERPATH #8.pdf,% - addtotoc={1, section, 1, \proctoctitleauthor{#4}{#5}, #3},% - pagecommand = {#9\PDFpagestyle\vspace*{-1cm}\confcite{#7}}% - ]{\PAPERPATH #8.pdf}% - \fi - \else - \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,% - pagecommand = {\PDFpagestyle\vspace*{-2cm}\confcite{#7}}% - ]{\PAPERPATH #8.pdf}% - \PDFpagestyle{}% - \ifdefined\conf@procWithDebug - \typeout{confproc: bibliography insertion only}\fi - \else - \addtocounter{paperpagenum}{-1} - \includepdf[noautoscale,offset= #1,pages=2-\thepaperpagenum,% - linktodoc,linkname=\PAPERPATH #8.pdf,% - pagecommand = {\PDFpagestyle}% - ]{\PAPERPATH #8.pdf}% - \PDFpagestyle{}% - \addtocounter{paperpagenum}{1} - \ifdefined\CreateBackRef - \includepdf[noautoscale,offset= #1,pages=\thepaperpagenum,% - linktodoc,linkname=\PAPERPATH #8.pdf,% - pagecommand = {\PDFpagestyle\vspace*{-2cm}\confcite{#7}}% - ]{\PAPERPATH #8.pdf}% - \else - \ifdefined\UseBackRef - \includepdf[noautoscale,offset= #1,pages=\thepaperpagenum,% - linktodoc,linkname=\PAPERPATH #8.pdf,% - pagecommand = {\PDFpagestyle}% - ]{\PAPERPATH #8.pdf}% - \fi - \fi - \fi - \ifdefined\conf@procWithDebug - \typeout{confproc: partial paper insertion (last page=bib items)}\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 -} + \texorpdfstring{{\papertitlestyle #1}{\paperauthorstyle #2}}% + {{\papertitlestyle #1}}} \renewcommand\tableofcontents{% - \tocmattertocstyle \clearsingleordoublepage \pdfbookmark[0]{\contentsname}{contents} - \if@twocolumn - \@restonecoltrue\onecolumn - \else - \@restonecolfalse - \fi - \section*{\contentsname - \@mkboth{% - \MakeUppercase\contentsname}{\MakeUppercase\contentsname}}% - \@starttoc{toc}% - \if@restonecol\twocolumn\fi - \clearsingleordoublepage -} + \if@twocolumn \@restonecoltrue\onecolumn + \else \@restonecolfalse \fi + \section*{\contentsname}% + \@starttoc{toc}% + \if@restonecol\twocolumn\fi + \clearsingleordoublepage} \newcommand{\procday}[1]{% - \phantomsection% - \addcontentsline{toc}{part}{#1}} + \phantomsection \addcontentsline{toc}{part}{#1}} \newcommand{\session}[1]{% - \phantomsection% - \addcontentsline{toc}{chapter}{#1}} + \phantomsection \addcontentsline{toc}{chapter}{#1}} \newcommand{\paperswitch}{} \setlength{\bibhang}{0.5em} % -\renewenvironment{thebibliography}[1] - {\ifdefined\conf@TwoColumnBib% - \twocolumn - \fi - \ifdefined\conf@BibMerge% - \nocite{*}% - \else% - \clearsingleordoublepage% - \fi% - \section*{\bibname}% - \addcontentsline{toc}{part}{\bibname} - \@mkboth{\MakeUppercase\bibname}{\MakeUppercase\bibname}% - \procbibintro - \list{\@biblabel{\@arabic\c@enumiv}}% - {\settowidth\labelwidth{\@biblabel{#1}}% - \leftmargin\labelwidth - \advance\leftmargin\labelsep - \@openbib@code - \usecounter{enumiv}% - \let\p@enumiv\@empty - \renewcommand\theenumiv{\@arabic\c@enumiv}}% - \sloppy - \clubpenalty4000 - \@clubpenalty \clubpenalty - \widowpenalty4000% - \sfcode`\.\@m} - {\def\@noitemerr - {\@latex@warning{Empty `thebibliography' environment}}% - \endlist - \setlength{\labelsep}{0em} - \setlength{\itemindent}{-\bibhang} - \setlength{\leftmargin}{\bibhang}} +\if@proc@BibNone + \renewenvironment{thebibliography}[1]{% + \PackageInfo{confproc}{ignoring #1 biblio file (`bib=none' option)}} +\else + \renewenvironment{thebibliography}[1]{% + \ifconfproc@twocolbib \twocolumn \fi + \ifdefined\conf@BibMerge \nocite{*} + \else \clearsingleordoublepage \fi% + \section*{\bibname}% + \addcontentsline{toc}{part}{\bibname} + \@mkboth{\MakeUppercase\bibname}{\MakeUppercase\bibname}% + \procbibintro + \list{\@biblabel{\@arabic\c@enumiv}}% + {\settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \@openbib@code + \usecounter{enumiv}% + \let\p@enumiv\@empty + \renewcommand\theenumiv{\@arabic\c@enumiv}}% + \sloppy + \clubpenalty4000 + \@clubpenalty \clubpenalty + \widowpenalty4000% + \sfcode`\.\@m} + {\def\@noitemerr + {\@latex@warning{Empty `thebibliography' environment}}% + \endlist + \setlength{\labelsep}{0em} + \setlength{\itemindent}{-\bibhang} + \setlength{\leftmargin}{\bibhang}} +\fi \renewcommand\newblock{\hskip 0em plus 0.0em minus .07em} \newcommand{\procbibintro}{{\it ~~~This bibliography is a compilation of all bibliographic references from each paper. Page numbers that @@ -516,9 +685,351 @@ \onecolumn \section*{~~}% \addcontentsline{toc}{part}{\indexname}% - \renewcommand{\proclhead}{}% + \renewcommand{\procchead}{}% \renewcommand{\proccfoot}{}% \printindex} +\ifconfproc@showmarginlines + \PackageInfo{confproc}{drawing margin lines' command (with a table)}% + \pagestyle{fancyplain} + \renewcommand{\headrulewidth}{0.0pt} + \newcommand{\procmarginlines}{ + \renewcommand{\footrulewidth}{0.4pt} + \noindent + \vspace*{7mm} % adjusting vertical initial space + \begin{table}[h!] % table for vertical lines + \centering + \color{blue} + \begin{tabular}{|@{}p{3.3in}@{}|@{}p{0.3in}@{}|@{}p{3.3in}@{}|} % spacing between columns & vertical lines + \hline % upper horizontal line + ~~~~~~~~~~~ & ~ &~~~~~~~~~~~~~\\ + \vspace*{7.5in} % less than a page height + ~~~~~~~~~~~ & ~ &~~~~~~~~~~~~~\\ + \end{tabular} + \end{table} + } +\else + \newcommand{\procmarginlines}{} + \PackageInfo{confproc}{no margin lines}% +\fi +\newcommand{\PAPERPATH}{} + +\newcommand{\confemptypapercite}[2]{% + \vspace*{0.3\textheight}% + \begin{flushleft} + \begin{tabular}{lp{0.7\textwidth}} + \Large [Title] & \Large \conf@papertitle\\ + & \vspace*{0.5cm}\\ + \Large [Author(s)] & \Large \conf@paperauthor\\ + & \vspace*{0.5cm}\\ + \Large [File name] & \Large \url{\PAPERPATH #2}\\ + & \vspace*{0.5cm}\\ + \if@proc@BibNone + \Large [Citation(s)] & \Large [disabled by ``bib=none'' option]\\ + & \vspace*{2cm}\\ + \else + \Large [Citation(s)] & \Large \confcite{\conf@cite}\\ + & \vspace*{2cm}\\ + \fi + & \textbf{\Huge Page #1}\\ + \end{tabular} + \end{flushleft} +} +\newcounter{conf@npages} +\newcommand{\confemptypaper}[2]{% + \vspace*{0.3\textheight}% + \begin{flushleft} + \begin{tabular}{lp{0.7\textwidth}} + \Large [Title] & \Large \conf@papertitle\\ + & \vspace*{0.5cm}\\ + \Large [Author(s)] & \Large \conf@paperauthor\\ + & \vspace*{0.5cm}\\ + \Large [File name] & \Large \url{\PAPERPATH #2}\\ + & \vspace*{0.5cm}\\ + \if@proc@BibNone + \Large [Citation(s)] & \Large [disabled by ``bib=none'' option]\\ + & \vspace*{2cm}\\ + \else + \Large [Citation(s)] & \Large [see page \theconf@npages{} of this paper]\\ + & \vspace*{2cm}\\ + \fi + & \textbf{\Huge Page #1}\\ + \end{tabular} + \end{flushleft} +} +%%%%% begin key-value option management for \procpaper{} command %%%%% +\newlength{\conf@xshift} +\newlength{\conf@yshift} +\newcounter{conf@switch} +\newcounter{conf@firstpage} +\newcounter{conf@lastpage} +\newcommand{\conf@pagecmd}{} +\newcommand{\conf@tmpauthorlist}{} +\newcommand{\conf@tmptitle}{} +\newcommand{\confstylecheckauthor}{} +\newcommand{\confstylechecktitle}{} +\newcounter{locnpages}% +\def\procpaper{\@ifnextchar[{\@procpaper}{\@procpaper[]}} +\def\@procpaper[#1]#2{{% +\ifthenelse{\equal{\confproc@paperselec}{all}\or\equal{\confproc@paperselec}{#2}} + {\setlength{\conf@xshift}{0cm} + \setlength{\conf@yshift}{0cm} + \setcounter{conf@npages}{1} + \setcounter{conf@switch}{1} + \def\conf@papertitle{Default paper title} + \def\conf@paperauthor{Default paper author list} + \def\conf@index{} + \def\conf@cite{} + \def\conf@bookmark{} %\pdfbookmark[2]{Default paper author 1}{p_XXX.author1}} + \setkeys{ppaper}{#1} + \iffalse\@twoside \addtolength{\conf@xshift}{0cm} + \else \addtolength{\conf@xshift}{\proc@binding} \fi + + \if@proc@ReplacePDFs + \immediate\write\npagesfile {file #2.pdf has \theconf@npages \space pages} + \clearsingleordoublepage + \setcounter{conf@firstpage}{\thenpagespreamble+\thepage} + \setcounter{conf@lastpage}{\thenpagespreamble+\thepage+% + \theconf@npages-1} + + \phantomsection + \addcontentsline{toc}{section}{\proctoctitleauthor{\conf@papertitle}% + {\conf@paperauthor}} + \ifnum\theconf@npages=0 + \typeout{confproc: Error, you asked for an empty paper} + \typeout{confproc: #2.pdf} + \fi + \ifnum\theconf@npages=1 + \confemptypapercite{1}{#2.pdf} \conf@bookmark \conf@index{}% + \fi + \ifnum\theconf@npages=2 + \confemptypaper{1}{#2.pdf} \conf@bookmark \conf@index{}% + \newpage \confemptypapercite{2}{#2.pdf} + \fi + \ifnum\theconf@npages>2 + \confemptypaper{1}{#2.pdf} \conf@bookmark \conf@index{}% + \setcounter{locnpages}{2} + \ifthenelse{\thelocnpages<\theconf@npages}% + {\typeout{smaller}}% + {\typeout{bigger}} + \whiledo{\value{locnpages}<\value{conf@npages}}{% + \newpage \confemptypaper{\thelocnpages}{#2.pdf}% + \addtocounter{locnpages}{1}} + \newpage \confemptypapercite{\theconf@npages}{#2.pdf} + \fi + \setcounter{conf@lastpage}{\thenpagespreamble+\thepage} + \else + \setcounter{conf@firstpage}{\thenpagespreamble+\thepage} + \conf@index{}% + \ifconfproc@showpapernumber + \cfoot{\color{\confproc@colorheaders}\vskip \procfootvskip % + \vskip \procoptfootvskip \proccfoot\\ + \color{\confproc@colorheaders}[paper \theconf@switch{}]}{} + \fi + \ifconfproc@checktitle + \renewcommand{\conf@tmptitle}{{\color{blue}% + \confstylechecktitle\conf@papertitle}} + \else + \renewcommand{\conf@tmptitle}{} + \fi + \ifconfproc@checkauthor + \renewcommand{\conf@tmpauthorlist}{{\color{blue}% + \confstylecheckauthor\conf@paperauthor}} + \else + \renewcommand{\conf@tmpauthorlist}{} + \fi + \renewcommand{\conf@pagecmd}{\conf@tmptitle\\ \conf@tmpauthorlist} + + \if@proc@IncludeFullPDFs % include all pages in order to count!!! + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},pages=1,% + linktodoc,linkname=\PAPERPATH #2.pdf,% + addtotoc={1, section, 1, % + \proctoctitleauthor{\conf@papertitle}{\conf@paperauthor},% + \theconf@switch},% + pagecommand = {\conf@pagecmd\procmarginlines % + \conf@bookmark \PDFpagestyle}% + ]{\PAPERPATH #2.pdf}% + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},pages=2-,% + linktodoc,linkname=\PAPERPATH #2.pdf,% + pagecommand = {\procmarginlines \PDFpagestyle}% + ]{\PAPERPATH #2.pdf}% + \else + \ifnum\theconf@npages=1 % 1-page paper + \if@proc@verbose + \typeout{confproc: 1-page long paper} + \fi + \if@proc@BibNone + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},% + pages=1,linktodoc,linkname=\PAPERPATH #2.pdf,% + addtotoc={1, section, 1, % + \proctoctitleauthor{\conf@papertitle}{\conf@paperauthor},% + \theconf@switch},% + pagecommand = {\conf@pagecmd\procmarginlines % + \conf@bookmark \PDFpagestyle}% + ]{\PAPERPATH #2.pdf}% + \else + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},% + pages=1,linktodoc,linkname=\PAPERPATH #2.pdf,% + addtotoc={1, section, 1,% + \proctoctitleauthor{\conf@papertitle}{\conf@paperauthor},% + \theconf@switch},% + pagecommand = {\conf@pagecmd\procmarginlines % + \conf@bookmark \PDFpagestyle\vspace*{-1cm}\confcite{\conf@cite}}% + ]{\PAPERPATH #2.pdf}% + \fi + \else + \ifnum\theconf@npages=2 % 2-pages paper + \if@proc@verbose\typeout{confproc: 2-page long paper}\fi + \if@proc@BibNone + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},% + pages=1,linktodoc,linkname=\PAPERPATH #2.pdf,% + addtotoc={1, section, 1, % + \proctoctitleauthor{\conf@papertitle}{\conf@paperauthor},% + \theconf@switch},% + pagecommand = {\conf@pagecmd\procmarginlines \conf@bookmark % + \PDFpagestyle}% + ]{\PAPERPATH #2.pdf}% + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},% + pages=2,linktodoc,linkname=\PAPERPATH #2.pdf,% + pagecommand = {\procmarginlines \PDFpagestyle}% + ]{\PAPERPATH #2.pdf}% + \else + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},% + pages=1,linktodoc,linkname=\PAPERPATH #2.pdf,% + addtotoc={1, section, 1, % + \proctoctitleauthor{\conf@papertitle}{\conf@paperauthor},% + \theconf@switch},% + pagecommand = {\conf@pagecmd\procmarginlines \conf@bookmark % + \PDFpagestyle\vspace*{-1cm}\confcite{\conf@cite}}% + ]{\PAPERPATH #2.pdf}% + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},% + pages=2,linktodoc,linkname=\PAPERPATH #2.pdf,% + pagecommand = {\procmarginlines % + \PDFpagestyle\vspace*{-2cm}\confcite{\conf@cite}}% + ]{\PAPERPATH #2.pdf}% + \fi + \else % 3 pages and more + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},% + pages=1,% + linktodoc,linkname=\PAPERPATH #2.pdf,% + addtotoc={1, section, 1, % + \proctoctitleauthor{\conf@papertitle}{\conf@paperauthor},% + \theconf@switch},% + pagecommand = {\conf@pagecmd\procmarginlines % + \conf@bookmark \PDFpagestyle}% + ]{\PAPERPATH #2.pdf}% + \ifdefined\conf@BibMerge% + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},% + pages=\theconf@npages,linktodoc,linkname=\PAPERPATH #2.pdf,% + pagecommand = {\procmarginlines % + \PDFpagestyle\vspace*{-2cm}\confcite{\conf@cite}}% + ]{\PAPERPATH #2.pdf}% + \PDFpagestyle{}% + \if@proc@verbose\typeout{confproc: bibliography insertion only}\fi + \else + \addtocounter{conf@npages}{-1} + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},% + pages=2-\theconf@npages,linktodoc,linkname=\PAPERPATH #2.pdf,% + pagecommand = {\procmarginlines \PDFpagestyle}% + ]{\PAPERPATH #2.pdf}% + \PDFpagestyle{}% + \addtocounter{conf@npages}{1} + \if@proc@BibNone + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},% + pages=\theconf@npages,linktodoc,linkname=\PAPERPATH #2.pdf,% + pagecommand = {\procmarginlines \PDFpagestyle}% + ]{\PAPERPATH #2.pdf}% + \else + \includepdf[noautoscale,offset=\conf@xshift{} \conf@yshift{},% + pages=\theconf@npages,linktodoc,linkname=\PAPERPATH #2.pdf,% + pagecommand = {\procmarginlines % + \PDFpagestyle\vspace*{-2cm}\confcite{\conf@cite}}% + ]{\PAPERPATH #2.pdf}% + \fi + \fi + \fi + \fi + \if@proc@verbose + \typeout{confproc: partial paper insertion % + (last page=bib items)} + \fi + \fi + \setcounter{conf@lastpage}{\thenpagespreamble+\thepage-1} + \setcounter{conf@npages}{\theconf@lastpage} + \addtocounter{conf@npages}{- \theconf@firstpage} + \immediate\write\npagesfile{file #2.pdf has \theconf@npages \space pages} + \newpage + \ifconfproc@twosidepapers \cleardoublepage + \else \clearpage \fi + \fi + \if@proc@verbose + \typeout{______ debug: insert paper ______} + \typeout{confproc/file: #2.pdf (\theconf@npages \space pages)} + \typeout{confproc/title: \conf@papertitle} + \typeout{confproc/authors: \conf@paperauthor} + \typeout{confproc/index: \conf@index} + \typeout{confproc/shift: (\the\conf@xshift, \the\conf@yshift)} + \typeout{confproc/citations: \conf@cite} + \typeout{confproc/bookmarks: \conf@bookmark} + \typeout{confproc/switch ID: \theconf@switch} + \typeout{_______________________} + \fi + \ifconfproc@pdftk +%%-- pdftk version: !!! does not work with PDF v > 1.3 +%% \immediate\write\pdftkinfoall{pdftk A=${PDFFILE} cat A\arabic{conf@firstpage}-\arabic{conf@lastpage} output ${SPPATH}/#2.pdf} +%%-- Ghostscript version: ok with PDF v = 1.4 + \immediate\write\pdftkinfoall{gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -dFirstPage=\arabic{conf@firstpage} -dLastPage=\arabic{conf@lastpage} -sOUTPUTFILE=${SPPATH}/#2.pdf ${PDFFILE}} + +%%-- pdftk version: !!! does not work with PDF v > 1.3 +%% \immediate\write\pdftkinfoall{pdftk A=${PDFFILE} cat A\arabic{conf@firstpage}-\arabic{conf@lastpage} output ${SPPATH}/#2.pdf} +%%-- Ghostscript version: ok with PDF v = 1.4 + \immediate\openout\pdftkinfofile=\confproc@pdftkfolder/#2.pdftk + \immediate\write\pdftkinfofile {InfoKey: Title} + \immediate\write\pdftkinfofile {InfoValue: \conf@papertitle} + \immediate\write\pdftkinfofile {InfoKey: Author} + \immediate\write\pdftkinfofile {InfoValue: \conf@paperauthor} + \immediate\write\pdftkinfofile {InfoKey: Subject} + \immediate\write\pdftkinfofile {InfoValue: \confproc@pdftksubject} + \immediate\write\pdftkinfofile {InfoKey: Producer} + \immediate\write\pdftkinfofile {InfoValue: \confproc@pdftkproducer} + \immediate\write\pdftkinfofile {InfoKey: Creator} + \immediate\write\pdftkinfofile {InfoValue: \confproc@pdftkcreator} + \immediate\closeout\pdftkinfofile + \ifconfproc@verbose + \typeout{________________} + \typeout{pdftk A=${PDFFILE} cat A\arabic{conf@firstpage}-\arabic{conf@lastpage} output ${SPPATH}/#2.pdf} + \typeout{gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -dFirstPage=\arabic{conf@firstpage} -dLastPage=\arabic{conf@lastpage} -sOUTPUTFILE=${SPPATH}/#2.pdf ${PDFFILE}} + \typeout{InfoName: #2.info} + \typeout{InfoKey: Title} + \typeout{InfoValue: \conf@papertitle} + \typeout{InfoKey: Author} + \typeout{InfoValue: \conf@paperauthor} + \typeout{InfoKey: Subject} + \typeout{InfoValue: \confproc@pdftksubject} + \typeout{InfoKey: Producer} + \typeout{InfoValue: \confproc@pdftkproducer} + \typeout{InfoKey: Creator} + \typeout{InfoValue: \confproc@pdftkcreator} + \typeout{InfoEnd} + \fi + \fi + }{} +}} +\define@key{ppaper}{xshift}{\setlength{\conf@xshift}{#1}} +\define@key{ppaper}{yshift}{\setlength{\conf@yshift}{#1}} +\define@key{ppaper}{npages}{\setcounter{conf@npages}{#1}} +\define@key{ppaper}{switch}{\setcounter{conf@switch}{#1}} +\define@key{ppaper}{title}{\def\conf@papertitle{#1}} +\define@key{ppaper}{author}{\def\conf@paperauthor{#1}} +\define@key{ppaper}{index}{\def\conf@index{#1}} +\define@key{ppaper}{cite}{\def\conf@cite{#1}} +\define@key{ppaper}{bookmark}{\def\conf@bookmark{#1}} +%%%%% end key-value option management for \procpaper{} command %%%%% +\newcommand{\procinsertpaper}[9]{% + \PackageWarning{confproc}{!!! '\procinsertpaper' cmd is obsolete (v0.5) % + and does not preserve PDFs' horizontal and vertical shifts, nor general % + bib items. Please use the '\procpaper' command instead.} + \procpaper[title={#4},author={#5},npages=#2,index={#6},cite={#7},% + bookmark={#9}]{#8}} \InputIfFileExists{confproc.cfg} {\typeout{************^^J% * Local config file confproc.cfg used *^^J% diff --git a/Master/texmf-dist/tex/latex/confproc/newapave.sty b/Master/texmf-dist/tex/latex/confproc/newapave.sty index c5ac3d4897e..db7a357ccd8 100644 --- a/Master/texmf-dist/tex/latex/confproc/newapave.sty +++ b/Master/texmf-dist/tex/latex/confproc/newapave.sty @@ -1,4 +1,4 @@ -%$$$ newapave.sty $$$ --- July 31, 2006 (Version 2.1) +%$$$ newapave2.sty $$$ --- July 15, 2010 (Version 2.21) % - Version 2.1. % % This file implements citations for the ``newapave'' bibliography style. @@ -184,7 +184,7 @@ \def\@biblabel#1{} \newlength{\bibhang} %\setlength{\bibhang}{1em} % ORIGINAL -\setlength{\bibhang}{0.5em} % DAFx-06 +\setlength{\bibhang}{0.5em} % DAFx-06 % \def\thebibliography#1{% \section*{\bibname} @@ -194,7 +194,7 @@ \setlength{\itemindent}{-\bibhang} \setlength{\leftmargin}{\bibhang}} % \def\newblock{\hskip .11em plus .33em minus .07em} % ORIGINAL - \def\newblock{\hskip 0em plus 0.0em minus .07em} % DAFx-06 + \def\newblock{\hskip 0em plus 0.0em minus .07em} % DAFx-06 \sloppy\clubpenalty4000\widowpenalty4000 \sfcode`\.=1000\relax} % |