Text Script Inclusions Manager generate contents from any text file based on shell instructions
Project description
Motivation
I need to generate a changelog based on git content. I want to controle the structure of the changelog but I don’t want to manage the git content.
### from 2016-01 to 2016-05
We implements feature activation ...
* 2016-04-13 : Fabien Arcellier : feat: activate ...
* 2016-04-10 : Fabien Arcellier : feat: add index ...
* 2016-04-10 : Fabien Arcellier : feat: add search ...
* ...
I need to manage the format and the place of content myself and let git generate some contents from a file CHANGELOG.md.in
### from 2016-01 to 2016-05
We implements feature activation ...
* @tsincluder git log --date=short --pretty=format:'%ad : %aN : %s' --abbrev-commit --since="1/1/2016" --until="4/31/2016" | grep feat
To generate CHANGELOG.md, run
tsincluder CHANGELOG.md.in > CHANGELOG.md
Synopsis
tsincluder means Text Script Inclusion Manager. tsincluder is a cli and a library you can call from a python script that will replace a markup as @tsincluder echo hello world by hello world.
It keep the content that prefix the markup to generate a valid format as markdown and add it on all the lines if tsincluder generate many lines.
The latest version
You can find the latest version to …
git clone https://github.com/FabienArcellier/tsincluder.git
Usage
run tsincluder to replace the markers @tsinclude (text script include) by the content generate by the command on stdout
python -m tsincluder file.in
to use it as a library
from tsincluder import Processor
line = " * @tsincluder git log --date=short --pretty=format:'%ad : %aN : %s' --abbrev-commit --since="1/1/2016" --until="4/31/2016" | grep feat"
processor = Processor()
content = processor.process(line)
print(content)
As tsincluder executes a subprocess command, the script can configure the working directory and markup
from tsincluder import Processor
processor = Processor(working_directory="/tmp", markup="@other_markup")
Installation
Install tsincluder using PyPi
pip install tsincluder
Install tsincluder from the source
python setup.py install
Tests
Use make to execute unit tests.
make tests
Contributors
Fabien Arcellier
License
This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.