You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Perhaps I'm too late to answer, but I tested the following code I adapted from this answer at stackoverflow with your input markdown and it seems to work.
importfrontmatterimportyamlclassMyDumper(yaml.Dumper):
defincrease_indent(self, flow=False, indentless=False):
returnsuper(MyDumper, self).increase_indent(flow, False)
# code to read input here goes here# write new versionwithopen(mode="w", encoding="UTF-8") asout_file:
out_file.write(
frontmatter.dumps(content, sort_keys=False, width=5000, Dumper=MyDumper, default_flow_style=False, indent=4)
)
(The width=5000 is a nice trick you may find useful if some of your yaml values are longer than the default line width, resulting in them being undesirably wrapped to multiple lines, but that's another story.)
Also, I don't know why, but out of curiosity I tried changing indent=4 to something extreme like indent=20 and it goes back to the default(?) value of indenting 2 spaces, so perhaps the above code has some bugs hidden somewhere.
Thanks for this useful package!
I'm using it to homogenize YAML frontmatter through thousands of Markdown files but I can't figure out how to keep the source file indentation (to 4):
Input Markdown:
Script:
Output Markdown:
The text was updated successfully, but these errors were encountered: