On 2016-08-24 15:51, Nicolas Goaziou wrote:
> Hello,
> 
> Clément Pit--Claudel <[email protected]> writes:
> 
>> One small difficulty is that html export uses two separate counters
>> for figures and listings, while LaTeX export calls both figures, and
>> uses a single counter.
> 
> This is not necessarily true. For example, when "listings" package is
> used, listings and floats get a different counter.

Ah, I see; thanks for pointing this out!

>> This makes it tricky to reference figures in a way that works with
>> both HTML and LaTeX: for HTML one needs to write "Figure [[fig:a]]
>> shows x, Listing [[lst:b]] shows y" (which exports into "Figure
>> 1 shows x, Listing 1 shows y", while for LaTeX one needs to write
>> "Figure [[fig:a]] shows x, Figure [[lst:a]] shows y" (which exports
>> into "Figure 1 shows x, Figure 2 shows y"). I don't know of an easy
>> way to achieve this.
> 
> You can use @@html:Listing@@@@latex:Figure@@ [[lst:a]], or with a macro
> 
>   #+macro: listing @@html:Listing@@@@latex:Figure@@
> 
> and
> 
>   {{{listing}}} [[lst:a]]

Thanks! That's a convenient workaround. Macros names are not case-sensitive, 
right? (so having to macros {{{listing}}} and {{{Listing}}} won't do)

>> Potential solutions:
>> * Using a single counter in HTML, and calling listings "Figure"s, as in LaTeX
> 
> As stated above, this is not always correct.

Thanks; I missed that part.

>> * Using two counters in LaTeX as well, though this will require changes to 
>> existing Org documents, which is not ideal.
> 
> Counters in "latex" back-end are handled on the LaTeX side, unlike to
> "html".

Got it.

> In any case, I don't think there is a single satisfying solution. It
> really depends on one's needs. I guess we could introduce a variable to
> switch from one counting system to the other, if needed. Patches
> welcome.

Thanks for the clear and comprehensive answer!

Clément.

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to