Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

Text Script Inclusions Manager generate contents from any text file based on shell instructions

Project Description


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

### 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, run

tsincluder >


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


run tsincluder to replace the markers @tsinclude (text script include) by the content generate by the command on stdout

python -m tsincluder

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)

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")


Install tsincluder using PyPi

pip install tsincluder

Install tsincluder from the source

python install


Use make to execute unit tests.

make tests


  • Fabien Arcellier


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

Release History

This version
History Node


History Node


Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Hash SHA256 Hash Help Version File Type Upload Date
(3.2 kB) Copy SHA256 Hash SHA256
Source Aug 15, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting