Config-Manager

 view release on metacpan or  search on metacpan

t/conf_public.ini  view on Meta::CPAN

WRKDIR = wrk
# Einfacher Wert, Leerzeichen am Zeilenanfang
   TMPDIR=tmp
# Einfacher Wert, wird durch Kommandozeile ueberschrieben
INSTDIR = instdir

# Substitution in der Default-Section
SYS = $DRIVE/$SYSDIR
# Substitution in der Default-Section, {}-Syntax
TMP = ${DRIVE}/${TMPDIR}
# Rekursive Substitution in der Default-Section
WRK = $SYS/$WRKDIR
# Und nochmal, weil's so schoen war ...
INST = $SYS/$INSTDIR
# Jetzt wird's richtig rekursiv ...
PATH = $WRK;$INST

# Leerer Wert
EMPTY = ""

# Wert enthaelt ein Gleichheitszeichen
ORWELL = 2+2=5

# Wert besteht aus drei Leerzeichen
SPACES1 = "   "
SPACES2 = $EMPTY$SPACES1$EMPTY
# Einfache Anfuehrungszeichen: Keine Sonderbedeutung
SINGLE_QUOTES = 'tralala'
# Doppelte Anfuehrungszeichen als Begrenzer
QUOTES = "tralala"
# Nur ein Anfuehrungszeichen am Anfang: Keine Sonderbedeutung
FIRST_QUOTE = "tralala
# Nur ein Anfuehrungszeichen am Ende: Keine Sonderbedeutung
LAST_QUOTE = tralala"
# Anfuehrungszeichen im Text: Keine Sonderbedeutung
MID_QUOTE1 = tra"lala
MID_QUOTE2 = "tra"lala"
# Leerzeichen, Anfuehrungszeichen, Leerzeichen
MID_QUOTE3 = " " "

# Dollar
ESC_D = $$SYS
# Backslash und Substitution
ESC_BS = \$SYS
# Backslash und Dollar
ESC_BD = \$$SYS
# Backslash, Backslash, Substitution
ESC_BBS = \\$SYS
# Backslash, Backslash, Dollar
ESC_BBD = \\$$SYS

# Folgende Zeilen sind absichtlich leer, damit die Zeilennummerierung in meinen
# Testscripts nicht durcheinander geraet


# Substitution: Nur schliessende Klammer
S_C = $SYS}


# Qualifizierte Substitution: Nur schliessende Klammer
SQ_C = $[A]{HELLO}}




# Sonderlocke fuer Steffen Beyer :-)
$SONDERLOCKE = Key faengt mit $$ an

# Fuer jene Faelle, in denen versehentlich eine Section als Key interpretiert wird :-)
A = a
# Gross- und Kleinschreibung fuer Schluessel wird unterschieden
a = ach ja

# Die Katze beisst sich in den Schwanz
SIMPLE_LOOP = This is a $SIMPLE_LOOP
THIS = This $WILL loop
WILL = This $PATH will $LOOP
LOOP = $THIS will loop
THAT = And $THIS will loop, too

# EVERYWHERE gibt's in der Default-Section, in A und in B
EVERYWHERE = default

# Section ohne Inhalt ist unschaedlich
[NOPE]

[A]
# HELLO gibt's in A und B
HELLO = a_hello
# Gross- und Kleinschreibung fuer Schluessel
hello = oink
EVERYWHERE = at a
# Achtung, weiter unten wird diese Section noch fortgesetzt ...

[B]
# $[B]{HELLO} wird durch conf_private.ini ueberschrieben
HELLO = no-no
EVERYWHERE = at b

[a]
# Gross- und Kleinschreibung fuer Sections
HELLO = oink

[A]
# Hier geht's weiter mit Section A
A = a, too
EXCLUSIVE = XA

[ANYTHING]
EVERYWHERE1 = %$EVERYWHERE%
EVERYWHERE2 = %${EVERYWHERE}%
EVERYWHERE3 = %$[A]{EVERYWHERE}%
EVERYWHERE4 = %$[A]EVERYWHERE%
EVERYWHERE5 = %$[B]EVERYWHERE%
EVERYWHERE6 = %$[B]{EVERYWHERE}%

HELLO1 = %$HELLO%
HELLO2 = %${HELLO}%
HELLO3 = %$[A]HELLO%
HELLO4 = %$[A]{HELLO}%
HELLO5 = %$[B]HELLO%
HELLO6 = %$[B]{HELLO}%

A1 = %$A%
A2 = %${A}%
A3 = %$[A]A%
A4 = %$[A]{A}%
A5 = %$[B]A%
A6 = %$[B]{A}%

EXCLUSIVE1 = %$EXCLUSIVE%
EXCLUSIVE2 = %${EXCLUSIVE}%
EXCLUSIVE3 = %$[A]EXCLUSIVE%
EXCLUSIVE4 = %$[A]{EXCLUSIVE}%
EXCLUSIVE5 = %$[B]EXCLUSIVE%
EXCLUSIVE6 = %$[B]{EXCLUSIVE}%

HURZ1 = %$HURZ%
HURZ2 = %${HURZ}%
HURZ3 = %$[A]HURZ%
HURZ4 = %$[A]{HURZ}%

[WITH-SLASH]
FOR-EXAMPLE = -
T-1 = A${FOR-EXAMPLE}Z
T-2 = A$[WITH-SLASH]{FOR-EXAMPLE}O
T-3 = +$FOR-EXAMPLE
T-4 = 4$[WITH-SLASH]FOR-EXAMPLE
T-5 = 5$FOR-EXAMPLE;
T-6 = 6$[WITH-SLASH]FOR-EXAMPLE;

# Es folgen Tests fuer den Zugriff auf die eigene Section
[A1]
A = a1>$[A2]B
B = b1
C = c1
D = d1

[A2]
A = a2
B = b2>$C
C = c2>$[A3]D
D = d2

[A3]
A = a3
B = b3
C = c3
D = d3>$A

# Es folgen Tests fuer indirekte Substitution
[WHO]
USER  = FRITZ
NAME  = $[${USER}]{NAME}
name  = $[$[WHO]{USER}]{NAME}
IQ    = ${$[USER]{IQ}}
ZERO  = 0
XYZ   = ${$USER}
xyz   = ${$[WHO]{USER}}
XXX   = $[WHO]{$USER}
xxx   = $[WHO]{$[WHO]{USER}}
FRITZ = fritz
UVW   = $[${USER}]{$USER}
uvw   = $[$[WHO]{USER}]{$[WHO]{USER}}

[FRITZ]
NAME  = Fritz Fischer
FRITZ = fritzfritz

[USER]
IQ   = ZERO



( run in 0.642 second using v1.01-cache-2.11-cpan-14f38c9f855 )