diff --git a/doc/efun/query_command b/doc/efun/query_command
index e42e4da..dc7b6c0 100644
--- a/doc/efun/query_command
+++ b/doc/efun/query_command
@@ -1,33 +1,29 @@
 SYNOPSIS
-        string query_command()
+        string query_command(void)
 
-BESCHREIBUNG
-        Liefert den Text des aktuellen Kommandos oder 0, wenn keines
-        ausgefuehrt wird.
+DESCRIPTION
+        Give the text of the current command, or 0 if not executing
+        from a command.
 
-        Der Text entspricht dem, was der Parser "sieht", also nachdem
-        modify_command() ausgefuehrt und nachfolgende Leerzeichen
-        abgeschnitten wurden.
+        The text is the command as seen by the parser, ie. after
+        modify_command and after stripping trailing spaces.
 
-        query_command() liefert 0, wenn es von einer Funktion gestartet
-        wurde, die wiederum von einem call_out() oder dem heart_beat()
-        aufgerufen wurde. Auch Kommandos, die beim Userlogin aufgerufen
-        werden, liefern 0.
+        query_command() returns 0 when invoked by a function which was started
+        by a call_out or the heart beat.  Also when a user logs in
+        query_command() returns 0.
 
-BEISPIELE
+EXAMPLES
         void init() {
-            ...
-            add_action("sing","sing");
-            ...
+           ...
+           add_action("sing","sing");
+           ...
         }
-
         int sing(string str) {
-            write("Dein Kommando war:"+query_command()+"\n");
-            return 1;
+           write("Your command was:"+query_command()+"\n");
+           return 1;
         }
 
-        Jedesmal, wenn jemand "sing blafasel" eingibt, liefert das Programm
-        "Dein Kommando war: sing blafasel".
+        When ever you type "sing ..." you get "Your command was: sing ...".
 
-SIEHE AUCH
+SEE ALSO
         add_action(E), query_verb(E)
