runner.nvim/lua/runner/init.lua
MarcHamamji c7f90b5bba MVP
2023-02-03 20:39:38 +02:00

31 lines
565 B
Lua

local handlers = require('runner.handlers')
local M = {}
M._handlers = handlers
M.set_handler = function(filetype, handler)
M._handlers[filetype] = handler
end
M.run = function(bufnr)
local buffer
if bufnr == nil or bufnr == 0 then
buffer = vim.api.nvim_get_current_buf()
else
buffer = bufnr
end
local filetype = vim.filetype.match({ buf = buffer })
local handler = M._handlers[filetype]
if not handler then
print(string.format('No handler defined for filetype \'%s\'', filetype))
return
end
handler(buffer)
end
return M