vim-fall / fall.vim

🍂 Yet Another Fuzzy Finder designed for Vim and Neovim and to be programmer-friendly
MIT License
68 stars 3 forks source link

Failed to find extensions if the plugin is in a `runtimepath` that is specified with wildcard (`*`) #22

Closed mimikun closed 2 weeks ago

mimikun commented 1 month ago

When I install the plugin and run it with :Fall file, I get an error.

I am a Neovim user. I use rocks.nvim as my plugin manager. Not only vim-fall, but plugins made with denops are not compatible with rocks.nvim.(maybe) (I plan to ask rocks.nvim about this later)

The same denops plugin skkeleton worked fine, but vim-fall didn't work properly. Could you please tell me what the problem is?

Error

:Fall file
[denops] [fall] Failed to load source extension 'file': No source extension 'file' is registered

Repro

cd ~/.config
git clone https://github.com/mimikun/nvim-vim-fall-minimal-repro.git
export NVIM_APPNAME="nvim-vim-fall-minimal-repro"
nvim -u NORC -c "source https://raw.githubusercontent.com/nvim-neorocks/rocks.nvim/master/installer.lua"
# NOTE: install phase question 
# Set up luarocks (recommended) ?: false
# NEED set false, because an error occurs.

after neovim launch

Run :Rocks sync, and Fall file

lambdalisue commented 1 month ago

Does vim-fall exists in runtimepath? Currently, vim-fall tried to find extensions from runtimepath (this behavior is planned to be changed though.)

https://github.com/lambdalisue/vim-fall/blob/9c1791261021dd39bcabade8cf05cbb606af1663/denops/fall/extension/registry.ts#L74-L98

mimikun commented 1 month ago

my runtimepath is here:

  runtimepath=~/.config/nvim-vim-fall-minimal-repro,/etc/xdg/nvim-vim-fall-minimal-repro,~/.local/share/nvim-vim-fall-mi
