Re(2): Application localization
Re(2): Application localization
- Subject: Re(2): Application localization
- From: Jens Bauer <email@hidden>
- Date: Thu, 6 Dec 2001 19:33:56 +0100
Hi Douglas,
On Wed, 5 Dec, 2001, Douglas Davidson <email@hidden> wrote:
>
Works for me. I just tried the following:
>
>
cp -r /Applications/TextEdit.app /tmp
>
cp -r /tmp/TextEdit.app/Contents/Resources/English.lproj
>
/tmp/TextEdit.app/Contents/Resources/Icelandic.lproj
>
<edit
>
/tmp/TextEdit.app/Contents/Resources/Icelandic.lproj/InfoPlist.strings
>
to change "TextEdit" to "Icelandic TextEdit">
>
defaults write NSGlobalDomain AppleLanguages "(Icelandic, English)"
Funny, I tried this..
% defaults read NSGlobalDomain AppleLanguages
(English, German, French, Dutch, Italian, Japanese, Spanish)
Now I open System Preferences. I click "International". I add "Dansk" (danish)
I close System Preferences, and try the command again:
% defaults read NSGlobalDomain AppleLanguages
(en, de, fr, nl, it, ja, es, da)
Will this mean anything to developers, or does Mac OS X know that da is
"Dansk" ?
>
/tmp/TextEdit.app/Contents/MacOS/TextEdit &
>
>
and sure enough, it shows up as "Icelandic TextEdit". The editing stage
>
has to be done in TextEdit or something similar, because the .strings
>
files are Unicode strings-file-format text files.
>
>
When you say "it would fail with an NSInvalidArgumentException", what is
>
failing, and what does the backtrace look like?
I've looked into most of the localized strings in TextEdit, and found
that they
use the format
"oldstring" = "newstring"
I also noticed in the Cocoa application project, you get a
"InfoPList.strings" by
default. Looking into this, I see the format
Identifier = "string"
I'd like to ask how I should refer to this string. Do I need to tell the
compiler
where to find it, or can I just use the Identifier directly from NSString
somehow ?
I'm thinking about situations where you can have 3 strings that look the
same, but
mean something different.
"Play" = "Play" /* play the tape for instance */
"Play" = "Play" /* a game (translate "Game" into french and back, you'll
get "Play") ;) */
"Play" = "Play" /* a play at the theater */
Love,
Jens