mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-24 22:46:15 +01:00
New headers defining common gettext-support macros.
Wed Nov 5 22:05:19 2003 Matthias Clasen <maclas@gmx.de> * glib/gi18n-lib.h: * glib/gi18n.h: New headers defining common gettext-support macros. * glib/Makefile.am (glibsubinclude_HEADERS): Add gi18n.h and gi18n-lib.h. * glib/gstrfuncs.h: * glib/gstrfuncs.c (g_strip_context): Auxiliary function for the implementation of Q_().
This commit is contained in:
parent
36715ffb1e
commit
2807b4e6eb
13
ChangeLog
13
ChangeLog
@ -1,3 +1,16 @@
|
|||||||
|
Wed Nov 5 22:05:19 2003 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
* glib/gi18n-lib.h:
|
||||||
|
* glib/gi18n.h: New headers defining common gettext-support
|
||||||
|
macros.
|
||||||
|
|
||||||
|
* glib/Makefile.am (glibsubinclude_HEADERS): Add gi18n.h
|
||||||
|
and gi18n-lib.h.
|
||||||
|
|
||||||
|
* glib/gstrfuncs.h:
|
||||||
|
* glib/gstrfuncs.c (g_strip_context): Auxiliary function for
|
||||||
|
the implementation of Q_().
|
||||||
|
|
||||||
2003-11-05 Morten Welinder <terra@gnome.org>
|
2003-11-05 Morten Welinder <terra@gnome.org>
|
||||||
|
|
||||||
* glib/garray.c (g_ptr_array_remove_range): Make it compile.
|
* glib/garray.c (g_ptr_array_remove_range): Make it compile.
|
||||||
|
@ -1,3 +1,16 @@
|
|||||||
|
Wed Nov 5 22:05:19 2003 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
* glib/gi18n-lib.h:
|
||||||
|
* glib/gi18n.h: New headers defining common gettext-support
|
||||||
|
macros.
|
||||||
|
|
||||||
|
* glib/Makefile.am (glibsubinclude_HEADERS): Add gi18n.h
|
||||||
|
and gi18n-lib.h.
|
||||||
|
|
||||||
|
* glib/gstrfuncs.h:
|
||||||
|
* glib/gstrfuncs.c (g_strip_context): Auxiliary function for
|
||||||
|
the implementation of Q_().
|
||||||
|
|
||||||
2003-11-05 Morten Welinder <terra@gnome.org>
|
2003-11-05 Morten Welinder <terra@gnome.org>
|
||||||
|
|
||||||
* glib/garray.c (g_ptr_array_remove_range): Make it compile.
|
* glib/garray.c (g_ptr_array_remove_range): Make it compile.
|
||||||
|
@ -1,3 +1,16 @@
|
|||||||
|
Wed Nov 5 22:05:19 2003 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
* glib/gi18n-lib.h:
|
||||||
|
* glib/gi18n.h: New headers defining common gettext-support
|
||||||
|
macros.
|
||||||
|
|
||||||
|
* glib/Makefile.am (glibsubinclude_HEADERS): Add gi18n.h
|
||||||
|
and gi18n-lib.h.
|
||||||
|
|
||||||
|
* glib/gstrfuncs.h:
|
||||||
|
* glib/gstrfuncs.c (g_strip_context): Auxiliary function for
|
||||||
|
the implementation of Q_().
|
||||||
|
|
||||||
2003-11-05 Morten Welinder <terra@gnome.org>
|
2003-11-05 Morten Welinder <terra@gnome.org>
|
||||||
|
|
||||||
* glib/garray.c (g_ptr_array_remove_range): Make it compile.
|
* glib/garray.c (g_ptr_array_remove_range): Make it compile.
|
||||||
|
@ -1,3 +1,16 @@
|
|||||||
|
Wed Nov 5 22:05:19 2003 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
* glib/gi18n-lib.h:
|
||||||
|
* glib/gi18n.h: New headers defining common gettext-support
|
||||||
|
macros.
|
||||||
|
|
||||||
|
* glib/Makefile.am (glibsubinclude_HEADERS): Add gi18n.h
|
||||||
|
and gi18n-lib.h.
|
||||||
|
|
||||||
|
* glib/gstrfuncs.h:
|
||||||
|
* glib/gstrfuncs.c (g_strip_context): Auxiliary function for
|
||||||
|
the implementation of Q_().
|
||||||
|
|
||||||
2003-11-05 Morten Welinder <terra@gnome.org>
|
2003-11-05 Morten Welinder <terra@gnome.org>
|
||||||
|
|
||||||
* glib/garray.c (g_ptr_array_remove_range): Make it compile.
|
* glib/garray.c (g_ptr_array_remove_range): Make it compile.
|
||||||
|
@ -1,3 +1,16 @@
|
|||||||
|
Wed Nov 5 22:05:19 2003 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
* glib/gi18n-lib.h:
|
||||||
|
* glib/gi18n.h: New headers defining common gettext-support
|
||||||
|
macros.
|
||||||
|
|
||||||
|
* glib/Makefile.am (glibsubinclude_HEADERS): Add gi18n.h
|
||||||
|
and gi18n-lib.h.
|
||||||
|
|
||||||
|
* glib/gstrfuncs.h:
|
||||||
|
* glib/gstrfuncs.c (g_strip_context): Auxiliary function for
|
||||||
|
the implementation of Q_().
|
||||||
|
|
||||||
2003-11-05 Morten Welinder <terra@gnome.org>
|
2003-11-05 Morten Welinder <terra@gnome.org>
|
||||||
|
|
||||||
* glib/garray.c (g_ptr_array_remove_range): Make it compile.
|
* glib/garray.c (g_ptr_array_remove_range): Make it compile.
|
||||||
|
@ -1,3 +1,16 @@
|
|||||||
|
Wed Nov 5 22:05:19 2003 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
* glib/gi18n-lib.h:
|
||||||
|
* glib/gi18n.h: New headers defining common gettext-support
|
||||||
|
macros.
|
||||||
|
|
||||||
|
* glib/Makefile.am (glibsubinclude_HEADERS): Add gi18n.h
|
||||||
|
and gi18n-lib.h.
|
||||||
|
|
||||||
|
* glib/gstrfuncs.h:
|
||||||
|
* glib/gstrfuncs.c (g_strip_context): Auxiliary function for
|
||||||
|
the implementation of Q_().
|
||||||
|
|
||||||
2003-11-05 Morten Welinder <terra@gnome.org>
|
2003-11-05 Morten Welinder <terra@gnome.org>
|
||||||
|
|
||||||
* glib/garray.c (g_ptr_array_remove_range): Make it compile.
|
* glib/garray.c (g_ptr_array_remove_range): Make it compile.
|
||||||
|
@ -123,6 +123,8 @@ glibsubinclude_HEADERS = \
|
|||||||
gfileutils.h \
|
gfileutils.h \
|
||||||
ghash.h \
|
ghash.h \
|
||||||
ghook.h \
|
ghook.h \
|
||||||
|
gi18n.h \
|
||||||
|
gi18n-lib.h \
|
||||||
giochannel.h \
|
giochannel.h \
|
||||||
glist.h \
|
glist.h \
|
||||||
gmacros.h \
|
gmacros.h \
|
||||||
|
55
glib/gi18n-lib.h
Normal file
55
glib/gi18n-lib.h
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
/* GLIB - Library of useful routines for C programming
|
||||||
|
* Copyright (C) 1995-1997, 2002 Peter Mattis, Red Hat, Inc.
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
* License as published by the Free Software Foundation; either
|
||||||
|
* version 2 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the
|
||||||
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
|
* Boston, MA 02111-1307, USA.
|
||||||
|
*/
|
||||||
|
#ifndef __G_I18N_LIB_H__
|
||||||
|
#define __G_I18N_LIB_H__
|
||||||
|
|
||||||
|
#include <glib/gstrfuncs.h>
|
||||||
|
|
||||||
|
#ifdef ENABLE_NLS
|
||||||
|
|
||||||
|
#include <libintl.h>
|
||||||
|
|
||||||
|
#ifndef GETTEXT_PACKAGE
|
||||||
|
#error You must define GETTEXT_PACKAGE before including gi18n-lib.h.
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define _(String) dgettext (GETTEXT_PACKAGE, String)
|
||||||
|
#define Q_(String) g_strip_context ((String), dgettext (GETTEXT_PACKAGE, String))
|
||||||
|
#ifdef gettext_noop
|
||||||
|
#define N_(String) gettext_noop (String)
|
||||||
|
#else
|
||||||
|
#define N_(String) (String)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#else /* NLS is disabled */
|
||||||
|
|
||||||
|
#define _(String) (String)
|
||||||
|
#define Q_(String) (String)
|
||||||
|
#define N_(String) (String)
|
||||||
|
#define textdomain(String) (String)
|
||||||
|
#define gettext(String) (String)
|
||||||
|
#define dgettext(Domain,String) (String)
|
||||||
|
#define dcgettext(Domain,String,Type) (String)
|
||||||
|
#define bindtextdomain(Domain,Directory) (Domain)
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* __G_I18N_LIB_H__ */
|
||||||
|
|
||||||
|
|
50
glib/gi18n.h
Normal file
50
glib/gi18n.h
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
/* GLIB - Library of useful routines for C programming
|
||||||
|
* Copyright (C) 1995-1997, 2002 Peter Mattis, Red Hat, Inc.
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
* License as published by the Free Software Foundation; either
|
||||||
|
* version 2 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the
|
||||||
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
|
* Boston, MA 02111-1307, USA.
|
||||||
|
*/
|
||||||
|
#ifndef __G_I18N_H__
|
||||||
|
#define __G_I18N_H__
|
||||||
|
|
||||||
|
#include <glib/gstrfuncs.h>
|
||||||
|
|
||||||
|
#ifdef ENABLE_NLS
|
||||||
|
|
||||||
|
#include <libintl.h>
|
||||||
|
#define _(String) gettext (String)
|
||||||
|
#define Q_(String) g_strip_context ((String), gettext (String))
|
||||||
|
#ifdef gettext_noop
|
||||||
|
#define N_(String) gettext_noop (String)
|
||||||
|
#else
|
||||||
|
#define N_(String) (String)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#else /* NLS is disabled */
|
||||||
|
|
||||||
|
#define _(String) (String)
|
||||||
|
#define Q_(String) (String)
|
||||||
|
#define N_(String) (String)
|
||||||
|
#define textdomain(String) (String)
|
||||||
|
#define gettext(String) (String)
|
||||||
|
#define dgettext(Domain,String) (String)
|
||||||
|
#define dcgettext(Domain,String,Type) (String)
|
||||||
|
#define bindtextdomain(Domain,Directory) (Domain)
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* __G_I18N_H__ */
|
||||||
|
|
||||||
|
|
@ -2545,3 +2545,30 @@ g_str_has_prefix (const gchar *str,
|
|||||||
return strncmp (str, prefix, prefix_len) == 0;
|
return strncmp (str, prefix, prefix_len) == 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_strip_context:
|
||||||
|
* @msgid: a string
|
||||||
|
* @msgval: another string
|
||||||
|
*
|
||||||
|
* An auxiliary function for gettext() support (see Q_()).
|
||||||
|
*
|
||||||
|
* Return value: @msgval, unless @msgval is identical to @msgid and contains
|
||||||
|
* a '|' character, in which case a pointer to the substring of msgid after
|
||||||
|
* the first '|' character is returned.
|
||||||
|
*
|
||||||
|
* Since: 2.4
|
||||||
|
**/
|
||||||
|
G_CONST_RETURN gchar *
|
||||||
|
g_strip_context (const gchar *msgid,
|
||||||
|
const gchar *msgval)
|
||||||
|
{
|
||||||
|
if (msgval == msgid)
|
||||||
|
{
|
||||||
|
const char *c = strchr (msgid, '|');
|
||||||
|
if (c != NULL)
|
||||||
|
return c + 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return msgval;
|
||||||
|
}
|
||||||
|
@ -231,6 +231,9 @@ gchar** g_strdupv (gchar **str_array);
|
|||||||
gchar* g_stpcpy (gchar *dest,
|
gchar* g_stpcpy (gchar *dest,
|
||||||
const char *src);
|
const char *src);
|
||||||
|
|
||||||
|
G_CONST_RETURN gchar *g_strip_context (const gchar *msgid,
|
||||||
|
const gchar *msgval);
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
||||||
#endif /* __G_STRFUNCS_H__ */
|
#endif /* __G_STRFUNCS_H__ */
|
||||||
|
Loading…
Reference in New Issue
Block a user