Mindmap with markmap.js

In the last version, the defaut value is “Library/Malys/MarkmapMindmap”

See documentation

Depends on Utilities.md

Have you installed it?

I don’t understand your problem. Could you share screenshots, logs …?

Dependency is installed automatically.
No more configuration is mandatory.

After removing config.set("markmap.source","Library/Malys/MarkmapMindmap"), markmap appears to working correctly, mostly. Implies I incorrectly set config.set for markmap in my CONFIG. However, I am getting the following for every key input:

Yes, I have Utilities.md installed. Sorry for not acknowledging your question earlier.

I will remove the message

Updated:

  • refresh on pageSave instead of pageModified
  • remove use default value

Coud you validate @rharmonson ?

Fixed!

Example from markmap.js.org. Everything works except Katex. I assume support is not intended.

Thank you!

A side note and not something I believe needs to be corrected unless you want to tackle the problem is early on I could not get markmap working with librewolf, a derivative of Firefox. Moved to ungoogled chromium and it works fine. I do not experience issues with the other silverbullet libraries/plugins but it is a small thing to open my secondary browser. For you or anyone supporting multiple browsers is pain.

1 Like

Fix: mindmap rendering with duplicates svg
Fix: library.install issue

I use firefox and chrome and it works fine

1 Like

update panel management @bau could you validate it?

Bug is not corrected.

Document Explorer or Task Explorer in panel rhs.
When page saved:

editor:pageSaved => update(false) => update=function(mode)
[(not mode) = true] + [isVisible() = true if MindMap is in panel] ==> false
=> hide => editor.hidePanel(current_panel_id) ==> panel rhs hided

I would like to make an additional comment:
Wouldn't it be better to plug in event.listen only once MindMap is loaded in the panel? It is illogical to listen to this event continuously when MindMap will only be used episodically.

I forget a "if",try again.
I have tried to limit the impact of no internal api to manage correctly panel and events.

It's settled.

But, it is inappropriate to keep the editor:pageSaved event constantly plugged into the SilverBullet session when the situation you want to handle will only happen, at best, once in 10,000.

For illustration, I just spent 20 minutes trying to understand why I was still seeing the "bug" even though the Markmap plugin code was corrected. The reason is this: at your request, last night I installed and tested the MarpSlides plugin which integrates this same piece of code. When I restarted my SilverBullet session this morning, your plugin automatically restarted monitoring of the pageSaved service, hence the unwanted effect observed.

Since it is possible to limit monitoring to the active phase of use of the plugin (easily identifiable from the Markmap: Toggle preview command to the hide function), I do not see why constant monitoring is implemented in the background.

I know but I don't find a way to listen and unlisten event. Please read: "Disclaimer & Contributions" part of script.
If you find a solution, I will accept a PR.

use js event instead lua event to unregister event on demand.