diff --git a/doc/lfun/is_class_member b/doc/lfun/is_class_member
index 7019447..1018e71 100644
--- a/doc/lfun/is_class_member
+++ b/doc/lfun/is_class_member
@@ -1,155 +1,174 @@
+
 is_class_member()
-FUNKTION:
-     int is_class_member(string|string* class);
+*****************
 
-DEFINIERT IN:
-     /std/thing/description.c
 
-ARGUMENTE:
-     string/string* class	- String oder Stringarray der Klasse(n)
+FUNKTION
+========
 
-BESCHREIBUNG:
-     Es wird getestet, ob das Objekt in eine der in class angegebenen
-     Klassen faellt. In diesen Test werden die folgenden Eigenschaften des
-     Objektes einbezogen:
+   int is_class_member(string|string* class);
 
-       1. Die Rasse des Objektes (bei Lebewesen),
-       2. die IDs des Objektes und
-       3. die explizit angegebenen Klassen des Objektes.
-       4. einigen impliziten Klassen, die sich aus den Klassen in 3 ergeben.
 
-     Die moeglichen Klassen sind in /sys/class.h definiert. Momentan stehen
-     folgende Klassen zur Verfuegung:
+DEFINIERT IN
+============
 
-     CL_AMMUNITION
-          Das Objekt eignet sich als Munition.
-     CL_ANIMAL
-          Das Objekt ist ein Tier.
-     CL_ARACHNID
-          Das Objekt in ein Spinnenwesen.
-     CL_BIGBANG
-          Dieses Objekt kann mehreren Lebewesen auf einmal Schaden zufuegen.
-     CL_BIRD
-          Ein Vogel.
-     CL_CRAWLING
-          Dieses Wesen bewegt sich kriechend.
-     CL_CURSE
-          Das Objekt ist ein Fluch (zB. ein Sprachfluch).
-     CL_DEMON
-          Bei dem Objekt handelt es sich um einen Daemon.
-     CL_DISEASE
-          Eine Krankheit.
-     CL_DRAGON
-          Ein Drache.
-     CL_DWARF
-          Fuer unsere kleinen Gaeste...
-     CL_ELF
-          Elfen aller Art.
-     CL_ELEMENTAL
-          Ein Elementar irgendeiner Art. Material setzen waere angebracht.
-     CL_EXPLOSIVE
-          Bei dem Objekt handelt es sich um einen Sprengstoff.
-     CL_FELINE
-          Felinen und andere katzenartigen Lebewesen.
-     CL_FISH
-          Fische - keine Meeressaeuger!
-     CL_FLYING
-          Dieses Wesen bewegt sich fliegend.
-     CL_FROG
-          Froesche - auch gefroschte Spieler.
-     CL_GHOST
-          Geister und geisterhafte Wesen.
-     CL_GHOUL
-          Ein Ghoul. Er faellt automatisch in die Klasse CL_UNDEAD.
-     CL_GIANT
-          Ein riesiges Lebewesen.
-     CL_GNOME
-          Ein Gnom.
-     CL_GOBLIN
-          Ein Goblin.
-     CL_HOBBIT
-          Ein Hobbit.
-     CL_HOBGOBLIN
-          Ein Hobgoblin. Er faellt automatisch auch in die Klasse CL_GOBLIN.
-     CL_HUMAN
-          Ein Mensch.
-     CL_INORGANIC
-          Anorganische Lebewesen wie Metallmonster
-     CL_INSECT
-          Insekten (Nicht mit Spinnen verwechseln)
-     CL_LIVING
-          Lebewesen im allgemeinen.
-     CL_MAMMAL
-          Saeugetiere.
-     CL_MAMMAL_LAND
-          Landsaeugetiere
-     CL_MAMMAL_WATER
-          Meeressaeuger.
-     CL_ORC
-          Ein Ork.
-     CL_PLANT
-          Pflanzen und pflanzenartige Monster.
-     CL_POISON
-          Das Objekt ist selbst ein Gift
-     CL_POISONOUS
-          Das Objekt kann einen Spieler/NPC vergiften.
-     CL_REPTILE
-          Reptilien.
-     CL_SHADOW
-          Schattenwesen.
-     CL_SKELETON
-          Ein Skelett. Es faellt automatisch in die Klasse CL_UNDEAD.
-     CL_SLIME
-          Fuer Einzeller und aehnliches Schleimgetier
-     CL_SNAKE
-          Schlangen.
-     CL_SWIMMING
-          Dieses Wesen bewegt sich schwimmend.
-     CL_TROLL
-          Ein Troll.
-     CL_UNDEAD
-          Ein untotes Lebewesen.
-     CL_WALKING
-          Dieses Wesen bewegt sich gehend.
-     CL_VAMPIRE
-          Ein Vampir. Er faellt automatisch in die Klasse CL_UNDEAD.
-     CL_ZOMBIE
-          Ein Zombie. Er faellt automatisch in die Klasse CL_UNDEAD.
+   /std/thing/description.c
 
