folke / trouble.nvim

🚦 A pretty diagnostics, references, telescope results, quickfix and location list to help you solve all the trouble your code is causing.
Apache License 2.0
5.12k stars 172 forks source link

bug: Telescope integration issues #451

Closed acoffman closed 1 month ago

acoffman commented 1 month ago

Did you check docs and existing issues?

Neovim version (nvim -v)

0.10

Operating system/version

MacOS 14.5

Describe the bug

There seems to be some issue with the example configuration for Telescope integration example here: https://github.com/folke/trouble.nvim?tab=readme-ov-file#telescope

I have copied it directly as written into my config. When I hit ctrl-t to send results to Trouble they appear as expected however if I place my cursor on any of them I intermittently get:

Vim:E158: Invalid buffer name: -1

I have disabled all autocmds throughout my config as I assumed that would be the most likely offender and the issue persists.

Also, unrelated but it seems like the local actions = require("telescope.actions") line in the example config isn't used?

Steps To Reproduce

nvim -u repro.lua

:Telescope live_grep

Search for something

ctrl-t to send the results to Trouble

switch to the Trouble buffer and begin scrolling through the matches

Expected Behavior

Preview loads as expected as you scroll through matches.

Repro

-- DO NOT change the paths and don't remove the colorscheme
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
    vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
    vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
    "folke/tokyonight.nvim",
    "folke/trouble.nvim",
    "nvim-telescope/telescope.nvim",
    "nvim-lua/plenary.nvim",
}
require("lazy").setup(plugins, {
    root = root .. "/plugins",
})

vim.cmd.colorscheme("tokyonight")
-- add anything else here

local actions = require("telescope.actions")
local open_with_trouble = require("trouble.sources.telescope").open

-- Use this to add more results without clearing the trouble list
local add_to_trouble = require("trouble.sources.telescope").add

local telescope = require("telescope")

telescope.setup({
    defaults = {
        mappings = {
            i = { ["<c-t>"] = open_with_trouble },
            n = { ["<c-t>"] = open_with_trouble },
        },
    },
})