ggiParseMode, ggiPrintMode, ggiSPrintMode, ggiFPrintMode - Parse and
print formatted strings specifying modes
int ggiParseMode(const char *s, ggi_mode *m);
#define ggiPrintMode(m) ggiFPrintMode(stdout,(m))
int ggiSPrintMode(char *s, const ggi_mode *m);
int ggiFPrintMode(FILE *s, const ggi_mode *m);
ggiParseMode parses a string into a ggi_mode(3).
The ggi*PrintMode functions print all the members of ggi_mode(3) in a
human-readable form. ggiSPrintMode outputs to a preallocated string
buffer, ggiFPrintMode outputs to a stdio FILE, and ggiPrintMode outputs
to standard output. These functions correspond to sprintf(3),
fprintf(3) and printf(3) respectively.
The format of the string used by these functions is exactly the same as
the one used in the GGI_DEFMODE environment variable described in
The string returned by both ggiSPrintMode and ggiFPrintMode does not
contain a trailing newline.
0 on success, i.e. the string was correct. However, errors
involving GT_*, position information, or mismatched brackets do
not make it fail; these errors are simply ignored.
<0 if there is text that can not be parsed. This text is printed
to stderr. All parameters parsed so far are written into m.
So m contains all parameters that have been successfully parsed. For
most applications there will be no need for testing ggiParseMode for