xref: /OK3568_Linux_fs/buildroot/package/lua/5.1.5/0011-linenoise.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunAdd support of linenoise (replace readline)
2*4882a593Smuzhiyun
3*4882a593Smuzhiyunsee discussion, http://lua-users.org/lists/lua-l/2010-03/msg00879.html
4*4882a593Smuzhiyun
5*4882a593SmuzhiyunSigned-off-by: Francois Perrad <francois.perrad@gadz.org>
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunIndex: b/src/luaconf.h
8*4882a593Smuzhiyun===================================================================
9*4882a593Smuzhiyun--- a/src/luaconf.h
10*4882a593Smuzhiyun+++ b/src/luaconf.h
11*4882a593Smuzhiyun@@ -279,6 +279,13 @@
12*4882a593Smuzhiyun 	if (lua_strlen(L,idx) > 0)  /* non-empty line? */ \
13*4882a593Smuzhiyun 	  add_history(lua_tostring(L, idx));  /* add it to history */
14*4882a593Smuzhiyun #define lua_freeline(L,b)	((void)L, free(b))
15*4882a593Smuzhiyun+#elif defined(LUA_USE_LINENOISE)
16*4882a593Smuzhiyun+#include <linenoise.h>
17*4882a593Smuzhiyun+#define lua_readline(L,b,p)	((void)L, ((b)=linenoise(p)) != NULL)
18*4882a593Smuzhiyun+#define lua_saveline(L,idx) \
19*4882a593Smuzhiyun+	if (lua_strlen(L,idx) > 0)  /* non-empty line? */ \
20*4882a593Smuzhiyun+	  linenoiseHistoryAdd(lua_tostring(L, idx));  /* add it to history */
21*4882a593Smuzhiyun+#define lua_freeline(L,b)	((void)L, free(b))
22*4882a593Smuzhiyun #else
23*4882a593Smuzhiyun #define lua_readline(L,b,p)	\
24*4882a593Smuzhiyun 	((void)L, fputs(p, stdout), fflush(stdout),  /* show prompt */ \
25