djsudduth / mindmap-markdown

Convert Simplemind .smmx mindmaps directly to markdown outline files with all inner/outer notes, links, relations, images and connection labels for notetaking applications like Obsidian, Logseq, Notion and Joplin
Apache License 2.0
19 stars 2 forks source link

Canvas #2

Open Hela-Girl opened 8 months ago

Hela-Girl commented 8 months ago

Good afternoon, Don! Perhaps you will have some free time this month to see how you can set up converting a file to *.canvas?

Hela-Girl commented 5 months ago

Perhaps this month you will have some free time to implement "Canvas"?

djsudduth commented 5 months ago

I've looked at it a couple of times. Much more complex than the mindmap. Requires positions and colors which will be a different parsing technique. It will be while before I can get to it - I have a couple of other open source projects to update first. Thanks for pushing though!

Hela-Girl commented 5 months ago

Thanks for answering. I'll wait, I have no choice anyway. Can I write to you in a month, maybe you’ll have a minute?

djsudduth commented 4 months ago

@Hela-Girl just wanted to let you know I had done some updates to fix some of the input/output-i and -o switches. Some of the code was lost in the process. I believe I recovered everything - but, be sure to make a backup of mindmd.py before you download the latest changes. I haven't looked at canvas additions yet. I will soon.

Hela-Girl commented 4 months ago

Thank you for making changes to the code. I look forward to the finalization.

Hela-Girl commented 4 months ago
** Mindmap Markdown v-0.0.2 **

Mindmap: mindmaps/Rain-game.smmx ----> Markdown: markdown/Rain-game.md
Traceback (most recent call last):
  File "C:\Users\MaX\Downloads\111\mindmap-markdown-main\mindmd.py", line 414, in <module>
    main()
  File "C:\Users\MaX\Downloads\111\mindmap-markdown-main\mindmd.py", line 368, in main
    write_output(DEFAULT_MINDMAP, outfile, nums, vs)
  File "C:\Users\MaX\Downloads\111\mindmap-markdown-main\mindmd.py", line 270, in write_output
    sm_nodes = parse_mind_map(infile)
               ^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\MaX\Downloads\111\mindmap-markdown-main\mindmd.py", line 168, in parse_mind_map
    topic_node.title = topic.get('text').replace('\\N',' ')
                       ^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'replace'

So far, this is the error with these startup parameters: python mindmd.py -i mindmaps/Rain-game.smmx -o markdown/Rain-game.md

djsudduth commented 3 months ago

Sorry - when I re-added the code I missed a line. Just put a # in front of line 168 so it looks like this:

#topic_node.title = topic.get('text').replace('\\N',' ')  
topic_node.title = topic.get('text')
if topic_node.title is not None:
(etc)

I'll fix it

djsudduth commented 3 months ago

@Hela-Girl - fixed

Hela-Girl commented 3 months ago

https://i.imgur.com/vqC3VaX.jpeg

Hurray it seems to be working. Thank you for your quick response. It's a pity that it's not canvas.

djsudduth commented 3 months ago

Hi @Hela-Girl - I'm starting to look at export to Canvas now. Can you provide to a link to one of your mindmaps - preferably somewhat simple but reflects what you want? I can't start with a huge mindmap - but, maybe one with 5-10 branches and some attached images in the way you like?
Thx!!

Hela-Girl commented 3 months ago

https://mega.nz/folder/I7pBSBgb#7b_h0svNZvcbbrByAoqIag

Thank you for not forgetting about me! The link contains 2 files, one very small and the second a little larger (with external files), for testing. Please note that the images are connected to the knot by invisible threads, in addition to the knots that are also connected to each other.

djsudduth commented 3 months ago

Thx @Hela-Girl - got them. One question for you. Your examples are more visual and probably don't need a markdown note for each node. In my case I do since my mindmaps have notes within each node and I want an Obsidian note for each. I'm wondering if you only need a canvas for visualization and no notes??

However, I do see one issue. If you need an image embedded in an Obsidian Canvas node, then you have to have a markdown note file that contains the image for that. But, if is just an image or box with a only title, then a markdown note file isn't needed. So, in your example 1.smmx, one image is within the Simplemind node - vs. the other images are outside - so I have to create a markdown file just for that one Simplemind node.

Hela-Girl commented 3 months ago

hi @djsudduth, I think the notes will be useful since I made the map specifically the simplest one for the test.

Hela-Girl commented 2 months ago

hi @djsudduth, do you have some time this month to try to implement the canvas?

djsudduth commented 2 months ago

Hey @Hela-Girl ! I made some progress but had to stop and fix another application. Good timing, however, I'm back at it! I'll let you know soon.

Hela-Girl commented 4 weeks ago

hi @djsudduth, maybe there will be a few days off in August to finish with the “canvas”?

djsudduth commented 3 weeks ago

@Hela-Girl - made some progress but having some issues to work through. I think I need to refactor the app (since it was a quick-hit need in the first place). But, let me see if I can at least get you a prototype to look at.