From 13a95942b6e33033e4bbbe27cc8cafc98c6924a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Andr=C3=A9=20Tanner?= Date: Sun, 20 Dec 2015 11:04:20 +0100 Subject: vis: refactor Lua integration Lua support can now be disabled at compile time using: $ make CONFIG_LUA=0 This commit also adds an initial Lua API and provides a few default hooks. We now also require Lua >= 5.2 due to the uservalue constructs. In principle the same functionality could be implemented using function environments from Lua 5.1. --- main.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'main.c') diff --git a/main.c b/main.c index 5bb04d4..b0f5b8d 100644 --- a/main.c +++ b/main.c @@ -6,6 +6,7 @@ #include "ui-curses.h" #include "vis.h" +#include "vis-lua.h" #include "text-util.h" #include "text-motions.h" #include "text-objects.h" @@ -1620,7 +1621,17 @@ static void signal_handler(int signum, siginfo_t *siginfo, void *context) { int main(int argc, char *argv[]) { - vis = vis_new(ui_curses_new()); + VisEvent event = { + .vis_start = vis_lua_start, + .vis_quit = vis_lua_quit, + .file_open = vis_lua_file_open, + .file_save = vis_lua_file_save, + .file_close = vis_lua_file_close, + .win_open = vis_lua_win_open, + .win_close = vis_lua_win_close, + }; + + vis = vis_new(ui_curses_new(), &event); if (!vis) return EXIT_FAILURE; -- cgit v1.2.3