edo

Experimental text editor.
Log | Files | Refs | LICENSE

utf8.h (490B)


      1 #include <stdlib.h>
      2 
      3 /* Regional Indicator Symbol */
      4 #define IS_RIS(c) ((c) >= 0x1F1E6 && (c) <= 0x1F1FF)
      5 
      6 /* Variation Selector */
      7 #define IS_VAR(c) ((c) >= 0xFE00 && (c) <= 0xFE0F)
      8 
      9 /* Color modifier */
     10 #define IS_CMOD(c) ((c) >= 0x1F3FB && (c) <= 0x1F3FF)
     11 
     12 /* Zero-Width Non-Joiner */
     13 #define ZWNJ "\xe2\x80\x8c"
     14 
     15 int utf8_len(char *buf, int len);
     16 size_t utf8_len_compat(char *buf, int len);
     17 int utf8_decode(char *buf, int len, unsigned int *cp);
     18 int utf8_is_combining(unsigned int cp);