vis
a vi-like editor based on Plan 9's structural regular expressions
git clone https://9o.is/git/vis.git
commit e918568c44b4ddbb164ff1db1194f148c2b96cbd
parent 6ecd25f15ce286f70570002b854bc7c2f2f1cd3c
Author: Marc André Tanner <mat@brain-dump.org>
Date: Thu, 31 Dec 2015 12:39:20 +0100
vis-lua: implement vis.events.{start,quit} events
Diffstat:
| M | vis-lua.c | | | 13 | +++++++++++-- |
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/vis-lua.c b/vis-lua.c @@ -587,12 +587,21 @@ void vis_lua_start(Vis *vis) { lua_getglobal(L, "require"); lua_pushstring(L, "visrc"); lua_pcall(L, 1, 0, 0); + vis_lua_event(vis, "start"); + if (lua_isfunction(L, -1)) + lua_pcall(L, 0, 0, 0); + lua_pop(L, 1); } void vis_lua_quit(Vis *vis) { lua_State *L = vis->lua; - if (L) - lua_close(L); + if (!L) + return; + vis_lua_event(vis, "quit"); + if (lua_isfunction(L, -1)) + lua_pcall(L, 0, 0, 0); + lua_pop(L, 1); + lua_close(L); } void vis_lua_file_open(Vis *vis, File *file) {