ubuntu 在nevim中运行win32yank时出错,参数cmd的值无效:win32yank.exe

xyhw6mcr  于 2022-10-27  发布在  其他
关注(0)|答案(2)|浏览(334)

我有一个问题,那就是我在nvim配置中放置了win32yank来共享剪贴板,不好的是它给了我以下错误:

Error detected while processing function provider#clipboard#Call[6]..3[15]..<SNR>25_try_cmd:
line    1:
E475: Invalid value for argument cmd: 'win32yank.exe' is not executable

可能是Lua或ubuntu的错误,如果你能告诉我一个从终端测试win32yank的方法,并知道这不是问题,它会对我有很大帮助

您也可以在下面的屏幕截图中看到它

当我尝试在nevim中复制某些内容时,会发生这种情况
这是我的nevim配置,在本例中我把它传递给了Lua,但它实际上是相同的

local o = vim.o
local wo = vim.wo

wo.nu = true
wo.rnu = true
o.clipboard = "unnamedplus"

o.expandtab = true
o.tabstop = 4
o.shiftwidth = 4

vim.g.clipboard = {
    name = "win32yank-wsl",
    copy = {
         ["+"] = "win32yank.exe -i --crlf",
         ["*"] = "win32yank.exe -i --crlf"
    },
    paste = {
        ["+"] = "win32yank.exe -o --lf",
        ["*"] = "win32yank.exe -o --lf"
    },
    cache_enabled = false
}

为了澄清一切,请下载win32yank,就像我使用以前版本的nevim配置它一样,并使用以下命令:

sudo ln -s ~/.config/nvim/win32yank.exe /usr/bin/win32yank

它在执行时没有给我任何错误*您可以看到我的win32yank在.config的nvim文件夹中,如ln命令


所示

我还添加了CheckHealth以查看剪贴板是否正常

wbrvyc0a

wbrvyc0a1#

我会看看Neovim的常见问题,它有修复我的问题的信息。
首先检查您是否能够从命令行执行win32yank.exe;您应该会看到一条用法语句。如果你看不到它,你可能想要使用Windows的Neovim安装中附带的win32yank版本。
然而,在我的例子中,运行这个修复程序(~/bin在我的$PATH中):

curl -sLo/tmp/win32yank.zip https://github.com/equalsraf/win32yank/releases/download/v0.0.4/win32yank-x64.zip
unzip -p /tmp/win32yank.zip win32yank.exe > /tmp/win32yank.exe
chmod +x /tmp/win32yank.exe
mv /tmp/win32yank.exe ~/bin

这样做之后,您应该不需要设置vim.g.clipboard变量。
如果这篇文章不太有帮助,很抱歉,这是我的第一篇帖子之一。👍

um6iljoc

um6iljoc2#

我每天都用WSL neovim,它工作得很好。
除了伊桑·A的回答外,我还有一些补充。
您唯一需要做的就是下载win32yank.exe,按照说明移动到正确的安装位置。
但我确实在配置中设置了vim.o.clipboard,如下所示:

vim.o.clipboard = 'unnamedplus'

在vim和其他所有内容之间复制粘贴(用于WSL剪贴板)。
应该就是这样了。用剪贴板删除所有其他配置内容,因为它应该是不需要的。

相关问题