public inbox archive for pandoc-discuss@googlegroups.com
 help / color / mirror / Atom feed
* Auto-number list continuations
@ 2022-11-28 12:01 Albert Krewinkel
       [not found] ` <87pmd7nuub.fsf-9EawChwDxG8hFhg+JK9F0w@public.gmane.org>
  0 siblings, 1 reply; 4+ messages in thread
From: Albert Krewinkel @ 2022-11-28 12:01 UTC (permalink / raw)
  To: pandoc-discuss

Just want to share a little filter that I wrote to automate item
counting in continued lists. E.g.

> i.   one
> #.   another
>
> Interruption; not part of any list.
>
> iii. continue
> #.   keep counting

The filter assumes that a continuation has a start number ≥90 and keeps
track of different list styles.

``` lua
local next_starts = {}

function OrderedList (ol)
  local key = ol.style .. '|' .. ol.delimiter
  if ol.start >= 90 then
    ol.start = next_starts[key] or 1
    next_starts[key] = ol.start + #ol.content
  else
    next_starts[key] = #ol.content + 1
  end

  return ol
end
```

There's also a blog post, but the above is already the gist of it.
https://tarleb.com/posts/list-continuation/

-- 
Albert Krewinkel
GPG: 8eed e3e2 e8c5 6f18 81fe  e836 388d c0b2 1f63 1124

-- 
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/87pmd7nuub.fsf%40zeitkraut.de.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Auto-number list continuations
       [not found] ` <87pmd7nuub.fsf-9EawChwDxG8hFhg+JK9F0w@public.gmane.org>
@ 2022-11-28 22:33   ` BPJ
       [not found]     ` <CADAJKhCeP59UU5sf92H0NKG5DtiPFfj10hr=rtv0XpMCoW-C5Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 4+ messages in thread
From: BPJ @ 2022-11-28 22:33 UTC (permalink / raw)
  To: pandoc-discuss

