In my application I have used a backslash as part of a text-based activity indicator (a typical /-\ sequence.. I removed the | because it had a different width). All was well until I saw my application being run on a japanese computer. The backslash was replaced with a japanese character.
How can I avoid this?
You just have to live with this. Editing things like shell scripts on a Japanese computer just looks weird, but you get used to it. Especially if your app is running remotely through an SSH session or something, you cannot possibly have control over what fonts are going to be used to render it.
Your best bet is probably to use fancier characters, like ╱─╲ or something like that and hope the user has a font that can show it.
Hold Ctrl + ` and it should change.
You can use .oOo as a sequence. period, small o, capital O, small o.
that should work under any language.
If the Unicode Fonts on the user computer supports it you could also try charactores of one of these Unicode blocks:
http://en.wikipedia.org/wiki/Arrow_%28symbol%29
http://en.wikipedia.org/wiki/Box_drawing_characters
http://en.wikipedia.org/wiki/Unicode_Geometric_Shapes
http://en.wikipedia.org/wiki/Miscellaneous_Technical_%28Unicode%29
http://en.wikipedia.org/wiki/Miscellaneous_Symbols
(for VCL only, for console applications the problem is the character set / code page of the shell)
But this sounds promising (except for the font part, which could be out of control):
(From https://stackoverflow.com/a/268202/80901)
In your delphi application you can select a Font that renders that Unicode codepoint as a backslash. However, most standard fonts including many in Windows, will intentionally show a Yen mark instead of a backslash, in Japanese locales, for reason that users expect it.
If you want to be really sure of what is shown, use your own font, one that is not shipped with windows, and install it with your application.
Short of migrating to Unicode with a newer version of Delphi, you'll have to find a set of low ASCII characters that can do a suitable animation.
I'd suggest using a digit sequence [0-9] or [1-3] to stay with your 3 chars sequence. That should work with all the Japanese code sets.