From abddc3fc34b39f5a75c8f3a1b9f2e4a1d6ca6ed8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Tue, 2 May 2023 20:59:07 +0200 Subject: Add search functionality. --- ui.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/ui.c b/ui.c index c22f26a..c07225c 100644 --- a/ui.c +++ b/ui.c @@ -294,8 +294,28 @@ int main(int argc, char *argv[]) { draw_screen(ctx, bv); refresh(); break; + case '/': + { + echo(); + nocbreak(); + char *s = malloc(100); + mvprintw(LINES - 1, 0, "/"); + refresh(); + getnstr(s, 99); + cbreak(); + noecho(); + char *ptr = memmem((char*)screen.mem, screen.mem_len, s, strlen(s)); + if (ptr != NULL) { + size_t target = ptr - (char*) screen.mem; + screen.top_address = LINE_LEN * (target / LINE_LEN); + } + draw_screen(ctx, bv); + refresh(); + } + break; case KEY_ENTER: goto end; + } } -- cgit v1.2.3