Index: trunk/FACT++/src/Readline.cc
===================================================================
--- trunk/FACT++/src/Readline.cc	(revision 16866)
+++ trunk/FACT++/src/Readline.cc	(revision 16868)
@@ -141,5 +141,7 @@
 
     // Bind delete, page up, page down
+    rl_bind_keyseq("\e[1~",  rl_named_function("beginning-of-line"));
     rl_bind_keyseq("\e[3~",  rl_named_function("delete-char"));
+    rl_bind_keyseq("\e[4~",  rl_named_function("end-of-line"));
     rl_bind_keyseq("\e[5~",  rl_named_function("history-search-backward"));
     rl_bind_keyseq("\e[6~",  rl_named_function("history-search-forward"));
@@ -322,4 +324,14 @@
     if (p.empty())
         p = rl_prompt;
+
+    const string line_buffer = rl_line_buffer;
+    const int    point       = rl_point;
+
+    rl_replace_line("", 1);
+    UpdatePrompt("");
+    Redisplay();
+
+    rl_replace_line(line_buffer.c_str(), 1);
+    rl_point = point;
 
     UpdatePrompt(p);
