summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/svn-multi
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2009-03-23 23:55:25 +0000
committerKarl Berry <karl@freefriends.org>2009-03-23 23:55:25 +0000
commitf3e4da8de0bec75f027ec22af12443c9cfa2a0f6 (patch)
tree379874ddfb450374aa4041d4cfe33ba339650cd6 /Master/texmf-dist/doc/latex/svn-multi
parent7c3f2bb14d2593c80109a9f0d28f3310dcb60c9b (diff)
svn-multi 2.0 (23mar09)
git-svn-id: svn://tug.org/texlive/trunk@12503 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/svn-multi')
-rw-r--r--Master/texmf-dist/doc/latex/svn-multi/README50
-rw-r--r--Master/texmf-dist/doc/latex/svn-multi/example.pdfbin41537 -> 43038 bytes
-rw-r--r--Master/texmf-dist/doc/latex/svn-multi/example_chap1.tex2
-rw-r--r--Master/texmf-dist/doc/latex/svn-multi/example_main.tex34
-rw-r--r--Master/texmf-dist/doc/latex/svn-multi/group_example.tex371
-rw-r--r--Master/texmf-dist/doc/latex/svn-multi/svn-multi.pdfbin312321 -> 1136846 bytes
6 files changed, 440 insertions, 17 deletions
diff --git a/Master/texmf-dist/doc/latex/svn-multi/README b/Master/texmf-dist/doc/latex/svn-multi/README
index b2ccffbaab5..7b5ef2e18a5 100644
--- a/Master/texmf-dist/doc/latex/svn-multi/README
+++ b/Master/texmf-dist/doc/latex/svn-multi/README
@@ -1,6 +1,6 @@
--------------------------------------------------------------
svn-multi (was svnkw)
- version 1.5, Feb 28th, 2009
+ version 2.0, Mar 23rd, 2009
--------------------------------------------------------------
This package lets you typeset keywords of the version
@@ -13,30 +13,41 @@ E-mail: martin@scharrer-online.de
WWW: http://www.scharrer-online.de/latex/svn-multi/
This work may be distributed and/or modified under the
-conditions of the LaTeX Project Public License, either version 1.3
+conditions of the LaTeX Project Public License, either version 1.3c
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.
+and version 1.3c or later is part of all distributions of LaTeX
+version 2008/05/04 or later.
This work has the LPPL maintenance status `maintained'.
The Current Maintainer of this work is Martin Scharrer.
-This work consists of the files svn-multi.dtx and svn-multi.ins
-and the derived files svn-multi.sty and svnkw.sty.
+This work consists of the files svn-multi.dtx, svn-multi-pl.dtx, svn-multi.ins
+and the derived files svn-multi.sty, svnkw.sty and svn-multi.pl.
Tiny example:
~~~~~~~~~~~~~
-Put the following Subversion keyword in all your LaTeX files of
+Put the following Subversion keyword at the start of all your LaTeX files of
your document:
+\svnidlong
+{$HeadURL$}
+{$LastChangedDate$}
+{$LastChangedRevision$}
+{$LastChangedBy$}
+
+or
+
\svnid{$Id$}
-Subversion will expand it (set property svn:keyword to 'Id') and
-then you can typeset the SVN information using
+or both.
+Attach the subversion property svn:keyword with a value of
+'URL Date Revision Author', 'Id' or both, respectively, to all LaTeX files.
+Subversion will expand this keywords the next time the files are committed and
+then the SVN information can be typeset using
\svnauthor, \svnrev, \svndate, \svnhour, ...
which will hold the information of the latest comitted file
anywhere in your multi-file LaTeX document.
@@ -52,13 +63,26 @@ From the .dtx file (if you don't get the .sty files directly):
==================
Unpack the zip file and run 'make'.
You also can do it manually:
- [pdf]latex svn-multi.ins # for the style file
- [pdf]latex svn-multi.dtx # for the documentation
- [pdf]latex example-main.tex # for the example
+ [pdf]latex svn-multi.ins # for the style file and perl script
+ [pdf]latex svn-multi.dtx # for the documentation
+2x[pdf]latex example-main # for the example
+
+For the large keyword group example document:
+ [pdf]latex group-example
+ perl svn-multi.pl group-example
+2x[pdf]latex group-example
Place the two .sty files
svn-multi.sty # Package
- svnkw.sty # Wrapper for backward compatibility
+ svnkw.sty # Wrapper for backward compatibility
into your TEXMF tree, e.g. in
$TEXMF/tex/latex/svn-multi
+Make the perl script svn-multi.pl executable:
+ chmod +x svn-multi.pl
+and place it in an directory in your $PATH, e.g. under Unix/Linux in
+ /usr/bin/svn-multi.pl or
+ /usr/local/bin/svn-multi.pl or
+ $HOME/bin/svn-multi.pl
+Consider to rename or link it to 'svn-multi'.
+
diff --git a/Master/texmf-dist/doc/latex/svn-multi/example.pdf b/Master/texmf-dist/doc/latex/svn-multi/example.pdf
index f8f1208d671..5a5f1435065 100644
--- a/Master/texmf-dist/doc/latex/svn-multi/example.pdf
+++ b/Master/texmf-dist/doc/latex/svn-multi/example.pdf
Binary files differ
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 ca8a36100d1..dd63289e864 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,7 @@
% 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/example_chap1.tex $}
+{$HeadURL: svn+ssh://scharrer-online.de/home/martin/svn/src/trunk/latex/svn-multi-2/example_chap1.tex $}
{$LastChangedDate: 2009-02-27 13:58:39 +0000 (Fri, 27 Feb 2009) $}
{$LastChangedRevision: 211 $}
{$LastChangedBy: martin $}
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 6f2a337d6da..cb23a97e527 100644
--- a/Master/texmf-dist/doc/latex/svn-multi/example_main.tex
+++ b/Master/texmf-dist/doc/latex/svn-multi/example_main.tex
@@ -1,9 +1,9 @@
\documentclass[12pt]{report}
-\usepackage{svn-multi}
+\usepackage[all,external,groups]{svn-multi}[2009/03/03]
% Version control information:
\svnidlong
-{$HeadURL: svn+ssh://scharrer-online.de/home/martin/svn/src/trunk/latex/svn-multi/example_main.tex $}
-{$LastChangedDate: 2008-12-03 13:29:19 +1234 (Wed, 03 Dec 2008) $}
+{$HeadURL: svn+ssh://scharrer-online.de/home/martin/svn/src/trunk/latex/svn-multi-2/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 $}
@@ -11,6 +11,18 @@
% '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{}
+%
+
\usepackage{hyperref}
\usepackage{url}
@@ -29,10 +41,19 @@
\svnRegisterAuthor{johnd}{John Doe}
\svnRegisterAuthor{maryd}{Mary Doe}
+\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}
@@ -58,4 +79,11 @@
%\include{example_chap2}
%\include{example_chap3}
+
+%\input{test}
+%\pgfuseimage{test}
+\makeatletter
+
+\makeatother
+
\end{document}
diff --git a/Master/texmf-dist/doc/latex/svn-multi/group_example.tex b/Master/texmf-dist/doc/latex/svn-multi/group_example.tex
new file mode 100644
index 00000000000..692687d4f97
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/svn-multi/group_example.tex
@@ -0,0 +1,371 @@
+\documentclass[a4paper,oneside]{scrbook}
+\usepackage[all]{svn-multi}[2009/03/06]
+\svnidlong
+{$HeadURL: svn://server/group_example.tex $}
+{$LastChangedDate: 2000-01-01 01:44:01 +0000 (Main file) $}
+{$LastChangedRevision: 98 $}
+{$LastChangedBy: author3 $}
+
+% Pre-declaration of groups to define order in table
+\svngroup{abc}
+\svngroup{def}
+\svngroup{ghi}
+\svngroup{jkl}
+%\svngroup{Images}
+\svngroup{}
+
+% Ignore logo in subfiles and set it explicitly into the main file:
+%\svnexternal{{logo.jpg}}%
+%\svnignoregraphic{logo.jpg}
+
+% Special groups for images and other external files:
+%\svngraphicsgroup{Images}
+%\svnexternalgroup{external}
+
+\let\ifvtex=\relax
+\usepackage{hyperref}
+\usepackage{ifthen}
+\usepackage{listings}
+\lstset{basicstyle=\ttfamily}
+\makeatletter
+% Workaround for listinputlisting
+\newcommand*{\svnlstinputlisting}[2][]{%
+ {\let\input\@input\lstinputlisting[#1]{#2}}%
+}
+\makeatother
+\usepackage{booktabs}
+\usepackage{tabularx}
+\usepackage{longtable}
+
+% This is an example document to show the group feature of svn-multi 2.0.
+% Please the notes below.
+
+\makeatletter
+% Version control information table for each chapter
+\newcommand{\chaptervctable}{%
+\par\noindent
+\textbf{Version Control Information for this chapter}\\[\bigskipamount]%
+\begin{tabular}{lp{0.7\textwidth}}
+Chapter URL & \svnnolinkurl{\svnfileurl}\\
+Chapter File name & \svnnolinkurl{\svnfilefname}\\
+Last Changed Revision & \svnfilerev\\
+Last Changed Author & \svnfileauthor\\
+Last Changed Date & \svnfiledate\\
+\end{tabular}
+\bigskip
+\par\noindent
+This files contains the following SVN keywords:\\*[-\baselineskip]
+{\let\input\@input
+\svnlstinputlisting[firstline=5,lastline=9]{\finkpath}
+}
+}
+\makeatother
+
+% This file generates some example sub files from this file to avoid a lot of small
+% example files in the CTAN directory. In real life there would be separate
+% files from the beginning.
+
+\begin{filecontents}{group_example_part1a.tex}
+\svnidlong
+{$HeadURL: svn://server/group_example_part1a.tex $}
+{$LastChangedDate: 2000-01-01 01:00:01 +0000 (Chapter 1a) $}
+{$LastChangedRevision: 101 $}
+{$LastChangedBy: author1 $}
+
+\chapter{Subfile 1a}
+\chaptervctable
+\end{filecontents}
+
+\begin{filecontents}{group_example_part1b.tex}
+\svnidlong
+{$HeadURL: svn://server/group_example_part1b.tex $}
+{$LastChangedDate: 2001-01-01 00:00:01 +0000 (Subfile 1b) $}
+{$LastChangedRevision: 102 $}
+{$LastChangedBy: author2 $}
+
+\chapter{Subfile 1b}
+\chaptervctable
+\end{filecontents}
+
+\begin{filecontents}{group_example_part1c.tex}
+\svnidlong
+{$HeadURL: svn://server/group_example_part1c.tex $}
+{$LastChangedDate: 2000-01-01 00:00:01 +0000 (Subfile 1c) $}
+{$LastChangedRevision: 104 $}
+{$LastChangedBy: author3 $}
+
+\chapter{Subfile 1c}
+\chaptervctable
+\end{filecontents}
+
+\begin{filecontents}{group_example_part2a.tex}
+\svnidlong
+{$HeadURL: svn://server/group_example_part2a.tex $}
+{$LastChangedDate: 2000-01-01 00:00:01 +0000 (Subfile 2a) $}
+{$LastChangedRevision: 100 $}
+{$LastChangedBy: author1 $}
+
+\chapter{Subfile 2a}
+\chaptervctable
+\end{filecontents}
+
+\begin{filecontents}{group_example_part2b.tex}
+\svnidlong
+{$HeadURL: svn://server/group_example_part2b.tex $}
+{$LastChangedDate: 2000-01-01 00:00:01 +0000 (Subfile 2b) $}
+{$LastChangedRevision: 101 $}
+{$LastChangedBy: author1 $}
+
+\chapter{Subfile 2b}
+\chaptervctable
+\end{filecontents}
+
+\begin{filecontents}{group_example_part3a.tex}
+\svnidlong
+{$HeadURL: svn://server/group_example_part3a.tex $}
+{$LastChangedDate: 2000-01-01 00:00:01 +0000 (Subfile 3a) $}
+{$LastChangedRevision: 104 $}
+{$LastChangedBy: author3 $}
+
+\chapter{Subfile 3a}
+\chaptervctable
+\end{filecontents}
+
+\begin{filecontents}{group_example_part3b.tex}
+\svnidlong
+{$HeadURL: svn://server/group_example_part3b.tex $}
+{$LastChangedDate: 2000-01-01 00:00:01 +0000 (Subfile 3b) $}
+{$LastChangedRevision: 103 $}
+{$LastChangedBy: author2 $}
+
+\chapter{Subfile 3b}
+\chaptervctable
+\end{filecontents}
+
+\begin{filecontents}{group_example_part4a.tex}
+\svnidlong
+{$HeadURL: svn://server/group_example_part4a.tex $}
+{$LastChangedDate: 2000-01-01 00:00:01 +0000 (Subfile 4a) $}
+{$LastChangedRevision: 99 $}
+{$LastChangedBy: author3 $}
+
+\chapter{Subfile 4a}
+\chaptervctable
+\input{group_example_part4a_sub1.tex}
+\end{filecontents}
+
+\begin{filecontents}{group_example_part4a_sub1.tex}
+\svnidlong
+{$HeadURL: svn://server/group_example_part4a_sub1.tex $}
+{$LastChangedDate: 2000-01-01 00:00:00 +0000 (SubSubfile 4a-1) $}
+{$LastChangedRevision: 96 $}
+{$LastChangedBy: author2 $}
+
+\section{SubSubfile 4a-1}
+This is a sub file in a sub file.
+\svnexternal{{Makefile}}
+\end{filecontents}
+
+\begin{filecontents}{group_example_part4b.tex}
+\svnidlong
+{$HeadURL: svn://server/group_example_part4b.tex $}
+{$LastChangedDate: 2000-01-01 00:00:01 +0000 (Subfile 4b) $}
+{$LastChangedRevision: 105 $}
+{$LastChangedBy: author2 $}
+
+\chapter{Subfile 4b}
+\chaptervctable
+\end{filecontents}
+
+\begin{filecontents}{group_example_end.tex}
+\svnidlong
+{$HeadURL: svn://server/group_example_end.tex $}
+{$LastChangedDate: 2000-01-01 00:00:01 +0000 (End) $}
+{$LastChangedRevision: 100 $}
+{$LastChangedBy: author1 $}
+
+\chapter{End credits}
+\chaptervctable
+\end{filecontents}
+
+\begin{filecontents}{group_example_unexpanded.tex}
+\svnidlong
+{$HeadURL$}
+{$LastChangedDate$}
+{$LastChangedRevision$}
+{$LastChangedBy$}
+
+\chapter{File with unexpanded keywords}
+\chaptervctable
+\end{filecontents}
+
+\svnRegisterAuthor{author1}{Andy Author, I.}
+\svnRegisterAuthor{author2}{A. Author, II.}
+\svnRegisterAuthor{author3}{Anthony Author, III.}
+
+% Have VC info on every part page
+\let\origpart=\part
+\def\part{%
+\setpartpreamble{%
+\vspace*{5cm}
+\par\noindent
+\textbf{Version Control Information for this part:}\\[\bigskipamount]%
+\begin{tabular}{lp{0.7\textwidth}}
+URL of latest File & \svnnolinkurl{\svncgurl}\\
+Name of latest File & \svnnolinkurl{\svncgfname}\\
+Last Changed Revision & \svncgrev\\
+Last Changed Author & \svncgauthor\\
+Last Changed Date & \svncgdate\\
+\end{tabular}
+}\origpart
+}
+
+\listfiles
+\begin{document}
+
+% Custom titlepage:
+\hbox{}%
+\vfill
+\pdfbookmark{Title Page}{titlepage}%
+{\centering
+\Huge\texttt{svn-multi} v2.0 Keyword Groups Example Document\\
+\Large Martin Scharrer\\
+\large 2009/03/01\\
+}%
+\vfill
+\par\noindent
+This is an example and test document for the group feature of svn-multi 2.0.
+Please note that the revision keywords were generated manually for testing
+purposes. The dates are not consistent with the revisions and contain a debug
+name instead of the date text like `(Sat, January 1 2009)'. This doesn't
+influence the correct functionality of the svn-multi package.\\
+\bigskip
+{\hbox{}\hfill Happy \TeX ing!}\\
+\vfill%
+\par\noindent
+{\large Version Control Information for this document:\\[\bigskipamount]}%
+\begin{tabular}{lp{0.7\textwidth}}
+Main URL & \svnnolinkurl{\svnmainurl}\\
+Main File name & \svnnolinkurl{\svnmainfilename}\\
+URL of latest file & \svnnolinkurl{\svnurl}\\
+Name of latest file & \svnnolinkurl{\svnfname}\\
+Last Changed Revision & \svnrev\\
+Last Changed Author & \svnauthor\\
+Last Changed Date & \svndate\\
+\end{tabular}
+\bigskip\par\noindent
+The main file of this document contains the following SVN
+keywords:\\*[-\baselineskip]
+\svnlstinputlisting[firstline=3,lastline=7]{\finkpath}
+\thispagestyle{empty}
+\clearpage
+
+% Default in Engish
+\renewcommand{\svnbeforetable}{%
+This is an automatic generated table using the \textbf{\sffamily table} option.
+\bigskip\par\noindent
+}
+\clearpage
+\pdfbookmark{Table of Revisions (1)}{tora}%
+\tableofrevisions
+\clearpage
+
+% Redefined to German
+% Uses booktabs for nicer table
+\renewcommand{\svnbeforetable}{%
+Can be redefined to another format and language: Verstehen Sie Deutsch?
+\bigskip\par\noindent
+}
+\renewenvironment{svntable}{%
+\begin{longtable}{p{6.2cm}rll}
+\toprule
+}
+{%
+\bottomrule
+\end{longtable}
+}
+\renewcommand*\svntablehead{%
+ Name & Rev & Autor & Datum \\
+\midrule[\heavyrulewidth]
+}
+\renewcommand{\svnrevisionsname}{Revisionen}
+\renewcommand{\svntabgroup}[1]{Gruppe `#1'}
+
+% Some highlight examples:
+% Print highest revision bold:
+\renewcommand{\svntabrev}[1]{\ifthenelse{#1=\svnrev}{\textbf{#1}}{#1}}
+% Highlight all dates after the 14th March 2008 12:00:00:
+\renewcommand{\svntabdate}[8]{%
+ \ifthenelse{#1#2#3#4>2008031412}{\color{red}\bfseries}{}%
+ \small #3.#2.#1\ #4:#5:#6%
+}
+% Mark all files last changed by the last author:
+\renewcommand{\svntabauthor}[1]{%
+ \ifthenelse{\equal{#1}{\svnauthor}}{\color{green}}{}%
+ \svnFullAuthor{#1}%
+}
+
+% Using \scriptsize and \svnnolinkurl for files and subgroups:
+\renewcommand{\svntabfile}[2]{%
+ \addtolength{\leftskip}{#1\medskipamount}%
+ Datei `{\scriptsize\svnnolinkurl{#2}}'
+}
+\renewcommand{\svntabsubgroup}[2]{%
+ \addtolength{\leftskip}{#1\medskipamount}%
+ Untergruppe `{\scriptsize\svnnolinkurl{#2}}'%
+}
+\renewcommand{\svntabglobal}[1]{Gesamtes Dokument}
+
+% Add rule before group rows:
+\renewcommand{\svngrouprow}{\midrule}
+% Add rule and description after global row:
+\renewcommand{\endsvnglobalrow}{\midrule Ohne Gruppe:\\}
+
+\pdfbookmark{Table of Revisions (2)}{torb}%
+\tableofrevisions
+\clearpage
+
+
+\svngroup{abc}
+\part{Abc}
+\include{group_example_part1a}
+\include{group_example_part1b}
+\include{group_example_part1c}
+
+\svngroup{def}
+\part{Def}
+\include{group_example_part2a}
+\include{group_example_part2b}
+
+\svngroup{ghi}
+\part{Ghi}
+\include{group_example_part3a}
+\include{group_example_part3b}
+
+\svngroup{jkl}
+\part{jkl}
+\include{group_example_part4a}
+\include{group_example_part4b}
+
+% The rest doesn't belong to a file group:
+\svngroup{}
+\include{group_example_end}
+\include{group_example_unexpanded}
+
+\chapter*{Reference Examples}
+%To reference e.g.\ keyword from group `abc' use:
+\section*{Group `abc'}
+\svnsetcg{abc} Revision \svncgrev\ from \svncgtoday\ \svncgtime\ done by
+\svnFullAuthor{\svncgauthor}. Latest file is \svnnolinkurl{\svncgfname} (URL: \url{\svncgurl}).
+
+\section*{Subgroup `group\_example\_part3b'}
+\svnsetcg{group_example_part3b} Revision \svncgrev\ from \svncgtoday\ \svncgtime\ done by
+\svnFullAuthor{\svncgauthor}. Latest file is \svnnolinkurl{\svncgfname} (URL: \url{\svncgurl}).
+
+\section*{File `group\_example\_part3b.tex'}
+\svnsetcg{group_example_part3b.tex} Revision \svncgrev\ from \svncgtoday\ \svncgtime\ done by
+\svnFullAuthor{\svncgauthor}. File name and url: \svnnolinkurl{\svncgfname} (URL: \url{\svncgurl}).
+
+
+\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
index 8fb3a6fe997..32bf5183d6f 100644
--- a/Master/texmf-dist/doc/latex/svn-multi/svn-multi.pdf
+++ b/Master/texmf-dist/doc/latex/svn-multi/svn-multi.pdf
Binary files differ