nimal-repro/site,~/.local/share/nvim-vim-fall-minimal-repro/site/pack/luarocks/opt/rocks-config.nvim,~/.local/share/nvim
-vim-fall-minimal-repro/site/pack/luarocks/opt/rocks-git.nvim,~/.local/share/nvim-vim-fall-minimal-repro/site/pack/*/sta
rt/*,/usr/local/share/nvim-vim-fall-minimal-repro/site,/usr/share/nvim-vim-fall-minimal-repro/site,/nix/var/nix/profiles
/default/share/nvim-vim-fall-minimal-repro/site,~/.local/share/bob/nightly/share/nvim/runtime,~/.local/share/bob/nightly
/share/nvim/runtime/pack/dist/opt/matchit,~/.local/share/bob/nightly/lib/nvim,/nix/var/nix/profiles/default/share/nvim-v
im-fall-minimal-repro/site/after,/usr/share/nvim-vim-fall-minimal-repro/site/after,/usr/local/share/nvim-vim-fall-minima
l-repro/site/after,~/.local/share/nvim-vim-fall-minimal-repro/site/after,/etc/xdg/nvim-vim-fall-minimal-repro/after,~/.c
onfig/nvim-vim-fall-minimal-repro/after,~/.local/share/nvim-vim-fall-minimal-repro/rocks/lib/luarocks/rocks-5.1/rocks.nv
im/*,~/.local/share/nvim-vim-fall-minimal-repro/rocks/rocks_rtp

or

~/.config/nvim-vim-fall-minimal-repro
/etc/xdg/nvim-vim-fall-minimal-repro
~/.local/share/nvim-vim-fall-minimal-repro/site
~/.local/share/nvim-vim-fall-minimal-repro/site/pack/luarocks/opt/rocks-config.nvim
~/.local/share/nvim-vim-fall-minimal-repro/site/pack/luarocks/opt/rocks-git.nvim
~/.local/share/nvim-vim-fall-minimal-repro/site/pack/*/start/*
/usr/local/share/nvim-vim-fall-minimal-repro/site
/usr/share/nvim-vim-fall-minimal-repro/site
/nix/var/nix/profiles/default/share/nvim-vim-fall-minimal-repro/site
~/.local/share/bob/nightly/share/nvim/runtime
~/.local/share/bob/nightly/share/nvim/runtime/pack/dist/opt/matchit
~/.local/share/bob/nightly/lib/nvim,/nix/var/nix/profiles/default/share/nvim-vim-fall-minimal-repro/site/after
/usr/share/nvim-vim-fall-minimal-repro/site/after
/usr/local/share/nvim-vim-fall-minimal-repro/site/after
~/.local/share/nvim-vim-fall-minimal-repro/site/after
/etc/xdg/nvim-vim-fall-minimal-repro/after
~/.config/nvim-vim-fall-minimal-repro/after
~/.local/share/nvim-vim-fall-minimal-repro/rocks/lib/luarocks/rocks-5.1/rocks.nvim/*
~/.local/share/nvim-vim-fall-minimal-repro/rocks/rocks_rtp
lambdalisue commented 1 month ago

No idea but it seems vim-fall is not in runtimepath. How Vim find plugin/fall.vim and denops/fall/main.ts with this situation?

Ah, maybe ~/.local/share/nvim-vim-fall-minimal-repro/site/pack/*/start/*? Does vim-fall exist in that directory?

Shougo commented 1 month ago

Hm... I will test it later.

Shougo commented 1 month ago
# Set up luarocks (recommended) ?: false
# NEED set false, because an error occurs.

I cannot set it to false.

2024-10-25_11-32

Shougo commented 1 month ago

luarocks command install is needed.

Shougo commented 1 month ago
remote/host: generated rplugin manifest: /home/shougo/.local/share/nvim-vim-fall-minimal-repro/rplugin.vim
Error executing vim.schedule lua callback: ...vim-fall-minimal-repro/rocks/share/lua/5.1/nio/tasks.lua:100: Async task failed without callback: The coroutine f
ailed with this message:
...m-fall-minimal-repro/rocks/share/lua/5.1/nio/control.lua:293: ...l-repro/rocks/rocks_rtp/lua/rocks/operations/helpers.lua:339: Vim:E154: Duplicate tag "$TER
M" in file /home/shougo/local/nvim/share/nvim/runtime/doc/tui.txt
stack traceback:
        [C]: in function 'error'
        ...m-fall-minimal-repro/rocks/share/lua/5.1/nio/control.lua:293: in function 'with'
        ...imal-repro/rocks/rocks_rtp/lua/rocks/operations/sync.lua:38: in function <...imal-repro/rocks/rocks_rtp/lua/rocks/operations/sync.lua:37>
stack traceback:
        [C]: in function 'error'
        ...vim-fall-minimal-repro/rocks/share/lua/5.1/nio/tasks.lua:100: in function 'close_task'
        ...vim-fall-minimal-repro/rocks/share/lua/5.1/nio/tasks.lua:122: in function 'cb'
        ...vim-fall-minimal-repro/rocks/share/lua/5.1/nio/tasks.lua:188: in function <...vim-fall-minimal-repro/rocks/share/lua/5.1/nio/tasks.lua:187>
Shougo commented 1 month ago

Hm... Installed.

/home/shougo/.local/share/nvim-vim-fall-minimal-repro
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall/ftplugin/fall-query.vim
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall/ftplugin/fall-input.vim
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall/ftplugin/fall-select.vim
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall/ftplugin/fall-preview.vim
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall/.script/build_fall_config_schema.ts
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall/autoload/fall
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall/doc/fall.txt
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall/plugin/fall
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall/plugin/fall.vim
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall/denops/fall
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall/denops/@fall
/home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/rocks/start/vim-fall/denops/@fall-extension
lambdalisue commented 1 month ago

How did you list https://github.com/lambdalisue/vim-fall/issues/22#issuecomment-2436696152

It seems most files are missing (maybe you've filtered items that has fall in the last path?)

Shougo commented 1 month ago

Hm... The extension directory seems not found.

lambdalisue commented 1 month ago

Hm... The extension directory seems not found.

It seems the directory itself exist (vim-fall/denops/@fall-extension), right?

Shougo commented 1 month ago

I get it.

[denops] root = /home/shougo/.local/share/nvim-vim-fall-minimal-repro/site/pack/*/start/*/denops/@fall-extension
[denops] Not found

walk() does not support glob pattern.

lambdalisue commented 1 month ago

It's bug but I'm planning to totally change the extension architectures so I won't fix it.

mimikun commented 1 month ago

Thank you. I'm looking forward to the stable release.

lambdalisue commented 1 month ago

Reopen for users who faced same issue can noticed that this is a bug of fall. I'll close it once I've applied entire changes to the fall's extension architectures.

lambdalisue commented 2 weeks ago

Extension system is completely re-written and this issue is no longer exist.

mimikun commented 1 week ago

I checked it and it's working fine. Thank you!

image