in reply to Environment Variable
my %Env = ('PPA_CURRENT_PROJECT' => 'D:\Projects\CurrentProject' => 'Directory', ...
Hashes store and are initialized from key-value pairs, not triples. I.e., you probably rather want a data structure like this:
my %Env = ('PPA_CURRENT_PROJECT' => [ 'D:\Projects\CurrentProject' => +'Directory' ], ...
or
my %Env = ('PPA_CURRENT_PROJECT' => { value => 'D:\Projects\CurrentProject', type => 'Directory' }, ...
With the latter, you could, for example, access the type using
$Env{PPA_CURRENT_PROJECT}{type}
|
|---|