Honestly davido, I do have a plan.
The only thing I don't know is how to change the look of the text.
You have two problems here. You want to invent a markup. Since you don't show any, that's up to you. You have to write a parser for that markup.
The second problem is you want to change the look of the text. But where is that text to be displayed?
if in a terminal, then Term::ANSIColor (which you already mentioned) would be a good choice. but you said above that this module doesn't help you. you only forget to mention why.
So what do you actually want? if you want help you need to add more information.
text is just text and has no format. if you add terminal escape sequences to it, then in a terminal it can be bold, coloured. displaying terminal escape sequences in a browser or in Tk is of no use, on the other hand.
(one of my modules) for example. It's a simple markup, and the module parses it, returns a parse tree and renders it to HTML or text or any format you define.