X-Git-Url: https://thelambdalab.xyz/gitweb/index.cgi?p=elpher.git;a=blobdiff_plain;f=elpher.el;h=90f76724b46771589b7c0a0eb4ac2f0abd3f47b3;hp=d9046bc730f8ac90afc8446fc506746eab2619df;hb=7a1b1e2c9e9cc877b4378fddb94bed48d9955c4b;hpb=a1cc1dd30edbe9629619793ed9e84410fb67e9a5 diff --git a/elpher.el b/elpher.el index d9046bc..90f7672 100644 --- a/elpher.el +++ b/elpher.el @@ -1870,22 +1870,21 @@ paramter elpher, where link is self-contained." (elpher-go url)) ;; Use elpher to open gopher, finger and gemini links -(with-eval-after-load 'browse-url - ;; For recent version of `browse-url' package - (if (boundp 'browse-url-default-handlers) - (add-to-list - 'browse-url-default-handlers - '("^\\(gopher\\|finger\\|gemini\\)://" . elpher-browse-url-elpher)) - ;; Patch browse-url-default-browser for older ones - (advice-add 'browse-url-default-browser :before-while - (lambda (url &rest _args) - (let ((scheme (downcase (car (split-string url ":" t))))) - (if (member scheme '("gemini" "gopher" "finger")) - ;; `elpher-go' always returns nil, which will stop the - ;; advice chain here in a before-while - (elpher-go url) - ;; chain must continue, then return t. - t)))))) +;; For recent version of `browse-url' package +(if (boundp 'browse-url-default-handlers) + (add-to-list + 'browse-url-default-handlers + '("^\\(gopher\\|finger\\|gemini\\)://" . elpher-browse-url-elpher)) + ;; Patch browse-url-default-browser for older ones + (advice-add 'browse-url-default-browser :before-while + (lambda (url &rest _args) + (let ((scheme (downcase (car (split-string url ":" t))))) + (if (member scheme '("gemini" "gopher" "finger")) + ;; `elpher-go' always returns nil, which will stop the + ;; advice chain here in a before-while + (elpher-go url) + ;; chain must continue, then return t. + t))))) ;; Register "gemini://" as a URI scheme so `browse-url' does the right thing (with-eval-after-load 'thingatpt