From 5baaec22352873767dbf253dc6deec4f55049886 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Wed, 26 Oct 2022 23:57:45 -0400 Subject: Wide character support -- from hell --- sayeth.h | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'sayeth.h') diff --git a/sayeth.h b/sayeth.h index dea73c9..c3d84c7 100644 --- a/sayeth.h +++ b/sayeth.h @@ -12,9 +12,9 @@ #define DRIVERS_ALLOC_DEFAULT 128 struct Driver { - char *name; // Driver name (passed to '-d' argument) + wchar_t *name; // Driver name (passed to '-d' argument) size_t box_indent; // Shift box n columns to the right - char *box_elements; // Border characters + wchar_t *box_elements; // Border characters // top left, top, top right, sides, bottom left, bottom, bottom right // e.g. "/-\|\-/' /* @@ -25,7 +25,7 @@ struct Driver { size_t caret_pos; // Above or below the box size_t caret_indent; // Shift caret n columns to the right size_t caret_attached; // Inject a new line *after* art data, or not? - char *caret; // Caret characters + wchar_t *caret; // Caret characters // e.g. "\n \ |\n \ |\n \|\n" /* * \ | @@ -33,24 +33,24 @@ struct Driver { * \| */ size_t data_indent; // Shift art data n columns to the right - char *data; // Art data (up to size: DATA_BUFSIZ - 1) + wchar_t *data; // Art data (up to size: DATA_BUFSIZ - 1) }; -void repchar(char ch, size_t limit); -size_t get_longest_line(char *s); +void repchar(wchar_t ch, size_t limit); +size_t get_longest_line(wchar_t *s); struct Driver *driver_load(char *filename); -struct Driver *driver_lookup(char *name); +struct Driver *driver_lookup(wchar_t *name); int driver_register(struct Driver *driver); -void driver_run(struct Driver *driver, char *input); +void driver_run(struct Driver *driver, wchar_t *input); void drivers_free(void); void box_draw_top(size_t y, size_t longest); void box_draw_bottom(size_t y, size_t longest); void box_draw_next_line(size_t y); void box_draw_end_line(size_t longest, size_t len); -int box_printf(const char *fmt, ...); +int box_printf(const wchar_t *fmt, ...); -void caret_draw(char *data, size_t indent, size_t attached); -void data_draw(char *data, size_t indent); +void caret_draw(wchar_t *data, size_t indent, size_t attached); +void data_draw(wchar_t *data, size_t indent); #endif //SAYETH_SAYETH_H -- cgit