Reference Providers
When you trigger goto_preview_references, the LSP often returns multiple locations. goto-preview needs a way to let you pick which one to preview. The plugin supports several providers for this selection list.
You can configure the provider in your setup:
require('goto-preview').setup {
references = {
provider = "telescope", -- Options below
}
}
Supported Providers
The provider string can be one of the following:
1. telescope (Default)
Requires telescope.nvim. It uses a dropdown theme by default.
references = {
provider = "telescope",
telescope = require("telescope.themes").get_dropdown({ hide_preview = false })
}
2. fzf_lua
Requires fzf-lua. It uses the lsp_references picker.
references = {
provider = "fzf_lua"
}
3. snacks
Requires snacks.nvim. Uses snacks.picker with source lsp_references.
references = {
provider = "snacks"
}
4. mini_pick
Requires mini.pick. Creates a custom picker source for the references.
references = {
provider = "mini_pick"
}
5. default
Uses vim.ui.select. This falls back to whatever UI selection interface you have configured (e.g., dressing.nvim or standard Neovim text menu).
references = {
provider = "default"
}
Telescope Extension
goto-preview also registers itself as a Telescope extension. You can load it via:
require("telescope").load_extension("gotopreview")
This exposes telescope.extensions.gotopreview.references.