Translations: Start documentation for translations.
This commit is contained in:
parent
29212b0a92
commit
e61d660ecc
BIN
doxygen/images/translate-glade.png
Normal file
BIN
doxygen/images/translate-glade.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
53
doxygen/translation.dox
Normal file
53
doxygen/translation.dox
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
/**
|
||||||
|
|
||||||
|
@page translation Translations / Internationalization
|
||||||
|
|
||||||
|
@section lang-available Available Languages
|
||||||
|
|
||||||
|
The development, documentation and default application language of gds-render is English.
|
||||||
|
Translations of GUI and console output exist for the following locales/languages
|
||||||
|
|
||||||
|
- de German (Deutsch)
|
||||||
|
- ja Japanese (日本語) (Work in progess)
|
||||||
|
|
||||||
|
On how to add new languages, see @ref lang-add
|
||||||
|
|
||||||
|
@section lang-internals Internals
|
||||||
|
This progamm uses gettext for translations.
|
||||||
|
|
||||||
|
@subsection lang-coding Make Strings Translatable in Code
|
||||||
|
Only strings, that are marked as translatable are actually available for translation and shown in the user's language.
|
||||||
|
All other text is displayed as written in the source files.
|
||||||
|
|
||||||
|
@subsubsection lang-add-glade Make GUI Elements in Glade Files Translatable
|
||||||
|
Text inside Glade's GUI files can be made translatable by checking the *translatable* option for the specific text property.
|
||||||
|
The following image shows the label property of a button. Notice the checked Translatable option.
|
||||||
|
@image html translate-glade.png
|
||||||
|
@image latex translate-glade.png
|
||||||
|
|
||||||
|
@subsubsection lang-add-c Make C Strings Translatable
|
||||||
|
In order to make strings in C code translatable, the following header has to be included:
|
||||||
|
@code
|
||||||
|
#inlcude <glib/gi18n.h>
|
||||||
|
@endcode
|
||||||
|
This header provides a few macros useful for translation. The most important one is the function-like macro
|
||||||
|
@code
|
||||||
|
_("Text here")
|
||||||
|
@endcode
|
||||||
|
which is just a underline character.
|
||||||
|
You can use this marco to encapsulate all static strings that shall be translated. The whole expression is still usable like any other string (except for compile time concatenation, like: "This is foo" " and this is bar")
|
||||||
|
|
||||||
|
Example:
|
||||||
|
@code
|
||||||
|
printf(_("The value of foo is %d\n"), foo);
|
||||||
|
@endcode
|
||||||
|
|
||||||
|
Text that must not be translated can be encapsulated inside a N_ macro like
|
||||||
|
@code
|
||||||
|
N_("This has to stay in English")
|
||||||
|
@endcode
|
||||||
|
The N_ macro is basically an empty macro and just for visualization.
|
||||||
|
|
||||||
|
@subsection lang-add Add a New Language
|
||||||
|
|
||||||
|
*/
|
Loading…
Reference in New Issue
Block a user