blob: a07160245b53c4443058d469415110fe33ba2e3f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
package VNDB::Skins;
use v5.26;
use warnings;
use Exporter 'import';
our @EXPORT = ('skins');
my $ROOT = $INC{'VNDB/Skins.pm'} =~ s{/lib/VNDB/Skins\.pm$}{}r;
my $skins;
sub skins {
$skins ||= do { +{ map {
my $skin = /\/([^\/]+)\/conf/ ? $1 : die;
my %o;
open my $F, '<:utf8', $_ or die $!;
while(<$F>) {
chomp;
s/\r//g;
s{[\t\s]*//.+$}{};
next if !/^([a-z0-9]+)[\t\s]+(.+)$/;
$o{$1} = $2;
}
+( $skin, \%o )
} glob "$ROOT/static/s/*/conf" } };
$skins;
}
1;
|