2015-01-16 22:09:50 +01:00
|
|
|
Add support of linenoise (replace readline)
|
|
|
|
|
|
|
|
see discussion, http://lua-users.org/lists/lua-l/2010-03/msg00879.html
|
|
|
|
|
|
|
|
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
|
|
|
|
|
|
|
|
Index: b/src/lua.c
|
|
|
|
===================================================================
|
|
|
|
--- a/src/lua.c
|
|
|
|
+++ b/src/lua.c
|
2015-06-17 20:41:25 +02:00
|
|
|
@@ -83,6 +83,15 @@
|
|
|
|
#define lua_saveline(L,line) ((void)L, add_history(line))
|
2015-01-16 22:09:50 +01:00
|
|
|
#define lua_freeline(L,b) ((void)L, free(b))
|
2015-06-17 20:41:25 +02:00
|
|
|
|
2015-01-16 22:09:50 +01:00
|
|
|
+#elif defined(LUA_USE_LINENOISE)
|
|
|
|
+
|
|
|
|
+#include <linenoise.h>
|
|
|
|
+#define lua_readline(L,b,p) ((void)L, ((b)=linenoise(p)) != NULL)
|
|
|
|
+#define lua_saveline(L,idx) \
|
|
|
|
+ if (lua_rawlen(L,idx) > 0) /* non-empty line? */ \
|
|
|
|
+ linenoiseHistoryAdd(lua_tostring(L, idx)); /* add it to history */
|
|
|
|
+#define lua_freeline(L,b) ((void)L, free(b))
|
|
|
|
+
|
|
|
|
#else /* }{ */
|
2015-06-17 20:41:25 +02:00
|
|
|
|
2015-01-16 22:09:50 +01:00
|
|
|
#define lua_readline(L,b,p) \
|