From 26aeddd4904ec6d21c80159734516a1690c189e9 Mon Sep 17 00:00:00 2001 From: Lars Henriksen Date: Sun, 27 Aug 2017 10:23:36 +0200 Subject: Use nl_langinfo() for month and day names Use the locale setting to fetch the month names and abbreviated day names. Signed-off-by: Lars Henriksen Signed-off-by: Lukas Fleischer --- src/calcurse.h | 3 --- src/ui-calendar.c | 12 +++++++----- src/vars.c | 28 +--------------------------- 3 files changed, 8 insertions(+), 35 deletions(-) diff --git a/src/calcurse.h b/src/calcurse.h index 392e93e..7abeb03 100644 --- a/src/calcurse.h +++ b/src/calcurse.h @@ -742,7 +742,6 @@ long ui_calendar_end_of_year(void); const char *ui_calendar_get_pom(time_t); /* config.c */ - void config_load(void); unsigned config_save(void); @@ -1176,8 +1175,6 @@ extern int quiet; extern int want_reload; extern const char *datefmt_str[DATE_FORMATS]; extern int days[12]; -extern const char *monthnames[12]; -extern const char *daynames[8]; extern char path_dir[BUFSIZ]; extern char path_todo[BUFSIZ]; extern char path_apts[BUFSIZ]; diff --git a/src/ui-calendar.c b/src/ui-calendar.c index 0fae5a3..c412dc0 100644 --- a/src/ui-calendar.c +++ b/src/ui-calendar.c @@ -40,6 +40,7 @@ #include #include #include +#include #include "calcurse.h" @@ -379,6 +380,7 @@ draw_monthly_view(struct scrollwin *sw, struct date *current_day, int w, ofs_x, ofs_y; int item_this_day = 0; struct tm t = get_first_weekday(sunday_first); + char *cp; mo = slctd_day.mm; yr = slctd_day.yyyy; @@ -411,9 +413,9 @@ draw_monthly_view(struct scrollwin *sw, struct date *current_day, werase(sw_cal.inner); } custom_apply_attr(sw->inner, ATTR_HIGHEST); - mvwprintw(sw->inner, ofs_y, - (w - (strlen(_(monthnames[mo - 1])) + 5)) / 2, - "%s %d", _(monthnames[mo - 1]), slctd_day.yyyy); + cp = nl_langinfo(MON_1 + mo - 1); + mvwprintw(sw->inner, ofs_y, (w - (strlen(cp) + 5)) / 2, + "%s %d", cp, slctd_day.yyyy); custom_remove_attr(sw->inner, ATTR_HIGHEST); ++ofs_y; @@ -421,7 +423,7 @@ draw_monthly_view(struct scrollwin *sw, struct date *current_day, custom_apply_attr(sw->inner, ATTR_HIGHEST); for (j = 0; j < WEEKINDAYS; j++) { mvwaddstr(sw->inner, ofs_y, ofs_x + 4 * j, - _(daynames[1 + j - sunday_first])); + nl_langinfo(ABDAY_1 + (1 + j - sunday_first) % WEEKINDAYS)); } custom_remove_attr(sw->inner, ATTR_HIGHEST); WINS_CALENDAR_UNLOCK; @@ -507,7 +509,7 @@ draw_weekly_view(struct scrollwin *sw, struct date *current_day, /* print the day names, with regards to the first day of the week */ custom_apply_attr(sw->inner, ATTR_HIGHEST); mvwaddstr(sw->inner, OFFY, OFFX + 4 * j, - _(daynames[1 + j - sunday_first])); + nl_langinfo(ABDAY_1 + (1 + j - sunday_first) % WEEKINDAYS)); custom_remove_attr(sw->inner, ATTR_HIGHEST); /* Check if the day to be printed has an item or not. */ diff --git a/src/vars.c b/src/vars.c index d236805..26b829c 100644 --- a/src/vars.c +++ b/src/vars.c @@ -71,36 +71,10 @@ int want_reload = 0; const char *datefmt_str[DATE_FORMATS]; /* - * variables to store calendar names + * variable to store month lengths */ int days[12] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; -const char *monthnames[12] = { - N_("January"), - N_("February"), - N_("March"), - N_("April"), - N_("May"), - N_("June"), - N_("July"), - N_("August"), - N_("September"), - N_("October"), - N_("November"), - N_("December") -}; - -const char *daynames[8] = { - N_("Sun"), - N_("Mon"), - N_("Tue"), - N_("Wed"), - N_("Thu"), - N_("Fri"), - N_("Sat"), - N_("Sun") -}; - /* * variables to store data path names, which are initialized in * io_init() -- cgit v1.2.3-54-g00ecf