interactive-cmd-grep
interactive-cmd-git-grep
interactive-cmd-next-match
-lib-server = ALWAYS
+lib-server =
+ startup-server
+ interactive-cmd-server-start
lib-macro = macro:capture
lib-aspell =
Spell:Check
dirname = strconcat(ci->focus, home ?: "", "/.edlib_autosave");
dir = opendir(dirname);
if (!dir)
- return 1;
+ return Efallthrough;
while ((de = readdir(dir)) != NULL) {
if (de->d_name[0] == '.')
continue;
if (de)
call("editor:notify:Message:broadcast", ci->focus, 0, NULL,
"Autosave files exist - use \"recover\" command to view them.");
- return 1;
+ return Efallthrough;
}
void edlib_init(struct pane *ed safe)
def server_rebind(key, focus, **a):
global server_sock
+ msg = ""
+ if key.startswith("interactive-cmd"):
+ msg = "Server started"
if server_sock:
# stop reading this file
focus.call("event:free", server_accept)
server_sock.close()
server_sock = None
+ msg="Server restarted"
+
try:
os.unlink(sockpath)
except OSError:
focus.root.call("event:read", s.fileno(), server_accept)
server_sock = s
if key != "key":
- focus.call("Message", "Server restarted")
+ focus.call("Message", msg)
return 1
- server_rebind("key", edlib.editor)
+ def server_autostart(key, focus, **a):
+ if focus["server:autostart"] == 'yes':
+ server_rebind(key, focus)
+ edlib.editor.call("global-set-command", "startup-server", server_autostart)
edlib.editor.call("global-set-command", "lib-server:done", server_done)
edlib.editor.call("global-set-command", "interactive-cmd-server-start",
server_rebind)