-     Implizite Klassen:
-     Bei einigen Klassen wird im AddClass() automatisch eine oder mehrere
-     weiterer Klassen hinzugefuegt und im RemoveClass() die entsprechenden
-     impliziten Klassen auch automatisch entfernt.
-     Wuenscht man diese impliziten Klassen nicht, muss man nach dem AddClass()
-     diese mittels eines entsprechenden RemoveClass() entfernen.
-     Die impliziten Klassen einer Klasse lassen sich mit Hilfe der Funktion
-     QueryImplicitClasses() in CLASSDB herausfinden:
-       CLASSDB->QueryImplicitClasses(...)
-     Momentan sind dies:
-     CL_ZOMBIE:       CL_UNDEAD
-     CL_SKELETON:     CL_UNDEAD
-     CL_GHOUL:        CL_UNDEAD
-     CL_VAMPIRE:      CL_UNDEAD
-     CL_HOBGOBLIN:    CL_GOBLIN
-     CL_MAMMAL_LAND:  CL_MAMMAL, CL_ANIMAL
-     CL_MAMMAL_WATER: CL_MAMMAL, CL_ANIMAL
-     CL_SNAKE:        CL_REPTILE
-     CL_ARACHNID:     CL_ANIMAL
-     CL_BIRD:         CL_ANIMAL
-     CL_FISH:         CL_ANIMAL
-     CL_FROG:         CL_ANIMAL
-     CL_INSECT:       CL_ANIMAL
-     CL_MAMMAL:       CL_ANIMAL
-     CL_REPTILE:      CL_ANIMAL
-     CL_SNAKE:        CL_ANIMAL
 
-RUeCKGABEWERT:
-     1, wenn das Objekt in eine der angegebenen Klassen faellt, ansonsten 0.
+ARGUMENTE
+=========
 
-SIEHE AUCH:
-     AddClass(), RemoveClass(), /std/thing/description.c
-     P_CLASS
+   string/string* class       - String oder Stringarray der Klasse(n)
 
