X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/8e92468eae9ac0ab8161a0c71ff6c6a0a8aef07a..930a60ae1dfa6c376b4d4b43f6383967d37f7f17:/IkiWiki/Plugin/monotone.pm

diff --git a/IkiWiki/Plugin/monotone.pm b/IkiWiki/Plugin/monotone.pm
index bdb564a71..67d4abbaa 100644
--- a/IkiWiki/Plugin/monotone.pm
+++ b/IkiWiki/Plugin/monotone.pm
@@ -23,6 +23,7 @@ sub import {
 	hook(type => "rcs", id => "rcs_recentchanges", call => \&rcs_recentchanges);
 	hook(type => "rcs", id => "rcs_diff", call => \&rcs_diff);
 	hook(type => "rcs", id => "rcs_getctime", call => \&rcs_getctime);
+	hook(type => "rcs", id => "rcs_getmtime", call => \&rcs_getmtime);
 }
 
 sub checkconfig () {
@@ -68,6 +69,7 @@ sub getsetup () {
 		plugin => {
 			safe => 0, # rcs plugin
 			rebuild => undef,
+			section => "rcs",
 		},
 		mtn_wrapper => {
 			type => "string",
@@ -228,7 +230,7 @@ sub read_certs ($$) {
 	my @ret;
 
 	my $line = $results[0];
-	while ($line =~ m/\s+key\s"(.*?)"\nsignature\s"(ok|bad|unknown)"\n\s+name\s"(.*?)"\n\s+value\s"(.*?)"\n\s+trust\s"(trusted|untrusted)"\n/sg) {
+	while ($line =~ m/\s+key\s["\[](.*?)[\]"]\nsignature\s"(ok|bad|unknown)"\n\s+name\s"(.*?)"\n\s+value\s"(.*?)"\n\s+trust\s"(trusted|untrusted)"\n/sg) {
 		push @ret, {
 			key => $1,
 			signature => $2,
@@ -558,7 +560,8 @@ sub rcs_recentchanges ($) {
 					# from the changelog
 					if ($cert->{key} eq $config{mtnkey}) {
 						$committype = "web";
-					} else {
+					}
+					else {
 						$committype = "mtn";
 					}
 				} elsif ($cert->{name} eq "date") {
@@ -575,13 +578,12 @@ sub rcs_recentchanges ($) {
 		}
 		
 		my @changed_files = get_changed_files($automator, $rev);
-		my $file;
 		
 		my ($out, $err) = $automator->call("parents", $rev);
 		my @parents = ($out =~ m/^($sha1_pattern)$/);
 		my $parent = $parents[0];
 
-		foreach $file (@changed_files) {
+		foreach my $file (@changed_files) {
 			next unless length $file;
 			
 			if (defined $config{diffurl} and (@parents == 1)) {
@@ -692,4 +694,8 @@ sub rcs_getctime ($) {
 	return $date;
 }
 
+sub rcs_getmtime ($) {
+	error "rcs_getmtime is not implemented for monotone\n"; # TODO
+}
+
 1