I'd like to note that some of the languages don't work for me: Armenian ("hy"), Georgian ("ka"), Azerbaijani ("az"), and Kannada ("kn") (and probably a few others; don't feel like going through all of them
) all return the "invalid language pair" error on Google's end.
I'd also like to note that espeak only has voices for probably about half-60% of the languages Google can translate to/from, so IMO it's a bad idea to build in the espeak call in the script. I think it would be more practical to just leave the script as a standalone translator and let the user pipe the output to espeak if it has an appropriate voice*.
(* - IOW, my original script is better )