Improve i18n documentation
authorSébastien Wilmet <swilmet@gnome.org>
Thu, 22 Nov 2012 18:41:19 +0000 (19:41 +0100)
committerSébastien Wilmet <swilmet@gnome.org>
Thu, 22 Nov 2012 22:08:54 +0000 (23:08 +0100)
Clearly explain which gettext functions must be called. It depends
whether the program is an application or a library.

https://bugzilla.gnome.org/show_bug.cgi?id=688886

glib/ggettext.c

index da8e1a4..ed7137e 100644 (file)
@@ -472,16 +472,21 @@ g_dngettext (const gchar *domain,
  * 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.h</filename>. For use in a library, you 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.
+ * For an application, note that you also have to call bindtextdomain(),
+ * bind_textdomain_codeset(), textdomain() and setlocale() early on in your
+ * main() to make gettext() work.
+ *
+ * For a library, you only have to call bindtextdomain() and
+ * bind_textdomain_codeset() in your initialization function. If your library
+ * doesn't have an initialization function, you can call the functions before
+ * the first translated message.
  *
  * The gettext manual covers details of how to set up message extraction
  * with xgettext.