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