链接点击没有传递给Firefox

当Firefox被设置为我的默认浏览器时,在另一个应用程序中阻塞的任何链接都会打开一个新的空白Firefox窗口,而不是新选项卡或带有我想要的页面的新窗口。

这是firefox,“首选应用程序”或其他什么配置的问题?

firefox可执行脚本工作正常,因为在控制台窗口中执行firefox http://example.com做正确的事情。 有没有办法可以手动编辑“首选应用程序”?

我找到了答案。

 $ xdg-settings get default-web-browser firefox-mozilla-build.desktop 

然后找到它的位置:

 $ locate firefox-mozilla-build.desktop /home/user/.local/share/applications/firefox-mozilla-build.desktop 

打开它

 vi /home/user/.local/share/applications/firefox-mozilla-build.desktop 

然后改变

 Exec=firefox 

至:

 Exec=firefox %u 

症状:单击类似Thunderbird或LibreOffice的应用程序中的链接,在Firefox中打开空白选项卡或页面。

解决方案:在文件夹/home/myself/.local/share/applications找到文件(或等效文件) userapp-firefox-S2GY5X.desktop并替换

 Exec=/usr/bin/firefox %f 

 Exec=/usr/bin/firefox %u 

u = URL简短)

你对“任何应用程序”都没有帮助,但我试图找到一个可以打开URL的应用程序。 我已经在“帮助”菜单中测试了“在线获取帮助…”选项,该选项确认在新窗口中打开了URL。

凭借我的想象力,我通过执行来观察新的命令:

 while : ;do ps x -o args | head -6 | tail -3; sleep .5;echo '___'; done 

执行此操作后,我快速按下前面提到的“Get Help Online …”菜单选项。 当命令出现时,我按Ctrl + C (中断)退出命令。 该命令是一个python调用。 打开URL的相关文件是:

 /usr/share/launchpad-integration/launchpadintegration/urls.py 

通过分析该文件,我得出结论,如果要运行的应用程序是firefox %s (由gconftool-2确定),则强制使用新的Firefox窗口。 要更改此行为,请将key /desktop/gnome/url-handlers/http/commandfirefox %u

为此,请打开终端并执行:

 gconftool-2 --set /desktop/gnome/url-handlers/http/command --type string 'firefox %u' 

有关GUI方式,请参阅如何使用gconf编辑器?

我有FF 6.0并拥有Ubuntu 11.04。 我转到FF>编辑>首选项>选项卡(这是此窗口中的选项卡),您有很多关于选项卡应如何反应的选择。

Firefox用户在这里。

以上都不适合我。 我的配置文件中已经有’%u’了。

我注意到,每当我点击终端内的超链接时,Firefox会弹出一条错误消息,告诉我我已经打开了浏览器,而不是只打开一个新标签。 这让我觉得我目前的浏览器正在启动一个新的独立窗口。

但我得到了一个错误的印象。 这是因为我有两个版本的Firefox(beta和ESR)。 如果您没有将常规浏览器设置为默认浏览器,任何点击超链接都会启动您的其他版本的Firefox,如果您没有注意,您似乎试图从常规浏览器打开一个新窗口浏览器而不是新标签。

TL; DR
如果您使用同一浏览器的两个版本,请确保将常规浏览器设置为默认浏览器

Debian Wheezy,带有Xfce4桌面。 Firefox ESR版本52.8.0(32位):

我有一个类似但不完全相同的问题。 单击LibreOffice中的Internet超链接打开了一个新的Firefox窗口,即使Firefox已经在已有的窗口中运行。 此外,所述新的Firefox窗口将打开两个选项卡,一个带有“www。%u.com”的URL,另一个带有所需的URL。

为了阻止这种不良行为,我用文本编辑器打开了/home/your user/.local/share/xfce4/helpers/firefox-esr文件并更改了X-XFCE-CommandsWithParameter=firefox-esr %u "%s"其中的行到X-XFCE-CommandsWithParameter=firefox-esr "%s"

现在,我得到了所需的行为(即所需的URL在已经存在的Firefox窗口中作为新选项卡打开…

IHTHS!