summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorİ. Göktuğ Kayaalp <self@gkayaalp.com>2019-02-09 17:41:31 +0300
committerEli Zaretskii <eliz@gnu.org>2019-02-15 10:24:14 +0200
commit3fa003a134471940956841cbcde9501767b765d6 (patch)
tree101d6d009628e9c3abfcaa5183ace4e30660b470 /lisp
parent0d19e08da647c42562428dd608e5284cf414415e (diff)
downloademacs-3fa003a134471940956841cbcde9501767b765d6.tar.gz
* lisp/net/eww.el (eww): With prefix arg, open url in new buffer.
Bug#34374
Diffstat (limited to 'lisp')
-rw-r--r--lisp/net/eww.el20
1 files changed, 14 insertions, 6 deletions
diff --git a/lisp/net/eww.el b/lisp/net/eww.el
index 555b3bd5917..d37a48126c1 100644
--- a/lisp/net/eww.el
+++ b/lisp/net/eww.el
@@ -247,21 +247,29 @@ This list can be customized via `eww-suggest-uris'."
(nreverse uris)))
;;;###autoload
-(defun eww (url)
+(defun eww (url &optional arg)
"Fetch URL and render the page.
If the input doesn't look like an URL or a domain name, the
-word(s) will be searched for via `eww-search-prefix'."
+word(s) will be searched for via `eww-search-prefix'.
+
+If called with a prefix ARG, use a new buffer instead of reusing
+the default EWW buffer."
(interactive
(let* ((uris (eww-suggested-uris))
(prompt (concat "Enter URL or keywords"
(if uris (format " (default %s)" (car uris)) "")
": ")))
- (list (read-string prompt nil 'eww-prompt-history uris))))
+ (list (read-string prompt nil 'eww-prompt-history uris)
+ (prefix-numeric-value current-prefix-arg))))
(setq url (eww--dwim-expand-url url))
(pop-to-buffer-same-window
- (if (eq major-mode 'eww-mode)
- (current-buffer)
- (get-buffer-create "*eww*")))
+ (cond
+ ((eq arg 4)
+ (generate-new-buffer "*eww*"))
+ ((eq major-mode 'eww-mode)
+ (current-buffer))
+ (t
+ (get-buffer-create "*eww*"))))
(eww-setup-buffer)
;; Check whether the domain only uses "Highly Restricted" Unicode
;; IDNA characters. If not, transform to punycode to indicate that