Add new format and auto replacement depending on format

Based on #87 issue, I shared my contribution in my repository.
I added some tests and documentation in order to show how it works.

I'm open to read your comments on this functionality... and also to fix my english mistakes :)