web-dev-qa-db-ja.com

デフォルトのブラウザーでEvinceハイパーリンクを開く方法

Gnome Shellを使用してUbuntu 18.04を実行すると、Evinceでハイパーリンクをクリックすると、デフォルトのブラウザーとして設定したChromiumではなく、Firefoxで開きます。

設定GUIを介して、また次のコマンドを実行して、デフォルトのブラウザーを設定しました。

Sudo update-alternatives --set x-www-browser /usr/bin/chromium-browser                                                                                                                    
Sudo update-alternatives --set gnome-www-browser /usr/bin/chromium-browser
xdg-settings set default-web-browser chromium-browser.desktop

次の行を~/.config/mimeapps.listに追加しました:

x-scheme-handler/http=google-chrome.desktop
x-scheme-handler/https=google-chrome.desktop

次のコマンドがすべてChromiumで開くことを確認しました。

xdg-open test.html
x-www-browser test.html
gnome-www-browser test.html
sensible-browser test.html

BROWSER環境変数は私のシステムではデフォルトで設定されていませんが、この変数を設定してEvinceを実行しても、Firefoxでリンクが開いたままです:

BROWSER=/usr/bin/chromium-browser /usr/bin/evince test.pdf

Evinceでクリックしたリンクをデフォルトのブラウザーで開くには、他に何ができますか?

6
Ian Mackinnon

次のコマンドが機能するようになり、Evinceを再起動することなくデフォルトのブラウザを変更できるようになりました。

xdg-settings set default-web-browser firefox.desktop
xdg-settings set default-web-browser chromium-browser.desktop

最初に質問したときにこれらが機能しなかった理由がわかりません。テスト中にシステムを再起動することで、何らかの要因がリセットされたとしか想像できません。

2
Ian Mackinnon

ここで報告された同じ問題: LinuxでPDFリーダーEvinceのデフォルトブラウザを設定する方法

問題を解決することは、特定の種類のファイルをどのように、どのアプリケーションで開くべきかに関する「プロトコル」がある場合でも、ブードゥー教のようなものです。システムと異なるデスクトップ環境との間で非常に矛盾していることがわかります。

したがって、実際には「正しい」答えはありません。私はFirefoxで同様の問題を抱えていたので、私のソリューションを提供しています:

Create a ~/.local/share/applications/defaults.list if it doesn't exist

Add the following

[Default Applications]
application/pdf=evince.desktop;

...or just the last line if there's something before.
1