Move i18n docs inline
authorMatthias Clasen <mclasen@redhat.com>
Sun, 13 Nov 2011 05:43:50 +0000 (00:43 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 15 Nov 2011 02:22:46 +0000 (21:22 -0500)
docs/reference/glib/tmpl/.gitignore
docs/reference/glib/tmpl/i18n.sgml [deleted file]
glib/ggettext.c

index d8f8291..20b79fa 100644 (file)
@@ -26,6 +26,7 @@ hash_tables.sgml
 hmac.sgml
 hooks.sgml
 iochannels.sgml
+i18n.sgml
 keyfile.sgml
 linked_lists_double.sgml
 linked_lists_single.sgml
diff --git a/docs/reference/glib/tmpl/i18n.sgml b/docs/reference/glib/tmpl/i18n.sgml
deleted file mode 100644 (file)
index a56f803..0000000
+++ /dev/null
@@ -1,252 +0,0 @@
-<!-- ##### 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 seems
-natural 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> defining
-the GETTEXT_PACKAGE macro suitably for your library:
-<informalexample><programlisting>
-&num;define GETTEXT_PACKAGE "gtk20"
-&num;include &lt;glib/gi18n-lib.h&gt;
-</programlisting></informalexample>
-Note that you also have to call setlocale() and textdomain() (as well as
-bindtextdomain() and bind_textdomain_codeset()) early on in your main()
-to make gettext() work.
-
-The gettext manual covers details of how to set up message extraction
-with xgettext.
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-The gettext manual.
-</para>
-
-<!-- ##### SECTION Stability_Level ##### -->
-
-
-<!-- ##### SECTION Image ##### -->
-
-
-<!-- ##### MACRO _ ##### -->
-<para>
-Marks a string for translation, gets replaced with the translated string
-at runtime.
-</para>
-
-@String: the string to be translated
-@Since: 2.4
-
-
-<!-- ##### MACRO Q_ ##### -->
-<para>
-Like _(), but handles context in message ids. This has the advantage 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 translated
-differently 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>
-<para>
-See the C_() macro for a different way to mark up translatable strings
-with context.
-</para>
-<note><para>
-If you are using the Q_() macro, you need to make sure that you 
-pass <option>--keyword=Q_</option> to xgettext when extracting messages.
-If you are using GNU gettext >= 0.15, you can also use
-<option>--keyword=Q_:1g</option> to let xgettext split the context
-string off into a msgctxt line in the po file.
-</para></note>
-
-@String: the string to be translated, with a '|'-separated prefix which 
-  must not be translated
-@Returns: the translated message
-@Since: 2.4
-
-
-<!-- ##### MACRO C_ ##### -->
-<para>
-Uses gettext to get the translation for @msgid. @msgctxt is 
-used as a context. This is mainly useful for short strings which 
-may need different translations, depending on the context in which 
-they are used.
-<informalexample><programlisting>
-label1 = C_("Navigation", "Back");
-label2 = C_("Body part", "Back");
-</programlisting></informalexample> 
-</para>
-
-<note><para>
-If you are using the C_() macro, you need to make sure that you 
-pass <option>--keyword=C_:1c,2</option> to xgettext when extracting 
-messages. Note that this only works with GNU gettext >= 0.15. 
-</para></note>
-
-@Context: a message context, must be a string literal
-@String: a message id, must be a string literal
-@Returns: the translated message
-@Since: 2.16
-
-
-<!-- ##### MACRO N_ ##### -->
-<para>
-Only marks a string for translation.
-This is useful in situations where the translated strings can't
-be directly used, e.g. in string array initializers. 
-To get the translated string, call gettext() at runtime.
-</para>
-<informalexample><programlisting>
-     {
-       static const char *messages[] = {
-         N_("some very meaningful message"),
-         N_("and another one")
-       };
-       const char *string;
-       ...
-       string
-         = index &gt; 1 ? _("a default message") : gettext (messages[index]);
-<!-- -->     
-       fputs (string);
-       ...
-     }
-</programlisting></informalexample>
-
-@String: the string to be translated
-@Since: 2.4
-
-
-<!-- ##### MACRO NC_ ##### -->
-<para>
-Only marks a string for translation, with context.
-This is useful in situations where the translated strings can't
-be directly used, e.g. in string array initializers. 
-To get the translated string, you should call g_dpgettext2() at runtime.
-</para>
-|[
-     {
-       static const char *messages[] = {
-         NC_("some context", "some very meaningful message"),
-         NC_("some context", "and another one")
-       };
-       const char *string;
-       ...
-       string
-         = index &gt; 1 ? g_dpgettext2 (NULL, "some context", "a default message") : g_dpgettext2 (NULL, "some context", messages[index]);
-<!-- -->     
-       fputs (string);
-       ...
-     }
-]|
-
-<note><para>
-If you are using the NC_() macro, you need to make sure that you
-pass <option>--keyword=NC_:1c,2</option> to xgettext when extracting
-messages. Note that this only works with GNU gettext >= 0.15.
-Intltool has support for the NC_() macro since version 0.40.1.
-</para></note>
-
-@Context: a message context, must be a string literal
-@String: a message id, must be a string literal
-@Since: 2.18
-
-
-<!-- ##### FUNCTION g_dgettext ##### -->
-<para>
-
-</para>
-
-@domain: 
-@msgid: 
-@Returns: 
-
-
-<!-- ##### FUNCTION g_dcgettext ##### -->
-<para>
-
-</para>
-
-@domain: 
-@msgid: 
-@category: 
-@Returns: 
-
-
-<!-- ##### FUNCTION g_dngettext ##### -->
-<para>
-
-</para>
-
-@domain: 
-@msgid: 
-@msgid_plural: 
-@n: 
-@Returns: 
-
-
-<!-- ##### FUNCTION g_dpgettext ##### -->
-<para>
-
-</para>
-
-@domain: 
-@msgctxtid: 
-@msgidoffset: 
-@Returns: 
-
-
-<!-- ##### FUNCTION g_dpgettext2 ##### -->
-<para>
-
-</para>
-
-@domain: 
-@context: 
-@msgid: 
-@Returns: 
-
-
-<!-- ##### FUNCTION g_strip_context ##### -->
-<para>
-
-</para>
-
-@msgid: 
-@msgval: 
-@Returns: 
-
-
-<!-- ##### FUNCTION g_get_language_names ##### -->
-<para>
-
-</para>
-
-@void: 
-@Returns: 
-
-
-<!-- ##### FUNCTION g_get_locale_variants ##### -->
-<para>
-
-</para>
-
-@locale: 
-@Returns: 
-
-
index d7054fc..0f1ebb1 100644 (file)
@@ -456,3 +456,159 @@ g_dngettext (const gchar *domain,
 
   return dngettext (domain, msgid, msgid_plural, n);
 }
+
+
+/**
+ * SECTION:i18n
+ * @title: Internationalization
+ * @short_description: gettext support macros
+ * @see_also: the gettext manual
+ *
+ * GLib doesn't force any particular localization method upon its users.
+ * But since GLib itself is localized using the gettext() mechanism, it seems
+ * natural to offer the de-facto standard gettext() support macros in an
+ * easy-to-use form.
+ *
+ * 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> defining
+ * the GETTEXT_PACKAGE macro suitably for your library:
+ * |[
+ * &num;define GETTEXT_PACKAGE "gtk20"
+ * &num;include &lt;glib/gi18n-lib.h&gt;
+ * ]|
+ * Note that you also have to call setlocale() and textdomain() (as well as
+ * bindtextdomain() and bind_textdomain_codeset()) early on in your main()
+ * to make gettext() work.
+ *
+ * The gettext manual covers details of how to set up message extraction
+ * with xgettext.
+ */
+
+/**
+ * _:
+ * @String: the string to be translated
+ *
+ * Marks a string for translation, gets replaced with the translated string
+ * at runtime.
+ *
+ * Since: 2.4
+ */
+
+/**
+ * Q_:
+ * @String: the string to be translated, with a '|'-separated prefix
+ *     which must not be translated
+ *
+ * Like _(), but handles context in message ids. This has the advantage
+ * that the string can be adorned with a prefix to guarantee uniqueness
+ * and provide context to the translator.
+ *
+ * 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 translated differently 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".
+ *
+ * See the C_() macro for a different way to mark up translatable strings
+ * with context.
+ *
+ * <note><para>If you are using the Q_() macro, you need to make sure
+ * that you pass <option>--keyword=Q_</option> to xgettext when extracting
+ * messages. If you are using GNU gettext >= 0.15, you can also use
+ * <option>--keyword=Q_:1g</option> to let xgettext split the context
+ * string off into a msgctxt line in the po file.</para></note>
+ *
+ * Returns: the translated message
+ *
+ * Since: 2.4
+ */
+
+/**
+ * C_:
+ * @Context: a message context, must be a string literal
+ * @String: a message id, must be a string literal
+ *
+ * Uses gettext to get the translation for @String. @Context is
+ * used as a context. This is mainly useful for short strings which
+ * may need different translations, depending on the context in which
+ * they are used.
+ * |[
+ * label1 = C_("Navigation", "Back");
+ * label2 = C_("Body part", "Back");
+ * ]|
+ *
+ * <note><para>If you are using the C_() macro, you need to make sure
+ * that you pass <option>--keyword=C_:1c,2</option> to xgettext when
+ * extracting messages. Note that this only works with GNU
+ * gettext >= 0.15.</para></note>
+ *
+ * Returns: the translated message
+ *
+ * Since: 2.16
+ */
+
+/**
+ * N_:
+ * @String: the string to be translated
+ *
+ * Only marks a string for translation. This is useful in situations
+ * where the translated strings can't be directly used, e.g. in string
+ * array initializers. To get the translated string, call gettext()
+ * at runtime.
+ * |[
+ * {
+ *   static const char *messages[] = {
+ *     N_("some very meaningful message"),
+ *     N_("and another one")
+ *   };
+ *   const char *string;
+ *   ...
+ *   string
+ *     = index &gt; 1 ? _("a default message") : gettext (messages[index]);
+ *
+ *   fputs (string);
+ *   ...
+ * }
+ * ]|
+ *
+ * Since: 2.4
+ */
+
+/**
+ * NC_:
+ * @Context: a message context, must be a string literal
+ * @String: a message id, must be a string literal
+ *
+ * Only marks a string for translation, with context.
+ * This is useful in situations where the translated strings can't
+ * be directly used, e.g. in string array initializers. To get the
+ * translated string, you should call g_dpgettext2() at runtime.
+ *
+ * |[
+ * {
+ *   static const char *messages[] = {
+ *     NC_("some context", "some very meaningful message"),
+ *     NC_("some context", "and another one")
+ *   };
+ *   const char *string;
+ *   ...
+ *   string
+ *     = index &gt; 1 ? g_dpgettext2 (NULL, "some context", "a default message")
+ *                    : g_dpgettext2 (NULL, "some context", messages[index]);
+ *
+ *   fputs (string);
+ *   ...
+ * }
+ * ]|
+ *
+ * <note><para>If you are using the NC_() macro, you need to make sure
+ * that you pass <option>--keyword=NC_:1c,2</option> to xgettext when
+ * extracting messages. Note that this only works with GNU gettext >= 0.15.
+ * Intltool has support for the NC_() macro since version 0.40.1.
+ * </para></note>
+ *
+ * Since: 2.18
+ */
+