diff --git a/.config/nvim/lua/plugins/extras/lsp/glance.lua b/.config/nvim/lua/plugins/extras/lsp/glance.lua index 59ebe4b3..18f79bd6 100644 --- a/.config/nvim/lua/plugins/extras/lsp/glance.lua +++ b/.config/nvim/lua/plugins/extras/lsp/glance.lua @@ -13,6 +13,22 @@ return { border = { enable = true, }, + hooks = { + before_open = function(results, open, jump, method) + local uri = vim.uri_from_bufnr(0) + if #results == 1 then + local target_uri = results[1].uri or results[1].targetUri + + if target_uri == uri then + jump(results[1]) + else + open(results) + end + else + open(results) + end + end, + }, }, keys = { { "gd", "Glance definitions", desc = "Goto Definition" },