X-Git-Url: https://git.madduck.net/code/myrepos.git/blobdiff_plain/a7adfa1847accd1a1924f4f069feab9ae6acaaff..51d39a2b9b48c1e31f96cc6f629159aaa722fecf:/mr?ds=sidebyside diff --git a/mr b/mr index 3cc603f..a5ff4de 100755 --- a/mr +++ b/mr @@ -1,5 +1,6 @@ #!/usr/bin/perl +#man{{{ =head1 NAME mr - a Multiple Repository management tool @@ -226,6 +227,7 @@ Licensed under the GNU GPL version 2 or higher. http://kitenet.net/~joey/code/mr/ =cut +#}}} use warnings; use strict; @@ -359,12 +361,12 @@ if (! @repos) { $nochdir=1; } -my (@failed, @successful, @skipped); +my (@failed, @ok, @skipped); foreach my $repo (@repos) { action($action, @$repo); } -sub action { +sub action { #{{{ my ($action, $dir, $topdir, $subdir) = @_; my $lib= exists $config{$topdir}{$subdir}{lib} ? @@ -445,14 +447,14 @@ sub action { } } else { - push @successful, $dir; + push @ok, $dir; } print "\n"; } -} +} #}}} -sub showstat { +sub showstat { #{{{ my $count=shift; my $singular=shift; my $plural=shift; @@ -460,25 +462,25 @@ sub showstat { return "$count ".($count > 1 ? $plural : $singular); } return; -} -if (! @successful && ! @failed && ! @skipped) { +} #}}} +if (! @ok && ! @failed && ! @skipped) { die "mr $action: no repositories found to work on\n"; } print "mr $action: finished (".join("; ", - showstat($#successful+1, "successful", "successful"), + showstat($#ok+1, "ok", "ok"), showstat($#failed+1, "failed", "failed"), showstat($#skipped+1, "skipped", "skipped"), ).")\n"; if (@failed) { exit 1; } -elsif (! @successful && @skipped) { +elsif (! @ok && @skipped) { exit 1; } exit 0; my %loaded; -sub loadconfig { +sub loadconfig { #{{{ my $f=shift; my @toload; @@ -575,9 +577,9 @@ sub loadconfig { foreach (@toload) { loadconfig($_); } -} +} #}}} -sub modifyconfig { +sub modifyconfig { #{{{ my $f=shift; # the section to modify or add my $targetsection=shift; @@ -672,10 +674,11 @@ sub modifyconfig { open(my $out, ">", $f) || die "mr: write $f: $!\n"; print $out @out; close $out; -} +} #}}} # Finally, some useful actions that mr knows about by default. # These can be overridden in ~/.mrconfig. +#DATA{{{ __DATA__ [ALIAS] co = checkout @@ -801,3 +804,4 @@ config = ed = echo "A horse is a horse, of course, of course.." T = echo "I pity the fool." +#}}}