From 85638901ae0aa4b8e85bce40a54330ba55e7a0a0 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Sat, 2 Nov 2019 18:08:38 +0100 Subject: [PATCH] Revert "Emacs: Remove old browser-url settings, use xdg-open instead." We need browser-url-generic-program for helm-exwm. This reverts commit 95bc3059179603acd4afd533e94c94bd7fe0bd5f. --- .emacs.d/lisp/main.el | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/.emacs.d/lisp/main.el b/.emacs.d/lisp/main.el index c12ead8e..22132be3 100644 --- a/.emacs.d/lisp/main.el +++ b/.emacs.d/lisp/main.el @@ -147,7 +147,22 @@ ;; "s-w" 'other-window "s-c" 'delete-window) +;; REVIEW: If xdg-open is not found, set Emacs URL browser to the environment browser, +;; or w3m if BROWSER is not set. +;; See https://debbugs.gnu.org/cgi/bugreport.cgi?bug=18986. +;; In Emacs 26, the BROWSER variable is still not checked. (require 'browse-url) +(setq browse-url-generic-program (or + (executable-find (or (getenv "BROWSER") "")) + (when (executable-find "xdg-mime") + (let ((desktop-browser (ambrevar/call-process-to-string "xdg-mime" "query" "default" "text/html"))) + (substring desktop-browser 0 (string-match "\\.desktop" desktop-browser)))) + (executable-find browse-url-mozilla-program) + (executable-find browse-url-firefox-program) + (executable-find browse-url-chromium-program) + (executable-find browse-url-kde-program) + (executable-find browse-url-conkeror-program) + (executable-find browse-url-chrome-program))) (setq browse-url-browser-function '(;; TODO: Display hyperspec in other window. ("http://www.lispworks.com/reference/HyperSpec/.*" . eww-browse-url) ("file:///.*HyperSpec.*" . eww-browse-url)