Collaborative Distributed Text Editing

 Gepubliceerd door om 22:55  Tools
jan 222005
 

Via Xiffy’s linkdump kwam ik vandaag bij MoonEdit, een “multi-platform collaborative text editor”. En waar SubEthaEdit alleen voor Apple-gebruikers beschikbaar is, werkt deze op Windows, Linux en FreeBSD. Ik ben met de Windows-versie aan de slag gegaan en ondanks het feit dat het duidelijk nog een product in ontwikkeling is, is versie 0.14.1 al heel goed bruikbaar.
Met de tutorial op de website van de maker ben je binnen een paar minuten aan de slag met de editor. De bijgevoegde readme.txt legt uit hoe je zelf een server, al dan niet met wachtwoord in de lucht brengt.

Een eerste test
Ik ging kijken op de sphere.pl server en voegde een vraag toe aan het requests.txt bestand dat er stond. Toen ik na wat bladeren weer bij dat bestand terug kwam, was Tom Dobrowolski’s (de auteur van de tool) net een antwoord aan het invoeren. Naar aanleiding daarvan had ik een vervolg vraag en al gauw leek het net een chatsessie.
Maar het belangrijkste verschil met een chatsessie is dat ik aan het einde daarvan het besprokene omgezet heb in een lijst met vragen en antwoorden.

een moonedit sessie - Klik voor grotere versie

Wil je het gesprek nalezen, dan kan dat. Als je het bestand requests.txt opent en dan in het menu Edit > History, dan krijg je bovenin het venster de schuifbalk te zien die je ook in de schermafdruk hierboven ziet. Schuif hem naar links om terug te gaan in de tijd. Druk daarna op de ‘pijl vooruit’ (aan de rechterkant) en de geschiedenis begint zich af te spelen.
Die geschiedenis kan overigens ook verwijderd worden.

Moonedit en wiki’s
Natuurlijk wilde ik dit kunnen gebruiken binnen een wiki. Immers, gelijktijdig een wiki-pagina kunnen wijzigen is nog beter dan na elkaar.
In eerste instantie wilde ik elke wiki-pagina editbaar maken met Moonedit, maar dan zouden de bestanden tussen de wiki en Moonedit gesnchroniseerd moeten worden op een manier die teveel problemen gaat opleveren. Moonedit slaat de bestanden namelijk op als tekstbestanden en de wiki gebruikt een database.

WikkaWiki (de gebruikte wiki) bleek de partij te zijn die het eenvoudigst te koppelen was, en met verbazingwekkend weinig code.

Moonedit wiki koppeling - Klik voor grotere versie

De koppeling
De koppeling werkt als volgt:
* bestanden gemaakt in Moonedit zijn gewone tekstbestanden.
* voor WikkaWiki heb ik een nieuwe ‘action’ geschreven die het mogelijk maakt in een bestaande wiki-pagina de volgende code in te voeren:

{{moonedit file=”MoonEditWiki.me”}}

Dit is voor de wiki het teken om het bestand MoonEditWiki.me op te halen uit de map waar Moonedit de bestanden opslaat en dat bestand te importeren in de bestaande wiki-pagina. Alle Wiki-code in de pagina wordt dan netjes verwerkt, links naar andere wiki-pagina’s werken gewoon etc.

Dat betekent dat je bijvoorbeeld met drie personen tegelijkertijd het bestand MoonEditWiki kunt zitten te wijzigen, terwijl iemand ander op de wiki de op dat moment meest recente versie ziet. Wordt in Moonedit de pagina opgeslagen, dan ziet een bezoeker de volgende keer de bijgewerkte pagina.

Hoewel het tot stand brengen van de koppeling tussen wiki-pagina en Moonedit-pagina vereist dat je zelf de code invoert in de wiki-pagina, lijkt me dat niet zo’n probleem. In tegenstelling tot wat ik eerst dag, lijkt met het op deze manier kunnen wijzigen van *alle* pagina’s niet zo nodig. Dit is bijvoorbeeld juist ideaal voor het live bijhouden van een verslag van een bijeenkomst, een notitiepagina tijdens een online vergadering etc.

Beperkingen
Er zijn ook een paar beperkingen:
* De geschiedenis van een MoonEdit-pagina wordt niet bijgehouden in de wiki.
* Wijzigingen in de pagina worden daarom ook niet via de RSS-feed zichtbaar gemaakt.
* Elk bestand dat met MoonEdit aangemaakt wordt is voor iedereen leesbaar te maken als er minimaal één pagina is waar men zelf de handler kan toevoegen. Hou hier dus rekening mee!

Zelf aan de slag
Om te beginnen moet je eerste even de client downloaden.
Bij de download van MoonEdit zit ook een server waarmee je zelf bestanden kunt delen. Je kunt ook deze server uitproberen: gosoftonline.com / poort: 32123
De pagina’s die op die server gemaakt worden kunnen in staat online.

Deel dit bericht:

  5 reacties aan “Collaborative Distributed Text Editing”

Reacties (5)
  1. Dat is toevallig zeg. Ik was ‘m ook net aan het testen. Slim bedacht trouwens, om dit te combineren met de wiki.

  2. Kun jij van ‘buiten’ aan mijn MoonEdit server (gosoftonline.com / 32123) ?
    Ik het is wat omslachtig om van hier uit zelf te testen of dat kan (moet ik inbellen etc.)
    Als dat kan zie ik dat nog wel als een aanvulling op onze telefonische vergadering van morgen. :-)

  3. Yep, ik kan er in. Kunnen we maandag wel eens uitproberen.

  4. Als ik dit voor DokuWiki zou willen kunnen, dan moet ik dus op zoek naar het Doluwiki equivalent van een WikkaWiki action? En ik moet een PC of een Linux-bak zien te vinden om MoonEdit [server] op te installeren ? [de BSD versie is voor i686 gecompileerd dus dat zal onder OSX wel niet willen werken]

  5. @Rino: ja, je zou iets moeten hebben waarmee je de MoonEdit-pagina (= tekstbestand) in een bestaande wiki-pagina kunt plakken. Ik weet niet of de auteur van plan is uiteindelijk de source-code vrij te geven (zodat het wellicht ook voor andere platformen beschikbaar komt). Hij denkt nog na over de licentievorm (al is ‘gratis voor niet-commercieel gebruik’ zijn uitgangspunt).

Sorry, het reactieformulier is momenteel gesloten.