Immutable Page History Attachments

WikiKursHandOut

Was ist ein Wiki?

Ein Wiki (auch WikiWiki oder WikiWikiWeb genannt) ist eine Sammlung von Webseiten, die nicht nur gelesen, sondern auch von den Benutzern direkt und einfach geändert werden können. Wikiwiki ist Hawaiisch und bedeutet „schnell“.

Das erste WikiWikiWeb wurde 1995 von Ward Cunningham entwickelt und in Betrieb genommen. Die Idee, dass Inhalte im WWW editierbar sein sollen, geht dabei bis auf die ursprünglichen Ideen des Erfinders des World Wide Web, Tim Berners-Lee zurück.

Der Wiki-Weg

  • offen und kooperativ: oft darf jeder alles ändern
  • einfach, schnell und flexibel: man kann beliebige Inhalte eingeben und speichern, sie sind sofort danach verfügbar. Inhalt steht vor Aussehen.
  • sicher: MoinMoin merkt sich alle alten Seitenversionen

  • vernetzt: die Informationen im Wiki sind sehr stark miteinander verknüpft
  • erreichbar: man braucht nur einen Browser und eine Netzwerkverbindung zum Wiki
  • flexibel: in einem Wiki lassen sich Informationen vieler Arten speichern, z.B. Schulungen, Folienvorträge und Brainstorming

Was ist MoinMoin?

MoinMoin ist eine Software, mit der man ein Wiki betreiben kann.

Sie ist unter GPL-Lizenz frei verfügbar und in der Programmiersprache Python implementiert und damit auch erweiterbar.

Finden von Informationen

MoinMoin bietet viele Möglichkeiten, Informationen im Wiki zu finden:

Suchfunktion

  • Suchfeld im Navigationsbereich der Seite

    • Suchbegriffe eintippen + Eingabetaste (oder Titel anklicken) macht eine Titelsuche

    • Suchbegriffe eintippen + Text anklicken macht eine Volltext-Suche

  • Menüpunkt SeiteFinden

    • Indices nach Seitennamen und Worten im Seitennamen
    • erweiterte Suchfunktionen

(!) Die Titelsuche kann auch als schnelle Sprungfunktion verwendet werden, wenn man den Seitennamen nur so ungefähr weiß.

Weitergehende Informationen finden sich auf der Hilfeseite HilfeZumSuchen.

Orientierung im Wiki

Auf dem Laufenden bleiben

In einem Wiki kann sich in kurzer Zeit viel ändern - jeder kann ja jede Seite ändern, Seiten hinzufügen oder Seiten löschen.

Deshalb kann man auf der Seite AktuelleÄnderungen alle diese Änderungen effektiv mitverfolgen.

Es wird dort zu jeder Änderung aufgelistet:

  • ein Link zu einer Differenzdarstellung
  • ein Link zur geänderten Seite (sowie zur Info-Funktion dieser Seite)
  • wann die Änderung erfolgte
  • wer die Änderung gemacht hat
  • ein Kommentar, der bei der Änderung eingegeben wurde

(!) Wenn man im Wiki angemeldet ist, kann man auf dieser Seite auch ein zeitliches Lesezeichen setzen. Damit merkt sich das Wiki für jeden Benutzer, bis wann er die Änderungen bereits gelesen hat und zeigt ihm danach nur noch die Neuigkeiten danach an.

Anmelden beim Wiki

Die Benutzung eines Wiki ist oft ohne Anmeldung möglich (dies hängt von den Sicherheitseinstellungen ab).

Allerdings ist selbst dann die Benutzung mit Anmeldung komfortabler:

  • man kann auf AktuelleÄnderungen ein zeitliches Lesezeichen setzen

  • man kann die Navigation persönlich anpassen
  • man kann seine Zeitzone einstellen
  • man kann Seiten abonnieren und sich bei Änderung benachrichtigen lassen
  • u.v.m.

Die Anmeldung erfolgt über den Link Anmelden im Navigationsbereich. Man muss dann folgendes eingeben:

  • Name - es empfiehlt sich VornameNachname

  • Passwort (nicht zu einfach!)
  • Passwort-Wiederholung (um Vertipper zu vermeiden)
  • E-Mail-Adresse (für Benachrichtigungen oder auch wenn man sein Passwort vergessen hat...)
  • /!\ Auf Benutzer anlegen klicken! /!\

