Entries Tagged as ''

lazy link fixing in a wiki with ftp hosting only

ok, immer noch webmontag.de wiki housekeeping.
durch die restrukturierung mit namensräumen sind einige links kaputt gegangen, z.b. auf die FAQ, weil der link jetzt web_montag: statt web_montag heissen muss. normalerweise ist das auf der shell schnell erledigt, da bieten sich die tools sed, perl an.
wenn das wiki aber nur per ftp erreichbar ist und keine suchen-und-ersetzen funktionalität im wiki eingebaut ist, hilft ein trick: man mountet das wiki per curlftpfs in das lokale dateisystem. dann sind diese manipulationen kein problem mehr:

perl -pi'*.orig' -e 's/web_montag/web_montag\:/' */index.txt

ist alles gut gelaufen, löscht man die backup-dateien:

find . -type f -name "*.orig" -exec rm {} \;

moving dokuwiki pages with perl

wir strukturieren gerade das webmontag.de-wiki um. dabei sind hunderte von seiten umzuziehen, was langeweile und RSI nach sich ziehen kann. es sei denn, man benutzt perl::mechanize, das in kombination mit dem pagemove-plugin die arbyte erledigen kann.

#!/usr/bin/perl
use strict;
use WWW::Mechanize;
use WWW::Mechanize::FormFiller;
use URI::URL;

# list with page names
my @urls = `cat liste.txt`;
my $agent = WWW::Mechanize->new( autocheck => 1 );
my $formfiller = WWW::Mechanize::FormFiller->new();
$agent->env_proxy();

$agent->get('http://webmontag.de/index?do=login');
$agent->form_number(5) if $agent->forms and scalar @{ $agent->forms };
$formfiller->add_filler( 'u' => Fixed => 'admin' );
$formfiller->add_filler( 'p' => Fixed => 'pass' );
$formfiller->fill_form( $agent->current_form );
$agent->submit();

foreach (@urls) {

# e.g. 05.03.2007_hamburg
print $_;
( my $d, my $m, my $j, my $o ) = m/(\d\d)\.(\d\d)\.(\d\d\d\d)_(.*)/;
print $d, $m, $j, $o, "\n";
$agent->get( "http://webmontag.de/" . $_ . "?do=admin&page=pagemove" );
$agent->form_number(5) if $agent->forms and scalar @{ $agent->forms };
$formfiller->fill_form( $agent->current_form );
$formfiller->fill_form( $agent->current_form );
$formfiller->add_filler( 'nsr' => Fixed => '' );
$formfiller->add_filler( 'ns' => Fixed => ':' );
$formfiller->add_filler( 'newns' => Fixed => 'location:' . $o );
$formfiller->add_filler( 'pagename' => Fixed => $j . "-" . $m . "-" . $d );
$formfiller->fill_form( $agent->current_form );
$agent->submit();

}

WebMontag Hamburg/Mixxt

Erstmal habe ich zu vermelden, dass der plan, den webmontag in hamburg wieder in einem lokal stattfinden zu lassen, das wlan und einen beamer bietet, in trockenen tüchern ist. der abend ist angemeldet und ich werde kurz vorher nochmal sicherstellen, dass niemand vor einer geschlossen tür steht. normalerweise macht das konsum nämlich erst später auf.

Für den 1. september sind auch schon zwei kurzvorträge vorgesehen, für die ein beamer ganz praktisch ist. was wäre eine vorführung eines videoplayers ohne dass man was zu glotzen hat?

Nun zur diskussion, die sich in den letzten tagen um den webmontag und mixxt entsponnen hat. einen kommentar habe ich schon auf der relaunch-seite des webmontags hinterlassen. kurzfassung: finde ich nicht gut. das WM-wiki funktioniert. momentan zwar eher schlecht als recht, aber der relaunch schlummert ja nur (und erwacht am freitag erstmals wieder im IRC). mixxt hat nun angeboten, die kommunikation auf ihren seiten stattfinden zu lassen. selbstlos finde ich das nicht. und ihre aufgepeppten wiki/termin/community seiten finde ich nun nicht gerade state-of-the-art. dann doch lieber an das KISS-prinzip halten: Keep It Simple, Stupid.

die mixxt-seiten könnten nun das WM-wiki ersetzen oder ergänzen. die erste option setzt sich hoffentlich nicht durch. erste kommentare gehen eher in die richtung: selber machen ist besser. die zweite option, mixxt als ergänzung, bringt fragmentierung mit sich: wer hat sich wo angekündigt, wo findet die diskussion statt? das finde ich, gelinde gesagt, schädlich.

etwas grinsen musste ich über kommentare wie „danke erst Mal im Namen aller Webmontagler (Nils)“ und „warum wir in Hamburg gern mixxt einsetzen würden (Vivian)“ – warum sprechen die beiden im namen aller?