]> git.eshelyaron.com Git - emacs.git/commitdiff
Download of URL in EWW falls back on current URL
authorNick Drozd <nicholasdrozd@gmail.com>
Sat, 2 Feb 2019 18:35:02 +0000 (12:35 -0600)
committerEli Zaretskii <eliz@gnu.org>
Fri, 8 Feb 2019 07:45:19 +0000 (09:45 +0200)
* lisp/net/eww.el (eww-download): If there's no URL at point,
download the current URL instead.  Previous behavior was to
signal an error if there was no URL at point.  (Bug#34291)
* doc/misc/eww.texi (Basics): Update documentation.

doc/misc/eww.texi
lisp/net/eww.el

index b299ea1fb77c4a1effdde8f040a1f93aea47f7e0..3048893372e2f8faa952f74fd0924cd883ca95fc 100644 (file)
@@ -125,9 +125,10 @@ HTML-specified colors or not.  This sets the @code{shr-use-colors} variable.
 @vindex eww-download-directory
 @kindex d
 @cindex Download
-  A URL under the point can be downloaded with @kbd{d}
-(@code{eww-download}).  The file will be written to the directory
-specified in @code{eww-download-directory} (Default: @file{~/Downloads/}).
+  A URL can be downloaded with @kbd{d} (@code{eww-download}).  This
+will download the link under point if there is one, or else the URL of
+the current page.  The file will be written to the directory specified
+in @code{eww-download-directory} (default: @file{~/Downloads/}).
 
 @findex eww-back-url
 @findex eww-forward-url
index 3b7d9d5c2f9c07e6aba36b2c47910abfc3628a0f..0c8bffa579ba7b390aa79c25ea1e80d819647cfe 100644 (file)
@@ -1531,10 +1531,12 @@ Differences in #targets are ignored."
   (kill-new (plist-get eww-data :url)))
 
 (defun eww-download ()
-  "Download URL under point to `eww-download-directory'."
+  "Download URL to `eww-download-directory'.
+Use link under point if there is one, else the current page URL."
   (interactive)
   (access-file eww-download-directory "Download failed")
-  (let ((url (get-text-property (point) 'shr-url)))
+  (let ((url (or (get-text-property (point) 'shr-url)
+                 (eww-current-url))))
     (if (not url)
         (message "No URL under point")
       (url-retrieve url 'eww-download-callback (list url)))))