Damit wird das Benutzerkonto angelegt und man kann sich danach dann mit Name/Passwort beim Wiki anmelden.

(!) Dass man angemeldet ist, sieht man dadurch, dass der Benutzername im Navigationsbereich angezeigt wird.

Benutzer-Einstellungen

Nach dem Anlegen ihres Benutzerkontos und der Anmeldung können Sie Ihre Benutzereinstellungen anpassen. Klicken Sie hierzu auf Einstellungen. (Klicken Sie auf den Link Einstellungen oben auf der Seite)

Die meisten Einstellungen kann man auf den Vorgabewerten belassen, folgende will man aber ggf. ändern:

  • Zeitzone (zum korrekten Umrechnen der internen UTC-Zeit)
  • Größe des Texteingabefelds (hängt von Bildschirmauflösung / Fonteinstellung ab)
  • ggf. bevorzugte Sprache (bei richtig konfiguriertem Browser unnötig)

Danach unten auf Speichern klicken.

Die eigene Wiki-Homepage

Nach Anmeldung erscheint im Navigationsbereich der eigene Name und das Wiki verlinkt diesen auf eine gleichnamige Seite im Wiki - Ihre persönliche Homepage!

Wenn man auf diesen Link klickt, sieht man erstmalig eine Besonderheit von Wikis: anstatt eine nicht existierende Seite mit 404 not found zu quittieren, kommt einem das Wiki entgegen und unterstützt einem beim Anlegen dieser Seite.

Wenn man einfach den Anweisungen dort folgt, bekommt man schließlich eine Vorlage zur eigenen Homepage in einem Formular angezeigt.

Man kann dann einfach sinngemäß die Vorgabe abändern, einen optionalen Kommentar eingeben und dann mit dem Knopf Speichern die Seite abspeichern.

Der textbasierte Editor

Wir haben ihn soeben gerade beim Anlegen der eigenen Homepage bereits kennen gelernt: den text-basierten Editor von MoinMoin. Man kann ihn natürlich nicht nur dafür verwenden, sondern auch um beliebige andere Seiten im Wiki zu bearbeiten.

Man klickt dazu einfach auf Editieren bzw. Editieren (Text) im Navigationsbereich und schon bietet einem MoinMoin die aktuelle Seite zur Bearbeitung an.

(!) Man kann nichts kaputt machen, denn die vorherige Version des Text wird immer gesichert und kann ggf. auch wieder hergestellt werden.

Wichtig ist, während der Bearbeitung einer Seite öfters mal die Vorschau-Funktion zu benutzen, denn MoinMoin legt dabei eine interne Sicherungskopie des aktuellen Editorinhalts an.

Wenn man die Änderungen abgeschlossen hat, sollte man ggf. auch noch einen passenden Kommentar eingeben (erscheint dann auf AktuelleÄnderungen und in der Historie der Seite) und dann auf Speichern klicken.

Sollten mal zwei Leute gleichzeitig eine Seite bearbeiten, kann der Erste dieses problemlos tun. Der Zweite erhält eine Warnung und sollte die Änderungen des Ersten mit seinen eigenen zusammenführen. Wenn man eine Seite alleine bearbeiten will, sollte man dies an ihrem Anfang vermerken.

(!) Man sollte nach dem Speichern nicht mit dem "Zurück"-Knopf des Browsers wieder auf die Editorseite zurückblättern (dies kann zu merkwürdigen Edit-Konflikten führen), sondern den von MoinMoin angeboten Editieren-Link erneut anklicken.

Falls man nicht speichern will, sondern die Änderungen verwerfen will, sollte man auf Abbrechen klicken, damit MoinMoin weiß, dass man mit Editieren fertig ist.

Weiteres siehe auf HilfeZumEditieren.

Tastenkombinationen

Im Editor funktionieren die üblichen Tastenkombinationen:

  • Shift-Cursortasten für Selektieren

  • Strg-C für Kopieren

  • Strg-X für Ausschneiden

  • Strg-V für Einfügen

  • Strg-Z für Rückgängig machen

  • Strg-Y für Wiederholen

