Re: [PATCH v4] readline: make ctrl-u to work like linux console

2019-10-18 Thread Sascha Hauer
On Wed, Oct 16, 2019 at 11:56:44PM +0800, sendpa...@qq.com wrote:
> From: DU HUANPENG 
> 
> currtly, the ctrl-u discards the whole line, in most linux
> boxes, ctrl-u just erase characters before cursor to the
> begginning of the line. this patch make ctrl-u to do this.
> 
> Signed-off-by: DU HUANPENG 
> ---
>  lib/readline.c | 8 
>  1 file changed, 8 insertions(+)

Applied, thanks

Sascha


-- 
Pengutronix e.K.   | |
Industrial Linux Solutions | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0|
Amtsgericht Hildesheim, HRA 2686   | Fax:   +49-5121-206917- |

___
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox


[PATCH v4] readline: make ctrl-u to work like linux console

2019-10-16 Thread sendpatch
From: DU HUANPENG 

currtly, the ctrl-u discards the whole line, in most linux
boxes, ctrl-u just erase characters before cursor to the
begginning of the line. this patch make ctrl-u to do this.

Signed-off-by: DU HUANPENG 
---
 lib/readline.c | 8 
 1 file changed, 8 insertions(+)

diff --git a/lib/readline.c b/lib/readline.c
index d026af1..3d16c18 100644
--- a/lib/readline.c
+++ b/lib/readline.c
@@ -290,9 +290,17 @@ int readline(const char *prompt, char *buf, int len)
insert = !insert;
break;
case BB_KEY_ERASE_LINE:
+   BEGINNING_OF_LINE();
+   ERASE_TO_EOL();
+   break;
case CTL_CH('u'):
+   wlen = eol_num - num;
+   memmove(buf, buf+num, wlen);
BEGINNING_OF_LINE();
ERASE_TO_EOL();
+   eol_num = wlen;
+   REFRESH_TO_EOL();
+   BEGINNING_OF_LINE();
break;
case DEL:
case BB_KEY_DEL7:
-- 
2.7.4




___
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox