Hi everyone,
I would like to know if there is something like a macro that works like a “reverse” zettelizer for the QuickAdd plugin, and if not, if you have any idea on how I could learn how to write it myself (with no programming skills fort the moment). Let me explain :
What the zettelizer does
For each headings with a selected level (let’s say H3 for exemple), the zettelizer creates a new note, a zettel, named with the origin heading title, and that as content has a transcluded link to the content under the concerned heading (a block link). That way, the content of the notes remains in the source note.
What I want to do
Basically, I want a macro that transform a source note into a MOC of MOCs based on the headings level. For exemple, if I have 2 levels of headings. The source file would become a MOC with links to notes named with the H1 headings. And those notes would themselve be MOCs with links to note named with the H2 headings, and in those notes you would find the atomic content. If I have 3 levels of headings it would be the same but with one more MOC between the source file and the atomic content. I call it a “reverse zetelizer” because the content, instead of being in the source file and transcluded in the zettels would be in the zettels and transcluded in the source file.
How could it be done ?
I could run a macro that for each headings with a selected level, creates a new note, a zettel, named with the origin heading title, and that as content has the content of what was on the source file and a link to the source file (just in order to keep trace of the source). In the source file, the content would be links to the created zettels. If I have 3 levels of headings, I would run the macro three times in the source file, first time I select H3, then H2 and finally H3.
Exemple
Imagine a file with the following structure :
- H1
- H2
- H3
- content
- H3
- H2
- H1’
- H2’
- H3’
- content’
- H3’
- H2’
After running three time the macro there would be 7 files :
- The source file with two links (or transcluded links) : [[H1]], [[H1’]]
- “H1” file : [[H2]] and link to source
- “H2” file : [[H3]] and link to source (or to H1)
- “H3” file : content and link to source (or to H2)
- And the same with H1’, H2’, H3’, content’
What I’ve tried
I’ve tried to use the note refactor plugin with the option “split by headings” but it doesn’t work because it splits the content and does’nt extract it. For example, with the structure above, if I Split by H3 headings I would have three notes :
- Source note : H1, H2, link to H3, link to H3’
- H3 note : content, H1’, H2’, link to H3’
- H3’ note : content’
Current workflow
For the moment I do it manually by using “extract selection to new note” for each H3, then for each H2 and the for each H1. I would like to automate that.
Thanks a lot for reading ! And sorry for my pour english, I Hope that I made myself clear and that it us not too confuse.
Links
(GitHub - lynchjames/note-refactor-obsidian: Allows for text selections to be copied (refactored) into new notes and notes to be split into other notes.).[Note refactor].