neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit 5e4a5f1aaa15be3bc17c5e96040fd71196993937
parent eb1e8c12e2c5ad172f2fe54cb96bf31602b16c3d
Author: Vu Nhat Chuong <ronnyvu321@gmail.com>
Date:   Wed, 21 Feb 2024 00:14:50 +0700

fix(vim.ui.open): use explorer.exe instead of wslview #26947

Problem:
`vim.ui.open` uses `wslview`, which is slow and require a package from external PPA:
https://wslutiliti.es/wslu/install.html#ubuntu

Solution:
Use `explorer.exe` instead. WSL supports it by default:
https://learn.microsoft.com/en-us/windows/wsl/filesystems#view-your-current-directory-in-windows-file-explorer
Diffstat:
Mruntime/lua/vim/ui.lua | 6+++---
Mtest/functional/lua/ui_spec.lua | 2+-
2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/runtime/lua/vim/ui.lua b/runtime/lua/vim/ui.lua @@ -143,12 +143,12 @@ function M.open(path) else return nil, 'vim.ui.open: rundll32 not found' end - elseif vim.fn.executable('wslview') == 1 then - cmd = { 'wslview', path } + elseif vim.fn.executable('explorer.exe') == 1 then + cmd = { 'explorer.exe', path } elseif vim.fn.executable('xdg-open') == 1 then cmd = { 'xdg-open', path } else - return nil, 'vim.ui.open: no handler found (tried: wslview, xdg-open)' + return nil, 'vim.ui.open: no handler found (tried: explorer.exe, xdg-open)' end local rv = vim.system(cmd, { text = true, detach = true }):wait() diff --git a/test/functional/lua/ui_spec.lua b/test/functional/lua/ui_spec.lua @@ -152,7 +152,7 @@ describe('vim.ui', function() vim.fn.executable = function() return 0 end ]] eq( - 'vim.ui.open: no handler found (tried: wslview, xdg-open)', + 'vim.ui.open: no handler found (tried: explorer.exe, xdg-open)', exec_lua [[local _, err = vim.ui.open('foo') ; return err]] ) end)