cFosSpeed - Translate into your language
>cFosSpeed Language Files
Installation Instructions
- Download the language files and unzip them. You should get two text files.
- Put these text files in the same directory as the file cfosspeed-v500.exe that you’ve downloaded from our web site.
- Execute cfosspeed-v500.exe and select your language in the welcome dialog.
- Continue the installation.
- After a successful installation you can also change the language from the pop-up menu of the cFosSpeed taskbar icon.
Writing a cFosSpeed multi-language file for your own language
All cFosSpeed text shown on screen is stored in so called multi-language files cfspdiml.txt for the installer and speedml.txt for the daemon program. To add text in another language, new cfspdiml_*.txt and speedml_*.txt files need to be created. Here, the asterisk (*) is just a placeholder for the abbreviation of the language used. Thus, cfspdiml_it.txt and speedml_it.txt would be text files for an Italian version.
Note that it is, for instance, perfectly OK to have just the daemon text translated. In that case, only a corresponding speedml*.txt file would be required. Once created, any new language file(s) are simply copied to the installer or the installation directory.
Multi-language files must be saved in Unicode format (both UTF-16 and UTF-8 are supported). This can, for instance, be done by using the Windows Notepad text editor.
Each multi-language file has the following structure:
Note that a line starting with a slash ‘/’ is merely a comment, meaning its content will be ignored.
Before any keys can be defined, the appropriate Windows identifier for the new language needs to be specified first, by writing
#language <Windows id>
on a single line (e.g., “#language 1033
” for English). A list of Windows language identifers can be found here. You can also use hexadecimal format, ie. “#language 0x0409” for English.
Now, text keys and the text they each represent can be specified, using the format below:
key = "Text";
Keys and corresponding text should be taken from an existing multi-language file and then be translated. The following rules apply:
- Text must always be in quotes (“)!
- For better readability within the multi-language file, individual text entries can run more than one line, but must be put in quotes on each line like this:
key1 = "The text for key1 starts here "
"continues here "
"and ends here.";
Keep in mind that line breaks in a text definition do in no way correlate with line breaks actually shown on screen. Hence, the example above would still be displayed as a single line of text. Note as well that the last (and only the last) line of text must end with a semicolon (;). - Explicit line breaks within a text can be specified by entering
\n
. Line breaks in a text should kept in the translation. - A backslash
\
is specified by two backslashes\\
. %s
and%?
are both placeholders for text or numbers, which will be filled in at their position at run time. For example, the key forwelcome_line = "Welcome to %? v%?!";
could be displayed as “Welcome to cFosSpeed v1.05!” depending on the product and its current version number. In text containing more than one%?
, the order of placeholders cannot be changed.- To allow repeated use of a placeholder within a text or to have the order of placeholders changed, some text may contain placeholders like
%1, %2, %3, ...
For example, the key forwelcome_found_dir = "An existing installation of %1 v%2 has been detected in the directory %3.";
may be changed towelcome_found_dir = "In the directory %3 has been found an existing installation of %1 v%2.";
Again, if you are unsure what a placeholder stands for, feel free to contact us.
We’d like to give you, the translator, credit for your work. Therefore there are two special language keys available only for user-created multi-language files.
translator_name = "Your name";
translator_msg = "Your message";
The translator name will be displayed in the cFosSpeed daemon language menu. The translator message will be displayed in a Windows message box if that language is selected in the cFosSpeed daemon language menu.