From: Po Lu Date: Wed, 13 Jul 2022 04:36:08 +0000 (+0800) Subject: New user option 'webjump-use-internal-browser' X-Git-Tag: archive/raspbian/1%29.2+1-2+rpi1^2~5^2~16^2~1886^2~972 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=14a56f52c5b57b69aaa2af08204d649c749fcb97;p=emacs.git New user option 'webjump-use-internal-browser' * lisp/net/webjump.el (webjump-use-internal-browser): New defcustom. (webjump): Respect it. Reported by Youmu . --- diff --git a/etc/NEWS b/etc/NEWS index 9f302bdfb5f..b46f33fd67f 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -2030,6 +2030,11 @@ Set it to nil to exclude line numbering from kills and copies. ** Miscellaneous +--- +*** New user option 'webjump-use-internal-browser'. +When non-nil, WebJump will use an internal browser to open web pages, +instead of the default external browser. + +++ *** New user option 'font-lock-ignore'. This option provides a mechanism to selectively disable font-lock diff --git a/lisp/net/webjump.el b/lisp/net/webjump.el index b2ef47898cd..9886a4c79d8 100644 --- a/lisp/net/webjump.el +++ b/lisp/net/webjump.el @@ -79,6 +79,14 @@ :prefix "webjump-" :group 'browse-url) +(defcustom webjump-use-internal-browser nil + "Whether or not to force the use of an internal browser. +If non-nil, WebJump will always use an internal browser (such as +EWW or xwidget-webkit) to open web pages, as opposed to an +external browser like IceCat." + :version "29.1" + :type 'boolean) + (defconst webjump-sample-sites '( ;; FSF, not including Emacs-specific. @@ -255,18 +263,32 @@ Please submit bug reports and other feedback to the author, Neil W. Van Dyke webjump-sites t)) (name (car item)) (expr (cdr item))) - (browse-url (webjump-url-fix - (cond ((not expr) "") - ((stringp expr) expr) - ((vectorp expr) (webjump-builtin expr name)) - ((listp expr) (eval expr t)) - ((symbolp expr) - (if (fboundp expr) - (funcall expr name) - (error "WebJump URL function \"%s\" undefined" - expr))) - (t (error "WebJump URL expression for \"%s\" invalid" - name))))))) + (if webjump-use-internal-browser + (browse-url-with-browser-kind + 'internal (webjump-url-fix + (cond ((not expr) "") + ((stringp expr) expr) + ((vectorp expr) (webjump-builtin expr name)) + ((listp expr) (eval expr t)) + ((symbolp expr) + (if (fboundp expr) + (funcall expr name) + (error "WebJump URL function \"%s\" undefined" + expr))) + (t (error "WebJump URL expression for \"%s\" invalid" + name))))) + (browse-url (webjump-url-fix + (cond ((not expr) "") + ((stringp expr) expr) + ((vectorp expr) (webjump-builtin expr name)) + ((listp expr) (eval expr t)) + ((symbolp expr) + (if (fboundp expr) + (funcall expr name) + (error "WebJump URL function \"%s\" undefined" + expr))) + (t (error "WebJump URL expression for \"%s\" invalid" + name)))))))) (defun webjump-builtin (expr name) (if (< (length expr) 1)