diff --git a/doc/lfun/RemoveFixedObject b/doc/lfun/RemoveFixedObject
index 7616b2b..22179de 100644
--- a/doc/lfun/RemoveFixedObject
+++ b/doc/lfun/RemoveFixedObject
@@ -1,40 +1,62 @@
+
 RemoveFixedObject()
+*******************
 
-FUNKTION:
-	void RemoveFixedObject(string filename);
 
-DEFINIERT IN:
-	/std/laden.c
+FUNKTION
+========
 
-ARGUMENTE:
-	str
-	  Dateiname des Objektes, welches nicht mehr dauerhaft im Laden sein
-	  soll.
+   void RemoveFixedObject(string filename);
 
-RUeCKGABEWERT:
-        keiner
 
-BESCHREIBUNG:
-	Objekte, die mittels der Funktion AddFixedObject() im Laden
-	eingebunden werden, sind dort staendig verfuegbar. Um diesen Zustand
-	wieder aufzuheben, kann man sie mittels dieser Funktion wieder
-	entfernen. Eventuell im Lager befindliche Objekte dieser Art werden
-	hierbei nicht zerstoert und koennen durchaus noch gekauft werden,
-	bis sie alle sind. Danach gibt es sie dort nicht mehr!
+DEFINIERT IN
+============
 
-BEISPIELE:
-	Im allen Laeden gibt es schon ein Objekt, welches dort
-	standardmaessig erhaeltlich ist. Folgende Zeile sorgt dafuer:
-	  AddFixedObject("/obj/boerse",80,({"boerse","geldboerse"}));
-	Wenn man das in seinem Laden nicht wuenscht, kann man die Geldboerse
-	mittels folgender Zeile wieder aus dem Laden loeschen:
-	  RemoveFixedObject("/obj/boerse");
-	Es ist nicht moeglich, keine oder mehrere Objekte anzugeben, um auf
-	diese Weise alle bzw. mehrere Objekte als nicht mehr staendig
-	verfuegbar zu markieren.
+   /std/laden.c
 
-SIEHE AUCH:
-	AddFixedObject(), SetStorageRoom(), /std/store.c
 
-----------------------------------------------------------------------------
+ARGUMENTE
+=========
+
+   str
+     Dateiname des Objektes, welches nicht mehr dauerhaft im Laden sein
+     soll.
+
+
+RUeCKGABEWERT
+=============
+
+   keiner
+
+
+BESCHREIBUNG
+============
+
+   Objekte, die mittels der Funktion AddFixedObject() im Laden
+   eingebunden werden, sind dort staendig verfuegbar. Um diesen Zustand
+   wieder aufzuheben, kann man sie mittels dieser Funktion wieder
+   entfernen. Eventuell im Lager befindliche Objekte dieser Art werden
+   hierbei nicht zerstoert und koennen durchaus noch gekauft werden,
+   bis sie alle sind. Danach gibt es sie dort nicht mehr!
+
+
+BEISPIELE
+=========
+
+   Im allen Laeden gibt es schon ein Objekt, welches dort
+   standardmaessig erhaeltlich ist. Folgende Zeile sorgt dafuer:
+     AddFixedObject("/obj/boerse",80,({"boerse","geldboerse"}));
+   Wenn man das in seinem Laden nicht wuenscht, kann man die Geldboerse
+   mittels folgender Zeile wieder aus dem Laden loeschen:
+     RemoveFixedObject("/obj/boerse");
+   Es ist nicht moeglich, keine oder mehrere Objekte anzugeben, um auf
+   diese Weise alle bzw. mehrere Objekte als nicht mehr staendig
+   verfuegbar zu markieren.
+
+
+SIEHE AUCH
+==========
+
+   AddFixedObject(), SetStorageRoom(), /std/store.c
+
 Last modified: Thu Jun 18 14:19:19 1998 by Patryn
