using DOT language to generate diagrams in wiki

Issue #3928 wontfix
Morel Bérenger
created an issue

Here is a description of DOT language:

In short, it is a language to create graphs from text files, like a programming language. Graphviz creates raster (and vertor too if I remember correctly) images from it, and doxygen is known to use Graphviz to generate class diagrams and call graphs when it is available.

If the wiki were able to read such files (well, or to ask to graphviz to generate it from a stored DOT file), it could give us the possibility to use the wiki directly as a design tool. Imagine you work on a class diagram with some other people. Actually, you can only use formats not easy to alter, so, raster images (png, by example) or vector images (svg). You could also use dia files, but in any case, you will need a software to modify them. Using DOT files will allow everyone to edit diagrams with a simple text editor, exactly like a wiki page.

I know, we can actually send dot source file into wiki aside with an image, and the man who want to read can just view the the image. If he want to edit, he can alter source and generate new the image, and then send both of them. But this is an heavy and not user friendly workaround.

For implementation of such a feature, I guess that using a script like the one actually used on the wiki could be ok. Just create a new checkbox "DOT file" when user click on "New" and replace the action taken by the "preview" button by a request to graphviz to generate an image from a command-line. (I think svg is the more interesting, because it is as lightweight as an html file and use client computer to render. Thanks of that, it can be sized automatically to the best size of client computer)

Comments (2)

  1. Dylan Etkin

    Hi Morel,

    I appreciate you reporting but I will be honest and say that we are not going to implement this.

    We do need to improve the wiki and this likely means we will need to support a syntax other than creole.

    However it is unlikely that we will improve the wiki to the extent you suggest. For advanced features we would point you towards Confluence.



  2. Log in to comment