Subject: Re: [fdt] [Rfc-markdown] 1.3.7: supporting ditaa, mscgen in -3 mode

From: Carsten Bormann <[email-masked]>
Date: Sun, 31 May 2020 09:11:49 +0200

(FDT list: Talking about diagram generation in RFC markdown; look at the thread in https://mailarchive.ietf.org/arch/msg/rfc-markdown/meUO_DWdsJJm36FwTVYcto00tRo/ )

Hi Miek,

> This allows you to create pipelines,

Yea, troff (nroff) has been using this approach successfully for almost half a century now.
I was trying to do a slightly more “batteries included” approach.
The disadvantage of both approaches is that any change in the document requires running all the filters again, and for SVG output these are often unwieldy Java clunkers; some form of smart caching (as is done for the bibxml retrieval) would probably help.

On to your filter example:

> example one that uses a python program called
> 'protocol': https://github.com/mmarkdown/filter/tree/master/plugins/protocol

It strikes me “protocol” is not a smart name for something that does only the box notation part of the work…  (Also, “protocol” is taken in pip, so I don’t even know how to install the thing.)

> ``` protocol
> Source:16,TTL:8,Reserved:40
> ```
> Figure: This is a protocol.

Nice!
I never got around to doing a box notation generator; mostly because box notation in reality can be a bit more complicated.

https://tools.ietf.org/html/rfc7252#section-3
https://tools.ietf.org/html/rfc7400#section-3.3
https://tools.ietf.org/html/rfc793#section-3.1

Maybe the author of that tool should talk to Stephen McQuistin…
https://tools.ietf.org/html/draft-mcquistin-augmented-ascii-diagrams-04

> ```
> 0                   1                   2                   3
> 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> |             Source            |      TTL      |               |
> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+               +
> |                            Reserved                           |
> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> ```
> Figure: This is a protocol.

On another note, I just found plantuml’s ascii_art mode; if sequence diagrams are good enough, this might solve the plaintext vs. svg issue one has with mscgen.  Next on the todo list now...

Grüße, Carsten

---

From: Miek Gieben <[email-masked]>
Date: Sun, 31 May 2020 20:13:48 +0200

>The disadvantage of both approaches is that any change in the document requires running all the filters again, and for SVG output these are often unwieldy Java clunkers; some form of smart caching (…

fair enough, that's a sound approach, I just wanted to show another way of approaching
this.

>It strikes me “protocol” is not a smart name for something that does only the box notation part of the work…  (Also, “protocol” is taken in pip, so I don’t even know how to install the thing.)

yeah, not a name I would choose. I think I ended up downloading the python script and
making it executable (or some such - long time ago)

/Miek

--
Miek Gieben