
In PyYAML tag types are mapped to python types (http://pyyaml.org/wiki/PyYAMLDocumentation#YAMLtagsandPythontypes) In contrast, in Markdown Meta-Data extension, values are strings (https://pythonhosted.org/Markdown/extensions/meta_data.html). The BaseLoader class only construct basic Python objects: lists, dictionaries and Unicode strings so will likely perform more as expected.
YAML Meta Data Extension for Python-Markdown
This extension adds YAML meta data handling to markdown.
As in the original, meta data is parsed but not used in processing.
(YAML meta data is used e.g. by pandoc)
Dependencies: PyYAML
Copyright 2014 Bernhard Fisseni
Based on the meta data extension included with Python-Markdown, Copyright 2007-2008 Waylan Limberg.
License: BSD (see LICENSE.md for details)
Basic Usage
>>> import markdown
>>> text = '''---
... Title: Test Doc.
... Author: Waylan Limberg
... Blank_Data:
... ...
...
... The body. This is paragraph one.
... '''
>>> md = markdown.Markdown(['meta_yaml'])
>>> print(md.convert(text))
<p>The body. This is paragraph one.</p>
>>> print(md.Meta) # doctest: +SKIP
{'blank_data': [''], 'author': ['Waylan Limberg'], 'title': ['Test Doc.']}
Use in Sublime Text 3 with OmniMarkupPreviewer
-
copy python code e.g. to
Packages/User
-
enable as extension in User Preferences
"extensions": [ ... "User.meta_yaml", // if installed in Packages/User ... ]
Description
Languages
Python
100%