in reply to right to left Tk text widget

Well, I'm sorry to be a kill-joy, but in addition to being right-to-left, Urdu actually uses Arabic script. This means it does not use discrete, invariable symbols for each "letter" (like Hebrew does). Instead, the appearance of each letter depends on its position in the word: e.g. the symbol for "meem" (letter representing the "m" sound) will appear one way in word-initial (right-most) position, another way in word-final (left-most) position, and yet another way in medial position, and similarly for most letters. And then there's the matter of the ligatures joining the characters in the word -- if the letters of a word are not properly connected, people will probably still be able to read the word, but it will be a strain. Much more of a strain if all the characters are shown invariably in their "initial" or "isolated" forms rather than their correct contextual forms.

Obviously, there are ways of dealing with these issues; just bear in mind that it's more than just a simple matter of reversing the direction of text lines.

Hopefully, Gtk will have what you need (though I've never used it with perl, and am not sure about its merits or deficiencies for rendering Arabic script). Let me know if you get anywhere with that...