Transfer inline properties to front matter

What I’m trying to do

As I’m starting to use Bases, I’m realising that I have a lot of notes that used an older template where author was an inline property instead of using front matter line my new books template does.

Using dataview, this generated my bookshelf fine, but I like the new filtering and card display options in Bases.

Are there any plugins or other tools available to help me move or copy these into front matter?

Things I have tried

I’ve looked at other posts here, and at some 3rd party markdown tools, but there’s not much that supports inline properties apart from dataview, which only reads them.

If there’s nothing available, I might look and see if I can write something myself.

2 Likes

You’re trying to migrate a bunch of notes where author was an inline property, but you want Bases’ filtering and cards. Core Obsidian has no bulk mover, so I’d do this:

  1. Use Ctrl+Shift+F (Search & Replace) to find author:: lines. Open each note, cut that line, and paste it inside the YAML block like author: Jane Doe at the top. Save and repeat.
  2. Optional: the MetaEdit plugin adds commands like “Set frontmatter property,” which lets you run a command palette action to copy an inline field into front matter. That’s a one‑by‑one process too.
  3. For future notes, update your template so author lives in the YAML.

Tiny check: create fm-transfer-test.md with author:: Test; move it to front matter as above, then open the note in Bases to confirm it shows in cards. Do you preferr a plugin or manual search? I’ll check back in 48h.

I’m in the same boat! I’ve been thinking about trying this plugin so I thought I’d mention it to you as well.

The properties pane showing all the properties helped me manage all the ones I had before Bases came out. I hope this helps you a bit, and if I’m off the mark I do apologize.

2 Likes

I have the same situation. For some reason most notes have summary as body but not in YAML. I do fill it out for my daily notes
Any suggestions for automation are appreciated.

Ok mi contribution to this community

Move summary:: line in the middle of body into YAML

ORIGINAL TEXT

Original Text:  
---  
text1  
---  
text2  
summary:: random text
text3

REPLACED TEXT - NOTE summary:: LOSES one “:”

---  
text1  
summary: random text  
---  
text2
text3

SEARCH

(?s)(---\R)(.*\R)?(---\R)(.*\R)?summary::([^\r\n]*\R)

REPLACE

$1$2summary:$5$3$4

MOVE summary:: line at the end of body into YAML

ORIGINAL TEXT

---  
text1  
---  
text2  
summary:: random text  

REPLACED TEXT

---  
text1  
summary: random text  
---  
text2

SEARCH

(?s)(---\R)(.*\R)?(---\R)(.*\R)?summary::([^\r\n]*\s*$)

REPLACE

$1$2summary:$5\n$3$4

Notes

  1. You would need to use notepad++ to replace in many files
  2. notepad++ will populate search and replace terms based on previous search. For some reason sometimes this would change on its own so it is always good to review
  3. Test online first here https://regex101.com/ check the substituion option. Copy the search query on “REGULAR EXPRESSION” copy a sample of your note on “TEST STRING” and the replace string under “SUBSTITUTION”. If it doesn’t work don’t proceed
  4. In notepad++, before replacing do a search and see if number of document matched make sense. Otherwise investigate. For instance for daily notes if you expect to match 31 notes for one month, verify that you get 31 matches otherwise investigate
  5. In notepad++, you want to test before replacing. first one file, then a few files, then a folder with small number of notes. Verify carefully
  6. I recommend going folder by folder to avoid large accidents that take too long to resolve
  7. This is a very easy way to mess up your notes if you make an error. Best to backup your notes
2 Likes