📄 i18n.sgml
字号:
<!-- ##### SECTION Title ##### -->Internationalization<!-- ##### SECTION Short_Description ##### -->gettext support macros.<!-- ##### SECTION Long_Description ##### --><para>GLib doesn't force any particular localization method upon its users.But since GLib itself is localized using the gettext() mechanism, it seemsnatural to offer the de-facto standard gettext() support macros in an easy-to-use form.</para><para>In order to use these macros in an application, you must include <filename>glib/gi18n.h</filename>. For use in a library, must include<filename>glib/gi18n-lib.h</filename> <emphasis>after</emphasis> definingthe GETTEXT_PACKAGE macro suitably for your library:<informalexample><programlisting>#define GETTEXT_PACKAGE "gtk20"#include <glib/gi18n-lib.h></programlisting></informalexample></para><!-- ##### SECTION See_Also ##### --><para>The gettext manual.</para><!-- ##### SECTION Stability_Level ##### --><!-- ##### MACRO _ ##### --><para>Marks a string for translation, gets replaced with the translated stringat runtime.</para>@String: the string to be translated@Since: 2.4<!-- ##### MACRO Q_ ##### --><para>Like _(), but applies g_strip_context() to the translation. This has theadvantage that the string can be adorned with a prefix to guarantee uniqueness and provide context to the translator.</para><para>One use case given in the gettext manual is GUI translation, where one could e.g. disambiguate two "Open" menu entries as "File|Open" and "Printer|Open". Another use case is the string "Russian" which may have to be translateddifferently depending on whether it's the name of a character set or a language. This could be solved by using "charset|Russian" and "language|Russian".</para>@String: the string to be translated, with a '|'-separated prefix which must not be translated@Since: 2.4<!-- ##### MACRO N_ ##### --><para>Marks a string for translation, gets replaced with the untranslated stringat runtime. This is useful in situations where the translated strings can'tbe directly used, e.g. in string array initializers. </para><informalexample><programlisting> { static const char *messages[] = { N_("some very meaningful message"), N_("and another one") }; const char *string; ... string = index > 1 ? _("a default message") : gettext (messages[index]);<!-- --> fputs (string); ... }</programlisting></informalexample>@String: the string to be translated@Since: 2.4<!-- ##### FUNCTION g_strip_context ##### --><para></para>@msgid: @msgval: @Returns: <!-- ##### FUNCTION g_get_language_names ##### --><para></para>@Returns:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -