On 11/20/21 11:01 AM, Tom Lane wrote:
=?UTF-8?B?0JTQvNC40YLRgNC40Lkg0JjQstCw0L3QvtCy?= <firstdismay@xxxxxxxxx> writes:
I can't figure out the problem. Digit group group separator causes an
insertion error, what should I do?
lc_monetary = 'ru_RU.UTF-8'
On my RHEL8 (moderately recent glibc) platform, that locale's
mon_thousands_sep symbol is not a plain space but "\342\200\257":
p *lconvert
$3 = {decimal_point = 0x23ef120 ".", thousands_sep = 0x23ef140 "",
grouping = 0x23ef160 "", int_curr_symbol = 0x23ef1a0 "RUB ",
currency_symbol = 0x23ef1c0 "\342\202\275",
mon_decimal_point = 0x23ef1e0 ",",
mon_thousands_sep = 0x23ef200 "\342\200\257",
mon_grouping = 0x23ef220 "\003\003", positive_sign = 0x23ef240 "",
negative_sign = 0x23ef260 "-", int_frac_digits = 2 '\002',
frac_digits = 2 '\002', p_cs_precedes = 0 '\000', p_sep_by_space = 1 '\001',
n_cs_precedes = 0 '\000', n_sep_by_space = 1 '\001', p_sign_posn = 1 '\001',
n_sign_posn = 1 '\001', int_p_cs_precedes = 0 '\000',
int_p_sep_by_space = 0 '\000', int_n_cs_precedes = 0 '\000',
int_n_sep_by_space = 0 '\000', int_p_sign_posn = 0 '\000',
int_n_sign_posn = 0 '\000'}
A quick lookup later, that's U+202F or "narrow no-break space".
cash_in is picky about this, and won't take plain ASCII space as
a substitute. Not sure if it should.
It probably should, based on the Robustness Principle: "be conservative in
what you send, be liberal in what you accept".
--
Angular momentum makes the world go 'round.