summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/romanneg/romanneg.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-10-13 23:38:07 +0000
committerKarl Berry <karl@freefriends.org>2010-10-13 23:38:07 +0000
commit2532f2984dfa19ccba63a270e9ca0ba6099f7800 (patch)
tree533753d65a936db7aeffa38623e99d482e432466 /Master/texmf-dist/tex/latex/romanneg/romanneg.sty
parentee5fc07f2f888967948c2f70ea5f37eda3aeea4c (diff)
rommaneg own pkg (13oct10)
git-svn-id: svn://tug.org/texlive/trunk@20087 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/romanneg/romanneg.sty')
-rw-r--r--Master/texmf-dist/tex/latex/romanneg/romanneg.sty51
1 files changed, 51 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/romanneg/romanneg.sty b/Master/texmf-dist/tex/latex/romanneg/romanneg.sty
new file mode 100644
index 00000000000..0232bfa438c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/romanneg/romanneg.sty
@@ -0,0 +1,51 @@
+%%% ====================================================================
+%%% @LaTeX-style-file{
+%%% author = "Mario Wolczko",
+%%% version = "1.03",
+%%% date = "15 June 1992",
+%%% time = "18:11:59 BST",
+%%% filename = "romanneg.sty",
+%%% email = "mario@acm.org",
+%%% codetable = "ISO/ASCII",
+%%% keywords = "LaTeX, output, pagenumbers",
+%%% supported = "no",
+%%% docstring = "Causes the page numbers in the DVI file (as
+%%% defined by \count0) to be negative when roman pagenumbering is
+%%% in effect.",
+%%% }
+%%% ====================================================================
+%
+% This file is in the public domain
+%
+% This style option should not change the appearance of a document,
+% but merely change the page numbers (as defined by \count0) in the
+% DVI file to be negative when roman pagenumbering is in use.
+%
+%
+% To do this, the \@steppagecounter macro increments the absolute
+% value of \count0
+\def\@steppagecounter{% based on \advancepageno, TeXbook, p.362
+ \ifnum\c@page<\z@ \global\advance\c@page\m@ne
+ \else\global\advance\c@page\@ne \fi} % increase |c@page|
+
+\let\@oldstepcounter\stepcounter
+\def\stepcounter#1{{\def\@tmpa{#1}\def\@tmpb{page}%
+ \ifx\@tmpa\@tmpb\@steppagecounter\else\@oldstepcounter{#1}\fi}}
+
+% Modified version of the pagenumbering command that sets \count0 (aka
+% \c@page) to -1 rather than 1 if roman numbering is specified.
+\def\pagenumbering#1{{%
+ \def\@tmpa{#1} \def\@tmpb{roman} \def\@tmpc{Roman}
+ \ifx\@tmpa\@tmpb % roman option; set -ve page number.
+ \global\c@page \m@ne
+ \else\ifx\@tmpa\@tmpc
+ \global\c@page \m@ne
+ \else
+ \global\c@page \@ne
+ \fi\fi
+ \gdef\thepage{\csname @#1\endcsname \c@page}}}
+
+% the modified versions of \@roman and \@Roman deal with negatives
+\def\@romannumeral#1{\ifnum#1<0 \romannumeral-#1 \else\romannumeral#1 \fi}
+\def\@roman#1{\@romannumeral #1}
+\def\@Roman#1{\expandafter\uppercase\expandafter{\@romannumeral #1}}