stevearc / oil.nvim

Neovim file explorer: edit your filesystem like a buffer
MIT License
3.76k stars 107 forks source link

bug: oil can not find buffer adapter #356

Closed akthe-at closed 5 months ago

akthe-at commented 5 months ago

Did you check the docs and existing issues?

Neovim version (nvim -v)

NVIM v0.10.0-dev-2961+g4d52b0cf6

Operating system/version

Windows 10

Describe the bug

Trying to open a file from floating oil.nvim buffer fails. Met with the following error:

 Error 4:43:38 PM notify.error Could not find oil adapter for scheme '://'  Error 4:43:38 PM notify.error [oil] could not find adapter for buffer '://'  Error 4:43:38 PM msg_show.emsg E5108: Error executing lua: ...0/AppData/Local/nvim-data/lazy/oil.nvim/lua/oil/util.lua:826: assertion failed! stack traceback: [C]: in function 'assert' ...0/AppData/Local/nvim-data/lazy/oil.nvim/lua/oil/util.lua:826: in function 'get_edit_path' ...0/AppData/Local/nvim-data/lazy/oil.nvim/lua/oil/init.lua:668: in function 'open_next_entry' ...0/AppData/Local/nvim-data/lazy/oil.nvim/lua/oil/init.lua:705: in function <...0/AppData/Local/nvim-data/lazy/oil.nvim/lua/oil/init.lua:550>

I did narrow done the bug starting with this commit: f41d7e7cd8e4028b03c35d847b4396790ac8bb2d and persisting until the latest commit. This behavior does not occur on or before fa3820ebf1e8ccf5c7c0f3626d499b2c1aa8bc50

What is the severity of this bug?

breaking (some functionality is broken)

Steps To Reproduce

  1. Open neovim

  2. open floating oil buffer ( I do mine with the following )

    -- Toggle an Oil.Nvim floating Window --
    vim.keymap.set("n", "<leader>e", "<cmd>lua require('oil').toggle_float()<CR>", { desc = "Oil" })
  3. attempt to open a file and receive an error.

Note, if i simply do :Oil and try to open a file, this bug does not occur.

Expected Behavior

File to open without error.

Directory structure

No response

Repro

-- save as repro.lua
-- run with nvim -u repro.lua
-- DO NOT change the paths
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "runtime", "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",
    "--single-branch",
    "https://github.com/folke/lazy.nvim.git",
    lazypath,
  })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  "folke/tokyonight.nvim",
  {
        "stevearc/oil.nvim",
        config = function()
            require("oil").setup({
              -- add any needed settings here
            })
        end,
  },
  -- add any other plugins here
}
require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

vim.cmd.colorscheme("tokyonight")
-- add anything else here
I'm sorry but I don't understand the above and I've got to make my kids dinner but thought I would share this.

Did you check the bug with a clean config?

akthe-at commented 5 months ago

im blind I guess, repeat of #355 but feel free to add this info to figuring out a solution, sorry again for the double issue, closed.