Maus

Ebenso kann man natürlich mit der Maus selektieren und die entsprechenden Menüpunkte des Browsers verwenden.

  • (!) Linux / X11: Ein Doppelklick links selektiert und kopiert ein Wort, ein Klick auf die mittlere Maustaste ist einfügen.

Textgestaltung mit Wiki-Markup

Wiki verwendet nicht einfach HTML (die normalerweise für Webseiten verwendete HyperText Markup Language), sondern eine eigene, vereinfachte MoinMoin-Wiki Markup Language, also einer eigenen Konvention für die Eingabe von Inhalten.

HTML

<h1>Überschrift</h1>
<p>
Dies ist ein Link zu meiner Homepage: <a href="/VornameNachname">VornameNachname</a>
</p>
<p>
Eine Liste:
<ul>
 <li>bla</li>
 <li>blubb</li>
</ul>
</p>

MoinMoin-Wiki

= Überschrift =
Dies ist ein Link zu meiner Homepage: VornameNachname

Eine Liste:
 * bla
 * blubb

(!) Das MoinMoin-Wiki Markup wird auf den folgenden Seiten noch genauer erklärt.

Absätze

Die einfachste Art, Text in ein Wiki einzugeben, ist ähnlich wie in einer Textverarbeitung:

Man schreibt einfach drauf los. :)

Die einzige Besonderheit dabei ist, dass man für einen Absatz zweimal auf die Eingabetaste tippen muss:

Eingabe im Editor-Formular

Erster Absatz.
Immer noch erster Absatz.

Zweiter Absatz.

Dritter Absatz.

Anzeige

Erster Absatz. Immer noch erster Absatz.

Zweiter Absatz.

Dritter Absatz.

Trennlinien

Eingabe

Erster Teil.
----
Zweiter Teil.

Anzeige

Erster Teil.


Zweiter Teil.

Überschriften

Eingabe

= erste Überschriftsebene mit =-Zeichen =
== zweite ==
=== dritte ===
==== vierte ====
... (bis zu 6 möglich)

Anzeige

erste Überschriftsebene mit =-Zeichen

zweite

dritte

vierte

... (bis zu 6 möglich)

(!) Wenn eine Überschrift nicht richtig dargestellt wird, liegt es i.d.R. an einem dieser Punkte:

  • es folgen nach den abschließenden =-Zeichen noch ("unsichtbar") Leerzeichen
  • die Anzahl der =-Zeichen vorne und hinten stimmt nicht überein

Listen

Punktelisten

Eingabe

Meine Haustiere:
 * Hund
 * Katze
  * Maus

Anzeige

Meine Haustiere:

  • Hund
  • Katze
    • Maus

Aufzählungen

Eingabe

Noch zu erledigen:
 1. Hund füttern
 1. Katze füttern
  1. Maus raus

Anzeige

Noch zu erledigen:

  1. Hund füttern
  2. Katze füttern
    1. Maus raus

(!) MoinMoin kann selbst zählen!

(!) Die Anzahl der führenden Leerzeichen bestimmt die Hierachiestufe der Liste.

Es gibt noch weitere Listen, siehe HilfeZuListen.

Text-Stil

Wiki-Markup Eingabe

Anzeige

''betont (kursiv)''

betont (kursiv)

'''stark betont (fett)'''

stark betont (fett)

'''''fett und kursiv'''''

fett und kursiv

__unterstrichen__

unterstrichen

--(durchgestrichen)--

durchgestrichen

`Festbreitenschrift`

Festbreitenschrift

(!) Weitere auf HilfeZumFormatieren.

Tabellen

Einfachste Tabelle

 || eins || zwei || drei ||
 || vier || fünf || sechs ||
  • eins

    zwei

    drei

    vier

    fünf

    sechs

