我正在尝试设置一个映射以使用 OS 默认应用程序打开文件。我不想在我的 vifmrc 中使用 filetype 命令,如所述这里,因为我希望l
仍然Enter
使用 vim 打开文件。(我仍然有太多记事本关联。)所以我尝试了以下映射:
map o :!start "" "%d\%c"
map o :!start "" "%d\%c:gs?\ ? ?"
但是,使用其中一个带 Spaces.docx 的文件,我收到错误消息
Windows cannot find 'c:\path\subpath\File\ with\ Spaces.docx'...
如何将文件名转换为 Windows 友好格式,而不在文件名中使用反斜杠?
答案1
一些%{x}
宏具有附加%"{x}
形式,以解决 cmd.exe 无法处理正确转义的问题(文档)。
尝试以下操作(noremap
大多数时候您想要的是而不是map
和使用:p
文件名修饰符比组合%d
和更通用%c
):
noremap o :!start "" %"c:p