]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blob - IkiWiki/Setup/Yaml.pm
ba9192faf6f29ceb4fbb1f4a944de4b41bce3bd6
[git.ikiwiki.info.git] / IkiWiki / Setup / Yaml.pm
1 #!/usr/bin/perl
3 package IkiWiki::Setup::Yaml;
5 use warnings;
6 use strict;
7 use IkiWiki;
8 use YAML;
10 sub loaddump ($$) {
11         my $class=shift;
12         my $content=shift;
14         IkiWiki::Setup::merge(Load($content));
15 }
17 sub gendump ($@) {
18         my $class=shift;
20         "# IkiWiki::Setup::Yaml - YAML formatted setup file",
21         "#",
22         (map { "# $_" } @_),
23         "#",
24         IkiWiki::Setup::commented_dump(\&dumpline, "")
25 }
28 sub dumpline ($$$$) {
29         my $key=shift;
30         my $value=shift;
31         my $type=shift;
32         my $prefix=shift;
33         
34         $YAML::UseHeader=0;
35         my $dump=Dump({$key => $value});
36         chomp $dump;
37         if (length $prefix) {
38                 $dump=join("", map { $prefix.$_ } split(/\n/, $dump));
39         }
40         return $dump;
41 }
43 1