Как установить браузер по умолчанию для чтения PDF Evince на Linux?


12

Я нахожу эту команду

sudo update-alternatives –config x-www-browser

Я выбираю Chrome. Это работает для xpdf, но Evince все еще запускает Firefox после щелчка.

Я чувствую, что Linux не является стандартным. Я использую Linux Mint 8 (Helena) LXDE.


этот вопрос не очень хорошо сформулирован, что вы имеете в виду, что evince запускает firefox? Увидев это, теперь я не уверен в своем ответе.
g24l

Я думаю, что вопрос в том, какой браузер запускается, если вы нажимаете на URL в документе PDF.
Erik

Для пользователей MATE: askubuntu.com/a/533160/10425
Мартин Тома,

Ответы:


10

Решение вашей проблемы похоже на voodoo, даже когда существуют «протоколы» относительно того, как и какие приложения должны открывать определенный тип файлов. Вы увидите, что они очень несовместимы между системами и различными средами рабочего стола.

Так что нет действительно «правильного» ответа. У меня была похожая проблема с Firefox, поэтому я даю вам свое решение:

  1. Создать, ~/.local/share/applications/defaults.listесли он не существует
  2. Добавьте следующее

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

    ... или просто последняя строка, если есть что-то раньше.


1
Я слышал, что mimeapps.listэто новое имя для freedesktop.org: standard.freedesktop.org/mime-apps-spec/…
Сиро Сантилли 新疆 新疆 中心 法轮功 六四 事件

Он работает как вуду, волшебный, но просто работает =)
Ши Б.

10

Насколько я понимаю, LXDE использует xdg для вызовов приложений. Эта команда должна исправить вашу проблему:

Чтобы узнать, какое приложение открывает PDF-файл:

xdg-mime query default application/pdf

Чтобы установить приложение для показа

xdg-mime default evince.desktop application/pdf

Это должно работать, если ваше приложение зарегистрировано на рабочем столе (то есть, если есть лаунчер)


5
это должно быть на самом делеxdg-mime default evince.desktop application/pdf
xubuntix

4

Вы можете редактировать свой $HOME/.local/share/applications/mimeapps.listфайл. Если этот файл не существует, создайте его.

Для иллюстрации, если вы хотите, чтобы Chromium был браузером по умолчанию, добавьте следующую строку:

x-scheme-handler/http=chromium.desktop

Это все.


Работал как прелесть в Arch Linux.
Руди Матела

4

У меня была обратная проблема - я хочу, чтобы firefox открывал ссылки, но, несмотря ни на что, запускал хром.

Я привык strace -o /tmp/output evinceвидеть, какие функции вызываются, и нашел это в журнале:

open("/home/koniu/.local/share/applications/firefox.desktop;", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/usr/local/share/applications/firefox.desktop;", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/usr/share/applications/firefox.desktop;", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/home/koniu/.local/share/applications/chromium.desktop", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/usr/local/share/applications/chromium.desktop", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/usr/share/applications/chromium.desktop", O_RDONLY|O_LARGEFILE) = 16

Не знаю, почему в firefox.desktop есть точка с запятой, но я создал /home/koniu/.local/share/applications/firefox.desktopследующее содержимое:

[Desktop Entry]
Name=Firefox
Exec=/usr/bin/firefox %U
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=firefox
Categories=Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml_xml;x-scheme-handler/http;x-scheme-handler/https;
StartupNotify=true

И теперь evinceначинается firefoxкак хотелось бы.


3

Для изменения приложений Gnome вам нужно использовать gconftool:

$ gconftool -s /desktop/gnome/url-handlers/http/command -t string 'chromium-browser %s'

Чтобы проверить изменения:

$ gconftool -g /desktop/gnome/url-handlers/http/command

Другие приложения Gnome:

/desktop/gnome/url-handlers/chrome/command
/desktop/gnome/url-handlers/https/command
/desktop/gnome/url-handlers/http/command
/desktop/gnome/url-handlers/ftp/command

Ссылка:

http://www.salixos.org/forum/viewtopic.php?f=15&t=1376&view=print


Вы продолжаете говорить парню, чтобы он установил gnome, но он использует LXDE ...
g24l

1
@ g24l: Evince - это программа GNOME. (Тем не менее, он больше не использует GConf для обработки URL-адресов.)
user1686

1

Ни одно из этих решений не помогло мне.

Мне пришлось отредактировать ~/.config/mimeapps.listи добавить эти правила к двум заголовкам:

[Default Applications]
application/pdf=org.gnome.Evince.desktop

[Added Associations]
application/pdf=evince.desktop;org.gnome.Evince.desktop;

0

Установите браузер по умолчанию в приложениях Gnome с помощью gnome-default-applications-properties.


ты чуть не убил мою систему! после apt-get gnome-control-center система почти сломана.
Ченг

определить "почти сломан"
MSW

3
Возможно, проблема в том, что вы говорите ему установить gnome, когда его оконный менеджер, вероятно, LXDE.
Джарвин

я сообщаю об этом: forums.linuxmint.com/viewtopic.php?f=47&t=50017 он пишет файл .xsession-errors с "fcitx signal 11" и ест место на жестком диске.
Ченг

4
@ Дан имейте в виду, что evince - это "gnome stuff" и имеет зависимости от gnome; тем не менее, я не знаю, какой правильный ответ здесь. (Кроме того, LXDE - это среда рабочего стола, а не менеджер окон, здесь это не имеет значения.)
frabjous

0

У меня была эта проблема, используя evince под KDE. Мне пришлось выйти из KDE, войти в GNOME и установить браузер GNOME по умолчанию ( Search-> Details-> Default Applications-> Browser). Затем вернитесь в KDE и все заработало.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.