Edit transcluded (embedded) notes (blocks) in place (likely requires WYSWYG first)

Most of the issues with the flow feature comes when other plug-ins gets involved due to how different plug-ins target the editing view differently (and certain things like keyboard bindings).

1 Like

hey thanks for replying.

I’m curious if you might have any comments on your design of the editable transclusion feature in make.md, such as any of: high level explanation of the solution, challenges or particularly interesting parts, tips for a possible obsidian implementation, or how you would do it differently if writing it again from scratch?

2 Likes

The basic flow for flow editor is:

  • Spawn a new leaf from Obsidian (check HoverEditor, the leaf spawning implementation is based on it)
  • Replace the embed in the markdown view by parsing the markdown and replacing the found syntax with the a codemirror widget containing the new leaf DOM
  • Load the file into the leaf
  • Add listeners for view height changes, certain keyboard events, active editor changes, block level information changes if it’s block/heading level

There’s a lot of special considerations, some of which are not implemented since I’ve been focused on getting the rest of make.md to 1.0 instead.

If you’re serious about this, feel free to either open an issue on make.md github or send me a message on discord @jpc, I’m happy to answer questions. I don’t usually logon to the forum, probably every once in a few months.

6 Likes

It would be nice to hear from the Obsidian devs where this feature request stands in their line of sight, seeing as people are beginning to consider building plugins. I would hate to see someone (like zerkshop) spend an inordinate amount of time developing this feature as a standalone plugin only to find Obsidian implementing it in the near future. The ability to edit transclusions stands among the most active feature requests on the forum right now, after all, and has been marked as “valuable”.

Is there no word from any Obsidian dev in this entire thread?

I get the sense that addressing this FR would involve also addressing how transclusions are done at the foundation. Given that the only way to reference blocks right now is with a plugin that adds ugly strings of text (e.g. ^f93j4f) to our blocks, I get the feeling that the entire embed/transclusion functionality in Obsidian is due for a major overhaul. At this point it feels more like scrapbooking than any kind of modern technology.

8 Likes

+1 to this. Currently working on a project for YouTube where being able to directly edit transcluded files would save me a ton of pointless jumping around.

5 Likes

This could satisfy an element of one of my feature requests: Note Composer enhancement: Cut and paste block/line from search

1 Like

Encourage everyone to download and use this plugin for copying and pasting block and section links.

Given the complexity of developing an editable transclude, the topic of future proofing, markdown standards, and the relatively few folks that use internal links (I’d wager most folks don’t grok transclusion), I doubt this ability will rise above anytime soon.

2 Likes

+1 I think this would really save me some time for referencing characteristics for my characters in my novel.

2 Likes

+1 I really need this. As someone who transitioned from notion, it’s something have become used to. Embeds are fine but I dislike the indentation. The notion auto sync blocks are the best.

2 Likes

Did you use css to remove the purple indent?

Some people here seem to lack some respect for plugin developers. They create their plugins in their free time without being paid (except for a tiny donation).

I agree with most of the limitations of Make.md mentioned above, but you could’ve said it better way. And if you don’t like something about a plugin, you can easily modify the source code and contribute to making everyone’s life slightly easier. Even if you don’t code, you can still file an issue on GitHub to propose your idea.

Edit: I just want this great community to continue to be a place where everyone can share their small ideas, tools, plugins, themes, … without being discouraged. No need for aggressiveness.

5 Likes

There are several ways to do it.

You can use the CSS snippet shared here, but it only works in the reading view:

Alternatively, the Minimal theme provides an option to enable it, which you can configure using the Style Settings plugin:

This works in both the reading view & live preview.

2 Likes

+1 from me :smiley:

1 Like

Some people here seem to lack some respect for plugin developers. They create their plugins in their free time without being paid (except for a tiny donation).

I agree with most of the limitations of Make.md mentioned above, but you could’ve said it better way. And if you don’t like something about a plugin, you can easily modify the source code and contribute to making everyone’s life slightly easier. Even if you don’t code, you can still file an issue on GitHub to propose your idea.

It’s not at all easy for a non-developer to change the source code for a plugin, especially when the plugin developer has already spoken at length about the limitations of their approach. I am not bashing the developers of the make.md plugin, I’m just re-iterating that it simply does not work properly and is full of bugs and therefore does not count as a solution to this problem. Even Some of us already have filed github issues and spoken to the developer. We are way ahead of you. And if you can’t stand the thought of someone calling an ugly, easily breakable string of random text what it is (an ugly, easily breakable string of random text), then you will never understand.

yes, very need it

2 Likes

+1 for this

I am considering switching out to logsec since the more my vault grows the more cumbersome having to go to multiple notes to edit embeds becomes

3 Likes

Me too. I’ll probably stick it out for this since Logseq lacks WYSIWYG, vim, many plugins, and I’m unsure about outliners in general. But this feature alone is pretty important so I keep my eyes open for others.

3 Likes

+1, because of a better workflow.

2 Likes

+1 as well

1 Like

I’m curious about the feasibility of this idea. Does someone with greater technical knowledge of the underlying architecture of Obsidian know for certain a viable path to making this feature possible that doesn’t involve the constantly broken make.md developer’s approach?

It would be great to have a better idea of whether we should wait this out or seek alternative solutions (e.g. gather the community to start developing our own working plugin).

It’s interesting that we have no heard from the Obsidian devs about editing embeds in place. I wonder what their thoughts on this is.

2 Likes