gettext: C
15.5.1 C, C++, Objective C
--------------------------
RPMs
gcc, gpp, gobjc, glibc, gettext
Ubuntu packages
gcc, g++, gobjc, libc6-dev, libasprintf-dev
File extension
For C: ‘c’, ‘h’.
For C++: ‘C’, ‘c++’, ‘cc’, ‘cxx’, ‘cpp’, ‘hpp’.
For Objective C: ‘m’.
String syntax
‘"abc"’
gettext shorthand
‘_("abc")’
gettext/ngettext functions
‘gettext’, ‘dgettext’, ‘dcgettext’, ‘ngettext’, ‘dngettext’,
‘dcngettext’
textdomain
‘textdomain’ function
bindtextdomain
‘bindtextdomain’ and ‘wbindtextdomain’ functions
setlocale
Programmer must call ‘setlocale (LC_ALL, "")’
Prerequisite
‘#include <libintl.h>’
‘#include <locale.h>’
‘#define _(string) gettext (string)’
Use or emulate GNU gettext
Use
Extractor
‘xgettext -k_’
Formatting with positions
‘fprintf "%2$d %1$d"’
In C++: ‘autosprintf "%2$d %1$d"’ (⇒Introduction
(autosprintf)Top.)
Portability
autoconf (gettext.m4) and #if ENABLE_NLS
po-mode marking
yes
The following examples are available in the ‘examples’ directory:
‘hello-c’, ‘hello-c-gnome’, ‘hello-c++’, ‘hello-c++-qt’,
‘hello-c++-kde’, ‘hello-c++-gnome’, ‘hello-c++-wxwidgets’, ‘hello-objc’,
‘hello-objc-gnustep’, ‘hello-objc-gnome’.