Как настроить org-mode для соответствия системным приложениям по умолчанию для внешних ссылок?

14

В режиме org я могу определить внешние ссылки, например, как

[[file+sys:path/to/document.pdf]]

Затем файл document.pdf открывается с помощью внешнего средства просмотра PDF. В документации режима org утверждается, что эта команда «открыть [s] через ОС, как двойной щелчок».

Однако есть разница с «двойным щелчком», поскольку я обнаружил, что системные приложения по умолчанию (для документов, веб-сайтов, видео и т. Д.) Не соблюдаются в моей настройке; В Ubuntu 12.04 приложение по умолчанию для веб-страниц было настроено на Firefox, и только через локальные .html-файлы в режиме org по-прежнему можно открыть Chromium.

Как мне настроить org-mode для соответствия настройкам приложения по умолчанию?

Феликс З. Хоффманн
источник

Ответы:

7

Вот мои настройки:

(setq org-file-apps
      '((auto-mode . emacs)
        ("\\.x?html?\\'" . "firefox %s")
        ("\\.pdf\\'" . "evince \"%s\"")
        ("\\.pdf::\\([0-9]+\\)\\'" . "evince \"%s\" -p %1")
        ("\\.pdf.xoj" . "xournal %s")))
Або-або
источник
2
Полезно, хотя вопрос спрашивает, как заставить org-modeсистему уважать по умолчанию. Эта версия потребует от нас установить значения по умолчанию вручную.
Дан
Правда, но системные значения по умолчанию имеют широкий смысл. Например, я нахожусь на Ubuntu, но я должен использовать ~/.mailcapEmacs vlcвместо инструментов по умолчанию системы Ubuntu.
abo-abo
4

Если вы используете рабочую среду Linux, скорее всего, она использует xdg-utils. Смотрите этот пост в блоге .

Поэтому вы можете сделать это:

(setq org-file-apps
      '((auto-mode . emacs)
        ("\\.x?html?\\'" . "xdg-open %s")
        ("\\.pdf\\'" . "xdg-ope, \"%s\"")
        ("\\.pdf::\\([0-9]+\\)\\'" . "xdg-open \"%s\" -p %1")
        ("\\.pdf.xoj" . "xournal %s")))
garjola
источник
0

В более поздних версиях org-mode есть пара служебных переменных:

org-file-apps-defaults-gnu
org-file-apps-default-macosx
org-file-apps-default-windowsnt

это должно установить разумные значения по умолчанию для этих сред.

Используйте их так:

(setq org-file-apps org-file-apps-defaults-macosx)
Андерс Энгстрём
источник