mtpl (as in MyTemplates) is a small script/files templates manager that uses git.
Often scripting, I have a lot of small pieces of scripts, code, licences or configurations files that I frequently copy/paste from websites. This is boring and inconvenient (forgetting the website's address, slow, too many steps, tends to leads to error, etc...). A perfect task to solve with the power of code.
Also, sharing is cool.
So how to store and distribute a bunch of small pieces of code/text that will evolve in time and if possible with different versions of the "bunch"? Well git + branch is a perfect solution. But git alone doesn't really fit such use. So, let's build a small interface on top of it.
And voilà, you have a small script that use the power of git to distribute and share severals templates of script/code/licences/configuration files with a simple and powerful way to select one of it without caring on how git is working behind.
List templates. At the first launch, mtpl will clone the git repository to get the script.
mtpl update update the content of the repository.
Display template on stdout.
Display matching template on stdout or the list of matching templates if there is more than one.
Update the templates' repository.
Jut add a new file in
Well, lucky you are, you already have a git repository in
~/.config/mytemplates/. After you have added the file, commited and pushed somewhere just send me an email at email@example.com. You can also fork the github repository here and send me a pull request (easier).
Templates are in the public domain. MyTemplates is under agplv3+.