diff --git a/doc/efun/binary_message b/doc/efun/binary_message
index 5b909a9..8d952f7 100644
--- a/doc/efun/binary_message
+++ b/doc/efun/binary_message
@@ -1,36 +1,32 @@
-GESCHUETZT
 SYNOPSIS
-        int binary_message(int *|bytes messages, int flags)
+        int binary_message(int *|bytes message, int flags)
 
-BESCHREIBUNG
-        Liest den Output aus und sendet diesen direkt mit write() OHNE IAC
-        QUOTING. Die Nachricht kann Nullen enthalten, wenn sie als
-        int * angegeben sind. Die Nachricht wird an this_object() ausgegeben,
-        aber nur, wenn dieses interaktiv ist.
+DESCRIPTION
+        Flush output and send output directly with write WITHOUT IAC QUOTING.
+        The message may contain zeroes if given as int *.
+        The messages goes to this_object(), but only if interactive.
+        return value: number of characters actually written.
+        Any 'allowed charset' setting is ignored.
 
-        Der Rueckgabewert ist die Anzahl tatsaechlich gedruckter Zeichen. Eine
-        allfaellige "allowed charset" Einstellung wird uebergangen.
+        Flag settings are interpreted bitwise and may be ored
+        together (only for clients not using MCCP compression):
 
-        <flags> werden bitweise interpretiert und koennen ueber das binaere
-        Oder verbunden werden.
+          Bit 0 (value 1): when set, add_message() is used instead of
+            write(). Thus no previous flushing of the buffer is
+            needed, but the output is not immediate, nor can the
+            number of bytes actually sent be determined - the return
+            value is undefined.
+          Bit 1 (value 2): The buffer is flushed _after_ adding the
+            message. Useful only in conjunction with Bit 0.
 
-        Bit 0 (Wert 1): wenn gesetzt, wird add_message() anstelle von
-            write() verwendet. So muss der Output nicht zuerst ausgelesen
-            werden, allerdings erfolgt die Ausgabe nicht sofort. Auch kann
-            dann die Anzahl effektiv uebertragener Zeichen nicht bestimmt
-            werden - der Rueckgabewert ist nicht definiert.
+        The idea behind the flag settings is that sending command
+        codes for colours and other things needs to bypass the allowed
+        charset filters, but isn't important enough to waste bandwith
+        on a synchronous transmission.
 
-        Bit 1 (Wert 2): Der Puffer wird ausgelesen, _nachdem_ die Nachricht
-            angefuegt wurde. Macht nur in Verbindung mit Bit 0 Sinn.
+HISTORY
+        Introduced in 3.2.1@40.
+        Argument 'flags' introduced in 3.2.1@60.
 
-            Die Idee hinter den Flags ist, dass das Senden von Kommandocodes
-            zum Beispiel fuer Farben an den vorhandenen Filtern fuer erlaubte
-            Zeichen vorbeigeschleust werden muss, jedoch nicht wichtig genug
-            ist, um die Verschwendung von Bandbreite mittels einer
-            synchronen Uebertragung zu rechtfertigen.
-
-GESCHICHTE
-        Eingefuehrt in 3.2.1@40.
-
-SIEHE AUCH
+SEE ALSO
         set_connection_charset(E)
