[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Re: w3m-download trouble

On 2020-08-18 01:14, Emanuel Berg wrote:
> w3m-download, what is that?

In the 'official' version of the project, it exists as a long-standing
feature to use w3m to download 'stuff'. It should be usable via M-x
w3m-download or M-d, with or without the prefix-argument.

My version went wild with additional functionality in order to make it
equal/superior to gui downloaders that I've seen elsewhere (maybe you
remember the old 'downthemall' extension for firefox?). The most
important feature however is what many would consider an absolute
necessity for a downloader: the ability to resume aborted downloads
across sessions without needing to start again from scratch. It also
operates multiple downloads in parallel in the background, maintains a
queue of pending downloads that can be manipulated, has a pretty
color-coded display interface with progress bars, can bulk download
links based upon a regex and loads of customization options. And I've
probably left out features...

I also wrote a downloader for torrent files, which has been merged into
the 'official', and a video downloader that I'm not certain whether has
been merged.

> Was there not a variable/command to output the Emacs w3m version, with
> a helpful line in the docstring so not to mix up the w3m and Emacs w3m
> versions?

I still see it here: C-h v emacs-w3m-version.

@Katsumi-san: Didn't it for a while have a suffix with the git HEAD
commit hash?

> If only _one_ such variable/command is available, doesn't it make more
> sense to focus on Emacs w3m?

Katsumi can best answer this, but I can see the practical benefit for a
numeric constant in order to self-check whether a feature or option is
supported. For example (if (< emacs-w3m-version 999) "sorry" "ok! let's
do it!")

> As it is now, because everything else which is prefixed `w3m-' is
> actually Emacs w3m, won't people think that w3m-version refers to
> Emacs w3m as well?

The docstring clearly says otherwise.

> Anyway now I digress... what is the w3m-download module, and how do I
> get it?

OK. I described above a bit about what it is. You can get it at my
fork version of the project:


For this feature, it might be sufficient to just download and evaluate
my file w3m-download.el, but do read the documentation at the top of the
file (and let me know of any deficiencies with it).

I think that the expert on using my downloader with the otherwise
'official' version of the project would be Andres Ramirez, whose email
you probably already have from his posts to this mailing list. In the
past he's had time to be helpful and giving me feedback; I have no idea
what his availability is now.

> I made a little module myself, if you can call it that; it is mostly
> an interface to youtube-dl(1) and rtorrent(1). It is simple but
> efficient and has served me well for many years. Have a look! Maybe
> you get an idea or two or maybe you can spot something I do, that
> Emacs w3m already does, so I can save a few bytes in my .emacs :)

w3m-download does use youtube-dl as a backend for videos and has some
nice customization features (see there).

For torrent and magnet support, the PR has been merged upstream as
function w3m--goto-torrent-url in your version of file w3m.el (see there
for details) and should be seamlessly integrated into emacs-w3m, so you
should already have the elisp. Once you have the backend program
installed, you can just click on any torrent or magnet link or enter it
using something or other like M-x w3m foo.magnet. Also see there the
TODO comment embedded in the code...

>   https://dataswamp.org/~incal/emacs-init/w3m/dl.el

I've downloaded it and will take a peek.

> Keep it up with great software :)


CA45 09B5 5351 7C11 A9D1  7286 0036 9E45 1595 8BC0