В статье "Macro Magic: m4" (часть 1, часть 2) описана методика создания сценариев для макропроцессора GNU m4.