Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 26 Jan 2009 14:25:14 -0800
From:      Chuck Swiger <cswiger@mac.com>
To:        Svein Halvor Halvorsen <svein.h@lvor.halvorsen.cc>
Cc:        questions@freebsd.org
Subject:   Re: printf and utf-8
Message-ID:  <0B02CEE8-D38A-4D94-B76D-49721BDDACF0@mac.com>
In-Reply-To: <497E31EE.9010202@lvor.halvorsen.cc>
References:  <497E31EE.9010202@lvor.halvorsen.cc>

next in thread | previous in thread | raw e-mail | index | archive | help
On Jan 26, 2009, at 1:58 PM, Svein Halvor Halvorsen wrote:
> As far as I can see, printf is not calculating strings lengths  
> correctly when using utf-8 encoding. Either that, or I'm using byte  
> count, and can't find the character count :-/

printf(1) explicitly states that it works with ASCII and ANSI  
X3.159-1989 (``ANSI C89'') character escapes, and it also notes:

      Multibyte characters are not recognized in format strings (this  
is only a
      problem if `%' can appear inside a multibyte character).

Some platforms have a printf_l(3) which is locale/xlocale-aware, but  
there doesn't seem to be a corresponding CLI utility which understands  
Unicode/UTF8/widechars.

Regards,
-- 
-Chuck




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0B02CEE8-D38A-4D94-B76D-49721BDDACF0>