blob: 81f2c82fabcf63e3bb02c15beb4a0409afd9ab7b [file] [log] [blame]
Johannes Schindelin9e832662006-12-22 22:06:08 +01001#ifndef GIT_UTF8_H
2#define GIT_UTF8_H
3
Junio C Hamano396ccf12008-01-06 19:02:22 -08004typedef unsigned int ucs_char_t; /* assuming 32bit int */
5
Junio C Hamano44b25b82008-01-02 01:49:58 -08006int utf8_width(const char **start, size_t *remainder_p);
Geoffrey Thomas8a9391e2009-01-30 04:41:28 -05007int utf8_strwidth(const char *string);
Johannes Schindelin9e832662006-12-22 22:06:08 +01008int is_utf8(const char *text);
Junio C Hamano677cfed2006-12-30 12:20:43 -08009int is_encoding_utf8(const char *name);
10
Johannes Schindelina94410c2008-11-10 18:47:00 +010011int strbuf_add_wrapped_text(struct strbuf *buf,
12 const char *text, int indent, int indent2, int width);
Jeff King98acc832011-02-23 04:50:19 -050013int strbuf_add_wrapped_bytes(struct strbuf *buf, const char *data, int len,
14 int indent, int indent2, int width);
Johannes Schindelin9e832662006-12-22 22:06:08 +010015
Junio C Hamanob45974a2006-12-23 23:36:55 -080016#ifndef NO_ICONV
17char *reencode_string(const char *in, const char *out_encoding, const char *in_encoding);
18#else
19#define reencode_string(a,b,c) NULL
20#endif
21
Johannes Schindelin9e832662006-12-22 22:06:08 +010022#endif