[-- Attachment #1: Type: text/plain, Size: 1934 bytes --]

Den mån 28 nov. 2022 13:10Albert Krewinkel <albert+pandoc-9EawChwDxG8hFhg+JK9F0w@public.gmane.org>
skrev:

> Just want to share a little filter that I wrote to automate item
> counting in continued lists. E.g.
>
> > i.   one
> > #.   another
> >
> > Interruption; not part of any list.
> >
> > iii. continue
> > #.   keep counting
>
> The filter assumes that a continuation has a start number ≥90 and keeps
> track of different list styles.
>
> ``` lua
> local next_starts = {}
>
> function OrderedList (ol)
>   local key = ol.style .. '|' .. ol.delimiter
>   if ol.start >= 90 then
>     ol.start = next_starts[key] or 1
>     next_starts[key] = ol.start + #ol.content
>   else
>     next_starts[key] = #ol.content + 1
>   end
>
>   return ol
> end
> ```
>

I would have expected that you would need `topdown=true` for this to work.
Why not?


> There's also a blog post, but the above is already the gist of it.
> https://tarleb.com/posts/list-continuation/
>
> --
> Albert Krewinkel
> GPG: 8eed e3e2 e8c5 6f18 81fe  e836 388d c0b2 1f63 1124
>
> --
> You received this message because you are subscribed to the Google Groups
> "pandoc-discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/pandoc-discuss/87pmd7nuub.fsf%40zeitkraut.de
> .
>

-- 
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/CADAJKhCeP59UU5sf92H0NKG5DtiPFfj10hr%3Drtv0XpMCoW-C5Q%40mail.gmail.com.

[-- Attachment #2: Type: text/html, Size: 3241 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Auto-number list continuations
       [not found]     ` <CADAJKhCeP59UU5sf92H0NKG5DtiPFfj10hr=rtv0XpMCoW-C5Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2022-11-29  7:03       ` Albert Krewinkel
       [not found]         ` <87cz96nryb.fsf-9EawChwDxG8hFhg+JK9F0w@public.gmane.org>
  0 siblings, 1 reply; 4+ messages in thread
From: Albert Krewinkel @ 2022-11-29  7:03 UTC (permalink / raw)
  To: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw


BPJ <melroch-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> writes:

> Den mån 28 nov. 2022 13:10Albert Krewinkel <albert+pandoc@zeitkraut.de> skrev:
>
>> Just want to share a little filter that I wrote to automate item
>> counting in continued lists. E.g.
>
> I would have expected that you would need `topdown=true` for this to
> work. Why not?

Funny, I expected that too. I guess the answer is that the default
traversal order is sufficient because nodes at the same level are
processed sequentially either way. Also, nested lists of the same style
will lead to weird behavior with both methods, just in slightly
different circumstances:

``` markdown
1. Bad results with default traversal

<!-- -->

99. Should be numbered as 2.

   1. one
   2. two
```

and

``` markdown
1. Bad results with `traverse='topdown'`

    1. one
    2. two

<!-- -->

99. Should be numbered as 2.
```

-- 
Albert Krewinkel
GPG: 8eed e3e2 e8c5 6f18 81fe  e836 388d c0b2 1f63 1124

-- 
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/87cz96nryb.fsf%40zeitkraut.de.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Auto-number list continuations
       [not found]         ` <87cz96nryb.fsf-9EawChwDxG8hFhg+JK9F0w@public.gmane.org>
@ 2022-11-29 10:12           ` BPJ
  0 siblings, 0 replies; 4+ messages in thread
From: BPJ @ 2022-11-29 10:12 UTC (permalink / raw)
  To: pandoc-discuss

[-- Attachment #1: Type: text/plain, Size: 2090 bytes --]

Den tis 29 nov. 2022 08:25Albert Krewinkel <albert+pandoc-9EawChwDxG8hFhg+JK9F0w@public.gmane.org>
skrev:

>
> BPJ <melroch-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> writes:
>
> > Den mån 28 nov. 2022 13:10Albert Krewinkel <albert+pandoc@zeitkraut.de>
> skrev:
> >
> >> Just want to share a little filter that I wrote to automate item
> >> counting in continued lists. E.g.
> >
> > I would have expected that you would need `topdown=true` for this to
> > work. Why not?
>
> Funny, I expected that too. I guess the answer is that the default
> traversal order is sufficient because nodes at the same level are
> processed sequentially either way. Also, nested lists of the same style
> will lead to weird behavior with both methods, just in slightly
> different circumstances:
>
> ``` markdown
> 1. Bad results with default traversal
>
> <!-- -->
>
> 99. Should be numbered as 2.
>
>    1. one
>    2. two
> ```
>
> and
>
> ``` markdown
> 1. Bad results with `traverse='topdown'`
>
>     1. one
>     2. two
>
> <!-- -->
>
> 99. Should be numbered as 2.
> ```
>

Aw, you gave me an itch to work around that! :-)


> --
> Albert Krewinkel
> GPG: 8eed e3e2 e8c5 6f18 81fe  e836 388d c0b2 1f63 1124
>
> --
> You received this message because you are subscribed to the Google Groups
> "pandoc-discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/pandoc-discuss/87cz96nryb.fsf%40zeitkraut.de
> .
>

-- 
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/CADAJKhCnk7oGbybmhBydO%3DVWBqBzqWS4UdSJywJTmKEDGxNTKQ%40mail.gmail.com.

[-- Attachment #2: Type: text/html, Size: 3566 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-11-29 10:12 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-28 12:01 Auto-number list continuations Albert Krewinkel
     [not found] ` <87pmd7nuub.fsf-9EawChwDxG8hFhg+JK9F0w@public.gmane.org>
2022-11-28 22:33   ` BPJ
     [not found]     ` <CADAJKhCeP59UU5sf92H0NKG5DtiPFfj10hr=rtv0XpMCoW-C5Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2022-11-29  7:03       ` Albert Krewinkel
     [not found]         ` <87cz96nryb.fsf-9EawChwDxG8hFhg+JK9F0w@public.gmane.org>
2022-11-29 10:12           ` BPJ

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).