fix(dap.hover): remove yank expression
This commit is contained in:
@@ -100,39 +100,6 @@ function Node:format_c()
|
||||
)
|
||||
end
|
||||
|
||||
---@return string
|
||||
function Node:get_full_expression()
|
||||
local parts = {}
|
||||
local current = self
|
||||
|
||||
while current do
|
||||
table.insert(parts, 1, current.item.name)
|
||||
current = current.parent
|
||||
end
|
||||
|
||||
if #parts <= 1 then
|
||||
return parts[1] or ""
|
||||
end
|
||||
|
||||
local expr = parts[1]
|
||||
for i = 2, #parts do
|
||||
local part = parts[i]
|
||||
if part:match("^%[.*%]$") then
|
||||
expr = expr .. part
|
||||
elseif part:match("^%*") then
|
||||
expr = "(" .. expr .. ")" .. part
|
||||
else
|
||||
if expr:match("%*$") then
|
||||
expr = expr .. part
|
||||
else
|
||||
expr = expr .. "." .. part
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return expr
|
||||
end
|
||||
|
||||
---@return boolean
|
||||
function Node:is_expandable()
|
||||
return self:is_container() and not self:is_c_null_pointer()
|
||||
|
||||
@@ -194,10 +194,6 @@ function Window:show(content)
|
||||
vim.keymap.set("n", "y", function()
|
||||
self:yank_value()
|
||||
end, { buffer = self.bufnr, nowait = true })
|
||||
|
||||
vim.keymap.set("n", "Y", function()
|
||||
self:yank_expression()
|
||||
end, { buffer = self.bufnr, nowait = true })
|
||||
end
|
||||
|
||||
---@param callback fun()
|
||||
@@ -391,19 +387,4 @@ function Window:yank_value()
|
||||
vim.fn.setreg("+", info.node.item.value)
|
||||
end
|
||||
|
||||
function Window:yank_expression()
|
||||
if not self.tree then
|
||||
return
|
||||
end
|
||||
|
||||
local info = self:get_current_node_info()
|
||||
if not info:is_valid() then
|
||||
return
|
||||
end
|
||||
|
||||
local expr = info.node:get_full_expression()
|
||||
vim.fn.setreg('"', expr)
|
||||
vim.fn.setreg("+", expr)
|
||||
end
|
||||
|
||||
return Window
|
||||
|
||||
Reference in New Issue
Block a user