【问题标题】:URL Handler for gnome applications in cygwin?cygwin中gnome应用程序的URL处理程序?
【发布时间】:2019-08-02 20:27:35
【问题描述】:

我已经使用 Cygwin/X 设置了一台 Windows 机器,并在该环境中运行了一个终端。 “点击看起来像链接的东西”功能效果很好,但 GNOME 会弹出一个窗口,说它不知道如何打开 http url 方案。

我发现了很多关于 xdg mime 类型、.desktop 文件/应用程序文件的参考资料,并且有:

$ xdg-mime query default x-scheme-handler/http
emarcotte-http.desktop

$ cat /usr/share/applications/emarcotte-http.desktop
[Desktop Entry]
Type=Application
Name=Browser Handler!
Exec=~emarcotte/browser.sh %u
StartupNotify=false
MimeType=x-scheme-handler/http;x-scheme-handler/https;

$ cat ~/browser.sh 
EXE="/cygdrive/c/Program Files/Mozilla Firefox/firefox.exe"
"$EXE" "$*"

但我仍然收到弹出窗口说没有注册的处理程序。

有没有人想出在 cygwin 中启用 GNOME url 处理程序的秘诀?

【问题讨论】:

    标签: cygwin gnome gnome-terminal


    【解决方案1】:

    今天早上挖了一些东西。我现在没有我的 Windows 机器,但是今天下午可以做一些测试。

    如果它们有帮助,下面是我发现的我计划用于测试的资源。


    是否安装了 xdg-utils(包含所有依赖项)?那是包含xdg-open 的 Cygwin 工具集。


    根据xdg-utils repo README,您可以尝试使用 PATH;类似于:

    export PATH=$PATH:$INSTALL_DIR/xdg-utils
    xdg-desktop-menu install $INSTALL_DIR/mycompany-myapp.desktop
    

    您的 DESKTOP 和 DISPLAY 环境变量是如何设置的?直接调用xdg-open,浏览器能正常打开吗?

    xdg-open https://[URI].html
    

    您可能有一些运气来调整它们(在this 投票最多的答案中找到建议),以解决在 Ubuntu 上虚拟化的 Gnome 终端中将此解决方案重新用于默认 PDF 处理程序问题的类似问题:

    export DISPLAY=:0
    export GNOME_DESKTOP_SESSION_ID=0
    xdg-open document.pdf
    

    您的错误描述让我认为问题更多在于实际的处理程序服务而不是指针,但我不知道错误处理的具体程度,所以虽然 this 线程是 Fedora 特定的,它确实描述了一个类似的问题,该问题源于存储在虚拟化配置中的以下目录中的 mimeapps 记录。自 2011 年首次解决以来,它似乎在 2019 年重新出现:

    ~/.local/share/applications/mimeapps.list
    

    如果这些都没有帮助,我还在 arch wiki 上找到了许多用于配置文件/URI 默认应用程序的工具。您可能可以将these 之一重新用作您的处理程序。


    我希望其中一个能引导你走上正确的道路?。如果它们都不能让你到达任何地方,我稍后会做一些测试。

    【讨论】:

    • 这让我更接近了。使用 xdg-open 我得到了错误,我可以开始调试更多:$ xdg-open http://google.com This tool has been deprecated, use 'gio open' instead. See 'gio help open' for more info. gio: http://google.com: No application is registered as handling this file
    【解决方案2】:

    原来你不能在 Exec 中使用 ~。设置浏览器打开的完整路径。

    【讨论】:

      猜你喜欢
      • 2011-08-02
      • 2011-05-17
      • 2015-09-05
      • 2017-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多