Hash :
c36a0f21
Author :
Date :
2024-10-27T17:01:29
doc: Add a module index. * doc/Makefile (undocumented-modules.texi): New rule. (%.info, %.html, %.dvi, %.pdf): Depend on undocumented-modules.texi. (mostlyclean): Remove also *.m and *.tmp. (force): New rule. * doc/*.texi: Add module index entries. * doc/*/*.texi: Likewise.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
@node wcwidth
@subsection @code{wcwidth}
@findex wcwidth
POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9799919799/functions/wcwidth.html}
Gnulib module: wcwidth
@mindex wcwidth
Portability problems fixed by Gnulib:
@itemize
@item
This function is missing on some platforms:
Minix 3.1.8, mingw, MSVC 14.
@item
This function is not declared (without @code{-D_GNU_SOURCE}) on some platforms:
glibc 2.8.
@item
This function handles combining characters in UTF-8 locales incorrectly on some
platforms:
macOS 14, NetBSD 9.3, OpenBSD 5.8, MidnightBSD 1.1.
@item
This function returns 2 for characters with ambiguous east asian width, even in
Western locales, on some platforms:
Solaris 11.4.
@end itemize
Portability problems not fixed by Gnulib:
@itemize
@item
On Windows and 32-bit AIX platforms, @code{wchar_t} is a 16-bit type and therefore cannot
accommodate all Unicode characters.
@mindex c32width
However, the Gnulib function @code{c32width}, provided by Gnulib module
@code{c32width}, operates on 32-bit wide characters and therefore does not
have this limitation.
@item
This function treats zero-width spaces like control characters on some
platforms:
AIX 7.2.
@end itemize