refactor(plugins/astroui): split configuration
This commit is contained in:
parent
519e85f142
commit
01338c04d8
9 changed files with 340 additions and 238 deletions
41
plugins/astroui/status/signs.nix
Normal file
41
plugins/astroui/status/signs.nix
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
# https://github.com/AstroNvim/AstroNvim/blob/v4.7.7/lua/astronvim/plugins/_astroui_status.lua#L5-L36
|
||||
{
|
||||
__raw = ''
|
||||
(function()
|
||||
local sign_handlers = {}
|
||||
-- gitsigns handlers
|
||||
local gitsigns_handler = function(_)
|
||||
local gitsigns_avail, gitsigns = pcall(require, "gitsigns")
|
||||
if gitsigns_avail then vim.schedule(gitsigns.preview_hunk) end
|
||||
end
|
||||
for _, sign in ipairs { "Topdelete", "Untracked", "Add", "Change", "Changedelete", "Delete" } do
|
||||
local name = "GitSigns" .. sign
|
||||
if not sign_handlers[name] then sign_handlers[name] = gitsigns_handler end
|
||||
end
|
||||
sign_handlers["gitsigns_extmark_signs_"] = gitsigns_handler
|
||||
-- diagnostic handlers
|
||||
local diagnostics_handler = function(args)
|
||||
if args.mods:find "c" then
|
||||
vim.schedule(vim.lsp.buf.code_action)
|
||||
else
|
||||
vim.schedule(vim.diagnostic.open_float)
|
||||
end
|
||||
end
|
||||
for _, sign in ipairs { "Error", "Hint", "Info", "Warn" } do
|
||||
local name = "DiagnosticSign" .. sign
|
||||
if not sign_handlers[name] then sign_handlers[name] = diagnostics_handler end
|
||||
end
|
||||
-- DAP handlers
|
||||
local dap_breakpoint_handler = function(_)
|
||||
local dap_avail, dap = pcall(require, "dap")
|
||||
if dap_avail then vim.schedule(dap.toggle_breakpoint) end
|
||||
end
|
||||
for _, sign in ipairs { "", "Rejected", "Condition" } do
|
||||
local name = "DapBreakpoint" .. sign
|
||||
if not sign_handlers[name] then sign_handlers[name] = dap_breakpoint_handler end
|
||||
end
|
||||
|
||||
return sign_handlers
|
||||
end)()
|
||||
'';
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue