1 #include <wchar.h>
2 #include <wctype.h>
3 #include <ctype.h>
4 
5 /* Our definition of whitespace is the Unicode White_Space property,
6  * minus non-breaking spaces (U+00A0, U+2007, and U+202F) and script-
7  * specific characters with non-blank glyphs (U+1680 and U+180E). */
8 
iswspace(wint_t wc)9 int iswspace(wint_t wc)
10 {
11 	static const wchar_t spaces[] = {
12 		' ', '\t', '\n', '\r', 11, 12,  0x0085,
13 		0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005,
14 		0x2006, 0x2008, 0x2009, 0x200a,
15 		0x2028, 0x2029, 0x205f, 0x3000, 0
16 	};
17 	return wc && wcschr(spaces, wc);
18 }
19