diff options
author | phantom <phantom@FreeBSD.org> | 2003-06-26 09:07:53 +0000 |
---|---|---|
committer | phantom <phantom@FreeBSD.org> | 2003-06-26 09:07:53 +0000 |
commit | 1cee3fa00127dc5a0eac1e6b6d9f489d1324437f (patch) | |
tree | d6a23f119db7bdfc9bbe2b734cda8e043f03e373 /usr.bin/locale | |
parent | d050b806fcadb6d9f5de1d6b1b44e7542f66046a (diff) | |
download | FreeBSD-src-1cee3fa00127dc5a0eac1e6b6d9f489d1324437f.zip FreeBSD-src-1cee3fa00127dc5a0eac1e6b6d9f489d1324437f.tar.gz |
implement LC_MONETARY's int_* keywords
Diffstat (limited to 'usr.bin/locale')
-rw-r--r-- | usr.bin/locale/locale.c | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/usr.bin/locale/locale.c b/usr.bin/locale/locale.c index c7ebdeb..b763034 100644 --- a/usr.bin/locale/locale.c +++ b/usr.bin/locale/locale.c @@ -27,8 +27,8 @@ */ /* - * XXX: implement missing int_* (LC_MONETARY) (require libc modification) and - * era_* (LC_TIME) keywords (require libc & nl_langinfo(3) extensions) + * XXX: implement missing era_* (LC_TIME) keywords (require libc & + * nl_langinfo(3) extensions) * * XXX: correctly handle reserved 'charmap' keyword and '-m' option (require * localedef(1) implementation). Currently it's handled via @@ -98,6 +98,12 @@ struct _lcinfo { #define KW_N_SEP_BY_SPACE (KW_ZERO+14) #define KW_P_SIGN_POSN (KW_ZERO+15) #define KW_N_SIGN_POSN (KW_ZERO+16) +#define KW_INT_P_CS_PRECEDES (KW_ZERO+17) +#define KW_INT_P_SEP_BY_SPACE (KW_ZERO+18) +#define KW_INT_N_CS_PRECEDES (KW_ZERO+19) +#define KW_INT_N_SEP_BY_SPACE (KW_ZERO+20) +#define KW_INT_P_SIGN_POSN (KW_ZERO+21) +#define KW_INT_N_SIGN_POSN (KW_ZERO+22) struct _kwinfo { const char *name; @@ -132,6 +138,12 @@ struct _kwinfo { { "n_sep_by_space", 0, LC_MONETARY, KW_N_SEP_BY_SPACE, "" }, { "p_sign_posn", 0, LC_MONETARY, KW_P_SIGN_POSN, "" }, { "n_sign_posn", 0, LC_MONETARY, KW_N_SIGN_POSN, "" }, + { "int_p_cs_precedes", 0, LC_MONETARY, KW_INT_P_CS_PRECEDES, "" }, + { "int_p_sep_by_space", 0, LC_MONETARY, KW_INT_P_SEP_BY_SPACE, "" }, + { "int_n_cs_precedes", 0, LC_MONETARY, KW_INT_N_CS_PRECEDES, "" }, + { "int_n_sep_by_space", 0, LC_MONETARY, KW_INT_N_SEP_BY_SPACE, "" }, + { "int_p_sign_posn", 0, LC_MONETARY, KW_INT_P_SIGN_POSN, "" }, + { "int_n_sign_posn", 0, LC_MONETARY, KW_INT_N_SIGN_POSN, "" }, { "d_t_fmt", 1, LC_TIME, D_T_FMT, "" }, { "d_fmt", 1, LC_TIME, D_FMT, "" }, @@ -465,6 +477,24 @@ kwval_lconv(int id) case KW_N_SIGN_POSN: rval = &(lc->n_sign_posn); break; + case KW_INT_P_CS_PRECEDES: + rval = &(lc->int_p_cs_precedes); + break; + case KW_INT_P_SEP_BY_SPACE: + rval = &(lc->int_p_sep_by_space); + break; + case KW_INT_N_CS_PRECEDES: + rval = &(lc->int_n_cs_precedes); + break; + case KW_INT_N_SEP_BY_SPACE: + rval = &(lc->int_n_sep_by_space); + break; + case KW_INT_P_SIGN_POSN: + rval = &(lc->int_p_sign_posn); + break; + case KW_INT_N_SIGN_POSN: + rval = &(lc->int_n_sign_posn); + break; default: break; } |