From ca818a8296a98d9ff8da14dfed428bb23570066a Mon Sep 17 00:00:00 2001 From: Laurent Mazet Date: Thu, 16 May 2024 16:33:08 +0200 Subject: [PATCH] add more test (3) --- cmore.c | 8 ++++++-- tui.c | 11 ++++++++++- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/cmore.c b/cmore.c index 92fa686..6022cfd 100644 --- a/cmore.c +++ b/cmore.c @@ -250,7 +250,7 @@ menu SubMenu0[] = { "File", chfile, "Change file"}, { "Display", follow, "Continue"}, { "Refresh", process, "Refresh"}, - { "Exit", DoExit, "Terminate program" }, + { "Quit", DoExit, "Terminate program" }, { "", (FUNC)0, "" } }; @@ -388,14 +388,18 @@ int main (int argc, char *argv[]) /* test: (sleep 1; echo :fkkk; sleep 1; echo :fiii) | cmore.exe -c 'ip addr' */ /* test: (sleep 1; echo :fjljjkkikkkk) | cmore.exe -c 'ip addr' */ /* test: (sleep 1; echo :flk; sleep 1; echo xji) | cmore.exe -c 'ip addr' */ -/* test: (sleep 1; echo :fk; sleep 1; echo; sleep 1; echo :fi) | cmore.exe -c 'ip addr' */ +/* test: (sleep 1; echo :fllk; sleep 1; echo; sleep 1; echo :fi) | cmore.exe -c 'ip addr' */ +/* test: (sleep 1; echo -n :fjjkll; sleep 1; echo -n :; sleep 1; echo -ne '\e'; sleep 1; echo -n kq) | cmore.exe -c 'ip addr' */ /* test: (sleep 1; echo :fk; sleep 1; echo date; sleep 1; echo :fi) | cmore.exe -c 'ip addr' */ +/* test: (sleep 1; echo :fk; sleep 1; echo -ne '\e\e'; sleep 1; echo i) | cmore.exe -c 'ip addr' */ /* test: (sleep 1; echo :fk; echo not_a_command; sleep 1; echo i) | cmore.exe -c 'ip addr' -v 3 2>&1 | grep -q "can't execute" */ /* test: (sleep 1; echo :fkk; sleep 1; echo; sleep 1; echo ii) | cmore.exe -c 'ip addr' */ /* test: (sleep 1; echo :fk; sleep 1; echo -e '\elljll\eroute'; sleep 1; echo q) | cmore.exe -c 'ip addr' */ +/* test: (sleep 1; echo :fk; sleep 1; echo -e '\elljll\nroute'; sleep 1; echo q) | cmore.exe -c 'ip addr' */ /* test: (sleep 1; echo :fk; sleep 1; echo -en '\ek'; sleep 1; echo i) | cmore.exe -c 'ip addr' */ /* test: (sleep 1; echo :fk; sleep 1; echo -e '\eidate'; sleep 1; echo q) | cmore.exe -c 'ip addr' */ +/* test: (sleep 1; echo :fk; sleep 1; echo -e '\elll\e\t-j x\b'; sleep 1; echo q) | cmore.exe -c 'ip addr' */ /* test: (sleep 1; echo :fkk; sleep 1; echo tui.c; sleep 1; echo :fii) | cmore.exe -f tui.h */ /* test: (sleep 1; echo :fkk; sleep 1; echo cmore.c; sleep 1; echo :fii) | cmore.exe -c 'ip addr' */ diff --git a/tui.c b/tui.c index 98e4f35..ddeffa3 100644 --- a/tui.c +++ b/tui.c @@ -670,6 +670,10 @@ int weditstr(WINDOW *win, char *buf, int field) c = wgetch(wedit); if (mode) { + if (mode == 1) { + mode = (c == KEY_ESC) ? 2 : 3; + } + switch (c) { case 'i': c = KEY_UP; @@ -683,8 +687,13 @@ int weditstr(WINDOW *win, char *buf, int field) case 'l': c = KEY_RIGHT; break; - case '\n': case KEY_ESC: + if (mode == 3) { + c = ERR; + mode = 0; + } + break; + case '\n': mode = 0; /* fallthrough */ default: -- 2.30.2