Something to do with the string returned from GetTranslateString()
Those aren't normal periods.
Did some poking around from the /script prompt:
Lua Code:
d(GetString(SI_SMITHING_RESEARCH_IN_PROGRESS):sub(-1,-1))
> x
d(string.byte("."))
46
d(string.byte(GetString(SI_SMITHING_RESEARCH_IN_PROGRESS):sub(-3,-3)))
226
d(string.byte(GetString(SI_SMITHING_RESEARCH_IN_PROGRESS):sub(-2,-2)))
128
d(string.byte(GetString(SI_SMITHING_RESEARCH_IN_PROGRESS):sub(-1,-1)))
166
Which is rather disgusting.
To replace it, you need to do:
Lua Code:
GetString(SI_SMITHING_RESEARCH_IN_PROGRESS):gsub(string.char(226,128,166),': ')
Alternatively, considering the ": " itself is rather dependent about the ellipsis being at the end, you could just do something like:
Lua Code:
GetString(SI_SMITHING_RESEARCH_IN_PROGRESS):sub(1,-4) .. ": "