added support for using C++ files using a different domain;
new dsgettext function
This commit is contained in:
parent
0a5f545d1c
commit
7861533d0b
2 changed files with 21 additions and 1 deletions
|
@ -15,6 +15,19 @@ const char* sgettext (const char *msgid)
|
|||
return msgval;
|
||||
}
|
||||
|
||||
const char* dsgettext (const char * domainname, const char *msgid)
|
||||
{
|
||||
const char *msgval = dgettext (domainname, msgid);
|
||||
if (msgval == msgid) {
|
||||
msgval = strrchr (msgid, '^');
|
||||
if (msgval == NULL)
|
||||
msgval = msgid;
|
||||
else
|
||||
msgval++;
|
||||
}
|
||||
return msgval;
|
||||
}
|
||||
|
||||
const char* vgettext (const char *msgid, const string_map& symbols)
|
||||
{
|
||||
const std::string orig(gettext(msgid));
|
||||
|
|
|
@ -6,8 +6,15 @@
|
|||
// gettext-related declarations
|
||||
#include <libintl.h>
|
||||
const char* sgettext (const char*);
|
||||
const char* dsgettext (const char * domainname, const char *msgid);
|
||||
const char* vgettext (const char*,const string_map&);
|
||||
#define _(String) gettext(String)
|
||||
|
||||
#ifdef GETTEXT_DOMAIN
|
||||
# define _(String) dgettext(GETTEXT_DOMAIN,String)
|
||||
#else
|
||||
# define _(String) gettext(String)
|
||||
#endif
|
||||
|
||||
#define gettext_noop(String) String
|
||||
#define N_(String) gettext_noop (String)
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue