aboutsummaryrefslogtreecommitdiff
path: root/locale
diff options
context:
space:
mode:
Diffstat (limited to 'locale')
-rw-r--r--locale/C-time.c56
-rw-r--r--locale/categories.def17
-rw-r--r--locale/langinfo.h60
-rw-r--r--locale/localeinfo.h7
4 files changed, 135 insertions, 5 deletions
diff --git a/locale/C-time.c b/locale/C-time.c
index 673d9bd478..6a846e4cae 100644
--- a/locale/C-time.c
+++ b/locale/C-time.c
@@ -1,6 +1,6 @@
-/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 1996, 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
- Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
+ Contributed by Ulrich Drepper <drepper@gnu.org>, 1995.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
@@ -27,7 +27,7 @@ const struct locale_data _nl_C_LC_TIME =
_nl_C_name,
NULL, 0, 0, /* no file mapped */
UNDELETABLE,
- 54,
+ 104,
{
{ string: "Sun" },
{ string: "Mon" },
@@ -83,5 +83,55 @@ const struct locale_data _nl_C_LC_TIME =
{ word: 0 },
{ string: "" },
{ string: "" },
+ { wstr: L"Sun" },
+ { wstr: L"Mon" },
+ { wstr: L"Tue" },
+ { wstr: L"Wed" },
+ { wstr: L"Thu" },
+ { wstr: L"Fri" },
+ { wstr: L"Sat" },
+ { wstr: L"Sunday" },
+ { wstr: L"Monday" },
+ { wstr: L"Tuesday" },
+ { wstr: L"Wednesday" },
+ { wstr: L"Thursday" },
+ { wstr: L"Friday" },
+ { wstr: L"Saturday" },
+ { wstr: L"Jan" },
+ { wstr: L"Feb" },
+ { wstr: L"Mar" },
+ { wstr: L"Apr" },
+ { wstr: L"May" },
+ { wstr: L"Jun" },
+ { wstr: L"Jul" },
+ { wstr: L"Aug" },
+ { wstr: L"Sep" },
+ { wstr: L"Oct" },
+ { wstr: L"Nov" },
+ { wstr: L"Dec" },
+ { wstr: L"January" },
+ { wstr: L"February" },
+ { wstr: L"March" },
+ { wstr: L"April" },
+ { wstr: L"May" },
+ { wstr: L"June" },
+ { wstr: L"July" },
+ { wstr: L"August" },
+ { wstr: L"September" },
+ { wstr: L"October" },
+ { wstr: L"November" },
+ { wstr: L"December" },
+ { wstr: L"AM" },
+ { wstr: L"PM" },
+ { wstr: L"%a %b %e %H:%M:%S %Y" },
+ { wstr: L"%m/%d/%y" },
+ { wstr: L"%H:%M:%S" },
+ { wstr: L"%I:%M:%S %p" },
+ { string: NULL },
+ { string: "" },
+ { string: "" },
+ { string: "" },
+ { string: "" },
+ { string: "" },
}
};
diff --git a/locale/categories.def b/locale/categories.def
index 098d712172..71cb86d9f3 100644
--- a/locale/categories.def
+++ b/locale/categories.def
@@ -1,5 +1,5 @@
/* Definition of all available locale categories and their items. -*- C -*-
- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+ Copyright (C) 1995, 1996, 1997, 1999 Free Software Foundation, Inc.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
@@ -147,6 +147,21 @@ DEFINE_CATEGORY
DEFINE_ELEMENT (_NL_TIME_ERA_NUM_ENTRIES, "time-era-num-entries", opt, word)
DEFINE_ELEMENT (_NL_TIME_ERA_ENTRIES_EB, "time-era-entries-eb", opt, string)
DEFINE_ELEMENT (_NL_TIME_ERA_ENTRIES_EL, "time-era-entries-el", opt, string)
+ DEFINE_ELEMENT (_NL_WABDAY_1, "wide-abday", std, stringarray, 7, 7)
+ DEFINE_ELEMENT (_NL_WDAY_1, "wide-day", std, stringarray, 7, 7)
+ DEFINE_ELEMENT (_NL_WABMON_1, "wide-abmon", std, stringarray, 12, 12)
+ DEFINE_ELEMENT (_NL_WMON_1, "wide-mon", std, stringarray, 12, 12)
+ DEFINE_ELEMENT (_NL_WAM_STR, "wide-am_pm", std, stringarray, 2, 2)
+ DEFINE_ELEMENT (_NL_WD_T_FMT, "wide-d_t_fmt", std, string)
+ DEFINE_ELEMENT (_NL_WD_FMT, "wide-d_fmt", std, string)
+ DEFINE_ELEMENT (_NL_WT_FMT, "wide-t_fmt", std, string)
+ DEFINE_ELEMENT (_NL_WT_FMT_AMPM, "wide-t_fmt_ampm", std, string)
+ DEFINE_ELEMENT (_NL_WERA, "wide-era", opt, stringarray)
+ DEFINE_ELEMENT (_NL_WERA_YEAR, "wide-era_year", opt, string)
+ DEFINE_ELEMENT (_NL_WERA_D_FMT, "wide-era_d_fmt", opt, string)
+ DEFINE_ELEMENT (_NL_WALT_DIGITS, "wide-alt_digits", opt, stringarray, 0, 100)
+ DEFINE_ELEMENT (_NL_WERA_D_T_FMT, "wide-era_d_t_fmt", opt, string)
+ DEFINE_ELEMENT (_NL_WERA_T_FMT, "wide-era_t_fmt", opt, string)
), _nl_postload_time, NULL, NULL, NULL)
diff --git a/locale/langinfo.h b/locale/langinfo.h
index a96e52f902..935a3818bf 100644
--- a/locale/langinfo.h
+++ b/locale/langinfo.h
@@ -161,6 +161,66 @@ enum
_NL_TIME_ERA_ENTRIES_EB, /* Structure with era entries in usable form.*/
_NL_TIME_ERA_ENTRIES_EL,
+ _NL_WABDAY_1, /* Sun */
+ _NL_WABDAY_2,
+ _NL_WABDAY_3,
+ _NL_WABDAY_4,
+ _NL_WABDAY_5,
+ _NL_WABDAY_6,
+ _NL_WABDAY_7,
+
+ /* Long-named days of the week. */
+ _NL_WDAY_1, /* Sunday */
+ _NL_WDAY_2, /* Monday */
+ _NL_WDAY_3, /* Tuesday */
+ _NL_WDAY_4, /* Wednesday */
+ _NL_WDAY_5, /* Thursday */
+ _NL_WDAY_6, /* Friday */
+ _NL_WDAY_7, /* Saturday */
+
+ /* Abbreviated month names. */
+ _NL_WABMON_1, /* Jan */
+ _NL_WABMON_2,
+ _NL_WABMON_3,
+ _NL_WABMON_4,
+ _NL_WABMON_5,
+ _NL_WABMON_6,
+ _NL_WABMON_7,
+ _NL_WABMON_8,
+ _NL_WABMON_9,
+ _NL_WABMON_10,
+ _NL_WABMON_11,
+ _NL_WABMON_12,
+
+ /* Long month names. */
+ _NL_WMON_1, /* January */
+ _NL_WMON_2,
+ _NL_WMON_3,
+ _NL_WMON_4,
+ _NL_WMON_5,
+ _NL_WMON_6,
+ _NL_WMON_7,
+ _NL_WMON_8,
+ _NL_WMON_9,
+ _NL_WMON_10,
+ _NL_WMON_11,
+ _NL_WMON_12,
+
+ _NL_WAM_STR, /* Ante meridian string. */
+ _NL_WPM_STR, /* Post meridian string. */
+
+ _NL_WD_T_FMT, /* Date and time format for strftime. */
+ _NL_WD_FMT, /* Date format for strftime. */
+ _NL_WT_FMT, /* Time format for strftime. */
+ _NL_WT_FMT_AMPM, /* 12-hour time format for strftime. */
+
+ _NL_WERA, /* Alternate era. */
+ _NL_WERA_YEAR, /* Year in alternate era format. */
+ _NL_WERA_D_FMT, /* Date in alternate era format. */
+ _NL_WALT_DIGITS, /* Alternate symbols for digits. */
+ _NL_WERA_D_T_FMT, /* Date and time in alternate era format. */
+ _NL_WERA_T_FMT, /* Time in alternate era format. */
+
_NL_NUM_LC_TIME, /* Number of indices in LC_TIME category. */
/* LC_COLLATE category: text sorting.
diff --git a/locale/localeinfo.h b/locale/localeinfo.h
index dddacfe28d..2c1ce65557 100644
--- a/locale/localeinfo.h
+++ b/locale/localeinfo.h
@@ -112,9 +112,14 @@ extern struct locale_data * *const _nl_current[LC_ALL + 1];
extern const char _nl_C_name[];
extern const char _nl_POSIX_name[];
+/* XXX Temporily until the locale data has everything. */
+extern struct locale_data _nl_C_LC_TIME;
+
/* Extract the current CATEGORY locale's string for ITEM. */
#define _NL_CURRENT(category, item) \
- (_nl_current_##category->values[_NL_ITEM_INDEX (item)].string)
+ ((item) < _NL_WABDAY_1 || (item) > _NL_WALT_DIGITS \
+ ? (_nl_current_##category->values[_NL_ITEM_INDEX (item)].string) \
+ : _nl_C_LC_TIME.values[_NL_ITEM_INDEX (item)].string)
/* Extract the current CATEGORY locale's word for ITEM. */
#define _NL_CURRENT_WORD(category, item) \