shithub: MicroHs

Download patch

ref: f60c2bb7769051c59f24b703e91f1950ea7914e7
parent: 1952ac81ff30555457bb003a8abb58a3985f6da0
author: Lennart Augustsson <lennart@augustsson.net>
date: Thu Nov 9 11:54:14 EST 2023

Make CTL-D behave like I want.

--- a/src/System/Console/SimpleReadline.hs
+++ b/src/System/Console/SimpleReadline.hs
@@ -91,6 +91,14 @@
           putChar ' '
           back (length after + 1)
           loop hist cs after
+    del = do
+      case after of
+        [] -> noop
+        _:cs -> do
+          putStr cs
+          putChar ' '
+          back (length cs + 1)
+          loop hist before cs
     send =
       ret (Just cur)
     ret ms = do
@@ -137,12 +145,12 @@
       if null before && null after then
         ret Nothing
       else
-        send
-    2 -> backward            -- CTL-B, backwards
-    6 -> forward             -- CTL-F, forwards
-    1 -> bol                 -- CTL-A, beginning of line
-    5 -> eol                 -- CTL-E, end of line
-    8 -> bs                  -- BS, backspace
+        del
+    2  -> backward           -- CTL-B, backwards
+    6  -> forward            -- CTL-F, forwards
+    1  -> bol                -- CTL-A, beginning of line
+    5  -> eol                -- CTL-E, end of line
+    8  -> bs                 -- BS, backspace
     127 -> bs                -- DEL, backspace
     13 -> send               -- CR, return
     10 -> send               -- LF, return
--