"GOT", but the "O" is a cute, smiling pufferfish. Index | Thread | Search

From:
Stefan Sperling <stsp@stsp.name>
Subject:
ASCII diagrams in man pages?
To:
Ingo Schwarze <schwarze@usta.de>
Cc:
gameoftrees@openbsd.org
Date:
Mon, 14 Oct 2019 11:14:22 +0200

Download raw body.

Thread
Hi Ingo,

I am considering adding some diagrams to got.1.
Is there a nice way of drawing ASCII diagrams in man pages?

For reference, below are a few example diagrams extracted from
'svn help merge' which illustrate the use cases of various ways
of merging with Subversion.

Could similar diagrams be achieved in mdoc? Would they render well
in all possible output formats or would there be limitations?

If mdoc won't work, I can simply add supplementary documentation
to the web site, so no worries if there's no good solution.

Thanks!


       - The 'Feature Branch' Merging Pattern -

         parent --+----------o------o-o-------------o--
                   \            \           \      /
                    \          merge      merge  merge
                     \            \           \  /
         feature      +--o-o-------o----o-o----o-------



       - Sync Merge Example -
                                 ............
                                .            .
         trunk  --+------------L--------------R------
                   \                           \
                    \                          |
                     \                         v
         feature      +------------------------o-----
                             r100            r200



       - Reintegrate Merge Example -

                    rW                   rX
         trunk ------+--------------------L------------------o
                      \                    .                 ^
                       \                    .............   /
                        \                                . /
         feature         +--------------------------------R




       - Cherry-pick Merge Example -
	
            1.x-release  +-----------------------o-----
                        /                        ^
                       /                         |
                      /                          |
         trunk ------+--------------------------LR-----



       - 2-URL Merge Example -

                           foo  +-----------------------------------o
                               /                                    ^
                              /                                    /
                             /              r500                  /
         trunk ------+------+-----------------L--------->        /
                      \                        .                /
                       \                        ............   /
                        \                                   . /
                    bar  +-----------------------------------R