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 # define N_(msgid1, msgid2, n) ngettext(msgid1, msgid2, n) 37 #else 38 # define tuklib_gettext_init(package, localedir) \ 39 setlocale(LC_ALL, "") 40 # define _(msgid) (msgid) 41 # define N_(msgid1, msgid2, n) ((n) == 1 ? (msgid1) : (msgid2)) 42 #endif 43 44 #endif 45