diff --git a/lua/symbols-outline/init.lua b/lua/symbols-outline/init.lua index 005f506..d66af9d 100644 --- a/lua/symbols-outline/init.lua +++ b/lua/symbols-outline/init.lua @@ -439,7 +439,12 @@ function M.open_outline(opts) opts = { focus_outline = true } end if not M.view:is_open() then - providers.request_symbols(handler, opts) + local found = providers.request_symbols(handler, opts) + if not found then + vim.notify("[symbols-outline]: No providers found for current buffer", vim.log.levels.WARN) + -- else + -- print("Using provider ".._G._symbols_outline_current_provider.name.."...") + end end end diff --git a/lua/symbols-outline/providers/init.lua b/lua/symbols-outline/providers/init.lua index dab6ee7..c61e8c2 100644 --- a/lua/symbols-outline/providers/init.lua +++ b/lua/symbols-outline/providers/init.lua @@ -21,6 +21,7 @@ function M.has_provider() end ---@param on_symbols function +---@return boolean found_provider function M.request_symbols(on_symbols, opts) for _, value in ipairs(providers) do local provider = require(value) @@ -28,9 +29,10 @@ function M.request_symbols(on_symbols, opts) _G._symbols_outline_current_provider = provider _G._symbols_outline_current_provider.name = value provider.request_symbols(on_symbols, opts) - break + return true end end + return false end return M