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:
key1 = "The text for key1 starts here "
"continues here "
"and ends here.";
\n
. Line breaks in a text should kept in the translation.\
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%?!";
%?
, the order of placeholders cannot be changed.%1, %2, %3, ...
For example, the key forwelcome_found_dir = "An existing installation of %1 v%2 has been detected in the directory %3.";
welcome_found_dir = "In the directory %3 has been found an existing installation of %1 v%2.";
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.
For further questions, please, contact Lars Bergengruen: