"localized string" is defined to return the input string if there is
no localized version to be found, and that includes not being found
because the table was missing. (The reason the last one works the
way it does is that that's what you told it to do: it evaluated (1
+1), came up with 2, and coerced that to a string.)
I wondered if that was the case, but that's not the documented
behaviour. All the examples I've been able to find, in the ASS
documentation or on the web, nest the command inside a 'try'
statement to allow for an error.
Why your Localizable.strings file isn't kicking in is a bit of a
mystery to me, given what you've said so far.
There was a missing '=' somewhere in the strings file and this made
the whole file invalid. I thought the build process would spot this
because it noticed when I missed a ';' at a line ending. It all works
perfectly now. btw I'm using the Xcode localization support. Thanks
for your assistance.