diff --git a/src/main.c b/src/main.c index 35f4aba..5e8e670 100644 --- a/src/main.c +++ b/src/main.c @@ -1,5 +1,7 @@ #include #include +#include +#include #include "uclisp.h" @@ -69,13 +71,12 @@ int main(int argc, const char **argv) { if (argc < 2) { while (1) { - printf("> "); - char *line = NULL; - size_t len = 0; - ssize_t lineSize = 0; - lineSize = getline(&line, &len, stdin); - if (lineSize == -1) { - return 0; + char *line = readline("> "); + if (line == NULL) { + break; + } + if (strlen(line) > 0) { + add_history(line); } struct ucl_object *sexp = ucl_parse(line);