diff options
author | Karl Berry <karl@freefriends.org> | 2006-08-27 22:38:54 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-08-27 22:38:54 +0000 |
commit | 2607d53137ede06e9780342b225218743e100bb4 (patch) | |
tree | c6c88c805dd21a5bbb6ad6f26d3d53c517f4b866 /Master/texmf-dist/tex/latex/oberdiek/zref-perpage.sty | |
parent | fb0d58de45c0fc32bab09a839c186de46f75628e (diff) |
oberdiek update from tds zip (28aug06)
git-svn-id: svn://tug.org/texlive/trunk@2054 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/oberdiek/zref-perpage.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/oberdiek/zref-perpage.sty | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-perpage.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-perpage.sty new file mode 100644 index 00000000000..2350bb1e1e7 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/zref-perpage.sty @@ -0,0 +1,107 @@ +%% +%% This is file `zref-perpage.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% zref.dtx (with options: `perpage') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek <oberdiek@uni-freiburg.de> +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 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.3 or later is part of all distributions of +%% LaTeX version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% This Current Maintainer of this work is Heiko Oberdiek. +%% +%% This work consists of the main source file zref.dtx +%% and the derived files +%% zref.sty, zref.pdf, zref.ins, zref.drv, +%% zref-base.sty, zref-abspage.sty, zref-counter.sty, +%% zref-dotfill.sty, zref-hyperref.sty, zref-lastpage.sty, +%% zref-perpage.sty, zref-savepos.sty, zref-titleref.sty, +%% zref-totpages.sty, zref-user.sty, zref-xr.sty, +%% zref-example.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{zref-perpage}% + [2006/05/25 v1.2 Module perpage for zref (HO)] +\RequirePackage{zref-base}[2006/05/25] +\@ifundefined{ZREF@baseok}{\endinput}{} +\RequirePackage{zref-abspage}[2006/05/25] +\zref@newprop*{pagevalue}[0]{\number\c@page} +\zref@newlist{perpage} +\zref@addprop{perpage}{abspage} +\zref@addprop{perpage}{page} +\zref@addprop{perpage}{pagevalue} +\newcounter{zpage} +\zref@require@unique +\let\ZREF@org@stepcounter\stepcounter +\def\stepcounter#1{% + \ifcsname @stepcounterhook@#1\endcsname + \csname @stepcounterhook@#1\endcsname + \fi + \ZREF@org@stepcounter{#1}% +} +\newcommand*{\zmakeperpage}{% + \@ifnextchar[\ZREF@makeperpage@opt{\ZREF@@makeperpage[\z@]}% +} +\def\ZREF@makeperpage@opt[#1]{% + \begingroup + \edef\x{\endgroup + \noexpand\ZREF@@makeperpage[\number\numexpr#1-1\relax]% + }% + \x +} +\def\ZREF@@makeperpage[#1]#2{% + \@ifundefined{@stepcounterhook@#2}{% + \expandafter\gdef\csname @stepcounterhook@#2\endcsname{}% + }{}% + \expandafter\gdef\csname ZREF@perpage@#2\endcsname{% + \ZREF@@perpage@step{#2}{#1}% + }% + \expandafter\g@addto@macro\csname @stepcounterhook@#2\endcsname{% + \ifcsname ZREF@perpage@#2\endcsname + \csname ZREF@perpage@#2\endcsname + \fi + }% +} +\def\ZREF@@perpage@step#1#2{% + \global\advance\c@zref@unique\@ne + \begingroup + \expandafter\zref@labelbylist\expandafter{\thezref@unique}{perpage}% + \zref@ifrefundefined\thezref@unique{% + \global\c@zpage=\c@page + \global\let\thezpage\thepage + \expandafter\xdef\csname ZREF@abspage@#1\endcsname{\number\c@abspage}% + }{% + \global\c@zpage=\zref@extract\thezref@unique{pagevalue}\relax + \xdef\thezpage{\noexpand\zref@extract{\thezref@unique}{page}}% + \expandafter\xdef\csname ZREF@abspage@#1\endcsname{% + \zref@extractdefault\thezref@unique{abspage}{\number\c@abspage}% + }% + }% + \expandafter\ifx\csname ZREF@abspage@#1\expandafter\endcsname + \csname ZREF@currentabspage@#1\endcsname + \else + \global\csname c@#1\endcsname=#2\relax + \global\expandafter\let + \csname ZREF@currentabspage@#1\expandafter\endcsname + \csname ZREF@abspage@#1\endcsname + \fi + \endgroup +} +\newcommand*{\zunmakeperpage}[1]{% + \global\expandafter\let\csname ZREF@perpage@#1\endcsname\@undefined +} +\endinput +%% +%% End of file `zref-perpage.sty'. |