aboutsummaryrefslogtreecommitdiff
path: root/config/vis/plugins/vis-build/init.lua
diff options
context:
space:
mode:
Diffstat (limited to 'config/vis/plugins/vis-build/init.lua')
m---------config/vis/plugins/vis-build0
-rw-r--r--config/vis/plugins/vis-build/init.lua52
2 files changed, 0 insertions, 52 deletions
diff --git a/config/vis/plugins/vis-build b/config/vis/plugins/vis-build
new file mode 160000
+Subproject 7eea122ccf24efc9de55e2d9bf0dd69f0e18e50
diff --git a/config/vis/plugins/vis-build/init.lua b/config/vis/plugins/vis-build/init.lua
deleted file mode 100644
index 0558c39..0000000
--- a/config/vis/plugins/vis-build/init.lua
+++ /dev/null
@@ -1,52 +0,0 @@
-local M = {}
-M.get_default_build_cmd = function() return 'make' end
-
-local build_id = 0
-local builds = {}
-
-M.new_build = function(cmd)
- build_id = build_id + 1
- local build_name = 'build' .. build_id
- local build_fd = vis:communicate(build_name, cmd)
- local build = {fd = build_fd, out = '', err = '', cmd = cmd}
- builds[build_name] = build
-end
-
-vis.events.subscribe(vis.events.PROCESS_RESPONSE,
- function(name, event, code, msg)
- local build = builds[name]
- if not build then return end
-
- if event == 'EXIT' or event == 'SIGNAL' then
- if code ~= 0 then
- vis:message('build: ' .. name .. ' cmd: ' .. build.cmd)
- if event == 'EXIT' then
- vis:message('failed with: ' .. code)
- else
- vis:message('got signal: ' .. code)
- end
- vis:message('stdout:\n' .. build.out)
- vis:message('stderr:\n' .. build.err)
- else
- vis:info(name .. ' done')
- end
- builds[name] = nil
- end
-
- if event == 'STDOUT' then
- build.out = build.out .. msg
- elseif event == 'STDERR' then
- build.err = build.err .. msg
- end
-end)
-
-vis:command_register('build', function(argv)
- M.new_build(argv[1] or M.get_default_build_cmd())
-end, 'Asynchronously build the current file or project')
-
-vis:map(vis.modes.NORMAL, '<M-b>', function()
- vis:command('build')
- return 0
-end, 'Asynchronously build the current file or project')
-
-return M