16d588d9fSSascha Wildner.\" Copyright (c) 2002 Tim J. Robbins 26d588d9fSSascha Wildner.\" All rights reserved. 36d588d9fSSascha Wildner.\" 46d588d9fSSascha Wildner.\" Redistribution and use in source and binary forms, with or without 56d588d9fSSascha Wildner.\" modification, are permitted provided that the following conditions 66d588d9fSSascha Wildner.\" are met: 76d588d9fSSascha Wildner.\" 1. Redistributions of source code must retain the above copyright 86d588d9fSSascha Wildner.\" notice, this list of conditions and the following disclaimer. 96d588d9fSSascha Wildner.\" 2. Redistributions in binary form must reproduce the above copyright 106d588d9fSSascha Wildner.\" notice, this list of conditions and the following disclaimer in the 116d588d9fSSascha Wildner.\" documentation and/or other materials provided with the distribution. 126d588d9fSSascha Wildner.\" 136d588d9fSSascha Wildner.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 146d588d9fSSascha Wildner.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 156d588d9fSSascha Wildner.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 166d588d9fSSascha Wildner.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 176d588d9fSSascha Wildner.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 186d588d9fSSascha Wildner.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 196d588d9fSSascha Wildner.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 206d588d9fSSascha Wildner.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 216d588d9fSSascha Wildner.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 226d588d9fSSascha Wildner.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 236d588d9fSSascha Wildner.\" SUCH DAMAGE. 246d588d9fSSascha Wildner.\" 250d5acd74SJohn Marino.\" $FreeBSD: head/lib/libc/string/wcswidth.3 107706 2002-12-09 14:04:05Z ru $ 266d588d9fSSascha Wildner.\" 27*7d3de48cSSascha Wildner.Dd December 27, 2013 286d588d9fSSascha Wildner.Dt WCSWIDTH 3 296d588d9fSSascha Wildner.Os 306d588d9fSSascha Wildner.Sh NAME 31*7d3de48cSSascha Wildner.Nm wcswidth , 32*7d3de48cSSascha Wildner.Nm wcswidth_l 336d588d9fSSascha Wildner.Nd "number of column positions in wide-character string" 346d588d9fSSascha Wildner.Sh LIBRARY 356d588d9fSSascha Wildner.Lb libc 366d588d9fSSascha Wildner.Sh SYNOPSIS 376d588d9fSSascha Wildner.In wchar.h 386d588d9fSSascha Wildner.Ft int 396d588d9fSSascha Wildner.Fn wcswidth "const wchar_t *pwcs" "size_t n" 40*7d3de48cSSascha Wildner.In xlocale.h 41*7d3de48cSSascha Wildner.Ft int 42*7d3de48cSSascha Wildner.Fn wcswidth_l "const wchar_t *pwcs" "size_t n" "locale_t locale" 436d588d9fSSascha Wildner.Sh DESCRIPTION 446d588d9fSSascha WildnerThe 456d588d9fSSascha Wildner.Fn wcswidth 46*7d3de48cSSascha Wildnerand 47*7d3de48cSSascha Wildner.Fn wcswidth_l 48*7d3de48cSSascha Wildnerfunctions determine the number of column positions required for the first 496d588d9fSSascha Wildner.Fa n 506d588d9fSSascha Wildnercharacters of 516d588d9fSSascha Wildner.Fa pwcs , 52716024cdSPeter Avalosor until a null wide character (L'\e0') is encountered. 53*7d3de48cSSascha Wildner.Pp 54*7d3de48cSSascha WildnerThe 55*7d3de48cSSascha Wildner.Fn wcswidth_l 56*7d3de48cSSascha Wildnerfunction takes an explicit 57*7d3de48cSSascha Wildner.Fa locale 58*7d3de48cSSascha Wildnerargument, whereas the 59*7d3de48cSSascha Wildner.Fn wcswidth 60*7d3de48cSSascha Wildnerfunction uses the current global or per-thread locale. 616d588d9fSSascha Wildner.Sh RETURN VALUES 626d588d9fSSascha WildnerThe 636d588d9fSSascha Wildner.Fn wcswidth 64*7d3de48cSSascha Wildnerand 65*7d3de48cSSascha Wildner.Fn wcswidth_l 66*7d3de48cSSascha Wildnerfunctions return 0 if 676d588d9fSSascha Wildner.Fa pwcs 686d588d9fSSascha Wildneris an empty string (L""), 696d588d9fSSascha Wildner\-1 if a non-printing wide character is encountered, 70*7d3de48cSSascha Wildnerotherwise they return the number of column positions occupied. 716d588d9fSSascha Wildner.Sh SEE ALSO 726d588d9fSSascha Wildner.Xr iswprint 3 , 73*7d3de48cSSascha Wildner.Xr wcwidth 3 , 74*7d3de48cSSascha Wildner.Xr xlocale 3 756d588d9fSSascha Wildner.Sh STANDARDS 766d588d9fSSascha WildnerThe 776d588d9fSSascha Wildner.Fn wcswidth 786d588d9fSSascha Wildnerfunction conforms to 796d588d9fSSascha Wildner.St -p1003.1-2001 . 80