summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/latex/svn-prov/README17
-rw-r--r--Master/texmf-dist/doc/latex/svn-prov/svn-prov.pdfbin263118 -> 300897 bytes
-rw-r--r--Master/texmf-dist/source/latex/svn-prov/Makefile141
-rw-r--r--Master/texmf-dist/source/latex/svn-prov/svn-prov.dtx345
-rw-r--r--Master/texmf-dist/source/latex/svn-prov/svn-prov.ins2
-rw-r--r--Master/texmf-dist/tex/latex/svn-prov/svn-prov.sty151
6 files changed, 350 insertions, 306 deletions
diff --git a/Master/texmf-dist/doc/latex/svn-prov/README b/Master/texmf-dist/doc/latex/svn-prov/README
new file mode 100644
index 00000000000..e037a717da8
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/svn-prov/README
@@ -0,0 +1,17 @@
+Package svn-prov
+~~~~~~~~~~~~~~~~
+Copyright (C) 2009 Martin Scharrer <martin@scharrer-online.de>
+See the svn-prov.dtx or svn-prov.ins file for the licence information (LPPL).
+
+
+This package introduces Subversion variants of the standard LaTeX macros
+\ProvidesPackage, \ProvidesClass and \ProvidesFile where the file name and date
+is extracted from Subversion Id keywords. The file name can also be given
+explicitly as an optional argument.
+
+Syntax summary:
+
+\ProvidesPackageSVN [file name]{$Id: ... $}[Package Information (version, description)]
+\ProvidesClassSVN [file name]{$Id: ... $}[Class Information (version, description)]
+\ProvidesFileSVN [file name]{$Id: ... $}[File Information (version, description)]
+
diff --git a/Master/texmf-dist/doc/latex/svn-prov/svn-prov.pdf b/Master/texmf-dist/doc/latex/svn-prov/svn-prov.pdf
index 92b5294c9e8..0d3cd6b7650 100644
--- a/Master/texmf-dist/doc/latex/svn-prov/svn-prov.pdf
+++ b/Master/texmf-dist/doc/latex/svn-prov/svn-prov.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/svn-prov/Makefile b/Master/texmf-dist/source/latex/svn-prov/Makefile
deleted file mode 100644
index 3bc5a902b3a..00000000000
--- a/Master/texmf-dist/source/latex/svn-prov/Makefile
+++ /dev/null
@@ -1,141 +0,0 @@
-# $Id: Makefile 1464 2009-10-21 17:09:12Z martin $
-
-PACKAGE = svn-prov
-PACKAGE_STY = ${PACKAGE}.sty
-PACKAGE_DTX = ${PACKAGE}.dtx
-PACKAGE_SCR =
-PACKAGE_DOC = $(PACKAGE_DTX:.dtx=.pdf)
-PACKAGE_SRC = ${PACKAGE_DTX} ${PACKAGE}.ins Makefile
-PACKFILES = ${PACKAGE_SRC} ${PACKAGE_DOC} README
-
-TEXAUX = *.aux *.log *.glo *.ind *.idx *.out *.svn *.svx *.svt *.toc *.ilg *.gls *.hd *.fdb_latexmk
-INSGENERATED = ${PACKAGE_STY}
-GENERATED = ${INSGENERATED} ${PACKAGE}.pdf ${PACKAGE}.zip ${PACKAGE}.tar.gz ${TESTDIR}/test*.pdf
-ZIPFILE = ${PACKAGE}-${ZIPVERSION}.zip
-TDSZIPFILE = ${PACKAGE}-${ZIPVERSION}.tds.zip
-
-TESTDIR = tests
-TESTS = $(patsubst %.tex,%,$(subst ${TESTDIR}/,,$(wildcard ${TESTDIR}/test?.tex ${TESTDIR}/test??.tex))) # look for all test*.tex file names and remove the '.tex'
-TESTARGS = -output-directory ${TESTDIR}
-
-LATEX_OPTIONS = -interaction=batchmode
-LATEX = pdflatex ${LATEX_OPTIONS}
-
-TEXMFDIR = ${HOME}/texmf
-
-RED = \033[01;31m
-GREEN = \033[01;32m
-WHITE = \033[00m
-
-CP = cp -v
-MV = mv -v
-RMDIR = rm -rf
-MKDIR = mkdir -p
-
-.PHONY: all doc package clean fullclean example testclean ${TESTS} tds ${CHECK_LOG}
-
-###############################################################################
-
-all: package doc example
-new: fullclean all
-
-doc: ${PACKAGE_DOC}
-
-package: ${PACKAGE_STY} ${PACKAGE_SCR}
-
-%.pdf: %.dtx
- ${LATEX} $*.dtx
- -makeindex -s gind.ist -o $*.ind $*.idx
- -makeindex -s gglo.ist -o $*.gls $*.glo
- ${LATEX} $*.dtx
- ${LATEX} $*.dtx
-
-${PACKAGE}.pdf: ${PACKAGE}.sty
-
-${INSGENERATED}: ${PACKAGE_DTX} ${PACKAGE}.ins
- yes | latex ${PACKAGE}.ins
-
-clean:
- rm -f ${TEXAUX} $(addprefix ${TESTDIR}/, ${TEXAUX})
-
-fullclean: clean
- rm -f ${GENERATED} *~ *.backup
- rm -f ${PACKAGE}*.zip
- rm -rf tds/
-
-
-zip: ${PACKFILES}
- @${MAKE} --no-print-directory ${ZIPFILE}
-
-zip: ZIPVERSION=$(shell grep "Package: ${PACKAGE} " ${PACKAGE}.log | \
- sed -e "s/.*Package: ${PACKAGE} ....\/..\/..\s\+\(v\S\+\).*/\1/")
-
-tdszip: ZIPVERSION=$(shell grep "Package: ${PACKAGE} " ${PACKAGE}.log | \
- sed -e "s/.*Package: ${PACKAGE} ....\/..\/..\s\+\(v\S\+\).*/\1/")
-
-${PACKAGE}%.zip: ${PACKFILES}
- @test -n "${IGNORE_CHECKSUM}" || grep -L '\* Checksum passed \*' ${PACKAGE_DTX:.dtx=.log} | wc -l | grep -q '^0$$'
- -pdfopt ${PACKAGE}.pdf opt_${PACKAGE}.pdf && mv opt_${PACKAGE}.pdf ${PACKAGE}.pdf
- ${RM} $@
- zip $@ ${PACKFILES}
- @echo
- @echo "ZIP file $@ created!"
-
-release: fullclean package doc example tests zip
-
-###############################################################################
-
-# Make sure TeX finds the input files in TESTDIR
-tests ${TESTS}: export TEXINPUTS:=${TEXINPUTS}:${TESTDIR}
-tests ${TESTS}: LATEX_OPTIONS=
-
-testclean:
- @${RM} $(foreach ext, aux log out pdf svn svx, tests/test*.${ext})
-
-tests: package testclean
- @echo "Running tests: ${TESTS}:"
- @${MAKE} -e -i --no-print-directory ${TESTS} \
- TESTARGS="-interaction=batchmode -output-directory=${TESTDIR}"\
- TESTPLOPT="-q"\
- > /dev/null
-
-${TESTS}: % : ${TESTDIR}/%.tex package testclean
- @-${LATEX} -interaction=nonstopmode ${TESTARGS} $< 1>/dev/null 2>/dev/null
- @if (${LATEX} ${TESTARGS} $< && (test ! -e ${TESTDIR}/$*.pl || ${TESTDIR}/$*.pl ${TESTPLOPT})); \
- then /bin/echo -e "${GREEN}$@ succeeded${WHITE}" >&2; \
- else /bin/echo -e "${RED}$@ failed!!!!!!${WHITE}" >&2; fi
-
-###############################################################################
-
-tds: .tds
-
-.tds: ${PACKAGE_STY} ${PACKAGE_DOC} ${PACKAGE_SRC}
- @grep -q '\* Checksum passed \*' ${PACKAGE}.log
- ${RMDIR} tds
- ${MKDIR} tds/
- ${MKDIR} tds/tex/ tds/tex/latex/ tds/tex/latex/${PACKAGE}/
- ${MKDIR} tds/doc/ tds/doc/latex/ tds/doc/latex/${PACKAGE}/
- ${MKDIR} tds/source/ tds/source/latex/ tds/source/latex/${PACKAGE}/
- -test -n "${PACKAGE_SCR}" && ${MKDIR} tds/scripts/ tds/scripts/${PACKAGE}/
- ${CP} ${PACKAGE_STY} tds/tex/latex/${PACKAGE}/
- ${CP} ${PACKAGE_DOC} tds/doc/latex/${PACKAGE}/
- -${CP} ${PACKAGE_SRC} tds/source/latex/${PACKAGE}/
- -test -n "${PACKAGE_SCR}" && ${CP} ${PACKAGE_SCR} tds/scripts/${PACKAGE}/
- @touch $@
-
-tdszip: ${TDSZIPFILE}
-
-${TDSZIPFILE}: .tds
- ${RM} ${TDSZIPFILE}
- cd tds && zip -r ../${TDSZIPFILE} .
-
-###############################################################################
-
-install: .tds
- test -d "${TEXMFDIR}" && ${CP} -a tds/* "${TEXMFDIR}/" && texhash ${TEXMFDIR}
-
-uninstall:
- test -d "${TEXMFDIR}" && ${RM} -rv "${TEXMFDIR}/tex/latex/${PACKAGE}" \
- "${TEXMFDIR}/doc/latex/${PACKAGE}" "${TEXMFDIR}/source/latex/${PACKAGE}" \
- "${TEXMFDIR}/scripts/${PACKAGE}" && texhash ${TEXMFDIR}
-
diff --git a/Master/texmf-dist/source/latex/svn-prov/svn-prov.dtx b/Master/texmf-dist/source/latex/svn-prov/svn-prov.dtx
index 9b73cedc852..ed29694d8e7 100644
--- a/Master/texmf-dist/source/latex/svn-prov/svn-prov.dtx
+++ b/Master/texmf-dist/source/latex/svn-prov/svn-prov.dtx
@@ -1,5 +1,5 @@
% \iffalse meta-comment
-% $Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $
+% $Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $
%
% Copyright (C) 2009-2010 by Martin Scharrer <martin@scharrer-online.de>
%
@@ -25,31 +25,34 @@
% \iffalse
%<*driver>
\RequirePackage{svn-prov}
-\makeatletter
%</driver>
%<*driver|package>
-\def\svnprov@version{v2.\rev}
+\def\svnprov@version{v3.\rev}
%</driver|package>
%<*driver>
-\ProvidesFileSVN{$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+\ProvidesFileSVN{$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
[\svnprov@version\space DTX for \filebase.sty]
-\DefineFileInfoSVN[svnprov]
\DefineFileInfoSVN
-\makeatother
-\documentclass{ltxdoc}
+\GetFileInfoSVN*
+% Re-require package to check date
+\RequirePackage{svn-prov}[\filedate]
+
+\documentclass{article}
+\usepackage{ydoc}
\usepackage[hyperfootnotes=false]{hyperref}
+\usepackage{booktabs}
+\usepackage[english]{babel}
+\dateenglish
\makeatletter
%%% Examples %%%
\RequirePackage{fancyvrb}
\RequirePackage{listings}
-\newenvironment{example}
+\renewenvironment{example}
{\begingroup\VerbatimOut[gobble=4]{\jobname.exa}}
{\endVerbatimOut\endgroup\formatexample}
-\newsavebox{\examplecodebox}
-\newsavebox{\exampleresultbox}
\usepackage{ifthen,calc}
\def\examplebeforetext{The following code:}
@@ -74,6 +77,7 @@
\usepackage{xspace}
+\let\pkg\relax
\newcommand*{\pkg}[1]{%
\href{http://tug.ctan.org/pkg/#1}{\texttt{#1}}%
% URL footnote (for print-out) on first appearance:
@@ -103,7 +107,7 @@
%</driver>
% \fi
%
-% \CheckSum{274}
+% \CheckSum{435}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -137,9 +141,8 @@
% \title{The \textsf{svn-prov} package\\\large Use SVN Id keywords for package,
% class and file header}
% \author{Martin Scharrer \\ \url{martin@scharrer-online.de}}
-% \makeatletter
-% \date{Version~\svnprov@version\ - \svnprov@date}
-% \makeatother
+% \GetFileInfoSVN{svnprov}
+% \date{Version~\fileversion\ - \filetoday}
%
% \maketitle
%
@@ -169,7 +172,7 @@
% \texttt{\frenchspacing\${}Id: \meta{filename} \meta{revision} \meta{date}
% \meta{time} \meta{author} \$}\\[\smallskipamount]
% e.g. for the source file of this document:\\*[\smallskipamount]
-% |$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $|
+% |$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $|
% \par\smallskip
% For this to work the Subversion \emph{property} \texttt{svn:keywords} must be
% set to (at least) `|Id|' for the source file(s). e.g.\ using the command
@@ -187,19 +190,9 @@
%
% ^^A\subsection{Main Macros}
% \manualnewpage%%
-% \DescribeMacro{\ProvidesPackageSVN}
-% \DescribeMacro{\ProvidesClassSVN}
-% \DescribeMacro{\ProvidesFileSVN}
-% \hspace*{-\parindent}\hspace{-\marginparsep}
-% {\oarg
-% {file name}\darg{Id: \ldots\ }\oarg
-% {Package Information (version, description)}\\*
-% \hspace*{-\marginparsep}
-% \oarg{file name}\darg{Id: \ldots\ }\oarg
-% {Class Information (version, description)}\\*
-% \hspace*{-\marginparsep}
-% \oarg{file name}\darg{Id: \ldots\ }\oarg
-% {File Information (version, description)}}.
+% \DescribeMacro\ProvidesPackageSVN [<file name>] {\$Id:~\$} [<\small version and/or description>] [<\small description>]
+% \DescribeMacro\ProvidesClassSVN [<file name>] {\$Id:~\$} [<\small version and/or description>] [<\small description>]
+% \DescribeMacro\ProvidesFileSVN [<file name>] {\$Id:~\$} [<\small version and/or description>] [<\small description>]
%
% All of these macros await a valid Subversion Id keyword string as a mandatory
% argument. The file name and date is extracted from this string. For cases when
@@ -209,15 +202,16 @@
% predefined and therefore ignored this is not needed for them when they are
% packed inside a corresponding |.dtx| file, i.e. one with the same base name.
%
-% As with the standard macros mentioned above an optional argument can be given
-% afterwards which contains additional information (date, version, description)
-% of the package, class or file. However, the SVN macros automatically insert
-% the date, so only a version number and a short description should be given. If
-% this argument is not given a default information string is used which is shown
-% below as \cs{revinfo}.
+% As with the standard macros mentioned above additional information can be given optionally.
+% Since v0.3 the SVN macro provide two optional arguments (before only one).
+% If only one optional argument is given it is taken as a description text which may start
+% with an potential version number. This version number must start with `|v|' and not include spaces
+% and is extracted from the description.
+% Alternatively the version number and the description can be provided using two separate optional arguments.
+% If no optional argument is given the default string \cs{revinfo} (see below) is used instead.
%
-% Both optional arguments can include the following macros which are only valid
-% inside them, but not afterwards:
+% All three optional arguments can include the following macros which are only valid
+% inside them, but not afterwards\footnote{They can be set using \cs{GetFileInfoSVN}}:
% \begin{description}
% \item[\cs{rev}] File revision.
% \item[\cs{Rev}] File revision followed by a space.
@@ -232,30 +226,37 @@
%
% ^^A\subsection{Other Macros}
% \par\medskip
-% \DescribeMacro{\GetFileInfoSVN}\hspace*{-\parindent}\hspace{-\marginparsep}|*|
-% \\[-\baselineskip]\hspace*{\parindent}The star version of this macro provides
-% the file information of the last file which called one of the
-% \cs{Provides\ldots SVN} macros. It is meant to be used inside a |.dtx| file
-% directly after the provide macro so that the file information can be typeset
-% inside the documentation.
-%
-% A `normal', non-star version is not yet implemented.
+% \DescribeMacro\GetFileInfoSVN{<name>}
+% \DescribeMacro\GetFileInfoSVN*
+% This macro sets the macros \cs{filebase}, \cs{fileext}, \cs{filename}, \cs{filedate}, \cs{fileversion}, \cs{filerev},
+% \cs{fileinfo} and \cs{filetoday} to the corresponding values of the file given by \meta{name}. The file must have been
+% read/loaded before and use both a \cs{Provides\ldots SVN} macro and \cs{DefineFileInfoSVN}, otherwise the above macros
+% will be set to |\relax|. The \meta{name} can be either the real filename or the optional short name used with
+% \cs{DefineFileInfoSVN}.
+%
+% The star version of this macro provides the file information of the last file which called one of the
+% \cs{Provides\ldots SVN} macros.
+%
+% The macros \cs{fileversion} and \cs{fileinfo} hold the file version and description taken from optional argument of
+% the \cs{Provide...SVN} macro. The version is defined only if this argument starts with `|v|' and is otherwise empty.
+% It includes all text up to the first space.
+% The \cs{filetoday} macro generates a text representation of the \cs{filedate} using the \cs{today} macro. This macro
+% must be first defined by the |\date|\meta{lang} macro from the \pkg{babel} package, otherwise \cs{filetoday} will not
+% be defined.
+% The other macros are described above.
%
-% The provided information macros are \cs{filebase}, \cs{fileext},
-% \cs{filename}, \cs{filedate}, \cs{filerev} and \cs{fileinfo}. The last one
-% contains the file description, e.g.\ the content of the optional argument
-% without date and version. The other macros were already described earlier.
%
% \par\medskip
-% \DescribeMacro{\DefineFileInfoSVN}\hspace*{-\parindent}\hspace{-\marginparsep}\oarg{name}
-% \marginpar{\it New in v1. 2009/05/03}\\
-% Defines a set of macros which provide the information collected by a previous
+% \DescribeMacro\DefineFileInfoSVN[<name>]
+% Defined\marginpar{\it New in v1. 2009/05/03}
+% a set of macros which provide the information collected by a previous
% \cs{Provides\ldots} macro. The macros have the form
% |\|\meta{name}|@|\meta{data} where \meta{name} is by default the filename
% either with the file extension (general files) or without (packages and
% classes). This default can be overwritten by the optional argument.
-% The \meta{data} stands for |version|, |rev| (revision), |date| and |info| (the
-% information part without the version number).
+% The \meta{data} stands for |version|, |rev| (revision), |date| and |info|
+% (the information part without the version number)
+% and, since v3, file name |base| and |ext|(ension).
%
% \noindent
% \textit{Example:} Applied to the |.dtx| file of this very package the
@@ -263,12 +264,16 @@
% \begingroup
% \makeatletter\centering
% \begin{tabular}{ll}
+% \toprule
% Macro & Definition \\
-% \hline
+% \midrule
% \cs{svn-prov.dtx@version} & \@nameuse{svn-prov.dtx@version} \\
% \cs{svn-prov.dtx@rev} & \@nameuse{svn-prov.dtx@rev} \\
% \cs{svn-prov.dtx@date} & \@nameuse{svn-prov.dtx@date} \\
% \cs{svn-prov.dtx@info} & \@nameuse{svn-prov.dtx@info} \\
+% \cs{svn-prov.dtx@base} & \@nameuse{svn-prov.dtx@base} \\
+% \cs{svn-prov.dtx@ext} & \@nameuse{svn-prov.dtx@ext} \\
+% \bottomrule
% \end{tabular}
% \\[\medskipamount]
% The style file however would get macros like \cs{svn-prov@version}.
@@ -304,66 +309,80 @@
% \subsubsection*{Minimal usage}
% \begin{example}
% \ProvidesPackageSVN
-% {$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
% \end{example}
% \begin{example}
% \ProvidesClassSVN
-% {$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
% \end{example}
% \begin{example}
% \ProvidesFileSVN
-% {$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
% \end{example}
%
% \subsubsection*{Normal Usage}
% \begin{example}
% \ProvidesPackageSVN
-% {$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
% [v1.0 Example Description]
% \end{example}
% \begin{example}
% \ProvidesClassSVN
-% {$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
% [v1.0 Example Description]
% \end{example}
% \begin{example}
% \ProvidesFileSVN
-% {$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
% [v1.0 Example Description]
% \end{example}
%
+% \subsubsection*{Normal Usage with only Description}
+% \begin{example}
+% \ProvidesFileSVN
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
+% [Example Description]
+% \end{example}
+%
+% \subsubsection*{Normal Usage with separate Version and Description}
+% \begin{example}
+% \ProvidesFileSVN
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
+% [v1.0][Example Description]
+% \end{example}
+%
% \subsubsection*{Overwriting Name}
% \begin{example}
% \ProvidesPackageSVN[othername]
-% {$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
% [v1.0 Example Description]
% \end{example}
%
% \subsubsection*{Overwriting Name including unneeded Extension}
% \begin{example}
% \ProvidesPackageSVN[othername.sty]
-% {$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
% [v1.0 Example Description]
% \end{example}
%
% \subsubsection*{Overwriting Name using Macros}
% \begin{example}
% \ProvidesFileSVN[\filebase.cfg]
-% {$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
% [v1.0 Example Description]
% \end{example}
%
% \subsubsection*{Using Macros in File Information String}
% \begin{example}
% \ProvidesPackageSVN
-% {$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
% [v1.\Rev Example Description]
% \end{example}
%
% \subsubsection*{Adding Text to Default Information}
% \begin{example}
% \ProvidesPackageSVN
-% {$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
% [v1.\Rev Extra Text \revinfo]
% \end{example}
%
@@ -373,7 +392,7 @@
%
% \begin{example}
% \ProvidesPackageSVN
-% {$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}
+% {$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}
% [v1.\Rev Extra Text \revinfo]
% \GetFileInfoSVN*
% % ...
@@ -395,6 +414,11 @@
% \StopEventually{}
% \manualnewpage
% \section{Implementation}
+%
+% \iffalse
+%<*package>
+% \fi
+%
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
% \end{macrocode}
@@ -404,7 +428,7 @@
% used as filename.
% \begin{macrocode}
\def\ProvidesClassSVN{%
- \svnprov@generic\ProvidesClass{\svnprov@filebase}%
+ \svnprov@generic\ProvidesClass{\svnprov@filebase@}%
}
% \end{macrocode}
% \end{macro}
@@ -414,7 +438,7 @@
% used as filename.
% \begin{macrocode}
\def\ProvidesFileSVN{%
- \svnprov@generic\ProvidesFile{\svnprov@filebase.\svnprov@fileext}%
+ \svnprov@generic\ProvidesFile{\svnprov@filebase@.\svnprov@fileext@}%
}
% \end{macrocode}
% \end{macro}
@@ -424,13 +448,13 @@
% used as filename.
% \begin{macrocode}
\def\ProvidesPackageSVN{%
- \svnprov@generic\ProvidesPackage{\svnprov@filebase}%
+ \svnprov@generic\ProvidesPackage{\svnprov@filebase@}%
}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\svnprov@generic}
-% Stores the arguments (1: original macro, 2: file mask (full filename of only
+% Stores the arguments (1: original macro, 2: file mask (full filename if only
% base is used?)). Then tests if a explicit file name was given as optional
% argument. If not the file name from the SVN Id string is used.
% \begin{macrocode}
@@ -488,9 +512,8 @@
Id: #2 #3 #4-#5-#6 #7 $#8{%
\def\next{%
\begingroup
- \def\@tempa####1>####2 {####2}%
\PackageWarning{svn-prov}{Invalid SVN Id line found! File name might be
- '#2' or '\expandafter\@tempa\meaning\@filef@und'. This occured}{}{}{}%
+ '#2' or '\expandafter\strip@prefix\meaning\@filef@und'. This occured}{}{}{}%
\endgroup
\svnprov@gobbleopt
}%
@@ -498,8 +521,8 @@
\ifx\relax#8\empty
\def\svnprov@svnfilename{#2}%
\svnprov@splitfilename{#2}%
- \def\svnprov@filerev{#3}%
- \def\svnprov@filedate{#4/#5/#6}%
+ \def\svnprov@filerev@{#3}%
+ \def\svnprov@filedate@{#4/#5/#6}%
\def\next{\begingroup\svnprov@catcodes\svnprov@buildstring}%
\fi
\fi
@@ -520,7 +543,7 @@
% \begin{macrocode}
\def\svnprov@splitfilename#1{%
\edef\g@tempa{#1}%
- \let\svnprov@filebase\@gobble
+ \let\svnprov@filebase@\@gobble
\expandafter
\svnprov@splitfilename@\g@tempa.\relax
}
@@ -541,15 +564,15 @@
% \begin{macrocode}
\def\svnprov@splitfilename@#1.#2\relax{%
\if&#2&
- \ifx\svnprov@filebase\@gobble
- \gdef\svnprov@filebase{#1}%
- \gdef\svnprov@fileext{}%
+ \ifx\svnprov@filebase@\@gobble
+ \gdef\svnprov@filebase@{#1}%
+ \gdef\svnprov@fileext@{}%
\else
- \gdef\svnprov@fileext{#1}%
+ \gdef\svnprov@fileext@{#1}%
\fi
\let\next\relax
\else
- \xdef\svnprov@filebase{\svnprov@filebase.#1}%
+ \xdef\svnprov@filebase@{\svnprov@filebase@.#1}%
\def\next{\svnprov@splitfilename@#2\relax}%
\fi
\next
@@ -584,7 +607,7 @@
% prepended later.
% \begin{macrocode}
\def\svnprov@defaultdesc{%
- (SVN Rev:\space\svnprov@filerev)%
+ (SVN Rev:\space\svnprov@filerev@)%
}
% \end{macrocode}
% \end{macro}
@@ -595,14 +618,19 @@
% filename and information.
% \begin{macrocode}
\newcommand*\svnprov@buildstring[1][\svnprov@defaultdesc]{%
+ \@ifnextchar{[}%
+ {\svnprov@buildstring@{#1}}%
+ {\svnprov@buildstring@{#1}[\relax]}%
+}
+\def\svnprov@buildstring@#1[#2]{%
\endgroup
\begingroup
- \let\rev\svnprov@filerev
- \let\filerev\svnprov@filerev
+ \let\rev\svnprov@filerev@
+ \let\filerev\svnprov@filerev@
\def\Rev{\rev\space}%
\let\revinfo\svnprov@defaultdesc
- \let\filebase\svnprov@filebase
- \let\fileext\svnprov@fileext
+ \let\filebase\svnprov@filebase@
+ \let\fileext\svnprov@fileext@
\ifx\fileversion\@undefined
\def\fileversion{v0.0}%
\fi
@@ -612,83 +640,158 @@
\svnprov@splitfilename{\svnprov@filename}%
\fi
\let\filename\svnprov@filename
- \xdef\svnprov@fileinfo{#1}%
+ \ifx\relax#2\empty
+ \xdef\svnprov@fileinfo@{#1}%
+ \svnprov@getversion{#1}%
+ \global\let\svnprov@filedesc@\svnprov@filedesc@
+ \global\let\svnprov@fileinfo@\svnprov@fileinfo@
+ \else
+ \xdef\svnprov@fileversion@{#1}%
+ \xdef\svnprov@filedesc@{#2}%
+ \xdef\svnprov@fileinfo@{#1 #2}%
+ \fi
\endgroup
- \svnprov@ltxprov{\svnprov@filemask}[\svnprov@filedate\space\svnprov@fileinfo]%
+ \svnprov@ltxprov{\svnprov@filemask}%
+ [\svnprov@filedate@
+ \ifx\svnprov@fileinfo@\empty\else
+ \space
+ \svnprov@fileinfo@
+ \fi
+ ]%
}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\GetFileInfoSVN}
-% At the moment this macro \textbf{must} be called with a star `|*|' which
-% indicated that the current file is to be used. Other arguments are not
-% implemented yet.
-%
-% The macro provides the file information of ``the current file'', i.e.\ the
-% last file which called one of the above \cs{Provides\ldots} macros. For this
-% the internal macros are simply copied to user-friendly names.
+% \changes{v3.}{2010/04/01}{Added non-star version.}
+% The macro provides the file information of the given file, or (the star version) the last file which called one of the above \cs{Provides\ldots} macros.
+% For this the internal macros are simply copied to user-friendly names.
%
% This macro is inspired by the macro \cs{GetFileInfo}\marg{file name} from the
% \texttt{doc} package.
% \begin{macrocode}
\def\GetFileInfoSVN#1{%
\ifx*#1\relax
- \let\filebase\svnprov@filebase
- \let\fileext\svnprov@fileext
+ \let\filebase\svnprov@filebase@
+ \let\fileext\svnprov@fileext@
\let\filename\svnprov@filename
- \let\filedate\svnprov@filedate
- \let\filerev\svnprov@filerev
- \expandafter\svnprov@getversion
- \svnprov@fileinfo\relax{} \relax\svnprov@endmarker
- \let\fileversion\svnprov@fileversion
- \let\fileinfo\svnprov@fileinfoonly
+ \let\filedate\svnprov@filedate@
+ \let\filerev\svnprov@filerev@
+ \let\fileversion\svnprov@fileversion@
+ \let\fileinfo\svnprov@filedesc@
+ \expandafter\svnprov@settoday@\svnprov@filedate@\relax
+ \else
+% \end{macrocode}
+% Given argument could be filename or short name.
+% If a short name exists for the argument it was a filename is is defined as such,
+% otherwise the filename is read from the |\|\meta{short name}|@long| macro.
+% \begin{macrocode}
+ \expandafter\let\expandafter\@gtempa\csname#1@short\endcsname%
+ \ifx\@gtempa\relax
+ \def\@gtempa{#1}%
+ \expandafter\let\expandafter\filename\csname#1@long\endcsname
+ \else
+ \edef\filename{#1}%
+ \fi
+ \expandafter\let\expandafter\filebase\csname\@gtempa @base\endcsname
+ \expandafter\let\expandafter\fileext \csname\@gtempa @ext\endcsname
+ \expandafter\let\expandafter\filedate\csname\@gtempa @date\endcsname
+ \expandafter\let\expandafter\filerev \csname\@gtempa @rev\endcsname
+ \expandafter\let\expandafter\fileversion\csname\@gtempa @version\endcsname
+ \expandafter\let\expandafter\fileinfo\csname\@gtempa @info\endcsname
+ \@ifundefined{\@gtempa @date}%
+ {\def\filetoday{?}}%
+ {\expandafter\expandafter\expandafter\svnprov@settoday@\csname\@gtempa @date\endcsname\relax}%
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\svnprov@settoday@}
+% Sets \cs{filetoday} by expanding \cs{today} after setting the year/month/day locally.
+% \begin{macrocode}
+\def\svnprov@settoday@#1/#2/#3\relax{%
+ \ifx\today\@undefined
+ \def\filetoday{?}%
\else
- \PackageError{svn-prov}{Macro \textbackslash GetFileInfoSVN without '*' is
- not implemented yet.}{}{}{}%
+ \begingroup
+ \year#1\relax
+ \month#2\relax
+ \day#3\relax
+ \xdef\filetoday{\today}%
+ \endgroup
\fi
}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\DefineFileInfoSVN}
-% Defines macros in the form |\|\meta{filename}|@|\meta{xxx}, where \meta{xxx}
-% is date, version, rev(ision) and info.
+% Defines macros in the form |\|\meta{filename}|@|\meta{xxx}, where \meta{xxx} is |date|, |version|, |rev|(ision), |info|, (file name)|base| and |ext|(ension).
+% \changes{v3.}{2010/04/01}{Added file name `base' and 'ext'(ension).}
% \begin{macrocode}
\newcommand*\DefineFileInfoSVN[1][\svnprov@filemask]{%
- \expandafter\svnprov@getversion
- \svnprov@fileinfo\relax{} \relax\svnprov@endmarker
\expandafter
- \let\csname#1@date\endcsname\svnprov@filedate
+ \edef\csname\svnprov@filemask @short\endcsname{#1}%
\expandafter
- \let\csname#1@version\endcsname\svnprov@fileversion
+ \edef\csname#1@long\endcsname{\svnprov@filemask}%
\expandafter
- \let\csname#1@rev\endcsname\svnprov@filerev
+ \let\csname#1@base\endcsname\svnprov@filebase@
\expandafter
- \let\csname#1@info\endcsname\svnprov@fileinfoonly
+ \let\csname#1@ext\endcsname\svnprov@fileext@
+ \expandafter
+ \let\csname#1@date\endcsname\svnprov@filedate@
+ \expandafter
+ \let\csname#1@version\endcsname\svnprov@fileversion@
+ \expandafter
+ \let\csname#1@rev\endcsname\svnprov@filerev@
+ \expandafter
+ \let\csname#1@info\endcsname\svnprov@filedesc@
}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\svnprov@getversion}
-% Splits the string at the first space into arguments \#1 (version) and \#2
-% (info). Argument \#3 will be empty if there was no space in the string.
+% Checks if the argument (a file description) starts with `|v|'. If so
+% everything until the first space is taken as version number. Otherwise
+% the whole text is taken as description without version.
+% Special care is taken to avoid a parser error if there is no space included.
+% \changes{v3.}{2010/04/01}{Changed to look for leading `v' not just everything up to the first space.}
% \begin{macrocode}
-\def\svnprov@getversion#1 #2\relax#3\svnprov@endmarker{%
- \if&#3&%
- \def\svnprov@fileversion{??}%
+\def\svnprov@getversion#1{%
+ \edef\@tempa{#1\space}%
+ \expandafter\svnprov@@getversion\@tempa\svnprov@endmarker
+}
+\def\svnprov@@getversion{%
+ \@ifnextchar{v}%
+ {\svnprov@getversion@}%
+ {\svnprov@getversion@@}%
+}
+\def\svnprov@getversion@#1 #2\svnprov@endmarker{%
+ \gdef\svnprov@fileversion@{#1}%
+ \ifx&#2&%
+ \gdef\svnprov@filedesc@{}%
\else
- \def\svnprov@fileversion{#1}%
- \def\svnprov@fileinfoonly{#2}%
+ \xdef\svnprov@filedesc@{\svnprov@zapspace#2\svnprov@endmarker}%
\fi
}
+\def\svnprov@getversion@@#1 \svnprov@endmarker{%
+ \gdef\svnprov@fileversion@{}%
+ \gdef\svnprov@filedesc@{#1}%
+}
+\def\svnprov@zapspace#1 \svnprov@endmarker{#1}
% \end{macrocode}
% \end{macro}
%
-% Finally, call the macro for this package itself.
+% Finally, call the macros for this package itself.
% \begin{macrocode}
-\ProvidesPackageSVN{$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}%
+\ProvidesPackageSVN{$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}%
[\svnprov@version\space Package Date/Version from SVN Keywords]
+\DefineFileInfoSVN[svnprov]
% \end{macrocode}
%
+% \iffalse
+%</package>
+% \fi
+%
% \Finale
diff --git a/Master/texmf-dist/source/latex/svn-prov/svn-prov.ins b/Master/texmf-dist/source/latex/svn-prov/svn-prov.ins
index 1ad59c32ee0..20f56c20890 100644
--- a/Master/texmf-dist/source/latex/svn-prov/svn-prov.ins
+++ b/Master/texmf-dist/source/latex/svn-prov/svn-prov.ins
@@ -1,4 +1,4 @@
-%% $Id: svn-prov.ins 1039 2009-05-02 15:42:31Z martin $
+%% $Id: svn-prov.ins 1853 2010-04-11 10:29:10Z martin $
\input docstrip.tex
\preamble
diff --git a/Master/texmf-dist/tex/latex/svn-prov/svn-prov.sty b/Master/texmf-dist/tex/latex/svn-prov/svn-prov.sty
index 96ad3ff3403..e2ccf9d4c31 100644
--- a/Master/texmf-dist/tex/latex/svn-prov/svn-prov.sty
+++ b/Master/texmf-dist/tex/latex/svn-prov/svn-prov.sty
@@ -25,16 +25,16 @@
%% This work consists of the files svn-prov.dtx, svn-prov.ins
%% and the derived file svn-prov.sty.
%%
-\def\svnprov@version{v2.\rev}
+\def\svnprov@version{v3.\rev}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\def\ProvidesClassSVN{%
- \svnprov@generic\ProvidesClass{\svnprov@filebase}%
+ \svnprov@generic\ProvidesClass{\svnprov@filebase@}%
}
\def\ProvidesFileSVN{%
- \svnprov@generic\ProvidesFile{\svnprov@filebase.\svnprov@fileext}%
+ \svnprov@generic\ProvidesFile{\svnprov@filebase@.\svnprov@fileext@}%
}
\def\ProvidesPackageSVN{%
- \svnprov@generic\ProvidesPackage{\svnprov@filebase}%
+ \svnprov@generic\ProvidesPackage{\svnprov@filebase@}%
}
\def\svnprov@generic#1#2{%
\def\svnprov@ltxprov{#1}%
@@ -63,9 +63,8 @@
Id: #2 #3 #4-#5-#6 #7 $#8{%
\def\next{%
\begingroup
- \def\@tempa####1>####2 {####2}%
\PackageWarning{svn-prov}{Invalid SVN Id line found! File name might be
- '#2' or '\expandafter\@tempa\meaning\@filef@und'. This occured}{}{}{}%
+ '#2' or '\expandafter\strip@prefix\meaning\@filef@und'. This occured}{}{}{}%
\endgroup
\svnprov@gobbleopt
}%
@@ -73,8 +72,8 @@
\ifx\relax#8\empty
\def\svnprov@svnfilename{#2}%
\svnprov@splitfilename{#2}%
- \def\svnprov@filerev{#3}%
- \def\svnprov@filedate{#4/#5/#6}%
+ \def\svnprov@filerev@{#3}%
+ \def\svnprov@filedate@{#4/#5/#6}%
\def\next{\begingroup\svnprov@catcodes\svnprov@buildstring}%
\fi
\fi
@@ -83,21 +82,21 @@
\endgroup
\def\svnprov@splitfilename#1{%
\edef\g@tempa{#1}%
- \let\svnprov@filebase\@gobble
+ \let\svnprov@filebase@\@gobble
\expandafter
\svnprov@splitfilename@\g@tempa.\relax
}
\def\svnprov@splitfilename@#1.#2\relax{%
\if&#2&
- \ifx\svnprov@filebase\@gobble
- \gdef\svnprov@filebase{#1}%
- \gdef\svnprov@fileext{}%
+ \ifx\svnprov@filebase@\@gobble
+ \gdef\svnprov@filebase@{#1}%
+ \gdef\svnprov@fileext@{}%
\else
- \gdef\svnprov@fileext{#1}%
+ \gdef\svnprov@fileext@{#1}%
\fi
\let\next\relax
\else
- \xdef\svnprov@filebase{\svnprov@filebase.#1}%
+ \xdef\svnprov@filebase@{\svnprov@filebase@.#1}%
\def\next{\svnprov@splitfilename@#2\relax}%
\fi
\next
@@ -106,17 +105,22 @@
\def\svnprov@endmarker{\@gobble{svn-prov endmarker}}
\newcommand*\svnprov@gobbleopt[1][]{}
\def\svnprov@defaultdesc{%
- (SVN Rev:\space\svnprov@filerev)%
+ (SVN Rev:\space\svnprov@filerev@)%
}
\newcommand*\svnprov@buildstring[1][\svnprov@defaultdesc]{%
+ \@ifnextchar{[}%
+ {\svnprov@buildstring@{#1}}%
+ {\svnprov@buildstring@{#1}[\relax]}%
+}
+\def\svnprov@buildstring@#1[#2]{%
\endgroup
\begingroup
- \let\rev\svnprov@filerev
- \let\filerev\svnprov@filerev
+ \let\rev\svnprov@filerev@
+ \let\filerev\svnprov@filerev@
\def\Rev{\rev\space}%
\let\revinfo\svnprov@defaultdesc
- \let\filebase\svnprov@filebase
- \let\fileext\svnprov@fileext
+ \let\filebase\svnprov@filebase@
+ \let\fileext\svnprov@fileext@
\ifx\fileversion\@undefined
\def\fileversion{v0.0}%
\fi
@@ -126,48 +130,109 @@
\svnprov@splitfilename{\svnprov@filename}%
\fi
\let\filename\svnprov@filename
- \xdef\svnprov@fileinfo{#1}%
+ \ifx\relax#2\empty
+ \xdef\svnprov@fileinfo@{#1}%
+ \svnprov@getversion{#1}%
+ \global\let\svnprov@filedesc@\svnprov@filedesc@
+ \global\let\svnprov@fileinfo@\svnprov@fileinfo@
+ \else
+ \xdef\svnprov@fileversion@{#1}%
+ \xdef\svnprov@filedesc@{#2}%
+ \xdef\svnprov@fileinfo@{#1 #2}%
+ \fi
\endgroup
- \svnprov@ltxprov{\svnprov@filemask}[\svnprov@filedate\space\svnprov@fileinfo]%
+ \svnprov@ltxprov{\svnprov@filemask}%
+ [\svnprov@filedate@
+ \ifx\svnprov@fileinfo@\empty\else
+ \space
+ \svnprov@fileinfo@
+ \fi
+ ]%
}
\def\GetFileInfoSVN#1{%
\ifx*#1\relax
- \let\filebase\svnprov@filebase
- \let\fileext\svnprov@fileext
+ \let\filebase\svnprov@filebase@
+ \let\fileext\svnprov@fileext@
\let\filename\svnprov@filename
- \let\filedate\svnprov@filedate
- \let\filerev\svnprov@filerev
- \expandafter\svnprov@getversion
- \svnprov@fileinfo\relax{} \relax\svnprov@endmarker
- \let\fileversion\svnprov@fileversion
- \let\fileinfo\svnprov@fileinfoonly
+ \let\filedate\svnprov@filedate@
+ \let\filerev\svnprov@filerev@
+ \let\fileversion\svnprov@fileversion@
+ \let\fileinfo\svnprov@filedesc@
+ \expandafter\svnprov@settoday@\svnprov@filedate@\relax
+ \else
+ \expandafter\let\expandafter\@gtempa\csname#1@short\endcsname%
+ \ifx\@gtempa\relax
+ \def\@gtempa{#1}%
+ \expandafter\let\expandafter\filename\csname#1@long\endcsname
+ \else
+ \edef\filename{#1}%
+ \fi
+ \expandafter\let\expandafter\filebase\csname\@gtempa @base\endcsname
+ \expandafter\let\expandafter\fileext \csname\@gtempa @ext\endcsname
+ \expandafter\let\expandafter\filedate\csname\@gtempa @date\endcsname
+ \expandafter\let\expandafter\filerev \csname\@gtempa @rev\endcsname
+ \expandafter\let\expandafter\fileversion\csname\@gtempa @version\endcsname
+ \expandafter\let\expandafter\fileinfo\csname\@gtempa @info\endcsname
+ \@ifundefined{\@gtempa @date}%
+ {\def\filetoday{?}}%
+ {\expandafter\expandafter\expandafter\svnprov@settoday@\csname\@gtempa @date\endcsname\relax}%
+ \fi
+}
+\def\svnprov@settoday@#1/#2/#3\relax{%
+ \ifx\today\@undefined
+ \def\filetoday{?}%
\else
- \PackageError{svn-prov}{Macro \textbackslash GetFileInfoSVN without '*' is
- not implemented yet.}{}{}{}%
+ \begingroup
+ \year#1\relax
+ \month#2\relax
+ \day#3\relax
+ \xdef\filetoday{\today}%
+ \endgroup
\fi
}
\newcommand*\DefineFileInfoSVN[1][\svnprov@filemask]{%
- \expandafter\svnprov@getversion
- \svnprov@fileinfo\relax{} \relax\svnprov@endmarker
\expandafter
- \let\csname#1@date\endcsname\svnprov@filedate
+ \edef\csname\svnprov@filemask @short\endcsname{#1}%
+ \expandafter
+ \edef\csname#1@long\endcsname{\svnprov@filemask}%
+ \expandafter
+ \let\csname#1@base\endcsname\svnprov@filebase@
+ \expandafter
+ \let\csname#1@ext\endcsname\svnprov@fileext@
\expandafter
- \let\csname#1@version\endcsname\svnprov@fileversion
+ \let\csname#1@date\endcsname\svnprov@filedate@
\expandafter
- \let\csname#1@rev\endcsname\svnprov@filerev
+ \let\csname#1@version\endcsname\svnprov@fileversion@
\expandafter
- \let\csname#1@info\endcsname\svnprov@fileinfoonly
+ \let\csname#1@rev\endcsname\svnprov@filerev@
+ \expandafter
+ \let\csname#1@info\endcsname\svnprov@filedesc@
+}
+\def\svnprov@getversion#1{%
+ \edef\@tempa{#1\space}%
+ \expandafter\svnprov@@getversion\@tempa\svnprov@endmarker
}
-\def\svnprov@getversion#1 #2\relax#3\svnprov@endmarker{%
- \if&#3&%
- \def\svnprov@fileversion{??}%
+\def\svnprov@@getversion{%
+ \@ifnextchar{v}%
+ {\svnprov@getversion@}%
+ {\svnprov@getversion@@}%
+}
+\def\svnprov@getversion@#1 #2\svnprov@endmarker{%
+ \gdef\svnprov@fileversion@{#1}%
+ \ifx&#2&%
+ \gdef\svnprov@filedesc@{}%
\else
- \def\svnprov@fileversion{#1}%
- \def\svnprov@fileinfoonly{#2}%
+ \xdef\svnprov@filedesc@{\svnprov@zapspace#2\svnprov@endmarker}%
\fi
}
-\ProvidesPackageSVN{$Id: svn-prov.dtx 1747 2010-03-25 20:25:48Z martin $}%
+\def\svnprov@getversion@@#1 \svnprov@endmarker{%
+ \gdef\svnprov@fileversion@{}%
+ \gdef\svnprov@filedesc@{#1}%
+}
+\def\svnprov@zapspace#1 \svnprov@endmarker{#1}
+\ProvidesPackageSVN{$Id: svn-prov.dtx 1853 2010-04-11 10:29:10Z martin $}%
[\svnprov@version\space Package Date/Version from SVN Keywords]
+\DefineFileInfoSVN[svnprov]
\endinput
%%