incredibly baroque system to make sure the translators don't have to

* src/core/main.c: incredibly baroque system to make sure
        the translators don't have to update the year number every year.


svn path=/trunk/; revision=4118
This commit is contained in:
Thomas James Alexander Thurman 2009-02-05 20:02:59 +00:00
parent 720a17acd7
commit 45cbaa2d13
2 changed files with 20 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2009-02-05 Thomas Thurman <tthurman@gnome.org>
* src/core/main.c: incredibly baroque system to make sure
the translators don't have to update the year number every year.
2009-02-05 Thomas Thurman <tthurman@gnome.org> 2009-02-05 Thomas Thurman <tthurman@gnome.org>
* src/ui/theme-parser.c: collapse several strings into one * src/ui/theme-parser.c: collapse several strings into one

View File

@ -54,6 +54,7 @@
#include "prefs.h" #include "prefs.h"
#include <glib-object.h> #include <glib-object.h>
#include <glib/gprintf.h>
#include <stdlib.h> #include <stdlib.h>
#include <sys/types.h> #include <sys/types.h>
@ -113,11 +114,23 @@ log_handler (const gchar *log_domain,
static void static void
version (void) version (void)
{ {
const int latest_year = 2009;
char yearbuffer[256];
GDate date;
/* this is all so the string to translate stays constant.
* see how much we love the translators.
*/
g_date_set_dmy (&date, 1, G_DATE_JANUARY, latest_year);
if (g_date_strftime (yearbuffer, sizeof (yearbuffer), "%Y", &date)==0)
/* didn't work? fall back to decimal representation */
g_sprintf (yearbuffer, "%d", latest_year);
g_print (_("metacity %s\n" g_print (_("metacity %s\n"
"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n" "Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
"This is free software; see the source for copying conditions.\n" "This is free software; see the source for copying conditions.\n"
"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"), "There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"),
VERSION); VERSION, yearbuffer);
exit (0); exit (0);
} }