diff --git a/doc/efun/object_name b/doc/efun/object_name
index 6ba82ed..b329ca9 100644
--- a/doc/efun/object_name
+++ b/doc/efun/object_name
@@ -1,26 +1,35 @@
-SYNOPSIS:
-    string object_name()
-    string object_name(object ob)
+SYNOPSIS
+        string object_name()
+        string object_name(object ob)
 
-DESCRIPTION:
-    Get the file name of an object or if no argument is given of the current
-    object. If the object is a cloned object, then it will not have a
-    corresponding file name, but rather a new name based on the original
-    file name.
-        
-    The returned name always begins with '/' (absolute path),
-  	except when the parser runs in COMPAT (-o) mode.
+BESCHREIBUNG
+        Liefert den Namen des Objekts <ob> oder des aktuellen Objekts, wenn
+        <ob> nicht angegeben wurde.
 
-EXAMPLES:
-    find_object(object_name(ob)) == ob    
-    This is guaranteed to be true for all objects ob that are not
-   	destructed.
-        
-    sizeof(explode(object_name(ob), "#")) == 1  
-    This is always true if ob is a blue print.
-        
-SEE ALSO:
-        find_object(E)
+        Als Spezialfall liefert die Funktion 0, wenn <ob> 0 ist.
 
-29.10.2006 Zesstra
+        Dieser Name ist der Name, unter dem das Objekt in der mudinternen
+        Objekttabelle aufgelistet ist. Der Name wird bei der Erzeugung des
+        Objekts eingetragen. Fuer Blueprints entspricht der Name dem Filenamen
+        (ohne die Endung .c), fuer Clones ist es der Name des Blueprints
+        ergaenzt mit einer eindeutigen Nummer nach dem #. Diese Regeln gelten
+        auch fuer virtuelle Objekte - die realen Namen/Typen von virtuellen
+        Objekten werden nicht beruecksichtigt.
 
+        Der Name eines Objekts kann mit rename_object() geaendert werden.
+        object_name() beruecksichtigt alle diese Aenderungen.
+
+        Der zurueck gegebene Name beginnt immer mit '/' (absoluter Pfad),
+        ausser wenn der Driver im COMPAT-Modus laeuft.
+
+BEISPIELE
+        find_object(object_name(ob)) == ob
+
+        Dies ist immer wahr fuer alle Objekte <ob>, die nicht zerstoert sind.
+
+GESCHICHTE
+        0 als Argument wird seit 3.2.9 akzeptiert.
+
+SIEHE AUCH
+        clone_object(E), load_name(E), load_object(E), find_object(E),
+        object_time(E), program_name(E), rename_object(E)
