summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/progress
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/progress
Initial commit
Diffstat (limited to 'macros/latex/contrib/progress')
-rw-r--r--macros/latex/contrib/progress/README4
-rw-r--r--macros/latex/contrib/progress/progress.pdfbin0 -> 96742 bytes
-rw-r--r--macros/latex/contrib/progress/progress.sty359
-rw-r--r--macros/latex/contrib/progress/progress.tex199
-rw-r--r--macros/latex/contrib/progress/progress20030701.html40
5 files changed, 602 insertions, 0 deletions
diff --git a/macros/latex/contrib/progress/README b/macros/latex/contrib/progress/README
new file mode 100644
index 0000000000..267daaf6a9
--- /dev/null
+++ b/macros/latex/contrib/progress/README
@@ -0,0 +1,4 @@
+"Progress" is a package which when compiling LaTeX documents,
+generates a HTML file giving an overview of the documents state (of how finished its parts are).
+
+The package is highly configurable, enabling the users to get and control textural and graphical progress information in their documents. Finally the package has the notion of "draft" and "final" documents, so progress meters can be removed easily.
diff --git a/macros/latex/contrib/progress/progress.pdf b/macros/latex/contrib/progress/progress.pdf
new file mode 100644
index 0000000000..7cc736fe8c
--- /dev/null
+++ b/macros/latex/contrib/progress/progress.pdf
Binary files differ
diff --git a/macros/latex/contrib/progress/progress.sty b/macros/latex/contrib/progress/progress.sty
new file mode 100644
index 0000000000..4b0147cea9
--- /dev/null
+++ b/macros/latex/contrib/progress/progress.sty
@@ -0,0 +1,359 @@
+%%
+%% This is file `progress.sty',
+%%
+%% version 1.10
+%%
+%% Copyright (C) 2002-2003 Kasper B. Graversen - this is freeware
+%%
+%% Thanks to Robin Fairbairns for helping me sorting things out ;-)
+%% Thanks to Dan Luecking for some definitions
+%% Also thanks to David Bausum for his free 'trept' "TeX: Reference and Examples" information material
+%%
+%% Progress may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.1
+%% 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.1 or later is part of all distributions of LaTeX
+%% version 1999/06/01 or later.
+
+\NeedsTeXFormat{LaTeX2e}[1994/06/01]
+\ProvidesPackage{progress}[2003/29/06 v1.10 progress package]
+\typeout{Package: progress v1.10 <2003/29/06> (Kasper B. Graversen)}
+
+
+% User-redefinable option: the form of the output filename
+\newcommand{\ProgressReportName}{\jobname\YYYYMMDDdate.html}
+
+% User-redefinable option: the size of the picture, if progress graphs are drawn
+\newlength{\ProgressGfxUnitSize}
+\setlength{\ProgressGfxUnitSize}{0.07mm} % default value
+
+\newcount\ProgressGfxXSize
+\newcount\ProgressGfxYSize
+\ProgressGfxXSize = 100 \relax
+\ProgressGfxYSize = 20 \relax
+
+
+% User-redifinable option: the output in the document (dvi/pdf file)
+\newcommand{\ProgressDocOutput}[1]{\marginpar{\ProgressDrawBar{#1}}}
+
+
+
+
+
+% pr@gressArgument - holds the percent given to \progress{}
+\newcount\pr@gressArgument
+
+% pr@gressDepth is the level of output
+% pr@gressDepth = 1 : only chapters
+% pr@gressDepth = 2 : only chapters & sections
+% pr@gressDepth = 3 : only chapters & sections & subsections
+% pr@gressDepth = 4 : only chapters & sections & subsections & subsubsection
+\newcount\pr@gressDepth
+
+% pr@gressCurrentDepth denotes the currently encountered \chapter, \section, \subsection, or \subsubsection
+% pr@gressCurrentDepth = 1 : chapter
+% pr@gressCurrentDepth = 2 : section
+% pr@gressCurrentDepth = 3 : subsection
+% pr@gressCurrentDepth = 4 : subsubsection
+\newcount\pr@gressCurrentDepth
+
+% denotes if \progress should perfom actions or not
+% \d@cumentstate = 1 : draft.. include all definitions
+% \d@cumentstate = 2 : final.. include nothing
+\newcount\d@cumentstate
+\d@cumentstate=1\relax % default is draftmode (\relax stops scanning: it's only active job)
+
+
+\DeclareOption{chapter}{\pr@gressDepth=1\relax}
+\DeclareOption{section}{\pr@gressDepth=2\relax}
+\DeclareOption{subsection}{\pr@gressDepth=3\relax}
+\DeclareOption{subsubsection}{\pr@gressDepth=4\relax}
+
+\DeclareOption{textonly}{\renewcommand{\ProgressDocOutput}[1]{\marginpar{{\scriptsize progress: #1\%}}}}
+\DeclareOption{textgfx}{\renewcommand{\ProgressDocOutput}[1]{\marginpar{\ProgressDrawBar{#1}{\scriptsize~#1\%}}}}
+
+\DeclareOption{final}{%
+ \newcommand{\progress}[1]{}% in final mode do not write anything to the document (nor to the html file!)
+ \d@cumentstate=2\relax% set to final mode
+}%
+
+\DeclareOption{draft}{
+ \d@cumentstate=1\relax% set to draft mode
+ \newcommand{\progress}[1]{%
+ % ask if current level is <= user specified level
+ \@tempcnta=\pr@gressDepth
+ \advance\@tempcnta by 1
+ \ifnum\pr@gressCurrentDepth < \@tempcnta
+ \pr@gressArgument=#1 % set a register to the given percent value to determine its size
+ \ifnum\pr@gressArgument < 0
+ \def\bgcolor{A05050} ****\else % HTML "brown"
+ \ifnum\pr@gressArgument < 51
+ \def\bgcolor{FF0000} \else % HTML "red"
+ \ifnum\pr@gressArgument < 71
+ \def\bgcolor{C71585} \else % HTML "MediumVioletRed"
+ \ifnum\pr@gressArgument < 81
+ \def\bgcolor{6495ED} \else % HTML light blue
+ \ifnum\pr@gressArgument < 91
+ \def\bgcolor{FF8C00} \else % orange
+ \ifnum\pr@gressArgument < 95
+ \def\bgcolor{008000} \else % green
+ \ifnum\pr@gressArgument = 100
+ \def\bgcolor{ADFF2F} % GreenYellow
+ \fi\fi\fi\fi\fi\fi\fi
+ \immediate\write\fp{<td bgcolor="\hashchar \bgcolor"><b><font color="\hashchar FFFFFF"> #1\percentchar</font><b></td></tr>}%
+ \fi%
+ \ProgressDocOutput{#1} % write something in the document
+ }%
+}%
+
+\ProcessOptions\relax
+%
+% source2e contains some explanations of \@ifstar, \@dblarg, and the syntax of \chapter, ...
+% \dosometingbefore/\dosomethingafter marks the stuff/macro that you can insert.
+% Heiko <oberdiek@uni-freiburg.de>
+%
+% Syntax for \foo (\chapter, \section, ...):
+% \foo*{...}
+% \foo[...]{...}
+% \foo{...}
+% The star is catched by \@ifstar:
+
+%%% define \percentchar and \hashchar by Dan Luecking
+{\catcode`\%=12 \gdef\percentchar{%}}
+{\catcode`\#=12 \gdef\hashchar{#}}
+
+
+\AtBeginDocument{%
+\ifnum\d@cumentstate = 1\relax % only if draft mode
+ %%% setup file write..
+ \newwrite\fp
+ \immediate\openout\fp=\ProgressReportName
+
+ %%% title header of document and document title
+ \immediate\write\fp{<html><head><title>Progress of "\jobname"\space \eightdigitdate</title></head><body>}
+ \immediate\write\fp{<h1>Progress of "\jobname"\space generated \eightdigitdate </h1>}
+
+ %% start real HTML table
+ \immediate\write\fp{<table border="1" width="100\percentchar">}
+\fi
+}
+
+
+% long definition since @mkboth otherwise fucks up when using headers in document
+\newcommand{\insertChapter}[1]{%
+ \pr@gressCurrentDepth=1\relax
+ \begingroup
+ \set@display@protect
+ \let\@mkboth\@gobbletwo
+ \ifnum\thechapter > 0
+ \immediate\write\fp{<tr><td bgcolor="\hashchar cccccc" width=70\percentchar><font size="+3">\thechapter&nbsp;#1</font></td>}
+ \fi
+ \endgroup
+}
+
+
+\newcommand{\insertSection}[1]{%
+ \pr@gressCurrentDepth = 2\relax
+ \ifnum\pr@gressDepth > 1
+ \immediate\write\fp{<tr><td><font size="+2">&nbsp;&nbsp;&nbsp;&nbsp;\thesection&nbsp;#1</font></td>}
+ \fi
+}
+\newcommand{\insertSubsection}[1]{%
+ \pr@gressCurrentDepth = 3\relax
+ \ifnum\pr@gressDepth > 2
+ \immediate\write\fp{<tr><td><font size="+1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\thesubsection&nbsp;#1</font></td>}
+ \fi
+}
+
+\newcommand{\insertSubsubsection}[1]{%
+ \pr@gressCurrentDepth = 4\relax
+ \ifnum\pr@gressDepth > 3
+ \immediate\write\fp{<tr><td><font size="+0">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\thesubsubsection&nbsp;#1</font></td>}
+ \fi
+}
+
+
+%%% CHAPTER
+\ifx\chapter\undefined
+%no definition if in article mode or other modes without chapter
+\else
+ \ifnum\d@cumentstate = 1\relax % only if draft mode
+ \newcommand*{\oooldchapter}{}% check, if \oooldchapter is free
+ \let\oooldchapter\chapter
+
+ \renewcommand*{\chapter}{%
+ \@ifstar{\starchapter}%
+ {\@dblarg\nostarchapter}%
+ }
+
+ \newcommand*{\starchapter}[1]{%
+ \oooldchapter*{#1}%
+ \insertChapter{#1}%
+ }
+
+ \newcommand{\nostarchapter}{}
+ \def\nostarchapter[#1]#2{% #1: toc entry, #2: main entry
+ \oooldchapter[{#1}]{#2}%
+ \insertChapter{#2}%
+ }
+ \fi
+\fi
+
+%%% SECTION
+\ifnum\d@cumentstate = 1 \relax % only if draft mode
+ \newcommand*{\oooldsection}{}% check, if \oooldchapter is free
+ \let\oooldsection\section
+
+ \renewcommand*{\section}{%
+ \@ifstar{\starsection}%
+ {\@dblarg\nostarsection}%
+ }
+
+ \newcommand*{\starsection}[1]{%
+ \oooldsection*{#1}%
+ \insertSection{#1}%
+ }
+
+ \newcommand{\nostarsection}{}
+ \def\nostarsection[#1]#2{% #1: toc entry, #2: main entry
+ \oooldsection[{#1}]{#2}%
+ \insertSection{#2}%
+ }
+\fi
+
+
+%%% SUBSECTION
+\ifnum\d@cumentstate = 1\relax % only if draft mode
+ \newcommand*{\oooldsubsection}{}% check, if \oooldchapter is free
+ \let\oooldsubsection\subsection
+
+ \renewcommand*{\subsection}{%
+ \@ifstar{\starsubsection}%
+ {\@dblarg\nostarsubsection}%
+ }
+
+ \newcommand*{\starsubsection}[1]{%
+ \oooldsubsection*{#1}%
+ \insertSubsection{#1}%
+ }
+
+ \newcommand{\nostarsubsection}{}
+ \def\nostarsubsection[#1]#2{% #1: toc entry, #2: main entry
+ \oooldsubsection[{#1}]{#2}%
+ \insertSubsection{#2}%
+ }
+\fi
+
+
+%%% SUBSUBSECTION
+\ifnum\d@cumentstate = 1\relax % only if draft mode
+ \newcommand*{\oooldsubsubsection}{}% check, if \oooldchapter is free
+ \let\oooldsubsubsection\subsubsection
+
+ \renewcommand*{\subsubsection}{%
+ \@ifstar{\starsubsubsection}%
+ {\@dblarg\nostarsubsubsection}%
+ }
+
+ \newcommand*{\starsubsubsection}[1]{%
+ \oooldsubsubsection*{#1}%
+ \insertSubsection{#1}%
+ }
+
+ \newcommand{\nostarsubsubsection}{}
+ \def\nostarsubsubsection[#1]#2{% #1: toc entry, #2: main entry
+ \oooldsubsubsection[{#1}]{#2}%
+ \insertSubsubsection{#2}%
+ }%
+\fi
+
+
+
+
+%%% helper methods for generating the date for the HTML file output
+\newcommand{\eightdigitdate}{%
+ \ifnum\number \day < 10 0\number\day \else \number\day\fi.%
+ \ifnum\number \month< 10 0\number\month \else \number\month\fi.%
+ \number\year%
+}
+
+%% is used for naming the progress output file. It returns an 8-digit date with no "." in format YYMMDD
+\newcommand{\YYYYMMDDdate}{%
+ \number\year%
+ \ifnum\number \month< 10 0\number\month \else \number\month\fi%
+ \ifnum\number \day < 10 0\number\day \else \number\day\fi%
+}
+
+%% is used for naming the progress output file. It returns an 8-digit date with no "." in format DDMMYY
+\newcommand{\DDMMYYYYdate}{%
+ \ifnum\number \day < 10 0\number\day \else \number\day\fi%
+ \ifnum\number \month< 10 0\number\month \else \number\month\fi%
+ \number\year%
+}
+
+%% is used for naming the progress output file. It returns an 8-digit date with no "." in format MMDDYY
+\newcommand{\MMDDYYYYdate}{%
+ \ifnum\number \month< 10 0\number\month \else \number\month\fi%
+ \ifnum\number \day < 10 0\number\day \else \number\day\fi%
+ \number\year%
+}
+
+\AtEndDocument{%
+ \ifnum\d@cumentstate = 1\relax % only if draft mode
+ %% end overview table
+ \immediate\write\fp{</table>}
+ %% write legend table
+ \immediate\write\fp{<br><br><br><br><blockquote>Legend:<br><table border="1" cellspacing="0" cellpadding="5">}
+ \immediate\write\fp{<tr><td bgcolor="A05050" width=40> &nbsp; <td width=55> < 0 <td> Means the same as above 0, but indicate that the author is stuck and needs consultance with co-author(s) </td></tr>}
+ \immediate\write\fp{<tr><td bgcolor="FF0000"> <td> 0-50<td> Unfinished</td></tr>}
+ \immediate\write\fp{<tr><td bgcolor="C71585">&nbsp; <td>51-70<td> 1st draft - can have "rough edges"<br><br> Focus: main form, contents, major points.</td></tr>}
+ \immediate\write\fp{<tr><td bgcolor="6495ED">&nbsp; <td>71-80<td> 2nd draft <br><br> Focus: section consistency internally within the chapter, errors, misunderstandings, disagreements, missing points, missing references, additions, readability.</td></tr>}
+ \immediate\write\fp{<tr><td bgcolor="FF8C00">&nbsp; <td>81-90<td> 3rd draft<br><br> Focus: chapter consistency externally within the report, agreement with contents, form, last check if points have been left out, readability.</td></tr>}
+ \immediate\write\fp{<tr><td bgcolor="008000">&nbsp; <td>91-99<td> Deliverable</td></tr>}
+ \immediate\write\fp{<tr><td bgcolor="008000">&nbsp; <td>95 <td> Deliverable, all quotes checked</td></tr>}
+ \immediate\write\fp{<tr><td bgcolor="008000">&nbsp; <td>96 <td> Deliverable, BibTeX references checked</td></tr>}
+ \immediate\write\fp{<tr><td bgcolor="008000">&nbsp; <td>97 <td> Deliverable, punctuation checked</td></tr>}
+ \immediate\write\fp{<tr><td bgcolor="008000">&nbsp; <td>98 <td> Deliverable, thesaurus consulted</td></tr>}
+ \immediate\write\fp{<tr><td bgcolor="008000">&nbsp; <td>99 <td> Deliverable, whole document spelling checked</td></tr>}
+ \immediate\write\fp{<tr><td bgcolor="ADFF2F">&nbsp; <td>100 <td> Finished</td></tr>}
+ \immediate\write\fp{</table>}
+ %% end HTML
+ \immediate\write\fp{<table width="100\percentchar"><tr align="right"><td><font size="-2">report generated by progress.sty (c) Kasper B. Graversen 2002-2003</font></td></tr></tabel>}
+ \immediate\write\fp{</blockquote><br></body></html>}
+ \fi
+}
+
+% draws a progress bar with the argument as the percent
+\newcommand{\ProgressDrawBar}[1]{%
+ \setlength{\unitlength}{\ProgressGfxUnitSize}
+ \begin{picture}(\ProgressGfxXSize,\ProgressGfxYSize)(0,0)
+
+ \put(0,0){\framebox(\ProgressGfxXSize,\ProgressGfxYSize)} % draw the progress box
+ % draw the progress bar
+ \@tempcnta=\ProgressGfxXSize
+ \ifnum \@tempcnta < 0 \multiply \@tempcnta by -1 \fi % handle negative %'s by * -1
+ \multiply \@tempcnta by #1 \divide \@tempcnta by 100
+ \multiput(1,0)(1,0){\@tempcnta}{\line(0,1){\ProgressGfxYSize}}
+
+ % draw the 25% marker
+ \@tempcnta=\ProgressGfxXSize \divide \@tempcnta by 4 % find x-length of 25%
+ \@tempcntb=\ProgressGfxYSize \divide \@tempcntb by 4 % find y-height of the 25% and 75% markers
+ \put(\@tempcnta ,0){\line(0,1){\@tempcntb}}%
+
+ % draw the 75% marker
+ \@tempcnta=\ProgressGfxXSize \divide \@tempcnta by 4 \multiply \@tempcnta by 3 % find x-length of 75%
+ \put(\@tempcnta ,0){\line(0,1){\@tempcntb}}%
+
+ % draw the 50% marker
+ \@tempcnta=\ProgressGfxXSize \divide \@tempcnta by 2 % find x-length of 50%
+ \@tempcntb=\ProgressGfxYSize \divide \@tempcntb by 2 % find y-height of the 50% marker
+ \put(\@tempcnta ,0){\line(0,1){\@tempcntb}}%
+
+ \end{picture}%
+}
+
+
+
+\endinput
diff --git a/macros/latex/contrib/progress/progress.tex b/macros/latex/contrib/progress/progress.tex
new file mode 100644
index 0000000000..8d8ca622cd
--- /dev/null
+++ b/macros/latex/contrib/progress/progress.tex
@@ -0,0 +1,199 @@
+\documentclass{article}
+\usepackage[english]{babel}
+\usepackage[T1]{fontenc}
+\usepackage[latin1]{inputenc}
+\usepackage{url}
+\usepackage[draft, subsection]{progress}
+\setlength{\parindent}{0mm}
+\setlength{\parskip}{2mm}
+\reversemarginpar
+\begin{document}
+\title{Progress}
+\author{Kasper B.\ Graversen\\\url{kbg@kadnet.dk} }
+\date{v1.10, 29.06.2003}
+\maketitle
+%\tableofcontents
+
+% shortcuts for the margin notes...
+\newcommand{\margincommanda}[1]{\marginpar{{\scriptsize \texttt{\textbackslash{}#1}}}}
+\newcommand{\margincommandb}[1]{\marginpar{{\scriptsize \texttt{#1}}}}
+
+
+% change layout of progress meters
+\renewcommand{\ProgressDocOutput}[1]{\vskip-0.6cm\ProgressDrawBar{#1}\vskip 0.4cm}
+\ProgressGfxXSize = 1725
+\ProgressGfxYSize = 12
+
+
+
+
+
+
+
+
+\begin{abstract}
+Progress is a package which when compiling \LaTeX{} documents,
+generates a HTML file giving an overview of the documents state (of how finished its parts are).
+\end{abstract}
+
+
+\section{Version history}
+\progress{10}
+\begin{tabular}{llp{8.4cm}}
+29.06-2003 & v1.10 & $\circ$ Enabled graphical output \\
+ & & $\circ$ New options \texttt{textonly}, \texttt{textgfx} \\
+ & & $\circ$ New commands \verb|\ProgressGfxXSize|, \par \verb|\ProgressGfxYSize| \verb|\ProgressDocOutput| \\
+\\
+11.06-2003 & v1.00 & $\circ$ Improved documentation (this document) \\
+ & & $\circ$ Added \verb|\ProgressReportName| command to control report filename.\\
+ & & $\circ$ Small bugfix.\\
+\\
+03.05-2003 & v0.80 & $\circ$ Initial release \\
+\end{tabular}
+
+\bigskip
+If you enjoy using this package, please write me an email stating so. It's always nice to know someone is using your work, and it'll probably encourage me to keep updating the package \verb|;-)|
+
+
+
+\section{Introduction}
+\progress{20}
+When working on larger documents, or in collaboration with other people, it's nice to have an overview of the documents' state. By inserting progress estimates throughout the document, this package is able to generate a HTML file which gives such an overview. Additionally the package enables you to include the estimates in the document, so readers are aware of the state of what they are reading.
+
+
+\section{Usage}
+\progress{30}
+In the top of you document you must determine how detailed you want the overview. It can be compared to the table of contents list, where you can determine its verbosity. You have to choose whether you want to see only chapters, chapters--sections, chapters--subsections or chapters--subsubsections. For this you must use either of these options \margincommandb{chapter}\texttt{chapter}, \margincommandb{section}\texttt{section}, \margincommandb{subsection}\texttt{subsection}, or \margincommandb{subsubsection}\texttt{subsubsection}. If you are using the ``article'' documentclass, the progress adapts to the fact, that chapters do not exist.
+
+Secondly, you must choose whether the document is a draft (progress estimates are included in the document), or whether the document is ready for the final print. For this you must use either of these arguments\margincommandb{draft} \texttt{draft} or \texttt{final}. If \margincommandb{final} you use the \texttt{final} option, no progress estimates are included in the document, and no progress report is generated.
+
+Thirdly, you must choose the output of the ``progress information'' inserted into the document. Should it be graphical, textural or both. Option \margincommandb{textonly} \texttt{textonly} gives a textural representation. Option \margincommandb{textgfx} \texttt{textgfx} gives a a graphical progress bar and textural representation. Finally not specifying anything gives a graphical progress bar.
+
+\bigskip
+An example usage:\\
+\verb| \usepackage[subsubsection, draft]{progress}|
+\vskip 0.3cm
+Which denotes to include all levels for the overview, and a graphical bar shown in the margin denoting the progress.
+
+Throughout \margincommanda{progress} the document use \verb|\progress{|$n$\verb|}| after each \textbackslash\texttt{chapter}, \textbackslash\texttt{section},... where $n$ is a number between $-100$ to $100$. Use the numbers $-100$ to $-1$ to denote severe problems has been encountered (see the table below).
+
+The meaning of this number is described in the generated HTML file and below. You can easily change the meaning by hacking the sty file.
+
+\medskip
+
+\begin{tabular}{rp{10cm}}
+\hline
+$<$ 0 & Means the same as above 0, but indicate that the author is stuck and needs consultance with co-author(s)\\
+$0-50$ & Unfinished\\
+$51-70$& 1st draft - can have ``rough edges''\\
+ & Focus: main form, contents, major points.\\
+$71-80$& 2nd draft.\\
+ & Focus: section consistency internally within the chapter, errors, misunderstandings, disagreements, missing points, missing references, additions, readability.\\
+$81-90$& 3rd draft\\
+ & Focus: chapter consistency externally within the report, agreement with contents, form, last check if points have been left out, readability.\\
+$91-99$& Deliverable.\\
+95 & Deliverable, all quotes checked.\\
+96 & Deliverable, BibTeX references checked.\\
+97 & Deliverable, punctuation checked.\\
+98 & Deliverable, thesaurus consulted.\\
+99 & Deliverable, whole document spelling checked.\\
+100 & Finished\\
+\hline
+\end{tabular}
+
+
+\section{Customizations issues}
+\progress{40}
+We have now shown the general usage. More advanced users probably would like a bit more control, thus below, we present various aspects of customizing the effects of `progress'.
+
+\subsection{Customizing progress output filename}
+\progress{50}
+You can customize the name of the HTML progress report, by changing the definition of \margincommanda{ProgressReportName} \verb|\ProgressReportName|.
+
+\medskip
+The default definition is: ``\verb|\jobname\YYYYMMDDdate.html|''
+
+
+
+which when compiling the file ``foo.tex'' on \today{}, the resulting filename is ``foo\YYYYMMDDdate .html''. You can use any macro you want, but the most obvious ones are:
+
+\verb|\jobname| returns the name of the file being compiled by \LaTeX{}.
+
+\verb|\YYYYMMDDdate|\margincommanda{YYYYMMDDdate} results in the current date of the form ``YearMonthDay''. There are 3 different date formats defined in the package:
+\verb|\YYYYMMDDdate|,
+\verb|\DDMMYYYYdate|\margincommanda{DDMMYYYYdate}
+and \verb|\MMDDYYYYdate|\margincommanda{MMDDYYYYdate}
+
+If you prefer to have only one progress file you can change the output file to not contain any dates, hence it will always overwrite the old progress report file. This is easily done by inserting
+
+\verb| \renewcommand{\ProgressReportName}{\jobname.html}|
+
+
+
+\subsection{Customizing textural output in dvi/pdf file}
+\progress{60}
+You can change what is being written in the report, when a \verb|\progress| is met. This is done by changing the command \margincommanda{ProgressDocOutput} \verb|\ProgressDocOutput|. The command takes as argument a number, denoting the percentage complete.
+If you want to mix text and a graphical progress bar, the command \margincommanda{ProgressDrawBar} \verb|\ProgressDrawBar{55}| draws a bar, where 55 is the argument to the command. An example of a text-only re-definition is
+
+\verb| \renewcommand{\ProgressDocOutput}[1]{\marginpar{progress is #1\%}}|
+
+
+
+
+
+
+
+
+\subsection{Customizing graphic progress bar size}
+\progress{70}
+The graphical progress bars' size can be changed. In this document, I have experimented, by letting the progress bar be as wide as the textlines, which gives another effect than having a small gauge in the margin. The size of the bar can be changed by changing the values of \margincommanda{ProgressGfxXSize } \verb|\ProgressGfxXSize| and \margincommanda{ProgressGfxYSize} \verb|\ProgressGfxYSize|.
+The definitions used for this document is
+
+\begin{verbatim}
+\renewcommand{\ProgressDocOutput}[1]{%
+ \vskip-0.6cm\ProgressDrawBar{#1}\vskip 0.4cm}
+\ProgressGfxXSize = 1725
+\ProgressGfxYSize = 12
+\end{verbatim}
+
+
+
+
+
+\section{Compability issues}
+\progress{80}
+
+The package works by redefining the \verb|\chapter|, \verb|\section|, etc. commands, so when encountered, information will be written in the HTML file. For this reason, this package does not work with \TeX{} documents, or `exotic' extensions, as they do not define such commands. I have tested the package only with the ``book'', ``report'', and ``article'' documentstyles, and they worked fine. Further I've tested progress with the package `hitec', which is an altered ``article'' cls which also worked fine.
+
+
+
+\section{Thanks}
+\progress{90}
+
+Thanks to Robin Fairbairns for helping me sorting things out ;-)
+
+Thanks to Dan Luecking for some definitions
+
+Also thanks to David Bausum for his free 'trept' ``\TeX{}: Reference and Examples'' information material.
+
+And finally, thanks to everyone keeping \LaTeX{} alive (be it package writers or people who introduce this wonderful world to other people).
+
+
+\section{Example document}
+\progress{100}
+For the inexperienced user, here is a example document, which shows you how to use the progress package
+
+\begin{verbatim}
+\documentclass{report}
+\usepackage[draft,subsubsection]{progress}
+\begin{document}
+\chapter{foo}
+\progress{29}
+...
+\section{bar}
+\progress{33}
+...
+\end{document}
+\end{verbatim}
+\end{document}
+
diff --git a/macros/latex/contrib/progress/progress20030701.html b/macros/latex/contrib/progress/progress20030701.html
new file mode 100644
index 0000000000..2e7cd3569b
--- /dev/null
+++ b/macros/latex/contrib/progress/progress20030701.html
@@ -0,0 +1,40 @@
+<html><head><title>Progress of "progress" 01.07.2003</title></head><body>
+<h1>Progress of "progress" generated 01.07.2003</h1>
+<table border="1" width="100%">
+<tr><td><font size="+2">&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;Version history</font></td>
+<td bgcolor="#FF0000"><b><font color="#FFFFFF"> 10%</font><b></td></tr>
+<tr><td><font size="+2">&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;Introduction</font></td>
+<td bgcolor="#FF0000"><b><font color="#FFFFFF"> 20%</font><b></td></tr>
+<tr><td><font size="+2">&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;Usage</font></td>
+<td bgcolor="#FF0000"><b><font color="#FFFFFF"> 30%</font><b></td></tr>
+<tr><td><font size="+2">&nbsp;&nbsp;&nbsp;&nbsp;4&nbsp;Customizations issues</font></td>
+<td bgcolor="#FF0000"><b><font color="#FFFFFF"> 40%</font><b></td></tr>
+<tr><td><font size="+1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4.1&nbsp;Customizing progress output filename</font></td>
+<td bgcolor="#FF0000"><b><font color="#FFFFFF"> 50%</font><b></td></tr>
+<tr><td><font size="+1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4.2&nbsp;Customizing textural output in dvi/pdf file</font></td>
+<td bgcolor="#C71585"><b><font color="#FFFFFF"> 60%</font><b></td></tr>
+<tr><td><font size="+1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4.3&nbsp;Customizing graphic progress bar size</font></td>
+<td bgcolor="#C71585"><b><font color="#FFFFFF"> 70%</font><b></td></tr>
+<tr><td><font size="+2">&nbsp;&nbsp;&nbsp;&nbsp;5&nbsp;Compability issues</font></td>
+<td bgcolor="#6495ED"><b><font color="#FFFFFF"> 80%</font><b></td></tr>
+<tr><td><font size="+2">&nbsp;&nbsp;&nbsp;&nbsp;6&nbsp;Thanks</font></td>
+<td bgcolor="#FF8C00"><b><font color="#FFFFFF"> 90%</font><b></td></tr>
+<tr><td><font size="+2">&nbsp;&nbsp;&nbsp;&nbsp;7&nbsp;Example document</font></td>
+<td bgcolor="#ADFF2F"><b><font color="#FFFFFF"> 100%</font><b></td></tr>
+</table>
+<br><br><br><br><blockquote>Legend:<br><table border="1" cellspacing="0" cellpadding="5">
+<tr><td bgcolor="A05050" width=40> &nbsp; <td width=55> < 0 <td> Means the same as above 0, but indicate that the author is stuck and needs consultance with co-author(s) </td></tr>
+<tr><td bgcolor="FF0000"> <td> 0-50<td> Unfinished</td></tr>
+<tr><td bgcolor="C71585">&nbsp; <td>51-70<td> 1st draft - can have "rough edges"<br><br> Focus: main form, contents, major points.</td></tr>
+<tr><td bgcolor="6495ED">&nbsp; <td>71-80<td> 2nd draft <br><br> Focus: section consistency internally within the chapter, errors, misunderstandings, disagreements, missing points, missing references, additions, readability.</td></tr>
+<tr><td bgcolor="FF8C00">&nbsp; <td>81-90<td> 3rd draft<br><br> Focus: chapter consistency externally within the report, agreement with contents, form, last check if points have been left out, readability.</td></tr>
+<tr><td bgcolor="008000">&nbsp; <td>91-99<td> Deliverable</td></tr>
+<tr><td bgcolor="008000">&nbsp; <td>95 <td> Deliverable, all quotes checked</td></tr>
+<tr><td bgcolor="008000">&nbsp; <td>96 <td> Deliverable, BibTeX references checked</td></tr>
+<tr><td bgcolor="008000">&nbsp; <td>97 <td> Deliverable, punctuation checked</td></tr>
+<tr><td bgcolor="008000">&nbsp; <td>98 <td> Deliverable, thesaurus consulted</td></tr>
+<tr><td bgcolor="008000">&nbsp; <td>99 <td> Deliverable, whole document spelling checked</td></tr>
+<tr><td bgcolor="ADFF2F">&nbsp; <td>100 <td> Finished</td></tr>
+</table>
+<table width="100%"><tr align="right"><td><font size="-2">report generated by progress.sty (c) Kasper B. Graversen 2002-2003</font></td></tr></tabel>
+</blockquote><br></body></html>