summaryrefslogtreecommitdiff
path: root/python-markdown-to-json.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-markdown-to-json.spec')
-rw-r--r--python-markdown-to-json.spec438
1 files changed, 423 insertions, 15 deletions
diff --git a/python-markdown-to-json.spec b/python-markdown-to-json.spec
index f334c20..7d42a89 100644
--- a/python-markdown-to-json.spec
+++ b/python-markdown-to-json.spec
@@ -1,34 +1,442 @@
%global _empty_manifest_terminate_build 0
Name: python-markdown-to-json
-Version: 1.0.0
+Version: 2.1.0
Release: 1
-Summary: UNKNOWN
+Summary: Markdown to dict and json deserializer
License: MIT
-URL: https://github.com/njvack/bids-json-writer
-Source0: https://mirrors.nju.edu.cn/pypi/web/packages/57/72/d7fe705a116e5d59a5458bbd69bd1219d6baeb2731d50f8b2475a9c68daa/markdown-to-json-1.0.0.tar.gz
+URL: https://github.com/njvack/markdown_to_json
+Source0: https://mirrors.aliyun.com/pypi/web/packages/25/50/61b5710d3201ee9e14f599f06d886dba3958423b99428179d3f6f7206a63/markdown_to_json-2.1.0.tar.gz
BuildArch: noarch
%description
-UNKNOWN
+# Markdown to JSON converter
+
+## Description
+
+A simple tool to convert Markdown (CommonMark dialect) data into JSON. It uses headings as JSON keys, and the stuff following headings as values. Lists are turned into arrays. Higher heading values yield nested JSON keys.
+
+## Why would you want to do this?
+
+If you don't mind the loss of fidelity to the exact Markdown Document Object Model (DOM), you can get a simple python or json datastructure to extract data-like structures from a Markdown document.
+
+This tool was built to allow easy creation of dataset descriptions for the [Brain Imaging Data Structure](http://bids.neuroimaging.io/) data sharing specification.
+
+## Installation
+
+Non isolated install from pypi
+```bash
+pip install markdown-to-json
+md_to_json --help
+```
+
+Isolated install with pipx if you only want the CLI
+```bash
+pipx install markdown-to-json
+md_to_json --help
+```
+
+Install bleeding edge from github
+```bash
+pip install git+https://github.com/njvack/markdown-to-json/
+python -m markdown_to_json --help
+```
+
+```bash
+git clone https://github.com/njvack/markdown-to-json.git
+cd markdown_to_json
+./setup.py install
+```
+
+The package has no external requirements and has been tested python 3.6+.
+
+Please use version 1 or 1.1 for python 2.x.
+
+## CLI Usage, `md_to_json`
+
+```
+Translate markdown into JSON.
+
+Usage:
+ md_to_json [options] <markdown_file>
+ md_to_json -h | --help
+
+Options:
+ -h --help Show this screen
+ --version Print version number
+ -o <file> Save output to a file instead of stdout
+ -i <val> Indent nested JSON by this amount. Use a negative number for
+ most compact possible JSON. the [default: 2]
+```
+
+## Programmatic usage
+```python
+import markdown_to_json
+value = """
+# Nested List
+
+* Item 1
+ * Item 1.1
+* Item 2
+"""
+
+# The simple way:
+dictified = markdown_to_json.dictify(value)
+assert dictified == {'Nested List': ['Item 1', ['Item 1.1'], 'Item 2']}
+
+# Or, if you want a json string
+jsonified = markdown_to_json.jsonify(value)
+assert jsonified == """{"Nested List": ["Item 1", ["Item 1.1"], "Item 2"]}"""
+```
+
+This translates a markdown document into JSON as described in the example below.
+
+## Example
+
+The markdown:
+
+```markdown
+# Description
+
+This is an example file
+
+# Authors
+
+* Nate Vack
+* Vendor Packages
+ * docopt
+ * CommonMark-py
+
+# Versions
+
+## Version 1
+
+Here's something about Version 1; I said "Hooray!"
+
+## Version 2
+
+Here's something about Version 2
+```
+
+will translate to the JSON:
+
+```json
+{
+ "Description": "This is an example file",
+ "Authors": ["Nate Vack", "Vendor Packages", ["docopt", "CommonMark-py"]],
+ "Versions": {
+ "Version 1": "Here's something about Version 1; I said \"Hooray!\"",
+ "Version 2": "Here's something about Version 2"
+ }
+}
+```
+
+## Credits
+
+`markdown_to_json` was written by Nate Vack <njvack@freshforever.net> at the Center for Healthy Minds at the University of Wisconsin–Madison.
+
+Maintenance development by [Matthew Martin](https://github.com/matthewdeanmartin/)
+
+This tool ships a few really excellent tools in its `vendor` directory:
+
+[docopt](https://github.com/docopt/docopt) is copyright (c) 2012 Vladimir Keleshev, <vladimir@keleshev.com>
+
+Upgraded to docopt-ng.
+
+[CommonMark-py](https://github.com/rolandshoemaker/CommonMark-py) is copyright Copyright (c) 2014, Bibek Kafle and Roland Shoemaker.
+
+Cannot upgrade to 0.6.0 because of breaking changes in AST.
+
%package -n python3-markdown-to-json
-Summary: UNKNOWN
+Summary: Markdown to dict and json deserializer
Provides: python-markdown-to-json
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-markdown-to-json
-UNKNOWN
+# Markdown to JSON converter
+
+## Description
+
+A simple tool to convert Markdown (CommonMark dialect) data into JSON. It uses headings as JSON keys, and the stuff following headings as values. Lists are turned into arrays. Higher heading values yield nested JSON keys.
+
+## Why would you want to do this?
+
+If you don't mind the loss of fidelity to the exact Markdown Document Object Model (DOM), you can get a simple python or json datastructure to extract data-like structures from a Markdown document.
+
+This tool was built to allow easy creation of dataset descriptions for the [Brain Imaging Data Structure](http://bids.neuroimaging.io/) data sharing specification.
+
+## Installation
+
+Non isolated install from pypi
+```bash
+pip install markdown-to-json
+md_to_json --help
+```
+
+Isolated install with pipx if you only want the CLI
+```bash
+pipx install markdown-to-json
+md_to_json --help
+```
+
+Install bleeding edge from github
+```bash
+pip install git+https://github.com/njvack/markdown-to-json/
+python -m markdown_to_json --help
+```
+
+```bash
+git clone https://github.com/njvack/markdown-to-json.git
+cd markdown_to_json
+./setup.py install
+```
+
+The package has no external requirements and has been tested python 3.6+.
+
+Please use version 1 or 1.1 for python 2.x.
+
+## CLI Usage, `md_to_json`
+
+```
+Translate markdown into JSON.
+
+Usage:
+ md_to_json [options] <markdown_file>
+ md_to_json -h | --help
+
+Options:
+ -h --help Show this screen
+ --version Print version number
+ -o <file> Save output to a file instead of stdout
+ -i <val> Indent nested JSON by this amount. Use a negative number for
+ most compact possible JSON. the [default: 2]
+```
+
+## Programmatic usage
+```python
+import markdown_to_json
+value = """
+# Nested List
+
+* Item 1
+ * Item 1.1
+* Item 2
+"""
+
+# The simple way:
+dictified = markdown_to_json.dictify(value)
+assert dictified == {'Nested List': ['Item 1', ['Item 1.1'], 'Item 2']}
+
+# Or, if you want a json string
+jsonified = markdown_to_json.jsonify(value)
+assert jsonified == """{"Nested List": ["Item 1", ["Item 1.1"], "Item 2"]}"""
+```
+
+This translates a markdown document into JSON as described in the example below.
+
+## Example
+
+The markdown:
+
+```markdown
+# Description
+
+This is an example file
+
+# Authors
+
+* Nate Vack
+* Vendor Packages
+ * docopt
+ * CommonMark-py
+
+# Versions
+
+## Version 1
+
+Here's something about Version 1; I said "Hooray!"
+
+## Version 2
+
+Here's something about Version 2
+```
+
+will translate to the JSON:
+
+```json
+{
+ "Description": "This is an example file",
+ "Authors": ["Nate Vack", "Vendor Packages", ["docopt", "CommonMark-py"]],
+ "Versions": {
+ "Version 1": "Here's something about Version 1; I said \"Hooray!\"",
+ "Version 2": "Here's something about Version 2"
+ }
+}
+```
+
+## Credits
+
+`markdown_to_json` was written by Nate Vack <njvack@freshforever.net> at the Center for Healthy Minds at the University of Wisconsin–Madison.
+
+Maintenance development by [Matthew Martin](https://github.com/matthewdeanmartin/)
+
+This tool ships a few really excellent tools in its `vendor` directory:
+
+[docopt](https://github.com/docopt/docopt) is copyright (c) 2012 Vladimir Keleshev, <vladimir@keleshev.com>
+
+Upgraded to docopt-ng.
+
+[CommonMark-py](https://github.com/rolandshoemaker/CommonMark-py) is copyright Copyright (c) 2014, Bibek Kafle and Roland Shoemaker.
+
+Cannot upgrade to 0.6.0 because of breaking changes in AST.
+
%package help
Summary: Development documents and examples for markdown-to-json
Provides: python3-markdown-to-json-doc
%description help
-UNKNOWN
+# Markdown to JSON converter
+
+## Description
+
+A simple tool to convert Markdown (CommonMark dialect) data into JSON. It uses headings as JSON keys, and the stuff following headings as values. Lists are turned into arrays. Higher heading values yield nested JSON keys.
+
+## Why would you want to do this?
+
+If you don't mind the loss of fidelity to the exact Markdown Document Object Model (DOM), you can get a simple python or json datastructure to extract data-like structures from a Markdown document.
+
+This tool was built to allow easy creation of dataset descriptions for the [Brain Imaging Data Structure](http://bids.neuroimaging.io/) data sharing specification.
+
+## Installation
+
+Non isolated install from pypi
+```bash
+pip install markdown-to-json
+md_to_json --help
+```
+
+Isolated install with pipx if you only want the CLI
+```bash
+pipx install markdown-to-json
+md_to_json --help
+```
+
+Install bleeding edge from github
+```bash
+pip install git+https://github.com/njvack/markdown-to-json/
+python -m markdown_to_json --help
+```
+
+```bash
+git clone https://github.com/njvack/markdown-to-json.git
+cd markdown_to_json
+./setup.py install
+```
+
+The package has no external requirements and has been tested python 3.6+.
+
+Please use version 1 or 1.1 for python 2.x.
+
+## CLI Usage, `md_to_json`
+
+```
+Translate markdown into JSON.
+
+Usage:
+ md_to_json [options] <markdown_file>
+ md_to_json -h | --help
+
+Options:
+ -h --help Show this screen
+ --version Print version number
+ -o <file> Save output to a file instead of stdout
+ -i <val> Indent nested JSON by this amount. Use a negative number for
+ most compact possible JSON. the [default: 2]
+```
+
+## Programmatic usage
+```python
+import markdown_to_json
+value = """
+# Nested List
+
+* Item 1
+ * Item 1.1
+* Item 2
+"""
+
+# The simple way:
+dictified = markdown_to_json.dictify(value)
+assert dictified == {'Nested List': ['Item 1', ['Item 1.1'], 'Item 2']}
+
+# Or, if you want a json string
+jsonified = markdown_to_json.jsonify(value)
+assert jsonified == """{"Nested List": ["Item 1", ["Item 1.1"], "Item 2"]}"""
+```
+
+This translates a markdown document into JSON as described in the example below.
+
+## Example
+
+The markdown:
+
+```markdown
+# Description
+
+This is an example file
+
+# Authors
+
+* Nate Vack
+* Vendor Packages
+ * docopt
+ * CommonMark-py
+
+# Versions
+
+## Version 1
+
+Here's something about Version 1; I said "Hooray!"
+
+## Version 2
+
+Here's something about Version 2
+```
+
+will translate to the JSON:
+
+```json
+{
+ "Description": "This is an example file",
+ "Authors": ["Nate Vack", "Vendor Packages", ["docopt", "CommonMark-py"]],
+ "Versions": {
+ "Version 1": "Here's something about Version 1; I said \"Hooray!\"",
+ "Version 2": "Here's something about Version 2"
+ }
+}
+```
+
+## Credits
+
+`markdown_to_json` was written by Nate Vack <njvack@freshforever.net> at the Center for Healthy Minds at the University of Wisconsin–Madison.
+
+Maintenance development by [Matthew Martin](https://github.com/matthewdeanmartin/)
+
+This tool ships a few really excellent tools in its `vendor` directory:
+
+[docopt](https://github.com/docopt/docopt) is copyright (c) 2012 Vladimir Keleshev, <vladimir@keleshev.com>
+
+Upgraded to docopt-ng.
+
+[CommonMark-py](https://github.com/rolandshoemaker/CommonMark-py) is copyright Copyright (c) 2014, Bibek Kafle and Roland Shoemaker.
+
+Cannot upgrade to 0.6.0 because of breaking changes in AST.
+
%prep
-%autosetup -n markdown-to-json-1.0.0
+%autosetup -n markdown_to_json-2.1.0
%build
%py3_build
@@ -42,20 +450,20 @@ if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
- find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+ find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
- find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+ find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
- find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+ find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
- find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+ find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
- find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+ find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
@@ -68,5 +476,5 @@ mv %{buildroot}/doclist.lst .
%{_docdir}/*
%changelog
-* Wed May 31 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.0-1
+* Fri Jun 09 2023 Python_Bot <Python_Bot@openeuler.org> - 2.1.0-1
- Package Spec generated