diff options
-rw-r--r-- | Master/texmf-dist/doc/latex/svn-multi/example.pdf | bin | 42960 -> 41492 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/svn-multi/example_chap1.tex | 15 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/svn-multi/example_main.tex | 58 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/svn-multi/svn-multi.pdf | bin | 1232969 -> 1244990 bytes | |||
-rw-r--r-- | Master/texmf-dist/source/latex/svn-multi/Makefile | 4 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/svn-multi/svn-multi.dtx | 56 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/svn-multi/svn-multi.sty | 45 |
7 files changed, 87 insertions, 91 deletions
diff --git a/Master/texmf-dist/doc/latex/svn-multi/example.pdf b/Master/texmf-dist/doc/latex/svn-multi/example.pdf Binary files differindex e96fecb03c0..6fe01903295 100644 --- a/Master/texmf-dist/doc/latex/svn-multi/example.pdf +++ b/Master/texmf-dist/doc/latex/svn-multi/example.pdf diff --git a/Master/texmf-dist/doc/latex/svn-multi/example_chap1.tex b/Master/texmf-dist/doc/latex/svn-multi/example_chap1.tex index dd63289e864..24ac0bc313b 100644 --- a/Master/texmf-dist/doc/latex/svn-multi/example_chap1.tex +++ b/Master/texmf-dist/doc/latex/svn-multi/example_chap1.tex @@ -1,7 +1,6 @@ % Version control information: -\svnid{$Id: example_chap1.tex 211 2009-02-27 13:58:39Z martin $} \svnidlong -{$HeadURL: svn+ssh://scharrer-online.de/home/martin/svn/src/trunk/latex/svn-multi-2/example_chap1.tex $} +{$HeadURL: svn://server/dir/example_chap1.tex $} {$LastChangedDate: 2009-02-27 13:58:39 +0000 (Fri, 27 Feb 2009) $} {$LastChangedRevision: 211 $} {$LastChangedBy: martin $} @@ -13,14 +12,14 @@ % \url is needed because there is an underscore in the name % The package 'underscore' seems not to work properly, so the 'hyperref' % package is used which is not the best solution. Avoid underscore in LaTeX filenames. -Filename: \svnnolinkurl{\svnkw{Filename}}\\ -URL: \url{\svnkw{HeadURL}}\\ -% Something like \href{\svnkw{HeadURL}}{Download} works also! +Filename: \svnnolinkurl{\svnfilefname}\\ +URL: \svnnolinkurl{\svnfileurl}\\ +% Something like \href{\svnfileurl}{Download} works also! \textbf{Last change}\\ Revision: \svnfilerev\\ Date: \svnfiledate\\ Year: \svnfileyear\\ -Time: \svnfilehour:\svnfileminute:\svnfilesecond\ \svnfiletimezone00\\ +Time: \svnfilehour:\svnfileminute:\svnfilesecond\ \svnfiletimezone\\ Timezone: \svnfiletimezonehour : \svnfiletimezoneminute\\ Author: \svnfileauthor\\ @@ -31,12 +30,12 @@ URL: \url{\svnmainurl}\\ Revision: \svnrev\\ Date: \svndate\\ Year: \svnyear\\ -Time: \svnhour:\svnminute:\svnsecond\ \svntimezone00\\ +Time: \svnhour:\svnminute:\svnsecond\ \svntimezone\\ Timezone: \svntimezonehour : \svntimezoneminute\\ Author: \svnauthor\\ % [...] -\section{Tests} +\section{Full Author Names} \svnRegisterRevision{14}{Test} Registered author name: \svnFullAuthor{\svnfileauthor}\\ diff --git a/Master/texmf-dist/doc/latex/svn-multi/example_main.tex b/Master/texmf-dist/doc/latex/svn-multi/example_main.tex index cb23a97e527..ef4ebce0f33 100644 --- a/Master/texmf-dist/doc/latex/svn-multi/example_main.tex +++ b/Master/texmf-dist/doc/latex/svn-multi/example_main.tex @@ -1,39 +1,35 @@ \documentclass[12pt]{report} -\usepackage[all,external,groups]{svn-multi}[2009/03/03] + +% Traditional way to include keywords: +\usepackage{svn-multi}[2009/03/03] % Version control information: \svnidlong -{$HeadURL: svn+ssh://scharrer-online.de/home/martin/svn/src/trunk/latex/svn-multi-2/example_main.tex $} +{$HeadURL: svn://server/dir/example_main.tex $} {$LastChangedDate: 2008-12-03 13:29:19 +0000 (Wed, 03 Dec 2008) $} {$LastChangedRevision: 146 $} {$LastChangedBy: martin $} -\svnid{$Id: example_main.tex 146 2008-12-03 13:29:19Z martin $} +% The extra Id to access the file name is not needed anymore because it is +% extracted from the URL: +%\svnid{$Id: example_main.tex 146 2008-12-03 13:29:19Z martin $} +% % Don't forget to set the svn property 'svn:keywords' to % 'HeadURL LastChangedDate LastChangedRevision LastChangedBy' or % 'Id' or both depending if you use \svnidlong and/or \svnid - -% Include keywords from the following external files and put them in the -% 'external' group. -% Note: this only works when the 'svn-multi.pl' is run on this file after it has -% been compiled once AND the files below are part of a Subversion working -% directory. The latter is not the case if this file is from the CTAN server. -\svngroup{external} -\svnexternalpath{{images/}} -\svnexternal{{Makefile}{svn-multi.dtx}{svn-multi.ins}} -\svngroup{} -% +% Alternative you can use the auto-keyword feature to extract the keywords from +% the Subversion working directory: +%\usepackage[autokw=all]{svn-multi}[2009/03/28] \usepackage{hyperref} -\usepackage{url} \usepackage{fancyhdr} \renewcommand{\headrulewidth}{0.4pt} \renewcommand{\footrulewidth}{0.4pt} \setlength{\headheight}{14.5pt} % This will display the last changed revision of the current chapter. -% Change \svnkw{LastChangedRevision} to \svnrev if you like to have the +% Change \svnfilerev to \svnrev if you like to have the % document revision. -\newcommand{\svnfooter}{Last Changed Rev: \svnkw{LastChangedRevision}} +\newcommand{\svnfooter}{Last Changed Rev: \svnfilerev} \pdfinfo{% /CreationDate (D:\svnpdfdate) @@ -44,46 +40,32 @@ \svnRegisterAuthor{martin}{Martin S.} \svnRegisterRevision{15}{Version~1} -\usepackage{graphics} -\graphicspath{{images/}} -\usepackage{pgf} -\begingroup -\pgfdeclareimage[width=4cm]{test}{images/logo} - \listfiles \begin{document} - \begin{titlepage} \vspace{8ex} {\huge Title\par} \vspace{2ex} - {\large \noindent This is an example document for the \texttt{svn-multi} (aka - \texttt{svnkw}) package. Please also look at the LaTeX source code of this - document.} + {\large \noindent This is an small example document for the \texttt{svn-multi} + (aka \texttt{svnkw}) package. Please also look at the LaTeX source code of this + document. An advanced example which includes keyword groups is shown in + \url{group\_example.pdf}} \vfill \flushleft\sffamily Version control information:\\ - Head URL: \url{\svnkw{HeadURL}}\\ - Head URL: \svnnolinkurl{\svnkw{HeadURL}}\\ + Head URL: \svnnolinkurl{\svnmainurl}\\ + %or with hyperlink: Head URL: \url{\svnurl}\\ + Last changed file: \texttt{\svnfname}\\ Last changed date: \svndate\\ Last changes revision: \svnrev\\ Version: \svnFullRevision*{\svnrev}\\ Last changed by: \svnFullAuthor*{\svnauthor}\\ \end{titlepage} -\tableofcontents - % Include chapters \include{example_chap1} %\include{example_chap2} %\include{example_chap3} - -%\input{test} -%\pgfuseimage{test} -\makeatletter - -\makeatother - \end{document} diff --git a/Master/texmf-dist/doc/latex/svn-multi/svn-multi.pdf b/Master/texmf-dist/doc/latex/svn-multi/svn-multi.pdf Binary files differindex 454fee78ef6..39cd32e9996 100644 --- a/Master/texmf-dist/doc/latex/svn-multi/svn-multi.pdf +++ b/Master/texmf-dist/doc/latex/svn-multi/svn-multi.pdf diff --git a/Master/texmf-dist/source/latex/svn-multi/Makefile b/Master/texmf-dist/source/latex/svn-multi/Makefile index b6b663f2aa2..719834dda14 100644 --- a/Master/texmf-dist/source/latex/svn-multi/Makefile +++ b/Master/texmf-dist/source/latex/svn-multi/Makefile @@ -1,7 +1,7 @@ # $Id: Makefile 628 2007-07-10 20:32:06Z martin $ PACKAGE=svn-multi -PACKFILES = ${PACKAGE}.dtx ${PACKAGE}.ins ${PACKAGE}.pdf svn-multi-pl.dtx svn-multi.pl example_main.tex \ +PACKFILES = ${PACKAGE}.dtx ${PACKAGE}.ins ${PACKAGE}.pdf svn-multi-pl.dtx example_main.tex \ example_chap1.tex example.pdf Makefile README group_example.tex TEXAUX = *.aux *.log *.glo *.ind *.idx *.out *.svn *.svx *.svt *.toc *.ilg *.gls *.hd TESTDIR = tests @@ -41,7 +41,7 @@ package: ${PACKAGE}.sty ${PACKAGE}.pl %.eps: %.dia dia -t eps -e $@ $< -${PACKAGE}.pdf: +${PACKAGE}.pdf: ${PACKAGE}.sty ${INSGENERATED}: *.dtx ${PACKAGE}.ins yes | latex ${PACKAGE}.ins diff --git a/Master/texmf-dist/source/latex/svn-multi/svn-multi.dtx b/Master/texmf-dist/source/latex/svn-multi/svn-multi.dtx index c5e3f0af0c2..bfbd61432aa 100644 --- a/Master/texmf-dist/source/latex/svn-multi/svn-multi.dtx +++ b/Master/texmf-dist/source/latex/svn-multi/svn-multi.dtx @@ -24,13 +24,13 @@ % \fi % \iffalse %<*package|driver> -% $Id: svn-multi.dtx 691 2009-03-27 21:37:56Z martin $ +% $Id: svn-multi.dtx 845 2009-04-21 12:03:08Z martin $ % -\def\svnmulti@version {v2.1} +\def\svnmulti@version {v2.1a} \def\svnmulti@rev $#1: #2 ${\def\svnmulti@rev{#2}} \def\svnmulti@date $#1: #2-#3-#4 #5 ${\def\svnmulti@date{#2/#3/#4}} -\svnmulti@rev $Rev: 691 $\relax -\svnmulti@date $Date: 2009-03-27 21:37:56 +0000 (Fri, 27 Mar 2009) $\relax +\svnmulti@rev $Rev: 845 $\relax +\svnmulti@date $Date: 2009-04-21 13:03:08 +0100 (Tue, 21 Apr 2009) $\relax %</package|driver> %<*driver> @@ -41,7 +41,7 @@ \def\svnmulti@today{{\year#2\month#3\day#4\today}}% \def\svnmulti@date{#2/#3/#4}% } -\svnmulti@date $Date: 2009-03-27 21:37:56 +0000 (Fri, 27 Mar 2009) $ +\svnmulti@date $Date: 2009-04-21 13:03:08 +0100 (Tue, 21 Apr 2009) $ \documentclass{ltxdoc} @@ -287,7 +287,7 @@ %<*package> % \fi % -% \CheckSum{2638} +% \CheckSum{2652} % % {\makeatother % \CharacterTable @@ -330,6 +330,8 @@ % support, auto-include of images, files as subgroups and table of revisions.} % \changes{v2.1}{2009/03/27}{Added automatic extraction of keywords from % Subversion 'entries' file: 'autokw' option} +% \changes{v2.1a}{2009/04/21}{Bugfix for macros which external if switches which +% might not be defined by all classes} % % ^^A \GetFileInfo{svn-multi.dtx} % @@ -2741,8 +2743,8 @@ Try a different version, e.g. v2.1.1 from 2008/02/27}{}% \def\svn@removedotslash#1{% \def\svn@removedotslash@##1##2##3\relax{% \svn@ifequal{./}{##1##2}% - {\edef#1{##3}\def\next{\svn@removedotslash@##3\empty\empty\empty\relax}}% - {\edef#1{##1##2##3}\let\next\relax}% + {\def\next{\svn@removedotslash@##3\empty\empty\empty\relax}}% + {\xdef#1{##1##2##3}\let\next\relax}% \next }% \expandafter\svn@removedotslash@#1\empty\empty\empty\relax @@ -2776,9 +2778,10 @@ Try a different version, e.g. v2.1.1 from 2008/02/27}{}% \let\svnmulti@fink@prepare\fink@prepare \renewcommand*{\fink@prepare}[1]{% \svnmulti@fink@prepare{#1}% + \svn@pushfilestack \if@svnmulti@groups \svn@ifequal{\svn@filepath}{\jobname.\svn@mainext}% - {\global\let\svn@pg\svn@g}% + {\xdef\svn@pg{\svn@g}}% {\xdef\svn@pg{\svn@filedir\svn@filebase}}% \fi \xdef\svn@filebase{\fink@nextbase}% @@ -2802,6 +2805,7 @@ Try a different version, e.g. v2.1.1 from 2008/02/27}{}% \def\fink@restore#1{% \svnmulti@endinputfilehook \svnmulti@fink@restore{#1}% + \svn@popfilestack \xdef\svn@filebase{\finkbase}% \xdef\svn@fileext{\finkext}% \xdef\svn@filedir{\finkdir}% @@ -2900,13 +2904,6 @@ Try a different version, e.g. v2.1.1 from 2008/02/27}{}% \fi } -\svnmulti@atbegininputfile{% - \svn@pushfilestack -} - -\svnmulti@atendinputfile{% - \svn@popfilestack -}% % % \end{macrocode} @@ -3379,6 +3376,9 @@ lof,log,lot,out,svn,svt,svx,toc} \AtBeginDocument{% \if@svnmulti@subgroups \ifsvnsubgroups + \@ifundefined{@svng@\svn@g @files@\jobname}% + {% + \@namedef{@svng@\svn@g @files@\jobname}{1}% \@ifundefined{@svng@\svn@g @files}% {% \expandafter @@ -3389,6 +3389,7 @@ lof,log,lot,out,svn,svt,svx,toc} \xdef\csname @svng@\svn@g @files\endcsname {\jobname,\csname @svng@\svn@g @files\endcsname}% }% + }{}% \svnsubgroup \fi \fi @@ -3414,10 +3415,10 @@ lof,log,lot,out,svn,svt,svx,toc} \if@svnmulti@groups \def\svnexternalgroup#1{% \svn@ifequal{#1}{*}% + {\def\svn@externalgroup{\svn@pg}}% {\def\svn@externalgroup{#1}}% - {\def\svn@externalgroup{\svn@g}}% } -\def\svn@externalgroup{\svn@g} +\def\svn@externalgroup{\svn@pg} \else \def\svn@externalgroup{} \fi @@ -3434,7 +3435,7 @@ lof,log,lot,out,svn,svt,svx,toc} \newcommand*\svnexternal[2][]{% \svn@pushfilestack \svn@ifequal{#1}{*}% - {\edef\svn@eg{\svn@g}}% + {\edef\svn@eg{\svn@pg}}% {\svn@ifempty{#1}% {\edef\svn@eg{\svn@externalgroup}}% {\edef\svn@eg{#1}}% @@ -3463,7 +3464,7 @@ lof,log,lot,out,svn,svt,svx,toc} \svn@checkwrite \begingroup \svn@ifequal{#1}{*}% - {\def\svn@temp{\svn@g}}% + {\def\svn@temp{\svn@pg}}% {\svn@ifempty{#1}% {\def\svn@temp{\svn@externalgroup}}% {\def\svn@temp{#1}}% @@ -3593,7 +3594,7 @@ lof,log,lot,out,svn,svt,svx,toc} % \begin{macrocode} \def\svngraphicsgroup#1{% \svn@ifequal{#1}{*}% - {\def\svn@graphicsgroup{\svn@g}}% + {\def\svn@graphicsgroup{\svn@pg}}% {\def\svn@graphicsgroup{#1}}% } \def\svn@graphicsgroup{\svn@externalgroup} @@ -3716,6 +3717,9 @@ patch generated macros '\string\pgf@image@<name>!' from the 'pgf' package!}% % \begin{macro}{\tableofrevisions} % The |\tableofcontents| macro from standard \LaTeX\ is adapted for this macro. % Classes which provide chapters will get a different table then one which not. +% +% The external (\ie non-svn-multi) if-switches are masked using |\ifx| and +% |\csname| to avoid \TeX{} if-parsing errors when they are not defined. % \begin{macrocode} \AtBeginDocument{% \ifx\chapter\@undefined @@ -3731,7 +3735,9 @@ patch generated macros '\string\pgf@image@<name>!' from the 'pgf' package!}% %% Adapted from the \tableofcontents macro, LaTeX `book' class [2005/09/16] \newcommand\tableofrevisions{% - \if@twocolumn + \expandafter\ifx + \csname if@twocolumn\expandafter\endcsname + \csname iftrue\endcsname \@restonecoltrue\onecolumn \else \@restonecolfalse @@ -3739,7 +3745,11 @@ patch generated macros '\string\pgf@image@<name>!' from the 'pgf' package!}% \chapter*{\svnrevisionsname \@mkboth{\MakeUppercase\svnrevisionsname}{\MakeUppercase\svnrevisionsname}}% \svn@input{\jobname .\svn@svt}% - \if@restonecol\twocolumn\fi + \expandafter\ifx + \csname if@restonecol\expandafter\endcsname + \csname iftrue\endcsname + \twocolumn + \fi } \fi diff --git a/Master/texmf-dist/tex/latex/svn-multi/svn-multi.sty b/Master/texmf-dist/tex/latex/svn-multi/svn-multi.sty index 22d1d92e512..ea4351cd212 100644 --- a/Master/texmf-dist/tex/latex/svn-multi/svn-multi.sty +++ b/Master/texmf-dist/tex/latex/svn-multi/svn-multi.sty @@ -26,11 +26,11 @@ %% and the derived files svn-multi.sty, svnkw.sty and svn-multi.pl. %% \makeatletter -\def\svnmulti@version {v2.1} +\def\svnmulti@version {v2.1a} \def\svnmulti@rev $#1: #2 ${\def\svnmulti@rev{#2}} \def\svnmulti@date $#1: #2-#3-#4 #5 ${\def\svnmulti@date{#2/#3/#4}} -\svnmulti@rev $Rev: 691 $\relax -\svnmulti@date $Date: 2009-03-27 21:37:56 +0000 (Fri, 27 Mar 2009) $\relax +\svnmulti@rev $Rev: 845 $\relax +\svnmulti@date $Date: 2009-04-21 13:03:08 +0100 (Tue, 21 Apr 2009) $\relax \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesPackage{svn-multi} @@ -840,8 +840,8 @@ Try a different version, e.g. v2.1.1 from 2008/02/27}{}% \def\svn@removedotslash#1{% \def\svn@removedotslash@##1##2##3\relax{% \svn@ifequal{./}{##1##2}% - {\edef#1{##3}\def\next{\svn@removedotslash@##3\empty\empty\empty\relax}}% - {\edef#1{##1##2##3}\let\next\relax}% + {\def\next{\svn@removedotslash@##3\empty\empty\empty\relax}}% + {\xdef#1{##1##2##3}\let\next\relax}% \next }% \expandafter\svn@removedotslash@#1\empty\empty\empty\relax @@ -862,9 +862,10 @@ Try a different version, e.g. v2.1.1 from 2008/02/27}{}% \let\svnmulti@fink@prepare\fink@prepare \renewcommand*{\fink@prepare}[1]{% \svnmulti@fink@prepare{#1}% + \svn@pushfilestack \if@svnmulti@groups \svn@ifequal{\svn@filepath}{\jobname.\svn@mainext}% - {\global\let\svn@pg\svn@g}% + {\xdef\svn@pg{\svn@g}}% {\xdef\svn@pg{\svn@filedir\svn@filebase}}% \fi \xdef\svn@filebase{\fink@nextbase}% @@ -881,6 +882,7 @@ Try a different version, e.g. v2.1.1 from 2008/02/27}{}% \def\fink@restore#1{% \svnmulti@endinputfilehook \svnmulti@fink@restore{#1}% + \svn@popfilestack \xdef\svn@filebase{\finkbase}% \xdef\svn@fileext{\finkext}% \xdef\svn@filedir{\finkdir}% @@ -962,13 +964,6 @@ Try a different version, e.g. v2.1.1 from 2008/02/27}{}% \fi } -\svnmulti@atbegininputfile{% - \svn@pushfilestack -} - -\svnmulti@atendinputfile{% - \svn@popfilestack -}% \fi @@ -1241,6 +1236,9 @@ lof,log,lot,out,svn,svt,svx,toc} \AtBeginDocument{% \if@svnmulti@subgroups \ifsvnsubgroups + \@ifundefined{@svng@\svn@g @files@\jobname}% + {% + \@namedef{@svng@\svn@g @files@\jobname}{1}% \@ifundefined{@svng@\svn@g @files}% {% \expandafter @@ -1251,6 +1249,7 @@ lof,log,lot,out,svn,svt,svx,toc} \xdef\csname @svng@\svn@g @files\endcsname {\jobname,\csname @svng@\svn@g @files\endcsname}% }% + }{}% \svnsubgroup \fi \fi @@ -1263,10 +1262,10 @@ lof,log,lot,out,svn,svt,svx,toc} \if@svnmulti@groups \def\svnexternalgroup#1{% \svn@ifequal{#1}{*}% + {\def\svn@externalgroup{\svn@pg}}% {\def\svn@externalgroup{#1}}% - {\def\svn@externalgroup{\svn@g}}% } -\def\svn@externalgroup{\svn@g} +\def\svn@externalgroup{\svn@pg} \else \def\svn@externalgroup{} \fi @@ -1275,7 +1274,7 @@ lof,log,lot,out,svn,svt,svx,toc} \newcommand*\svnexternal[2][]{% \svn@pushfilestack \svn@ifequal{#1}{*}% - {\edef\svn@eg{\svn@g}}% + {\edef\svn@eg{\svn@pg}}% {\svn@ifempty{#1}% {\edef\svn@eg{\svn@externalgroup}}% {\edef\svn@eg{#1}}% @@ -1297,7 +1296,7 @@ lof,log,lot,out,svn,svt,svx,toc} \svn@checkwrite \begingroup \svn@ifequal{#1}{*}% - {\def\svn@temp{\svn@g}}% + {\def\svn@temp{\svn@pg}}% {\svn@ifempty{#1}% {\def\svn@temp{\svn@externalgroup}}% {\def\svn@temp{#1}}% @@ -1369,7 +1368,7 @@ lof,log,lot,out,svn,svt,svx,toc} \def\svngraphicsgroup#1{% \svn@ifequal{#1}{*}% - {\def\svn@graphicsgroup{\svn@g}}% + {\def\svn@graphicsgroup{\svn@pg}}% {\def\svn@graphicsgroup{#1}}% } \def\svn@graphicsgroup{\svn@externalgroup} @@ -1438,7 +1437,9 @@ patch generated macros '\string\pgf@image@<name>!' from the 'pgf' package!}% %% Adapted from the \tableofcontents macro, LaTeX `book' class [2005/09/16] \newcommand\tableofrevisions{% - \if@twocolumn + \expandafter\ifx + \csname if@twocolumn\expandafter\endcsname + \csname iftrue\endcsname \@restonecoltrue\onecolumn \else \@restonecolfalse @@ -1446,7 +1447,11 @@ patch generated macros '\string\pgf@image@<name>!' from the 'pgf' package!}% \chapter*{\svnrevisionsname \@mkboth{\MakeUppercase\svnrevisionsname}{\MakeUppercase\svnrevisionsname}}% \svn@input{\jobname .\svn@svt}% - \if@restonecol\twocolumn\fi + \expandafter\ifx + \csname if@restonecol\expandafter\endcsname + \csname iftrue\endcsname + \twocolumn + \fi } \fi |