]> git.lyx.org Git - lyx.git/blobdiff - src/gettext.h
* Layout.cpp (read): fix ObsoletedBy and DependsOn for layout names
[lyx.git] / src / gettext.h
index 121e0428bd8bac87a6df35d0a55e2488cb047637..0624d8be83ef5379ad9824fda22f73f3c9c3f24b 100644 (file)
@@ -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
  *   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 <libintl.h>      // use the header already in the system *EK*
-#    ifdef HAVE_LOCALE_H
-#      include <locale.h>        // 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