The only thing I’d suggest, which may not match your needs or intentions, is to trim the file name from the middle. This has the advantage of keeping the beginning of the filename intact (for, say, sorting purposes and some meaning) while keeping the extension intact (important in OS X).
So the change to your script would look like this:
set theDomain to "myveryverylonghotmaildomainname.com" if (count of characters of theDomain) is greater than or equal to 30 then set firstPart to text 1 thru 15 of theDomain set secondPart to text -14 thru end of theDomain set trimmedDomain to firstPart & "…" & secondPart -- the character in the quotes is an option-semicolon, the ellipses else set trimmedDomain to theDomain end if
Not sure if this is useful, but I thought I’d mention it.