refactor: move grip to it's own file
This commit is contained in:
40
lua/dot013/grip/init.lua
Normal file
40
lua/dot013/grip/init.lua
Normal file
@@ -0,0 +1,40 @@
|
||||
local grip_channel = nil
|
||||
vim.api.nvim_create_user_command("GripStart", function()
|
||||
if grip_channel then
|
||||
return
|
||||
end
|
||||
|
||||
local file = vim.api.nvim_buf_get_name(0)
|
||||
|
||||
local cmd = "go-grip -b false -H 0.0.0.0 " .. file
|
||||
|
||||
grip_channel = vim.fn.jobstart(cmd, {
|
||||
stderr_buffered = true,
|
||||
on_stderr = function(_, err)
|
||||
vim.fn.jobstop(grip_channel)
|
||||
|
||||
local content = table.concat(err, "\n")
|
||||
if content:len() > 0 then
|
||||
vim.api.nvim_notify("Grip error: " .. content, vim.log.levels.ERROR, {})
|
||||
end
|
||||
end,
|
||||
on_exit = function()
|
||||
vim.fn.chanclose(grip_channel)
|
||||
grip_channel = nil
|
||||
end,
|
||||
})
|
||||
end, {})
|
||||
|
||||
vim.api.nvim_create_user_command("GripStop", function()
|
||||
if grip_channel then
|
||||
vim.fn.jobstop(grip_channel)
|
||||
end
|
||||
end, {})
|
||||
|
||||
vim.api.nvim_create_autocmd({ "QuitPre", "BufDelete" }, {
|
||||
callback = function()
|
||||
if grip_channel then
|
||||
vim.fn.jobstop(grip_channel)
|
||||
end
|
||||
end,
|
||||
})
|
||||
@@ -1,5 +1,6 @@
|
||||
require("dot013.options")
|
||||
require("dot013.tweaks")
|
||||
require("dot013.grip")
|
||||
|
||||
vim.g.lze = {
|
||||
--@type fun(name: string)
|
||||
|
||||
@@ -8,47 +8,6 @@ vim.api.nvim_create_autocmd("TextYankPost", {
|
||||
pattern = "*",
|
||||
})
|
||||
|
||||
local grip_channel = nil
|
||||
vim.api.nvim_create_user_command("GripStart", function()
|
||||
if grip_channel then
|
||||
return
|
||||
end
|
||||
|
||||
local file = vim.api.nvim_buf_get_name(0)
|
||||
|
||||
local cmd = "go-grip -b false -H 0.0.0.0 " .. file
|
||||
|
||||
grip_channel = vim.fn.jobstart(cmd, {
|
||||
stderr_buffered = true,
|
||||
on_stderr = function(_, err)
|
||||
vim.fn.jobstop(grip_channel)
|
||||
|
||||
local content = table.concat(err, "\n")
|
||||
if content:len() > 0 then
|
||||
vim.api.nvim_notify("Grip error: " .. content, vim.log.levels.ERROR, {})
|
||||
end
|
||||
end,
|
||||
on_exit = function()
|
||||
vim.fn.chanclose(grip_channel)
|
||||
grip_channel = nil
|
||||
end,
|
||||
})
|
||||
end, {})
|
||||
|
||||
vim.api.nvim_create_user_command("GripStop", function()
|
||||
if grip_channel then
|
||||
vim.fn.jobstop(grip_channel)
|
||||
end
|
||||
end, {})
|
||||
|
||||
vim.api.nvim_create_autocmd({ "QuitPre", "BufDelete" }, {
|
||||
callback = function()
|
||||
if grip_channel then
|
||||
vim.fn.jobstop(grip_channel)
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
-- Move when highlighted
|
||||
vim.keymap.set("n", "J", "mzJ`z")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user