将完整文件名复制到剪贴板

将完整文件名复制到剪贴板

嗨,我在 Windows 上使用 vifm,非常喜欢它。我已将其放在vifmrc文件中,以便将完整文件名拉到剪贴板 -

nnoremap yf :!echo %d\%c%i| clip<cr>

它工作正常,但如果文件名或路径包含space字符,命令会将其转义,从而破坏完整路径。

例如 -

actual path: d:\work documents\file name with space.txt

yanked path: d:\work\ documents\file\ name\ with\ space.txt

有人能告诉我如何修复它以避免逃逸吗?

答案1

我可以使用以下映射来获得正确的结果 -

nnoremap yf :!pwsh -c "\"%d\%c%i\".Replace(\"\ \",\" \")"| clip<cr>

它调用 powershell 脚本并将“\”替换为“ ”,然后将结果通过管道传输到clip

相关内容