-----------------------------------------------------------------------------
+
+BESCHREIBUNG
+============
+
+   Es wird getestet, ob das Objekt in eine der in class angegebenen
+   Klassen faellt. In diesen Test werden die folgenden Eigenschaften des
+   Objektes einbezogen:
+
+     1. Die Rasse des Objektes (bei Lebewesen),
+     2. die IDs des Objektes und
+     3. die explizit angegebenen Klassen des Objektes.
+     4. einigen impliziten Klassen, die sich aus den Klassen in 3 ergeben.
+
+   Die moeglichen Klassen sind in /sys/class.h definiert. Momentan stehen
+   folgende Klassen zur Verfuegung:
+
+   CL_AMMUNITION
+        Das Objekt eignet sich als Munition.
+   CL_ANIMAL
+        Das Objekt ist ein Tier.
+   CL_ARACHNID
+        Das Objekt in ein Spinnenwesen.
+   CL_BIGBANG
+        Dieses Objekt kann mehreren Lebewesen auf einmal Schaden zufuegen.
+   CL_BIRD
+        Ein Vogel.
+   CL_CRAWLING
+        Dieses Wesen bewegt sich kriechend.
+   CL_CURSE
+        Das Objekt ist ein Fluch (zB. ein Sprachfluch).
+   CL_DEMON
+        Bei dem Objekt handelt es sich um einen Daemon.
+   CL_DISEASE
+        Eine Krankheit.
+   CL_DRAGON
+        Ein Drache.
+   CL_DWARF
+        Fuer unsere kleinen Gaeste...
+   CL_ELF
+        Elfen aller Art.
+   CL_ELEMENTAL
+        Ein Elementar irgendeiner Art. Material setzen waere angebracht.
+   CL_EXPLOSIVE
+        Bei dem Objekt handelt es sich um einen Sprengstoff.
+   CL_FELINE
+        Felinen und andere katzenartigen Lebewesen.
+   CL_FISH
+        Fische - keine Meeressaeuger!
+   CL_FLYING
+        Dieses Wesen bewegt sich fliegend.
+   CL_FROG
+        Froesche - auch gefroschte Spieler.
+   CL_GHOST
+        Geister und geisterhafte Wesen.
+   CL_GHOUL
+        Ein Ghoul. Er faellt automatisch in die Klasse CL_UNDEAD.
+   CL_GIANT
+        Ein riesiges Lebewesen.
+   CL_GNOME
+        Ein Gnom.
+   CL_GOBLIN
+        Ein Goblin.
+   CL_HOBBIT
+        Ein Hobbit.
+   CL_HOBGOBLIN
+        Ein Hobgoblin. Er faellt automatisch auch in die Klasse CL_GOBLIN.
+   CL_HUMAN
+        Ein Mensch.
+   CL_INORGANIC
+        Anorganische Lebewesen wie Metallmonster
+   CL_INSECT
+        Insekten (Nicht mit Spinnen verwechseln)
+   CL_LIVING
+        Lebewesen im allgemeinen.
+   CL_MAMMAL
+        Saeugetiere.
+   CL_MAMMAL_LAND
+        Landsaeugetiere
+   CL_MAMMAL_WATER
+        Meeressaeuger.
+   CL_ORC
+        Ein Ork.
+   CL_PLANT
+        Pflanzen und pflanzenartige Monster.
+   CL_POISON
+        Das Objekt ist selbst ein Gift
+   CL_POISONOUS
+        Das Objekt kann einen Spieler/NPC vergiften.
+   CL_REPTILE
+        Reptilien.
+   CL_SHADOW
+        Schattenwesen.
+   CL_SKELETON
+        Ein Skelett. Es faellt automatisch in die Klasse CL_UNDEAD.
+   CL_SLIME
+        Fuer Einzeller und aehnliches Schleimgetier
+   CL_SNAKE
+        Schlangen.
+   CL_SWIMMING
+        Dieses Wesen bewegt sich schwimmend.
+   CL_TROLL
+        Ein Troll.
+   CL_UNDEAD
+        Ein untotes Lebewesen.
+   CL_WALKING
+        Dieses Wesen bewegt sich gehend.
+   CL_VAMPIRE
+        Ein Vampir. Er faellt automatisch in die Klasse CL_UNDEAD.
+   CL_ZOMBIE
+        Ein Zombie. Er faellt automatisch in die Klasse CL_UNDEAD.
+
+   Implizite Klassen:
+   Bei einigen Klassen wird im AddClass() automatisch eine oder mehrere
+   weiterer Klassen hinzugefuegt und im RemoveClass() die entsprechenden
+   impliziten Klassen auch automatisch entfernt.
+   Wuenscht man diese impliziten Klassen nicht, muss man nach dem AddClass()
+   diese mittels eines entsprechenden RemoveClass() entfernen.
+   Die impliziten Klassen einer Klasse lassen sich mit Hilfe der Funktion
+   QueryImplicitClasses() in CLASSDB herausfinden:
+     CLASSDB->QueryImplicitClasses(...)
+   Momentan sind dies:
+   CL_ZOMBIE:       CL_UNDEAD
+   CL_SKELETON:     CL_UNDEAD
+   CL_GHOUL:        CL_UNDEAD
+   CL_VAMPIRE:      CL_UNDEAD
+   CL_HOBGOBLIN:    CL_GOBLIN
+   CL_MAMMAL_LAND:  CL_MAMMAL, CL_ANIMAL
+   CL_MAMMAL_WATER: CL_MAMMAL, CL_ANIMAL
+   CL_SNAKE:        CL_REPTILE
+   CL_ARACHNID:     CL_ANIMAL
+   CL_BIRD:         CL_ANIMAL
+   CL_FISH:         CL_ANIMAL
+   CL_FROG:         CL_ANIMAL
+   CL_INSECT:       CL_ANIMAL
+   CL_MAMMAL:       CL_ANIMAL
+   CL_REPTILE:      CL_ANIMAL
+   CL_SNAKE:        CL_ANIMAL
+
+
+RUeCKGABEWERT
+=============
+
+   1, wenn das Objekt in eine der angegebenen Klassen faellt, ansonsten 0.
+
+
+SIEHE AUCH
+==========
+
+   AddClass(), RemoveClass(), /std/thing/description.c
+   P_CLASS
+
 20.01.2015, Zesstra
-
