Blueprint zim mindmap feature

jaap-karssenberg edited this page Oct 22, 2015 · 1 revision
Clone this wiki locally

Notes

Key to mindmaps is using visual and special memory. Therefore open the options to add color, icons, weighting of lines etc.

On the other hand do not force drawing by mouse, keyboard input is so much faster. This is also inline with wiki philosophy.

Mindmaps can be easily generated from text input such as a bullet list. Add inline hints for colors etc. See approach in ..ref plugin..

Strict mindmap based on hierarchy, less strict also allows cross-links. Cross links can be denoted in bullet list text input by anchors and links to anchors.

So use human readable text hierarchy with minimal special markup

Mindmap types

Basic mindmap in zim

Embedded object that can be editted as a bullet list. Similar to current plugins for equations etc. Difference could be to use the xdot widget instead of a static image. But maybe render a static image, allow pop-out with xdot for interaction.

Nodes can link to pages with further notes.

Notebook mindmap

Instead of a bullet list, use the page structure as a mindmap. Markup hints etc. for the nodes and the edges show up in the page, not in the bullet list. Links can be used to make connections between pages.

Similar to linkview, but focus on hierarchy instead of links.

Editing from mindmap view is difficult now, turns into visualization only.

Hybrid mindmap

When you start with a bullet list and add a lot of page links, it turns into a notebook mindmap at some point. Except that it has to be maintained as a manual ToC.

Can think of a mode where the mindmap works as an automatic ToC. Update it when pages are added or (re)moved, but allow for additional hints and links to stub pages in the ToC.

Conclusion

Two types

  1. Based on bullet list, potentially with links to pages - from simple quick sketch to full knowledge base
    1. add interactive option to "link to page" or "create page" and suggest sub-page of base page
    2. highlight dead links
  2. Visualize notebook
    1. Extend linkview with toggle for hierarchy
    2. embed hints for colors, icons etc.

Implementation

Continue use xdot - check if original library has been updated, if not start fork for changes.

  • Fix xdot verion in call
  • Seperate parser and widget to allow alternative parser and code construction of graphs

Interactive widget with textview and xdot view side by side - like "smart art" in PPT

Save png for embedding in zim page.