Language Localization
Previous Top Next

clip0146
Thinstall automatically detects the language of the user (English, Spanish, etc) and displays strings using that language when they are present in the configuration file. The configuration file allows you to specify strings, URLs, and other values that Thinstall uses which are language-dependant.

Customizing Strings & Settings for English, Spanish, French, Chinese, etc.

Thinstall will use Configuration settings from "default_config.txt" located in the Thinstall installation directory. These settings can be overridden by specify an alternate configuration file using Menu -> Link -> Resource Options -> Language / Configuration

clip0136


Thinstall uses a Unicode Text File to represent a list of value-data pairs that can be customized. Each value-data may be localized for the user's native language. For example, you can specify the value of a string when the user is running on English, Spanish, or Japanese systems.

Value-data pairs are used to represent the following:

· Strings displayed to the user. Strings can be customized for the native language of the user.
· Download URLs. For .NET programs, Thinstall will detect needed system requirements before running the program. If a system requirement is missing, Thinstall will prompt the user if he/she wishes to download and install the missing component. You can customize the URL which is used during this process. Because the URL can be customized for each language, you can direct users to a download page in their native language.
· Dialog & Button sizes. The size of various windows can be customized. This is useful because translations of strings into some languages may require larger button or dialog sizes.


Example configuration file:



install : install_window_title "Install options for %s"
install
: install_copy_status "Copying %s"
install
: create_file_error "Could not create file:\n%s"
runtime : missing_module "Couldn't find library %s\nPlease ensure that it is installed"
runtime : missing_import "Library %s is linked to missing function\n%s:%s"

:LANGUAGE "0x0a"
install : install_window_title "This string will override the default when the user is spanish "




[Thinstall module name]:
[symbol name] "Symbol Value for current Language"
:LANGUAGE "0x0a" (change to language code

The module name indicates which portion of the Thinstall Runtime the value is used for. If that particular portion of the runtime is not included in the final EXE, the value will also be excluded from the image. For example install_window_title is only used when the installer is enabled, so if the installer has been disabled the string will not be included in the built EXE, thus saving a small amount of space.

The symbol value must always be enclosed in quotation marks. To represent a quote mark within the string use \", to represent a backslash, use \\

The :LANGUAGE tag changes the current language to the code following. Codes for various languages can be found below.


Language Codes
0x01 Arabic
0x02 Bulgarian
0x03 Catalan
0x04 Chinese
0x05 Czech
0x06 Danish
0x07 German
0x08 Greek
0x09 English
0x0a Spanish
0x0b Finnish
0x0c French
0x0d Hebrew
0x0e Hungarian
0x0f Icelandic
0x10 Italian
0x11 Japanese
0x12 Korean
0x13 Dutch
0x14 Norwegian
0x15 Polish
0x16 Portuguese
0x18 Romanian
0x19 Russian
0x1a Croatian


0x1a Serbian
0x1b Slovak
0x1c Albanian
0x1d Swedish
0x1e Thai
0x1f Turkish
0x20 Urdu
0x21 Indonesian
0x22 Ukrainian
0x23 Belarusian
0x24 Slovenian
0x25 Estonian
0x26 Latvian
0x27 Lithuanian
0x29 Farsi
0x2a Vietnamese
0x2b Armenian
0x2c Azeri
0x2d Basque
0x2f Macedonian
0x36 Afrikaans
0x37 Georgian
0x38 Faeroese
0x39 Hindi
0x3e Malay


0x3f Kazak
0x41 Swahili
0x43 Uzbek
0x44 Tatar
0x45 Bengali
0x46 Punjabi
0x47 Gujarati
0x48 Oriya
0x49 Tamil
0x4a Telugu
0x4b Kannada
0x4c Malayalam
0x4d Assamese
0x4e Marathi
0x4f Sanskrit
0x57 Konkani
0x58 Manipuri
0x59 Sindhi
0x60 Kashmiri
0x61 Nepali




Localizing the End User License Agreement

The End User License Agreement text file is read using the following value-data pair:

install:elua_filename "%InstallPath%\\eula.rtf"

You can display a End User License Agreement in the user's native language like this:

install:elua_filename "%InstallPath%\\default_eula.rtf"
:LANGAUAGE "0x0a"
install:elua_filename "%InstallPath%\\spanish_eula.rtf"



Overridding default_config.txt

When you specify an alternate configuration file, Thinstall will first load the default_config.txt and then load your configuration file. This allows defaults to be overridden, and defaults to be maintained for any missing values.

Editing Unicode

Configuration files must be saved as Unicode Text because characters from many languages cannot be represented using normal text files. You can use Wordpad or MS Word to save Unicode Text format. Using the "Save As" dialog, select the Unicode Text Document format before clicking "Save".

clip0137


Enlarging Buttons & Windows for long Languages

When translating button and window text to new languages, you may find there is not enough room in the dialog for the new text. You can use the variable "Install_button_grow_size" and "install_window_grow_size" to increase the button and window sizes for these languages:

For Example

# English does not need longer buttons
install:install_button_grow_size "0"
install:install_window_grow_size "0"


# German needs a little more space for buttons
:LANGUAGE "0x07"
install:install_button_grow_size "40"
install:install_window_grow_size "100"