lyx_mirror/src/gettext.C
Georg Baum 8cc9180ba8 Resolve link problems of tex2lyx and client by removing the extra gettext.h
headers and converting the gettext stuff in tex2lyx and client to use
docstring.
The interface must be defined by src/gettext.h anyway, so better use that.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15740 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-04 18:12:57 +00:00

72 lines
1.0 KiB
C

/**
* \file src/gettext.C
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
* \author Lars Gullik Bjønnes
* \author Jean-Marc Lasgouttes
*
* Full author contact details are available in file CREDITS.
*/
#include <config.h>
#include "gettext.h"
#include "messages.h"
#include "support/environment.h"
namespace lyx {
#ifdef HAVE_LOCALE_H
# include <locale.h>
#endif
using support::setEnv;
using std::string;
namespace {
static Messages & getLyXMessages()
{
static Messages lyx_messages;
return lyx_messages;
}
} // anon namespace
docstring const _(string const & str)
{
return getLyXMessages().get(str);
}
#ifdef ENABLE_NLS
void locale_init()
{
// Disable, as otherwise it overrides everything else incl. the doc language
setEnv("LANGUAGE", "");
# ifdef HAVE_LC_MESSAGES
setlocale(LC_MESSAGES, "");
# endif
setlocale(LC_CTYPE, "");
setlocale(LC_NUMERIC, "C");
}
#else // ENABLE_NLS
void locale_init()
{
setlocale(LC_NUMERIC, "C");
}
#endif
} // namespace lyx