Manipulate YAML front matter.
Project description
py-frontmatter
To manipulate front matter in document file.
Installation
pip install py-frontmatter
Usage
Given text file:
---
title: Hacker's note
tags: [a, b]
---
# header
text
Get or set whole section of front matter
To retrieve front matter as JSON:
% frontmatter get note.md | jq
{
"title": "Hacker's note",
"tags": [
"a",
"b"
]
}
To replace the front matter:
% echo '{"title": "My note", "tags": ["a", "b", "c"]}' | frontmatter set note.md
% cat note.md
---
title: My note
tags:
- a
- b
- c
---
# header
text
Add or remove item from front matter
% frontmatter add-item --jsonpath '$.tags' --item d note.md
% cat note.md
---
title: My note
tags:
- a
- b
- c
- d
---
# header
text
%
% frontmatter remove-item --jsonpath '$.tags' --item d note.md
% cat note.md
---
title: My note
tags:
- a
- b
- c
---
# header
text
Specialize commands to add/remove tag
% frontmatter add-tag --tag d note.md
% cat note.md
---
title: My note
tags:
- a
- b
- c
- d
---
# header
text
% frontmatter remove-tag --tag d note.md
% cat note.md
---
title: My note
tags:
- a
- b
- c
---
# header
text
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
py_frontmatter-0.4.0.tar.gz
(10.8 kB
view hashes)
Built Distribution
Close
Hashes for py_frontmatter-0.4.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 33dce9c1bd97ce67665ae4e4ce5a22a83a7f677b8627a2044fbd8f4faac44fb2 |
|
MD5 | b4410444374adc121382e7f33b6585e7 |
|
BLAKE2b-256 | aa9c810f5606be8c4b72c19d2933184088e42887d7f5da5de8d0680faba024ce |