Allgemeines Tabellen-Layout

 ||||||<tablewidth="80%">'''Kopfzeile'''||
 ||Zelle 1||Zelle 2||Zelle 3||
 ||<rowspan=2> Zeilen-übergreifend||||<bgcolor="#AAAAFF"> 2 Spalten übergreifend||
 ||<rowbgcolor="#FFFFAA">Zelle 2||Zelle 3||
  • Kopfzeile

    Zelle 1

    Zelle 2

    Zelle 3

    Zeilen-übergreifend

    2 Spalten übergreifend

    Zelle 2

    Zelle 3

Zellenbreite

 || schmal ||<:99%> breit ||
  • schmal

    breit

Übergreifende Zeilen und Spalten

 ||<|2> 2 Zeilen || Zeile 1 ||
 || Zeile 2 ||
 ||<-2> Zeile 3, 2 Spalten übergreifend ||
  • 2 Zeilen

    Zeile 1

    Zeile 2

    Zeile 3, 2 Spalten übergreifend

Ausrichtung

 ||<(50%> links ||<^|3> oben ||<v|3> unten ||
 ||<:> mittig ||
 ||<)> rechts ||
  • links

    oben

    unten

    mittig

    rechts

Farben

 ||<#FF0000> rot ||<#00FF00> grün ||<#0000FF> blau ||
  • rot

    grün

    blau

Wiki-interne Links

Eine der wichtigsten Funktionen im Wiki ist das Verlinken auf andere Wiki-Seiten - deshalb geht dies auch sehr einfach.

WikiNamen ("CamelCase")

Wenn man WorteZusammenschreibt wie z.B. bei VornameNachname oder CamelCase oder MoinMoin, so dass in einem Wort mindestens 2 Wechsel Großbuchstabe-Kleinbuchstabe(n) vorkommen, so verlinkt MoinMoin dieses Wort automatisch zu der gleichnamigen Seite.

Dies geht sehr einfach, es ist kein Wiki-Markup notwendig. Aber die ungewöhnliche Schreibweise ist nicht jedermanns Sache, daher gibt es eine weitere Alternative, die sog. "free links".

Eingabe

CamelCase !CamelCaseAberNichtVerlinkt

Anzeige

CamelCase CamelCaseAberNichtVerlinkt

Möchte man Seiten verlinken, die nicht CamelCase sind oder wenn man einfach kein CamelCase mag, kann man wie folgt verlinken:

Eingabe

Ein [[freier Link]] und [[andere Seite|eine andere Seite]].

Anzeige

Ein freier Link und eine andere Seite.

Rückwärtsverfolgung von Links

Wenn man auf den Seitennamen im Navigationsbereich klickt, sucht das Wiki nach Seiten, die auf diesen Seitennamen verlinken.

Dies wird z.B. für sogenannte Wiki-Badges (Wiki-Sticker) verwendet. Man schreibt einfach irgendwo hin:

ToDo: Kunden XY zurückrufen wegen ...

ToDo ist CamelCase und verlinkt daher auf eine gleichnamige Seite, was nicht weiter aufregend ist. :)

Man kann aber auf der Seite ToDo einfach auf den Seitennamen klicken und siehe da, man findet alle Seiten, auf denen es noch irgendetwas "zu tun" gibt! (!)

Externe Links

