当前位置: 首页>>技术教程>>正文


如何告诉Chrome如何处理磁铁链接?

, , ,

问题描述

现在Chrome将它的围裙扔到头上并调用Firefox,它打开了与rtorrent的链接。我需要做些什么来消除Firefox步骤?

最佳解决办法

Chrome(或Chromium)协议处理的工作方式与Firefox不同。 Firefox基本上跟踪所有这些,这就是为什么你可以在Applications part of the Preferences中配置协议处理(如磁链接)。但是,Chrome依赖于xdg-open

xdg-open正确处理磁链之前,您需要做几件事。

  1. 找到要处理磁体链接的程序的桌面文件的名称。我们假设程序是传输。它(像往常一样)在/usr/share/applications/中有它的桌面文件,事实上,通过仔细阅读目录列表,我发现我的传输版本实际上是gtk版本,所以它的桌面文件叫做transmission-gtk.desktop

  2. 桌面文件可能搞砸了。因此,您可以检查/usr/share/applications/transmission-gtk.desktop是否包含以下行:

    Exec=transmission-gtk %U
    [some lines omitted]
    MimeType=application/x-bittorrent;x-scheme-handler/magnet;
    

    请注意Exec行中的%U。这是绝对必要的。 MimeType行应如上所示。

  3. 现在是告诉xdg-open使用Transmission打开磁链的必要步骤。在终端中,键入:

    xdg-mime default transmission-gtk.desktop x-scheme-handler/magnet 
    
  4. (如果您使用Gnome,KDE,Xfce或LXDE,则不需要步骤)最后,xdg-open假设您正在运行其中一个标准桌面环境:gnome,kde,xfce和lxde。如果不是,xdg-open将无法使用磁力链接。作为suggested on the Arch wiki,您只需修改/usr/bin/xdg-open即可。在文件的末尾,您将找到以以下内容开头的部分:

    detectDE
    if [ x"$DE" = x"" ]; then
       DE=generic
    

    generic改变为gnomekdexfcelxde之一。我选择了xfce,因为我实际上有一个Xfce会话,我已经配置并偶尔使用它。

    这种方法的缺点是,如果xdg-open获得更新,您将不得不重做此操作。 Arch wiki提出了另一种避免这种缺陷的方法(但有其自身的缺点)。

    警告:最后一步中的选择比看起来更重要。挑选lxde对我不起作用!在xdg-open中,辅助函数open_lxde依赖于pcmanfm(lxde文件管理器),open_lxde中的代码或者pcmanfm的错误可能有问题。

次佳解决办法

只需将磁铁链接拖动到传输窗口,它就可以正常工作而无需任何调整….我正在使用Lubuntu 12.10的库存版本,没什么特别的….

第三种解决办法

在Lubuntu中使用qBitorrent从Chrome打开磁铁非常好

xdg-mime default qBittorrent.desktop x-scheme-handler/magnet

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1086.html,未经允许,请勿转载。