62size_t u8_strpad(
char *out,
size_t outsize,
const char *in,
qbool leftalign,
size_t minwidth,
size_t maxwidth);
71#define u8_getchar(c,e) (utf8_enable.integer ? u8_getchar_utf8_enabled(c,e) : (u8_quake2utf8map[(unsigned char)(*(e) = (c) + 1)[-1]]))
72#define u8_getchar_noendptr(c) (utf8_enable.integer ? u8_getchar_utf8_enabled(c,NULL) : (u8_quake2utf8map[(unsigned char)*(c)]))
73#define u8_getchar_check(c,e) ((e) ? u8_getchar((c),(e)) : u8_getchar_noendptr((c)))
74#define u8_getnchar(c,e,n) (utf8_enable.integer ? u8_getnchar_utf8_enabled(c,e,n) : ((n) <= 0 ? ((*(e) = c), 0) : (u8_quake2utf8map[(unsigned char)(*(e) = (c) + 1)[-1]])))
75#define u8_getnchar_noendptr(c,n) (utf8_enable.integer ? u8_getnchar_utf8_enabled(c,NULL,n) : ((n) <= 0 ? 0 : (u8_quake2utf8map[(unsigned char)*(c)])))
76#define u8_getnchar_check(c,e,n) ((e) ? u8_getchar((c),(e),(n)) : u8_getchar_noendptr((c),(n)))
94int towtf8(
const wchar* wstr,
int wlen,
char* str,
int maxlen);
95int fromwtf8(
const char* str,
int len, wchar* wstr,
int maxwlen);
96int wstrlen(
const wchar* wstr);
100#define WIDE(str, wstr) fromwtf8(str, strlen(str), wstr, strlen(str))
102#define NARROW(wstr, str) towtf8(wstr, wstrlen(wstr), str, wstrlen(wstr) * (WTF8U32 ? 4 : 3))
106#define WIDE(str, wstr) ;
107#define NARROW(wstr, str) ;
Uchar u8_quake2utf8map[256]
Uchar u8_tolower(Uchar ch)
size_t u8_strpad(char *out, size_t outsize, const char *in, qbool leftalign, size_t minwidth, size_t maxwidth)
Pads a utf-8 string.
size_t u8_strpad_colorcodes(char *out, size_t outsize, const char *in, qbool leftalign, size_t minwidth, size_t maxwidth)
size_t u8_COM_StringLengthNoColors(const char *s, size_t size_s, qbool *valid)
size_t u8_wcstombs(char *, const Uchar *, size_t)
Convert a wide-character string to a utf-8 multibyte string.
Uchar u8_toupper(Uchar ch)
int u8_fromchar(Uchar, char *, size_t)
Encode a wide-character into utf-8.
size_t u8_bytelen(const char *, size_t)
Get the number of bytes used in a string to represent an amount of characters.
Uchar u8_getchar_utf8_enabled(const char *, const char **)
Fetch a character from an utf-8 encoded string.
size_t u8_prevbyte(const char *, size_t)
Get the byte offset of the previous byte.
size_t u8_strlen(const char *)
Get the number of characters in an UTF-8 string.
int u8_byteofs(const char *, size_t, size_t *)
Get the byte-index for a character-index.
size_t u8_mbstowcs(Uchar *, const char *, size_t)
Convert a utf-8 multibyte string to a wide character string.
Uchar u8_getnchar_utf8_enabled(const char *, const char **, size_t)
Fetch a character from an utf-8 encoded string.
int u8_charidx(const char *, size_t, size_t *)
Get the char-index for a byte-index.
struct cvar_s utf8_enable
char * u8_encodech(Uchar ch, size_t *, char *buf16)
uses u8_fromchar on a static buffer
size_t u8_strnlen(const char *, size_t)
Get the number of characters in a part of an UTF-8 string.