-
+
curs_add_wch 3x
-
+
@@ -138,7 +139,24 @@
WACS_VLINE 0x2502 | x vertical line
The wide-character configuration of ncurses also defines symbols for
- double-lines:
+ thick lines (acsc "J" to "V"):
+
+ ACSUnicodeASCIIacscGlyph
+ NameDefaultDefaultcharName
+ -----------------------------------------------------------------------
+ WACS_T_BTEE 0x253b + V thick tee pointing up
+ WACS_T_HLINE 0x2501 - Q thick horizontal line
+ WACS_T_LLCORNER 0x2517 + M thick lower left corner
+ WACS_T_LRCORNER 0x251b + J thick lower right corner
+ WACS_T_LTEE 0x252b + T thick tee pointing right
+ WACS_T_PLUS 0x254b + N thick large plus
+ WACS_T_RTEE 0x2523 + U thick tee pointing left
+ WACS_T_TTEE 0x2533 + W thick tee pointing down
+ WACS_T_ULCORNER 0x250f + L thick upper left corner
+ WACS_T_URCORNER 0x2513 + K thick upper right corner
+ WACS_T_VLINE 0x2503 | X thick vertical line
+
+ and for double-lines (acsc "A" to "I"):
ACSUnicodeASCIIacscGlyphNameDefaultDefaultcharName
@@ -155,27 +173,38 @@
WACS_D_URCORNER 0x2557 + B double upper right corner
WACS_D_VLINE 0x2551 | Y double vertical line
- and for thick lines:
+ Unicode's descriptions for these characters differs slightly from
+ ncurses, by introducing the term "light" (along with less important
+ details). Here are its descriptions for the normal, thick, and double
+ horizontal lines:
- ACSUnicodeASCIIacscGlyph
- NameDefaultDefaultcharName
- -----------------------------------------------------------------------
- WACS_T_BTEE 0x253b + V thick tee pointing up
- WACS_T_HLINE 0x2501 - Q thick horizontal line
- WACS_T_LLCORNER 0x2517 + M thick lower left corner
- WACS_T_LRCORNER 0x251b + J thick lower right corner
- WACS_T_LTEE 0x252b + T thick tee pointing right
- WACS_T_PLUS 0x254b + N thick large plus
- WACS_T_RTEE 0x2523 + U thick tee pointing left
- WACS_T_TTEE 0x2533 + W thick tee pointing down
- WACS_T_ULCORNER 0x250f + L thick upper left corner
- WACS_T_URCORNER 0x2513 + K thick upper right corner
- WACS_T_VLINE 0x2503 | X thick vertical line
+ o U+2500 BOX DRAWINGS LIGHT HORIZONTAL
+
+ o U+2501 BOX DRAWINGS HEAVY HORIZONTAL
+
+ o U+2550 BOX DRAWINGS DOUBLE HORIZONTAL
All routines return the integer ERR upon failure and OK on success.
+ X/Open does not define any error conditions. This implementation
+ returns an error
+
+ o if the window pointer is null or
+
+ o if it is not possible to add a complete character in the window.
+
+ The latter may be due to different causes:
+
+ o If scrollok is not enabled, writing a character at the lower right
+ margin succeeds. However, an error is returned because it is not
+ possible to wrap to a new line
+
+ o If an error is detected when converting a multibyte character to a
+ sequence of bytes, or if it is not possible to add all of the
+ resulting bytes in the window, an error is returned.
+
Functions with a "mv" prefix first perform a cursor movement using
wmove, and return an error if the position is outside the window, or if
the window pointer is null.