Subject: bug#73425: 31.0.50; Support images in HTML versions of ELPA package manuals

From: Eli Zaretskii <[email-masked]>
Date: Sun, 22 Sep 2024 20:45:13 +0300

> Cc: Philip Kaludercic <[email-masked]>
> Date: Sun, 22 Sep 2024 18:06:16 +0200
> From:  Eshel Yaron via "Bug reports for GNU Emacs,
>  the Swiss army knife of text editors" <[email-masked]>
> 
> I'm opening this feature request following a discussion with Philip
> elsewhere: Texinfo manual can include images, but AFAIK (and please
> correct me if I'm wrong here) there's currently no way for ELPA packages
> to include images in their manuals and have these images appear also in
> the HTML version of the manual that the ELPA server builds and serves.

Why "no way"?  If the image files are present at their filenames as
mentioned by the HTML version of the documentation, they will be shown
by the browser.

> An example is my GNU ELPA package Kubed.  In the development version,
> the manual refers to images which are present on my web server, where I
> provide HTML versions[1][2] of the manual.  There, the images are
> displayed properly.  On the ELPA server[3], OTOH, the images are nowhere
> to be found, and we instead get just the alt text and caption.  That's
> expected, but the alt text is shown with no distinctive styling so the
> result seems quite confusing.

To show images, your HTML version of the manual should reference local
files, not URLs from your some other server.  And, of course, the
image files should be part of the package tarball.

> - Include images in the package repository, somehow indicate in the
>   package specification that the manual refers to these images, and have
>   the ELPA server keep the images around in a predictable location, so I
>   can link to it from the manual.

I don't understand why this would be needed.  Simply include the image
files with the package, and the rest should "just work", AFAIU.

> - Provide a IMAGE_LINK_PREFIX value (e.g. pointing to my web server)
>   that the ELPA server will use while building the HTML manual.

That's definitely not TRT: ELPA packages should be self-contained as
far as their documentation is concerned.

> - Override the creation of the HTML manual entirely, and have the ELPA
>   server redirect or link to the version hosted on my web server.

Likewise: there should be no dependency on any server.

Apologies if I misunderstood the problem.