L'activité du wiki du 25 avril 2009 au 18 mai 2010 en 3 minutes 44 de vidéo.
Réalisation Etienne Méléard
Copiez le script suivant à la racine de votre wiki (là où est le répertoire “data”) puis lancez le avec :
perl doku2gource.pl > my_doku.gource
#!/usr/bin/perl use Cwd; use Data::Dumper; sub crawl { my ($p) = @_; opendir(my $d, $p) or return; my @items = grep(!/^\.\.?$/, readdir($d)); closedir $d; foreach my $sf (grep(/\.changes$/, @items)) { open(my $f, $p.'/'.$sf) or next; while(my $l = <$f>) { next unless($l =~ /^\s*([0-9]+)\s+([^\s]+)\s+([a-z]{1,3})\s+([^\s]+)\s+([^\s]+)/i); my $tstp = $1; my $ip = $2; my $op = $3; my $fid = $4; my $user = $5; if($op =~ /(C|cc|sc)/i) { $op = 'A'; }elsif($op =~ /(D|dc|hc)/i) { $op = 'D'; }else{ $op = 'M'; } $fid =~ s/:/\//g; $col{$fid} = color() unless($col{$fid}); push(@log, join('|', $tstp, $user, $op, $fid, $col{$fid})); } close $f; } foreach my $sd (grep(-d $p.'/'.$_, @items)) { crawl($p.'/'.$sd); } } sub color { my ($p) = @_; return sprintf('%02X%02X%02X', int(rand(256)), int(rand(256)), int(rand(256))); } my $path = getcwd(); $path .= '/data' if(-d $path.'/data' && $path !=~ /^(|\/)data(|\/)$/); $path .= '/meta' if(-d $path.'/meta' && $path !=~ /^(|\/)meta(|\/)$/); our @log = (); our %col = {}; crawl($path); print join("\n", sort @log); 0;
Installez gource http://code.google.com/p/gource/, il est impératif que la machine supporte OpenGL, il y a des dépots pour debian et FC12+, les binaires windows sont sur le site.
Pour FC11 ou moins il faut recompiler ftgl dans sa dernière version avec le prefix “/usr” pour configure et faire de même avec gource.
Ensuite vous pouvez utiliser gource de 2 façons :
gource --log-format custom my_doku.gource --stop-on-idle
gource --log-format custom my_doku.gource --disable-progress --stop-at-end --output-ppm-stream - | ffmpeg -y -b 3000k -r 60 -f image2pipe -vcodec ppm -i - -vcodec flv my_doku.flv
Quelques options intéressantes de gource :