【问题标题】:app-assignment for vifm on windowsWindows 上 vifm 的应用程序分配
【发布时间】:2017-04-24 17:23:17
【问题描述】:

我在 Win 10 上,想摆脱 Windows-Explorer 并主要使用我的键盘和 vifm。 但是我在为特定应用程序分配文件扩展名时遇到问题。我想打开的所有东西都是用内置的 vim 打开的,而不是我的外部应用程序。

这是我的配置中的一个示例:

" Pdf
filextype *.pdf
    \ {View in AR}
    \ C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe %f

我现在有两个问题: - vifm 中真的没有“打开方式”功能吗?不敢相信…… - 如何在我的win环境中正确分配文件类型?

感谢 4 的支持!!

【问题讨论】:

    标签: vifm


    【解决方案1】:

    您需要使用该命令修复两件事:

    1. 通过将路径括在引号中来转义空格(vifm 检查程序是否存在,因此需要能够从命令行提取可执行路径)。
    2. 使用 Windows 友好的宏 %"f 而不是 %f

    这会给你:

    " Pdf
    filextype *.pdf
        \ {View in AR}
        \ "C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe" %"f
    

    应该可以。

    vifm 中真的没有“Open-With”功能吗?

    取决于你的意思。有:file 命令,会显示 注册文件关联列表。如果你只想和那些注册的人一起去 在 Windows 中,然后使用包罗万象的关联 filetype * start。如果你在说话 关于资源管理器中的“打开方式”菜单,然后不,这样的注册查询 不执行关联。

    【讨论】:

      【解决方案2】:

      答案较晚,但 Xaizek 的解决方案包含一些不准确之处且不完整,因为如果您愿意跳过一个小圈子,就有可能通过对话获得开放:

      要使用 AcroRd32 默认打开 pdf 文件,您应该在 vifmrc 中添加以下行:

      filextype *.pdf
          \ {View in AR}
          \ "C:/Program Files (x86)/Adobe/Acrobat Reader DC/Reader/AcroRd32.exe" %"f &,
      

      注意正斜杠。没有这些命令将不起作用。在任何 filextype 行的末尾添加 &, 通常也是一个好主意。这将允许 acrord32 在后台打开并且不会中断您的 vifm 会话;否则您必须关闭 pdf 才能继续使用 vifm。

      第二点,'start' 后面需要空的双引号才能在这里工作:

      filextype *.pdf
          \ {View in default application}
          \ start "" %"c &,
      

      另一种方法是使用explorer 代替start ""。值得注意的是,这只会让您一次打开一个文件,而不是批量打开每个选定的 pdf。

      您还可以通过 shell 打开特定程序中的任何文件,例如:!gvim %"c & 将在 gvim 中打开当前选择的文件。您也可以将%"c 替换为当前目录中所需的任何文件名。

      最后,您可以通过以下方法为任何选定的文件打开对话框:

      在您的 vifm 目录(或路径中的任何其他位置)中创建文件 ow.cmd,其中包含以下内容:

      Rundll32.exe shell32.dll,OpenAs_RunDLL %~1

      然后将以下内容添加到您的 vifmrc 中:

      " Create 'open with' dialogue box for selected file
      nnoremap go :!ow.cmd %"c:p &<cr>
      

      现在,如果您在 vifm 中点击go,它将为当前选定的文件弹出一个“打开方式”对话框。遗憾的是,外部脚本对于删除 %"c:p 附加的文件名中的引号是必需的。

      【讨论】:

        猜你喜欢
        • 2015-11-17
        • 2013-11-05
        • 2012-08-04
        • 1970-01-01
        • 1970-01-01
        • 2018-08-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多