From owner-svn-src-all@freebsd.org Fri Aug 23 10:38:29 2019 Return-Path: Delivered-To: svn-src-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id B7E35C0BC5; Fri, 23 Aug 2019 10:38:29 +0000 (UTC) (envelope-from eugen@freebsd.org) Received: from hz.grosbein.net (hz.grosbein.net [IPv6:2a01:4f8:c2c:26d8::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hz.grosbein.net", Issuer "hz.grosbein.net" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 46FHtY2VTXz4bdd; Fri, 23 Aug 2019 10:38:28 +0000 (UTC) (envelope-from eugen@freebsd.org) Received: from eg.sd.rdtc.ru (eg.sd.rdtc.ru [IPv6:2a03:3100:c:13:0:0:0:5]) by hz.grosbein.net (8.15.2/8.15.2) with ESMTPS id x7NAcGGj089425 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 23 Aug 2019 10:38:19 GMT (envelope-from eugen@freebsd.org) X-Envelope-From: eugen@freebsd.org X-Envelope-To: cem@freebsd.org Received: from [10.58.0.4] ([10.58.0.4]) by eg.sd.rdtc.ru (8.15.2/8.15.2) with ESMTPS id x7NAc7Cg029537 (version=TLSv1.2 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Fri, 23 Aug 2019 17:38:07 +0700 (+07) (envelope-from eugen@freebsd.org) Subject: Re: svn commit: r351413 - head/usr.bin/last To: cem@freebsd.org References: <201908230125.x7N1PdTN070890@repo.freebsd.org> Cc: src-committers , svn-src-all , svn-src-head From: Eugene Grosbein Message-ID: <361cc2e7-fba5-d724-dcf0-3c4ae3a8ed6f@freebsd.org> Date: Fri, 23 Aug 2019 17:38:00 +0700 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-1.6 required=5.0 tests=BAYES_00,SPF_HELO_NONE, SPF_SOFTFAIL autolearn=no autolearn_force=no version=3.4.2 X-Spam-Report: * -2.3 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record * 0.7 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on hz.grosbein.net X-Rspamd-Queue-Id: 46FHtY2VTXz4bdd X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[freebsd.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.997,0]; NEURAL_HAM_SHORT(-0.93)[-0.930,0]; ASN(0.00)[asn:24940, ipnet:2a01:4f8::/29, country:DE]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Aug 2019 10:38:29 -0000 23.08.2019 10:01, Conrad Meyer wrote: > Should this be done more generally? Last time I looked it seemed like > libxo was completely locale-unaware and just assumed all input was > UTF-8. It might make more sense to have libxo take locale into > account when formatting %s strings. libxo is locale-aware but in its own quite peculiar way, as libxo(3) tells: > For strings, the 'h' and 'l' modifiers affect the interpretation of the > bytes pointed to argument. The default '%s' string is a 'char *' pointer > to a string encoded as UTF-8. Since UTF-8 is compatible with ASCII data, > a normal 7-bit ASCII string can be used. "%ls" expects a "wchar_t *" > pointer to a wide-character string, encoded as 32-bit Unicode values. > "%hs" expects a "char *" pointer to a multi-byte string encoded with the > current locale, as given by the LC_CTYPE, LANG, or LC_ALL environment > variables. I'd like it detect UTF-8 automatically instead with strcmp(nl_langinfo(CODESET), "UTF-8") but I'm not going to hack libxo code myself as I'm not familiar with its design.