mekk.xmind

XMind data files reading and writing library
Download

mekk.xmind Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Artistic License
  • Publisher Name:
  • Marcin Kasperski

mekk.xmind Tags


mekk.xmind Description

XMind data files reading and writing library mekk.xmind is a pure-Python handler for XMind mind-map files, which can be used to: * generate XMind mind-maps from scratch (for example to visualize some data as a mind-map), * modify existing .xmind files, * parse existing .xmind files and analyze their content.ExamplesCreating mind-map:from mekk.xmind import XMindDocumentOUTPUT = "test.xmind"xmind = XMindDocument.create(u"First sheet title", u"Root subject")first_sheet = xmind.get_first_sheet()root_topic = first_sheet.get_root_topic()root_topic.add_subtopic(u"First item")root_topic.add_subtopic(u"Second item")t = root_topic.add_subtopic(u"Third item")t.add_subtopic(u"Second level - 1")t.add_subtopic(u"Second level - 2")root_topic.add_subtopic(u"Detached topic", detached = True)t.add_subtopic(u"Another detached", detached = True)t.add_marker("flag-red")root_topic.add_subtopic(u"Link example").set_link("http://mekk.waw.pl")root_topic.add_subtopic(u"Attachment example").set_attachment( file("map_creator.py").read(), ".txt")root_topic.add_subtopic(u"With note").set_note(u"""This is just some dummy note.""")MARKER_CODE = "40g6170ftul9bo17p1r31nqk2a"XMP = "../../py_mekk_nozbe2xmind/src/mekk/nozbe2xmind/NozbeIconsMarkerPackage.xmp"root_topic.add_subtopic(u"With non-standard marker").add_marker(MARKER_CODE)xmind.embed_markers(XMP)xmind.save(OUTPUT)#xmind.pretty_print()print "Saved to", OUTPUTNote: while examples above use ascii, unicode is fully supported.Parsing mind map:from mekk.xmind import XMindDocumentxmind = XMindDocument.open("test.xmind")sheet = xmind.get_first_sheet()print "Sheet title: ", sheet.get_title()root = sheet.get_root_topic()print "Root title: ", root.get_title()print "Root note: ", root.get_note()for topic in root.get_subtopics(): print "* ", topic.get_title() print " label: ", topic.get_label() print " link: ", topic.get_link() print " markers: ", list(topic.get_markers()) # topic.get_subtopics()etc.To modify, just parse existing document, find items to modify and change them as appropriate, then save.DevelopmentThe code is tracked using Mercurial. Repository can be found on http://bitbucket.org/Mekk/mekk.xmind/.Use the same place to report bugs, suggest improvements and offer patches.Licensemekk.xmind is dual-licensed under Artistic License 2.0 and Mozilla Public License 1.1. The complete license texts can be found in Artistic-2.0.txt and MPL-1.1.txt. Requirements: · Python


mekk.xmind Related Software