summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2009-07-19 18:20:09 +0000
committerKarl Berry <karl@freefriends.org>2009-07-19 18:20:09 +0000
commit658051cf9e3a9f7e1a47c3346c3c00997885ae98 (patch)
tree244ecae995fb7636ecad26011ba9a9734bbd7327
parent97ea53ff09cc961846648bbba9f2acc716cf8015 (diff)
new latex package properties (12jul09)
git-svn-id: svn://tug.org/texlive/trunk@14321 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/properties/readme.de24
-rw-r--r--Master/texmf-dist/doc/latex/properties/testprop.tex61
-rw-r--r--Master/texmf-dist/tex/latex/properties/properties.sty68
-rwxr-xr-xMaster/tlpkg/bin/tlpkg-ctan-check3
-rw-r--r--Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc1
-rw-r--r--Master/tlpkg/tlpsrc/properties.tlpsrc0
6 files changed, 156 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/properties/readme.de b/Master/texmf-dist/doc/latex/properties/readme.de
new file mode 100644
index 00000000000..2747bc55396
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/properties/readme.de
@@ -0,0 +1,24 @@
+% $Id: readme.de 7 2009-06-30 11:07:26Z michael $
+%
+% Paket fuer Properties
+%
+% Properties-Datei laden:
+% \loadDefaultProperties lädt Datei \jobname.properties und
+% falls vorhanden \jobname.local.properties
+% dabei werden die vorher definierten Werte überschrieben.
+% \loadOtherProperties{xxx} lädt Datei xxx.properties und
+% falls vorhanden xxx.local.properties
+% dabei werden die vorher definierten Werte überschrieben.
+%
+% Werte ermitteln:
+% \getDefaultProperty{key} ermittelt den Wert für key.
+% \getOtherProperty{xxx}{key} ermittelt den Wert für key und verwendet
+% dabei xxx.properties.
+%
+% Werte setzen:
+% \setDefaultProperty{key}{value} setzt für key den Wert value.
+% \setOtherProperty{xxx}{key}{value} setzt für key den Wert value und verwendet
+% dabei xxx.properties.
+%
+% (c) Michael Niedermair (m.g.n@gmx.de)
+% Lizenz: LaTeX Project Public License
diff --git a/Master/texmf-dist/doc/latex/properties/testprop.tex b/Master/texmf-dist/doc/latex/properties/testprop.tex
new file mode 100644
index 00000000000..14a3bb35b4f
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/properties/testprop.tex
@@ -0,0 +1,61 @@
+% UTF8
+%
+% $Id: testprop.tex 7 2009-06-30 11:07:26Z michael $
+%
+\listfiles
+\documentclass[ngerman,a4paper]{scrartcl}
+
+\usepackage[T1]{fontenc}
+\usepackage[utf8]{inputenc}
+
+\usepackage{babel,libertine,sverb,ifthen}
+
+\usepackage{properties}
+
+\begin{verbwrite}{testprop.properties}
+cropmark=true
+autor=Michael Niedermair
+test=Dies ist ein Test!
+\end{verbwrite}
+\begin{verbwrite}{testprop.local.properties}
+cropmark=newlocal
+\end{verbwrite}
+\begin{verbwrite}{xxx.properties}
+name=Michael Niedermair
+\end{verbwrite}
+\setlength{\parindent}{0pt}
+
+\begin{document}
+
+\section{Paket properties.sty}
+
+\minisec{Properties \jobname.properties}
+
+\loadDefaultProperties
+
+
+crop\quad=\quad\getDefaultProperty{cropmark}
+
+nodef\quad=\quad\getDefaultProperty{notdef}
+
+autor\quad=\quad\getDefaultProperty{autor}
+
+test\quad=\quad\getDefaultProperty{test}
+
+Test auf crop = newlocal: \quad\ifthenelse{\equal{\getDefaultProperty{cropmark}}{newlocal}}{JA}{NEIN}\\
+Test auf crop = local: \quad\ifthenelse{\equal{\getDefaultProperty{cropmark}}{local}}{JA}{NEIN}
+
+\minisec{Properties xxx.properties}
+
+\loadOtherProperties{xxx}
+
+name\quad=\quad\getOtherProperty{xxx}{name}
+
+\setOtherProperty{xxx}{name}{Michael G. Niedermair}
+
+Wert setzen:
+
+new: name\quad=\quad\getOtherProperty{xxx}{name}
+
+\end{document}
+
diff --git a/Master/texmf-dist/tex/latex/properties/properties.sty b/Master/texmf-dist/tex/latex/properties/properties.sty
new file mode 100644
index 00000000000..458b707fc59
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/properties/properties.sty
@@ -0,0 +1,68 @@
+% UTF8
+%
+% Paket fuer Properties
+%
+% Properties-Datei laden:
+% \loadDefaultProperties lädt Datei \jobname.properties und
+% falls vorhanden \jobname.local.properties
+% dabei werden die vorher definierten Werte überschrieben.
+% \loadOtherProperties{xxx} lädt Datei xxx.properties und
+% falls vorhanden xxx.local.properties
+% dabei werden die vorher definierten Werte überschrieben.
+%
+% Werte ermitteln:
+% \getDefaultProperty{key} ermittelt den Wert für key.
+% \getOtherProperty{xxx}{key} ermittelt den Wert für key und verwendet
+% dabei xxx.properties.
+%
+% Werte setzen:
+% \setDefaultProperty{key}{value} setzt für key den Wert value.
+% \setOtherProperty{xxx}{key}{value} setzt für key den Wert value und verwendet
+% dabei xxx.properties.
+%
+% (c) Michael Niedermair (m.g.n@gmx.de)
+%
+% Lizenz: LaTeX Project Public License
+%
+% $Id: properties.sty 7 2009-06-30 11:07:26Z michael $
+%
+% -------------------------------------
+\ProvidesPackage{properties}[%
+ 2009/06/30 v0.2 Properties (Nm)]
+%
+\RequirePackage{datatool}
+%
+\newcommand*\PROP@jobname{\jobname}
+\newcommand*\PROP@extension{properties}
+\newcommand*\PROP@local{local}
+%
+% #1 name
+% #2 filename
+\newcommand*\PROP@loadProperties[2]{%
+ \IfFileExists{#2.\PROP@extension}{%
+ \PackageInfo{properties}{Loading #2.\PROP@extension}%
+ \DTLsetseparator{=}%
+ \DTLloaddb[noheader,keys={key,value}]{#2}{#2.\PROP@extension}%
+ \DTLforeach{#2}{\PROP@key=key,\PROP@value=value}{%
+ \edef\@tempa{\noexpand\@namedef{#1@\PROP@key}{\PROP@value}}%
+ \@tempa%
+ }%
+ }{%
+ \PackageInfo{properties}{#2.\PROP@extension\space not found}%
+ }%
+}%
+%
+\newcommand*\loadDefaultProperties{%
+ \loadOtherProperties{\PROP@jobname}%
+}
+\newcommand*\loadOtherProperties[1]{%
+ \PROP@loadProperties{#1}{#1}%
+ \PROP@loadProperties{#1}{#1.\PROP@local}%
+}
+%
+\newcommand*\getDefaultProperty[1]{\getOtherProperty{\PROP@jobname}{#1}}
+\newcommand*\setDefaultProperty[2]{\setOtherProperty{\PROP@jobname}{#1}{#2}}
+\newcommand*\getOtherProperty[2]{\@nameuse{#1@#2}}
+\newcommand*\setOtherProperty[3]{\@namedef{#1@#2}{#3}}
+%
+\endinput
diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check
index c22570baed4..afde7f87719 100755
--- a/Master/tlpkg/bin/tlpkg-ctan-check
+++ b/Master/tlpkg/bin/tlpkg-ctan-check
@@ -186,7 +186,8 @@ my @WorkingTLP = qw(
plnfss plweb pmgraph poemscol polski polyglossia polynom polynomial
polytable
powerdot ppr-prv pracjourn preprint
- prettyref preview proba probsoln procIAGssymp program protex protocol
+ prettyref preview proba probsoln procIAGssymp program
+ properties protex protocol
psbao pseudocode psfrag psfrag-italian psgo pslatex psnfss pspicture
pst-2dplot pst-3d pst-3dplot pst-asr pst-bar
pst-barcode pst-bezier pst-blur pst-bspline
diff --git a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
index 72707a22b30..e589dbb19bf 100644
--- a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
+++ b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
@@ -412,6 +412,7 @@ depend preview
depend probsoln
depend program
depend progress
+depend properties
depend prosper
depend protex
depend protocol
diff --git a/Master/tlpkg/tlpsrc/properties.tlpsrc b/Master/tlpkg/tlpsrc/properties.tlpsrc
new file mode 100644
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlpsrc/properties.tlpsrc