X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fgettext.h;h=0624d8be83ef5379ad9824fda22f73f3c9c3f24b;hb=e5b8f6956160631022fede155f55bad7951eecb8;hp=121e0428bd8bac87a6df35d0a55e2488cb047637;hpb=b7736f5af357c4ad93459041c26dd3fa838ed5a9;p=lyx.git diff --git a/src/gettext.h b/src/gettext.h index 121e0428bd..0624d8be83 100644 --- a/src/gettext.h +++ b/src/gettext.h @@ -1,6 +1,22 @@ // -*- C++ -*- -#ifndef _GETTEXT_H_ -#define _GETTEXT_H_ +/** + * \file src/gettext.h + * 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. + */ + +#ifndef GETTEXT_H +#define GETTEXT_H + +#include "support/docstring.h" + + +namespace lyx { /* * Native Language Support @@ -30,45 +46,32 @@ * Panic/fatal (that should not happen) messages need not be translated */ -#ifdef ENABLE_NLS -#include "LString.h" +//#ifdef ENABLE_NLS + +/// +docstring const _(std::string const &); -# if HAVE_GETTEXT -# include // use the header already in the system *EK* -# ifdef HAVE_LOCALE_H -# include // for LC_MESSAGES -# endif -# else -# include "../intl/libintl.h" -# endif +//#else // ENABLE_NLS -char const * _(char const *); +/// +//# define _(str) (str) -string const _(string const &); +//#endif -//# define _(str) gettext(str) # define N_(str) (str) // for detecting static strings -# ifdef HAVE_LC_MESSAGES - // LC_TIME, LC_CTYPE, even LC_ALL -# define locale_init() { setlocale (LC_MESSAGES, ""); setlocale (LC_CTYPE, ""); setlocale(LC_NUMERIC, "C"); } -# else -# define locale_init() -# endif -# define gettext_init() { bindtextdomain (PACKAGE, lyx_localedir.c_str()); \ - textdomain (PACKAGE); } -#else -/// -# define _(str) (str) -/// -# define S_(str) (str) -/// -# define N_(str) (str) -/// -# define locale_init() +/** + * Translate \p name if it is possible. + * This should be used to translate strings that come from configuration + * files like .ui files. These strings could already be in the native + * language if they come from a file in the personal directory. */ +docstring const translateIfPossible(docstring const & name); + /// -# define gettext_init() -#endif +void locale_init(); + + +} // namespace lyx #endif