1*2fe8fb19SBen Gras.\" $NetBSD: wcswidth.3,v 1.2 2006/10/16 08:48:45 wiz Exp $ 2*2fe8fb19SBen Gras.\" FreeBSD: src/lib/libc/string/wcswidth.3,v 1.2 2002/12/09 14:04:05 ru Exp 3*2fe8fb19SBen Gras.\" 4*2fe8fb19SBen Gras.\" Copyright (c) 2002 Tim J. Robbins 5*2fe8fb19SBen Gras.\" All rights reserved. 6*2fe8fb19SBen Gras.\" 7*2fe8fb19SBen Gras.\" Redistribution and use in source and binary forms, with or without 8*2fe8fb19SBen Gras.\" modification, are permitted provided that the following conditions 9*2fe8fb19SBen Gras.\" are met: 10*2fe8fb19SBen Gras.\" 1. Redistributions of source code must retain the above copyright 11*2fe8fb19SBen Gras.\" notice, this list of conditions and the following disclaimer. 12*2fe8fb19SBen Gras.\" 2. Redistributions in binary form must reproduce the above copyright 13*2fe8fb19SBen Gras.\" notice, this list of conditions and the following disclaimer in the 14*2fe8fb19SBen Gras.\" documentation and/or other materials provided with the distribution. 15*2fe8fb19SBen Gras.\" 16*2fe8fb19SBen Gras.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 17*2fe8fb19SBen Gras.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18*2fe8fb19SBen Gras.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19*2fe8fb19SBen Gras.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 20*2fe8fb19SBen Gras.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21*2fe8fb19SBen Gras.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22*2fe8fb19SBen Gras.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23*2fe8fb19SBen Gras.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24*2fe8fb19SBen Gras.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25*2fe8fb19SBen Gras.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26*2fe8fb19SBen Gras.\" SUCH DAMAGE. 27*2fe8fb19SBen Gras.\" 28*2fe8fb19SBen Gras.\" 29*2fe8fb19SBen Gras.Dd August 20, 2002 30*2fe8fb19SBen Gras.Dt WCSWIDTH 3 31*2fe8fb19SBen Gras.Os 32*2fe8fb19SBen Gras.Sh NAME 33*2fe8fb19SBen Gras.Nm wcswidth 34*2fe8fb19SBen Gras.Nd "number of column positions in wide-character string" 35*2fe8fb19SBen Gras.Sh LIBRARY 36*2fe8fb19SBen Gras.Lb libc 37*2fe8fb19SBen Gras.Sh SYNOPSIS 38*2fe8fb19SBen Gras.In wchar.h 39*2fe8fb19SBen Gras.Ft int 40*2fe8fb19SBen Gras.Fn wcswidth "const wchar_t *pwcs" "size_t n" 41*2fe8fb19SBen Gras.Sh DESCRIPTION 42*2fe8fb19SBen GrasThe 43*2fe8fb19SBen Gras.Fn wcswidth 44*2fe8fb19SBen Grasfunction determines the number of column positions required for the first 45*2fe8fb19SBen Gras.Fa n 46*2fe8fb19SBen Grascharacters of 47*2fe8fb19SBen Gras.Fa pwcs , 48*2fe8fb19SBen Grasor until a nul wide character (L'\e0') is encountered. 49*2fe8fb19SBen Gras.Sh RETURN VALUES 50*2fe8fb19SBen GrasThe 51*2fe8fb19SBen Gras.Fn wcswidth 52*2fe8fb19SBen Grasfunction returns 0 if 53*2fe8fb19SBen Gras.Fa pwcs 54*2fe8fb19SBen Grasis an empty string (L""), 55*2fe8fb19SBen Gras\-1 if a non-printing wide character is encountered, 56*2fe8fb19SBen Grasotherwise it returns the number of column positions occupied. 57*2fe8fb19SBen Gras.Sh SEE ALSO 58*2fe8fb19SBen Gras.Xr iswprint 3 , 59*2fe8fb19SBen Gras.Xr wcwidth 3 60*2fe8fb19SBen Gras.Sh STANDARDS 61*2fe8fb19SBen GrasThe 62*2fe8fb19SBen Gras.Fn wcswidth 63*2fe8fb19SBen Grasfunction conforms to 64*2fe8fb19SBen Gras.St -p1003.1-2001 . 65