1 ///////////////////////////////////////////////////////////////////////////////
2 //
3 /// \file tuklib_gettext.h
4 /// \brief Wrapper for gettext and friends
5 //
6 // Author: Lasse Collin
7 //
8 // This file has been put into the public domain.
9 // You can do whatever you want with this file.
10 //
11 ///////////////////////////////////////////////////////////////////////////////
12
13 #ifndef TUKLIB_GETTEXT_H
14 #define TUKLIB_GETTEXT_H
15
16 #include "tuklib_common.h"
17 #include <locale.h>
18
19 #ifndef TUKLIB_GETTEXT
20 # ifdef ENABLE_NLS
21 # define TUKLIB_GETTEXT 1
22 # else
23 # define TUKLIB_GETTEXT 0
24 # endif
25 #endif
26
27 #if TUKLIB_GETTEXT
28 # include <libintl.h>
29 # define tuklib_gettext_init(package, localedir) \
30 do { \
31 setlocale(LC_ALL, ""); \
32 bindtextdomain(package, localedir); \
33 textdomain(package); \
34 } while (0)
35 # define _(msgid) gettext(msgid)
36 #else
37 # define tuklib_gettext_init(package, localedir) \
38 setlocale(LC_ALL, "")
39 # define _(msgid) (msgid)
40 # define ngettext(msgid1, msgid2, n) ((n) == 1 ? (msgid1) : (msgid2))
41 #endif
42 #define N_(msgid) msgid
43
44 #endif