Generate README files from templates. Allow input from functions calls and cli output.
cd your-project
vim README_template.rst
poetry add --group dev readme-patcher
poetry shell
readme-patcher # README.rst{{ py_project.repository }}https://docs.github.com/en/rest/repos/repos#get-a-repository
https://api.github.com/repos/Josef-Friedrich/readme_patcher
{{ github.name }}
{{ github.full_name }}
{{ github.description }}
{{ github.owner.login }}{{ badge.pypi }}
{{ badge.github_workflow('tests' 'Tests') }}
{{ badge.readthedocs }}cli (Command line interface): Combined output (stdout and stderr) of
command line interfaces (scripts / binaries)
{{ cli('awk --help') }}It is recommended to use the cli function together with the literal filter.
{{ cli('awk --help') | literal }}func: return values of Python functions
{{ func('os.getcwd') }}read: read text files
{{ read('code/example.py') | code('python') }}{{ 'print("example")' | code('python') }}.. code-block:: python
print("example")
{{ func('os.getcwd') | literal }}::
/home/repos/project
{{ 'heading 1' | heading(1) }}
{{ 'heading 2' | heading(2) }}
{{ 'heading 3' | heading(3) }}
{{ 'heading 4' | heading(4) }}heading 1 ========= heading 2 --------- heading 3 ^^^^^^^^^ heading 4 """""""""
{% for command in [
'dns-ipv6-prefix.py',
'extract-pdftext.py',
'find-dupes-by-size.py',
'list-files.py',
'mac-to-eui64.py',
'pdf-compress.py',
'image-into-pdf.py'
]
%}
``{{ command }}``
{{ cli('{} --help'.format(command)) | literal }}
{% endfor %}[[tool.readme_patcher.file]]
src = "README_template.rst"
dest = "README.rst"
variables = { cwd = "func:os.getcwd", fortune = "cli:fortune --help" }