From 8047632aee6c1f3e996d1433a85c7244263af01e Mon Sep 17 00:00:00 2001 From: Ivar Fatland Date: Thu, 13 Mar 2025 09:10:53 +0100 Subject: [PATCH] made JumpToDefinition a local function instead --- init.lua | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/init.lua b/init.lua index 1518f16..d4400d9 100644 --- a/init.lua +++ b/init.lua @@ -283,16 +283,18 @@ require'lazy'.setup{ --{{{1 require'lspconfig'.gdscript.setup{} - function JumpToDefinition() - local tag_jump_success = pcall(vim.cmd, "tag " .. vim.fn.expand("")) + local function jump_to_definition() + -- try to find definition with ctags first + local tag_jump_success = pcall(vim.cmd --[[@as fun(...): ...]], "tag " .. vim.fn.expand("")) + -- otherwise, try with lsp if not tag_jump_success then vim.lsp.buf.definition() end end + vim.keymap.set( 'n', ',fd', jump_to_definition, { noremap = true, }) vim.cmd [[ noremap ,rn :lua vim.lsp.buf.rename() - noremap ,fd :lua JumpToDefinition() noremap ,ft :lua vim.lsp.buf.type_definition() noremap ,fr :lua vim.lsp.buf.references() noremap ,ca :lua vim.lsp.buf.code_action()