Man kann natürlich auch auf externe Inhalte verlinken (z.B in's Internet oder auf andere Intranet-Seiten).

Eingabe

http://example.net/

[[http://moinmoin.wikiwikiweb.de/|MoinMoin Wiki]]

ftp://example.org/pub/

{{http://moinmoin.wikiwikiweb.de/wiki/common/moinmoin.png}}

Anzeige

http://example.net/

MoinMoin Wiki

ftp://example.org/pub/

http://moinmoin.wikiwikiweb.de/wiki/common/moinmoin.png

(!) Wie man sieht, setzt [[...]] einen Link zum Zielobjekt, {{...}} bettet das Zielobjekt ein (z.B. Bilder).

Datei-Anhänge

MoinMoin bietet die Möglichkeit, Dateien direkt an eine Wikiseite "anzuhängen".

Eingabe

[[attachment:brief.txt]]

{{attachment:foto.jpg}}

Anzeige

brief.txt

[ATTACH]

(!) Solange die Dateien noch nicht hochgeladen wurden, erscheint die Aufforderung hierzu:

  • bei Links erscheint der Link in grau (wie bei Links auf nicht-existierende Wikiseiten)
  • bei eingebetteten Bildern erscheint ein Ersatzbild (z.B. Büroklammer)

Man kann dann einfach draufklicken und die Datei per Browser aus dem Dateisystem des Rechners in's Wiki hochladen. Dann erscheint die normale Darstellung:

  • bei Links erscheint der Link in blau
  • bei eingebetteten Bildern erscheint das Bild

Symbole, Smileys

MoinMoin unterstützt auch einige graphische Symbole, sowie die in E-Mail und Chat üblichen sog. Smileys:

{1} {2} {3}

{1} {2} {3}

/!\ (!) (./) {X} {i} {OK}

/!\ (!) (./) {X} {i} {OK}

{*} {o}

{*} {o}

:) B-) :( X-(

:) B-) :( X-(

Weitere siehe HilfeZuSmileys.

(!) Die folgenden vier Kapitel behandeln fortgeschrittene Details. Wenn Sie das nicht interessiert, können Sie sie auch einfach überspringen.

Dynamische Inhalte

MoinMoin ist sehr modular aufgebaut und durch Plugins in seinen Funktionen erweiterbar. Makros, Parser, Aktionen usw. können entweder eingebaut, mitgeliefert oder als Plugin selbst installiert werden.

Makros

Ein Makro wird als Wiki-Markup eingegeben und verarbeitet einige wenige Parameter und erzeugt daraus eine Ausgabe, die im Content-Bereich angezeigt wird.

Parser

Ein Parser wird als Wiki-Markup eingegeben und verarbeitet einige wenige Parameter und einen i.d.R. mehrzeiligen Block von Textdaten und erzeugt daraus eine Ausgabe, die im Content-Bereich angezeigt wird.

Aktion

Eine Aktion wird meist aus dem Menü aufgerufen (oder durch ein Macro) und erzeugt eine komplette HTML-Seite selbst.

Makros

Ein Makro wird durch "<<Makroname(Parameter)>>" aufgerufen. Parameter sind von Makro zu Makro unterschiedlich und können auch ganz wegfallen.

Eingabe

<<TableOfContents>>
----
|| <<MonthCalendar>> || <<MonthCalendar(,2000,1)>> ||
----
Ein bestimmter Zeitpunkt - weltweit: <<DateTime(2006-01-26T23:03:25Z)>>

Etwas Text mit einer Fußnote.<<FootNote(Hier eine Fußnote.)>>

Anzeige


<< <  2024 / 12 >  >>
Mon Tue Wed Thu Fri Sat Sun
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          

<< <  2000 / 1 >  >>
Mon Tue Wed Thu Fri Sat Sun
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            


Ein bestimmter Zeitpunkt - weltweit: 2006-01-27 00:03:25

Etwas Text mit einer Fußnote.1

Parser

Eingabe

 {{{#!highlight python
 def hallo(name):
     print "Hallo %s" % name
 }}}

Anzeige

   1 def hallo(name):
   2     print "Hallo %s" % name

Aktionen

Einige Beispiele eingebauter Aktionen:

  • die Info-Aktion (siehe Navigationsbereich)
  • ein Teil der Suchfunktion
  • Datei-Anhänge (AttachFile-Aktion)

  • und weitere im Aktions-Menü

Der grafische Editor

Alternativ zur Eingabe von Wiki-Markup per einfachem Text-Editor bietet MoinMoin auch einen grafischen WYSIWYG-Editor an, der von der Oberfläche und Bedienung an normale Textverarbeitungen erinnert.

Technische Voraussetzung: Browser Mozilla/Firefox/Netscape oder IE in aktueller Version + Javascript aktiviert.

Welcher Editor angeboten bzw. persönlich bevorzugt wird, kann man in den BenutzerEinstellungen einstellen. Man kann im Editor auch jeweils in den anderen Editor umschalten (Text-Modus vs. GUI-Modus).

Vorteile grafischer Editor:

  • hübscher
  • einfacher

Nachteile grafischer Editor:

  • lädt langsamer
  • weniger flexibel
  • Implementierung ist noch nicht fehlerfrei

Weitere Seiten anlegen

Neue Seiten legt man am Einfachsten und Besten so an:

  • man überlegt sich zuallererst einen guten Seitennamen

  • dann editiert man eine geeignete bereits vorhandene Seite und setzt dort einen Link auf die neue Seite und speichert ab
  • auf der Seite erscheint nun ein Link zu der neuen Seite, den man anklickt
  • nun erscheint der Hinweis, dass diese Seite nicht existiert und ob und wie man sie anlegen möchte:
    • als leere Seite
    • unter Verwendung einer Vorlage, eine Liste von Vorlagen wird links angeboten
    • (!) rechts wird übrigens eine Liste mit ähnlichen Seitennamen angezeigt. Hier sollte man schauen, ob es nicht bereits eine leicht anders benannte Seite zum gleichen Thema gibt

  • dann wird der Editor aufgerufen und man kann die Seite mit Inhalten füllen und zuguterletzt speichern

(!) Diese Methode hat den Vorteil, dass neue Seiten immer von bereits existierenden Seiten per Link erreichbar sind.

Wiki-Etikette

Vor allem in öffentlichen Wikis, wo sehr viele Leute zusammenarbeiten (die sich auch oft nicht anderweitig kennen), sollte man immer von wohlwollendem Verhalten der Anderen ausgehen, solange nicht das Gegenteil erwiesen ist.

Wenn also jemand einen Satz einfach löscht, den man selbst geschrieben hat, könnte es sein, dass dieser einfach falsch war oder nicht auf diese Seite gepasst hat.

Ebenso sollte man natürlich auch wohlwollendes eigenes Verhalten an den Tag legen, also z.B. nicht Meinungsäußerungen anderer verfälschen. Ebensowenig sollte man nicht etwas löschen oder ändern, wenn man sich nicht wirklich sicher ist.

Die persönliche Homepage sollte i.d.R. als "Eigentum" des entsprechenden Benutzers betrachtet und dort keine Änderungen außer z.B. Nachrichten an den Benutzer gemacht werden.

Anwendungen

Wiki ist dadurch, dass nur wenig Vorgaben gemacht werden und Freitext eingegeben werden kann, für sehr viele Anwendungen verwendbar. Man kann es für alles benutzen, was sich durch verlinkte Text-Seiten abbilden lässt.

Beispiele

  • persönliche Notizen (statt "Zettelwirtschaft")
  • Besprechungs-Protokolle
  • ToDo-Listen

  • Nachrichten auf Wiki-Homepage, asynchrone Kommunikation
  • gemeinsame Dokumentations-Erstellung
  • Brainstorming
  • persönliche und gemeinsame Linklisten
  • effiziente Alternative zu E-Mail / Telefon
  • u.v.m.

Struktur im Wiki

Hierarchie-Ebenen

Viele konventionelle Webseiten verwenden weit verzweigte Baumstrukturen mit vielen Hierarchie-Ebenen.

Im Wiki wird sehr stark und gerne verlinkt. Der Einfachheit halber wird daher oft eine flachere Struktur verwendet:

  • alle wichtigen Themen werden auf Hauptseiten angelegt
  • nur wenn ein Thema viele Unterthemen hat (die aber keine Hauptthemen darstellen), werden dazu Unterseiten benutzt.

    (!) Unterseiten legt man einfach als HauptSeite/UnterSeite an.

Konventionen

Wiki lässt den Benutzern viele Freiheiten - es gibt keine Eingabemasken wie bei Datenbankanwendungen, sondern man kann im Prinzip machen was man will und wie man es will.

Natürlich sollte man vermeiden, dass es ein komplettes Chaos gibt. B-)

Daher ist es üblich, in der Startphase eines Wikis sich verstärkt Gedanken zu Struktur und Konventionen zu machen:

  • Anlage einer Grundstruktur von Seiten
  • Definitionen von Namenskonventionen für Seitennamen
  • Festlegung CamelCase vs. Free Link-Verwendung

  • Definition von wichtigen Kategorien

In Wikis, die schon eine Weile laufen, ist es üblich, vorhandene Strukturen einfach weiterzuführen.

  1. Hier eine Fußnote. (1)