]> granicus.if.org Git - neomutt/commitdiff
clang-format: adjust layout of structs
authorRichard Russon <rich@flatcap.org>
Sat, 22 Apr 2017 16:34:56 +0000 (17:34 +0100)
committerRichard Russon <rich@flatcap.org>
Sat, 29 Apr 2017 13:35:10 +0000 (14:35 +0100)
Some structs are packed by clang-format, leaving the closing brace
n the same line as the data:

char *known[] = {"color-xterm", "cygwin", "eterm",  "kterm", "nxterm",
                 "putty",       "rxvt",   "screen", "xterm", NULL};

By inserting a comma after the last data item (allowed by C99),
clang-format produces a more pleasant-looking layout:

char *known[] = {
    "color-xterm", "cygwin", "eterm",  "kterm", "nxterm",
    "putty",       "rxvt",   "screen", "xterm", NULL,
};

16 files changed:
base64.c
crypt_gpgme.c
curs_main.c
date.c
globals.h
hcache.c
hdrline.c
imap/auth.c
imap/command.c
imap/utf7.c
mutt_lua.c
mutt_ssl.c
parse.c
pop_auth.c
rfc822.c
wcwidth.c

index 1939ccba0ca5bcf1ba02ed0e3e7b285edce4886c..844feae284685d1230426f11c31eff0de9e81002 100644 (file)
--- a/base64.c
+++ b/base64.c
@@ -45,7 +45,8 @@ static const char B64Chars[64] = {
     'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
     'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
     'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
-    '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/'};
+    '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/',
+};
 
 /**
  * mutt_to_base64 - convert raw bytes to null-terminated base64 string.
index c0bd8379bd50651fd3a9517928f477f320260ea0..1f9843d126f47300437d2776ef846391ec9514b6 100644 (file)
@@ -3065,8 +3065,9 @@ static int print_dn_part(FILE *fp, struct dn_array_s *dn, const char *key)
 /* Print all parts of a DN in a standard sequence. */
 static void print_dn_parts(FILE *fp, struct dn_array_s *dn)
 {
-  static const char *const stdpart[] = {"CN", "OU", "O", "STREET",
-                                        "L",  "ST", "C", NULL};
+  static const char *const stdpart[] = {
+      "CN", "OU", "O", "STREET", "L", "ST", "C", NULL,
+  };
   int any = 0, any2 = 0, i;
 
   for (i = 0; stdpart[i]; i++)
index ee9bdf45ce5391a77bf543ad5deaa099411dd1e5..e1ebd39175c38ea6a8888846448a3d4901c84345 100644 (file)
@@ -495,8 +495,10 @@ bool mutt_ts_capability(void)
   int tcapi;
 #endif
   char **termp;
-  char *known[] = {"color-xterm", "cygwin", "eterm",  "kterm", "nxterm",
-                   "putty",       "rxvt",   "screen", "xterm", NULL};
+  char *known[] = {
+      "color-xterm", "cygwin", "eterm",  "kterm", "nxterm",
+      "putty",       "rxvt",   "screen", "xterm", NULL,
+  };
 
   /* If tsl is set, then terminfo says that status lines work. */
   tcaps = tigetstr("tsl");
@@ -1660,7 +1662,7 @@ int mutt_index_menu(void)
         }
         break;
 
-/* --------------------------------------------------------------------
+        /* --------------------------------------------------------------------
          * The following operations can be performed inside of the pager.
          */
 
diff --git a/date.c b/date.c
index b1d730e1fcc43129a22de557ad853cf96a04c6e1..d46c4f4402c70470eb6575811d7aae38c1168dcc 100644 (file)
--- a/date.c
+++ b/date.c
@@ -70,8 +70,9 @@ time_t mutt_mktime(struct tm *t, int local)
 {
   time_t g;
 
-  static const int AccumDaysPerMonth[12] = {0,   31,  59,  90,  120, 151,
-                                            181, 212, 243, 273, 304, 334};
+  static const int AccumDaysPerMonth[12] = {
+      0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334,
+  };
 
   /* Prevent an integer overflow.
    * The time_t cast is an attempt to silence a clang range warning. */
@@ -123,8 +124,9 @@ static int is_leap_year_feb(struct tm *tm)
 
 void mutt_normalize_time(struct tm *tm)
 {
-  static const char DaysPerMonth[12] = {31, 28, 31, 30, 31, 30,
-                                        31, 31, 30, 31, 30, 31};
+  static const char DaysPerMonth[12] = {
+      31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31,
+  };
   int nLeap;
 
   while (tm->tm_sec < 0)
index 9a5d7e9ee5a57cc0ecd46b4f7499d37bce1ee32a..8c1f7d7e58482a6133cb993c69aea24b2e866697 100644 (file)
--- a/globals.h
+++ b/globals.h
@@ -331,17 +331,22 @@ WHERE char *NotmuchQueryWindowCurrentSearch;
 #endif
 
 #ifdef MAIN_C
-const char *const Weekdays[] = {"Sun", "Mon", "Tue", "Wed",
-                                "Thu", "Fri", "Sat"};
-const char *const Months[] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul",
-                              "Aug", "Sep", "Oct", "Nov", "Dec", "ERR"};
-
-const char *const BodyTypes[] = {"x-unknown", "audio",   "application",
-                                 "image",     "message", "model",
-                                 "multipart", "text",    "video"};
-const char *const BodyEncodings[] = {"x-unknown",        "7bit",   "8bit",
-                                     "quoted-printable", "base64", "binary",
-                                     "x-uuencoded"};
+const char *const Weekdays[] = {
+    "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat",
+};
+const char *const Months[] = {
+    "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul",
+    "Aug", "Sep", "Oct", "Nov", "Dec", "ERR",
+};
+
+const char *const BodyTypes[] = {
+    "x-unknown", "audio",     "application", "image", "message",
+    "model",     "multipart", "text",        "video",
+};
+const char *const BodyEncodings[] = {
+    "x-unknown", "7bit",   "8bit",        "quoted-printable",
+    "base64",    "binary", "x-uuencoded",
+};
 #else
 extern const char *const Weekdays[];
 extern const char *const Months[];
index 74013d9b4fb3fabd1b279d1502ebcadd3e6b3457..7e022d961feda935ba76d363db247122aff6e95c 100644 (file)
--- a/hcache.c
+++ b/hcache.c
@@ -81,7 +81,8 @@ const hcache_ops_t *hcache_ops[] = {
 #ifdef HAVE_LMDB
     &hcache_lmdb_ops,
 #endif
-    NULL};
+    NULL,
+};
 
 static const hcache_ops_t *hcache_get_backend_ops(const char *backend)
 {
index f297e36e7a9d58cd775ff51c7cd2a583717fdedb..2c74d6d1a6d8e46b3d0fc109b57cfa8ac922e56b 100644 (file)
--- a/hdrline.c
+++ b/hdrline.c
@@ -188,15 +188,16 @@ static const char *make_from_prefix(enum FieldType disp)
 {
   /* need 2 bytes at the end, one for the space, another for NUL */
   static char padded[8];
-  static const char *long_prefixes[DISP_NUM] = {[DISP_TO] = "To ", [DISP_CC] = "Cc ",
-                                                [DISP_BCC] = "Bcc ", [DISP_FROM] = ""};
+  static const char *long_prefixes[DISP_NUM] = {
+          [DISP_TO] = "To ", [DISP_CC] = "Cc ", [DISP_BCC] = "Bcc ", [DISP_FROM] = "",
+  };
 
   if (!Fromchars || !Fromchars->chars || (Fromchars->len == 0))
     return long_prefixes[disp];
 
   char *pchar = get_nth_wchar(Fromchars, disp);
   if (mutt_strlen(pchar) == 0)
-      return "";
+    return "";
 
   snprintf(padded, sizeof(padded), "%s ", pchar);
   return padded;
index 6c0cde9d12e75d44541f67cdac7147ac6849e72c..2a561f18e54f1d224916946a8653e9ad7adf820b 100644 (file)
@@ -40,7 +40,8 @@ static const imap_auth_t imap_authenticators[] = {
 #endif
     {imap_auth_login, "login"},
 
-    {NULL, NULL}};
+    {NULL, NULL},
+};
 
 /* imap_authenticate: Attempt to authenticate using either user-specified
  *   authentication method if specified, or any. */
index fefc32b99ea1fd4c73e232ef30cb9ffd5e519e45..77d39648a7dbea4520b89315e1a1ee621d973931 100644 (file)
 #define IMAP_CMD_BUFSIZE 512
 
 static const char *const Capabilities[] = {
-    "IMAP4",     "IMAP4rev1",     "STATUS",      "ACL",
-    "NAMESPACE", "AUTH=CRAM-MD5", "AUTH=GSSAPI", "AUTH=ANONYMOUS",
-    "STARTTLS",  "LOGINDISABLED", "IDLE",        "SASL-IR",
-    "ENABLE",
-
-    NULL};
+    "IMAP4",       "IMAP4rev1",
+    "STATUS",      "ACL",
+    "NAMESPACE",   "AUTH=CRAM-MD5",
+    "AUTH=GSSAPI", "AUTH=ANONYMOUS",
+    "STARTTLS",    "LOGINDISABLED",
+    "IDLE",        "SASL-IR",
+    "ENABLE",      NULL,
+};
 
 static bool cmd_queue_full(IMAP_DATA *idata)
 {
index cf2d25b7f7fb22418048761cd713b5a20be7e0bf..546932f96345d844e26d0d47219b7513bf76659c 100644 (file)
@@ -38,7 +38,8 @@ static const char B64Chars[64] = {
     'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
     'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
     'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
-    '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', ','};
+    '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', ',',
+};
 
 /*
  * Convert the data (u7,u7len) from RFC 2060's UTF-7 to UTF-8.
index 6df386817512900ee70f75f08ab8ec3f8c7b71d7..44a76c28ab88e53a7decc279f626a6dfb04ba36d 100644 (file)
@@ -320,7 +320,8 @@ static const luaL_Reg luaMuttDecl[] = {
     {"set", _lua_mutt_set},       {"get", _lua_mutt_get},
     {"call", _lua_mutt_call},     {"enter", _lua_mutt_enter},
     {"print", _lua_mutt_message}, {"message", _lua_mutt_message},
-    {"error", _lua_mutt_error},   {NULL, NULL}};
+    {"error", _lua_mutt_error},   {NULL, NULL},
+};
 
 #define lua_add_lib_member(LUA, TABLE, KEY, VALUE, DATATYPE_HANDLER)           \
   lua_pushstring(LUA, KEY);                                                    \
index 3e6f55e47b02869e5ff867cf3bb519f0f58e5d96..4fa709cc43732ba80dcf9aa09ec9e13f94d28ff1 100644 (file)
@@ -736,13 +736,15 @@ static int ssl_cache_trusted_cert(X509 *c)
 
 static int interactive_check_cert(X509 *cert, int idx, int len, SSL *ssl, int allow_always)
 {
-  static const int part[] = {NID_commonName,             /* CN */
-                             NID_pkcs9_emailAddress,     /* Email */
-                             NID_organizationName,       /* O */
-                             NID_organizationalUnitName, /* OU */
-                             NID_localityName,           /* L */
-                             NID_stateOrProvinceName,    /* ST */
-                             NID_countryName /* C */};
+  static const int part[] = {
+      NID_commonName,             /* CN */
+      NID_pkcs9_emailAddress,     /* Email */
+      NID_organizationName,       /* O */
+      NID_organizationalUnitName, /* OU */
+      NID_localityName,           /* L */
+      NID_stateOrProvinceName,    /* ST */
+      NID_countryName,            /* C */
+  };
   X509_NAME *x509_subject = NULL;
   X509_NAME *x509_issuer = NULL;
   char helpstr[LONG_STRING];
diff --git a/parse.c b/parse.c
index 34f95723d8b4f1f3e5aee8cc60e3a0915ec0d063..f128204bc6689be8c101b23095c093d6947e986f 100644 (file)
--- a/parse.c
+++ b/parse.c
@@ -682,19 +682,19 @@ static const struct tz_t
   unsigned char zminutes;
   bool zoccident; /* west of UTC? */
 } TimeZones[] = {
-    {"aat", 1, 0, true},           /* Atlantic Africa Time */
-    {"adt", 4, 0, false},          /* Arabia DST */
-    {"ast", 3, 0, false},          /* Arabia */
+    {"aat", 1, 0, true},             /* Atlantic Africa Time */
+    {"adt", 4, 0, false},            /* Arabia DST */
+    {"ast", 3, 0, false},            /* Arabia */
     /* { "ast",   4,  0, true  }, */ /* Atlantic */
-    {"bst", 1, 0, false},          /* British DST */
-    {"cat", 1, 0, false},          /* Central Africa */
+    {"bst", 1, 0, false},            /* British DST */
+    {"cat", 1, 0, false},            /* Central Africa */
     {"cdt", 5, 0, true},
     {"cest", 2, 0, false}, /* Central Europe DST */
     {"cet", 1, 0, false},  /* Central Europe */
     {"cst", 6, 0, true},
     /* { "cst",   8,  0, false }, */ /* China */
     /* { "cst",   9, 30, false }, */ /* Australian Central Standard Time */
-    {"eat", 3, 0, false},          /* East Africa */
+    {"eat", 3, 0, false},            /* East Africa */
     {"edt", 4, 0, true},
     {"eest", 3, 0, false}, /* Eastern Europe DST */
     {"eet", 2, 0, false},  /* Eastern Europe */
@@ -702,14 +702,14 @@ static const struct tz_t
     {"egt", 1, 0, true},   /* Eastern Greenland */
     {"est", 5, 0, true},
     {"gmt", 0, 0, false},
-    {"gst", 4, 0, false},          /* Presian Gulf */
-    {"hkt", 8, 0, false},          /* Hong Kong */
-    {"ict", 7, 0, false},          /* Indochina */
-    {"idt", 3, 0, false},          /* Israel DST */
-    {"ist", 2, 0, false},          /* Israel */
+    {"gst", 4, 0, false},            /* Presian Gulf */
+    {"hkt", 8, 0, false},            /* Hong Kong */
+    {"ict", 7, 0, false},            /* Indochina */
+    {"idt", 3, 0, false},            /* Israel DST */
+    {"ist", 2, 0, false},            /* Israel */
     /* { "ist",   5, 30, false }, */ /* India */
-    {"jst", 9, 0, false},          /* Japan */
-    {"kst", 9, 0, false},          /* Korea */
+    {"jst", 9, 0, false},            /* Japan */
+    {"kst", 9, 0, false},            /* Korea */
     {"mdt", 6, 0, true},
     {"met", 1, 0, false}, /* this is now officially CET */
     {"msd", 4, 0, false}, /* Moscow DST */
@@ -719,9 +719,9 @@ static const struct tz_t
     {"nzst", 12, 0, false}, /* New Zealand */
     {"pdt", 7, 0, true},
     {"pst", 8, 0, true},
-    {"sat", 2, 0, false},          /* South Africa */
-    {"smt", 4, 0, false},          /* Seychelles */
-    {"sst", 11, 0, true},          /* Samoa */
+    {"sat", 2, 0, false},            /* South Africa */
+    {"smt", 4, 0, false},            /* Seychelles */
+    {"sst", 11, 0, true},            /* Samoa */
     /* { "sst",   8,  0, false }, */ /* Singapore */
     {"utc", 0, 0, false},
     {"wat", 0, 0, false},  /* West Africa */
index 2c1bc81a8e33f091217605bd99ae14ef8e2e2197..fc697345762420ebe2bd6d3dbd9531fc02694648 100644 (file)
@@ -305,7 +305,8 @@ static const pop_auth_t pop_authenticators[] = {
 #endif
     {pop_auth_apop, "apop"},
     {pop_auth_user, "user"},
-    {NULL, NULL}};
+    {NULL, NULL},
+};
 
 /*
  * Authentication
index f7aa2ea8be6dd81a311e63a0c3811d9aa3fc9907..d23077e6d467133e5900d622a3dadaaf305d984e 100644 (file)
--- a/rfc822.c
+++ b/rfc822.c
@@ -60,7 +60,8 @@ int RFC822Error = 0;
 /* these must defined in the same order as the numerated errors given in rfc822.h */
 const char *const RFC822Errors[] = {
     "out of memory",   "mismatched parenthesis", "mismatched quotes",
-    "bad route in <>", "bad address in <>",      "bad address spec"};
+    "bad route in <>", "bad address in <>",      "bad address spec",
+};
 
 void rfc822_dequote_comment(char *s)
 {
index 78a2c409d8ddbec955ae3172e86562a1b1d17c32..e21fafa1222984f0492029867b892efaac51b4ca 100644 (file)
--- a/wcwidth.c
+++ b/wcwidth.c
@@ -65,54 +65,56 @@ int wcwidth_ucs(wchar_t ucs)
   {
     wchar_t first;
     wchar_t last;
-  } combining[] = {{0x0300, 0x036f},   {0x0483, 0x0486},   {0x0488, 0x0489},
-                   {0x0591, 0x05bd},   {0x05bf, 0x05bf},   {0x05c1, 0x05c2},
-                   {0x05c4, 0x05c5},   {0x05c7, 0x05c7},   {0x0600, 0x0603},
-                   {0x0610, 0x0615},   {0x064b, 0x065e},   {0x0670, 0x0670},
-                   {0x06d6, 0x06e4},   {0x06e7, 0x06e8},   {0x06ea, 0x06ed},
-                   {0x070f, 0x070f},   {0x0711, 0x0711},   {0x0730, 0x074a},
-                   {0x07a6, 0x07b0},   {0x07eb, 0x07f3},   {0x0901, 0x0902},
-                   {0x093c, 0x093c},   {0x0941, 0x0948},   {0x094d, 0x094d},
-                   {0x0951, 0x0954},   {0x0962, 0x0963},   {0x0981, 0x0981},
-                   {0x09bc, 0x09bc},   {0x09c1, 0x09c4},   {0x09cd, 0x09cd},
-                   {0x09e2, 0x09e3},   {0x0a01, 0x0a02},   {0x0a3c, 0x0a3c},
-                   {0x0a41, 0x0a42},   {0x0a47, 0x0a48},   {0x0a4b, 0x0a4d},
-                   {0x0a70, 0x0a71},   {0x0a81, 0x0a82},   {0x0abc, 0x0abc},
-                   {0x0ac1, 0x0ac5},   {0x0ac7, 0x0ac8},   {0x0acd, 0x0acd},
-                   {0x0ae2, 0x0ae3},   {0x0b01, 0x0b01},   {0x0b3c, 0x0b3c},
-                   {0x0b3f, 0x0b3f},   {0x0b41, 0x0b43},   {0x0b4d, 0x0b4d},
-                   {0x0b56, 0x0b56},   {0x0b82, 0x0b82},   {0x0bc0, 0x0bc0},
-                   {0x0bcd, 0x0bcd},   {0x0c3e, 0x0c40},   {0x0c46, 0x0c48},
-                   {0x0c4a, 0x0c4d},   {0x0c55, 0x0c56},   {0x0cbc, 0x0cbc},
-                   {0x0cbf, 0x0cbf},   {0x0cc6, 0x0cc6},   {0x0ccc, 0x0ccd},
-                   {0x0ce2, 0x0ce3},   {0x0d41, 0x0d43},   {0x0d4d, 0x0d4d},
-                   {0x0dca, 0x0dca},   {0x0dd2, 0x0dd4},   {0x0dd6, 0x0dd6},
-                   {0x0e31, 0x0e31},   {0x0e34, 0x0e3a},   {0x0e47, 0x0e4e},
-                   {0x0eb1, 0x0eb1},   {0x0eb4, 0x0eb9},   {0x0ebb, 0x0ebc},
-                   {0x0ec8, 0x0ecd},   {0x0f18, 0x0f19},   {0x0f35, 0x0f35},
-                   {0x0f37, 0x0f37},   {0x0f39, 0x0f39},   {0x0f71, 0x0f7e},
-                   {0x0f80, 0x0f84},   {0x0f86, 0x0f87},   {0x0f90, 0x0f97},
-                   {0x0f99, 0x0fbc},   {0x0fc6, 0x0fc6},   {0x102d, 0x1030},
-                   {0x1032, 0x1032},   {0x1036, 0x1037},   {0x1039, 0x1039},
-                   {0x1058, 0x1059},   {0x1160, 0x11ff},   {0x135f, 0x135f},
-                   {0x1712, 0x1714},   {0x1732, 0x1734},   {0x1752, 0x1753},
-                   {0x1772, 0x1773},   {0x17b4, 0x17b5},   {0x17b7, 0x17bd},
-                   {0x17c6, 0x17c6},   {0x17c9, 0x17d3},   {0x17dd, 0x17dd},
-                   {0x180b, 0x180d},   {0x18a9, 0x18a9},   {0x1920, 0x1922},
-                   {0x1927, 0x1928},   {0x1932, 0x1932},   {0x1939, 0x193b},
-                   {0x1a17, 0x1a18},   {0x1b00, 0x1b03},   {0x1b34, 0x1b34},
-                   {0x1b36, 0x1b3a},   {0x1b3c, 0x1b3c},   {0x1b42, 0x1b42},
-                   {0x1b6b, 0x1b73},   {0x1dc0, 0x1dca},   {0x1dfe, 0x1dff},
-                   {0x200b, 0x200f},   {0x202a, 0x202e},   {0x2060, 0x2063},
-                   {0x206a, 0x206f},   {0x20d0, 0x20ef},   {0x302a, 0x302f},
-                   {0x3099, 0x309a},   {0xa806, 0xa806},   {0xa80b, 0xa80b},
-                   {0xa825, 0xa826},   {0xfb1e, 0xfb1e},   {0xfe00, 0xfe0f},
-                   {0xfe20, 0xfe23},   {0xfeff, 0xfeff},   {0xfff9, 0xfffb},
-                   {0x10a01, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a0f},
-                   {0x10a38, 0x10a3a}, {0x10a3f, 0x10a3f}, {0x1d167, 0x1d169},
-                   {0x1d173, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad},
-                   {0x1d242, 0x1d244}, {0xe0001, 0xe0001}, {0xe0020, 0xe007f},
-                   {0xe0100, 0xe01ef}};
+  } combining[] = {
+      {0x0300, 0x036f},   {0x0483, 0x0486},   {0x0488, 0x0489},
+      {0x0591, 0x05bd},   {0x05bf, 0x05bf},   {0x05c1, 0x05c2},
+      {0x05c4, 0x05c5},   {0x05c7, 0x05c7},   {0x0600, 0x0603},
+      {0x0610, 0x0615},   {0x064b, 0x065e},   {0x0670, 0x0670},
+      {0x06d6, 0x06e4},   {0x06e7, 0x06e8},   {0x06ea, 0x06ed},
+      {0x070f, 0x070f},   {0x0711, 0x0711},   {0x0730, 0x074a},
+      {0x07a6, 0x07b0},   {0x07eb, 0x07f3},   {0x0901, 0x0902},
+      {0x093c, 0x093c},   {0x0941, 0x0948},   {0x094d, 0x094d},
+      {0x0951, 0x0954},   {0x0962, 0x0963},   {0x0981, 0x0981},
+      {0x09bc, 0x09bc},   {0x09c1, 0x09c4},   {0x09cd, 0x09cd},
+      {0x09e2, 0x09e3},   {0x0a01, 0x0a02},   {0x0a3c, 0x0a3c},
+      {0x0a41, 0x0a42},   {0x0a47, 0x0a48},   {0x0a4b, 0x0a4d},
+      {0x0a70, 0x0a71},   {0x0a81, 0x0a82},   {0x0abc, 0x0abc},
+      {0x0ac1, 0x0ac5},   {0x0ac7, 0x0ac8},   {0x0acd, 0x0acd},
+      {0x0ae2, 0x0ae3},   {0x0b01, 0x0b01},   {0x0b3c, 0x0b3c},
+      {0x0b3f, 0x0b3f},   {0x0b41, 0x0b43},   {0x0b4d, 0x0b4d},
+      {0x0b56, 0x0b56},   {0x0b82, 0x0b82},   {0x0bc0, 0x0bc0},
+      {0x0bcd, 0x0bcd},   {0x0c3e, 0x0c40},   {0x0c46, 0x0c48},
+      {0x0c4a, 0x0c4d},   {0x0c55, 0x0c56},   {0x0cbc, 0x0cbc},
+      {0x0cbf, 0x0cbf},   {0x0cc6, 0x0cc6},   {0x0ccc, 0x0ccd},
+      {0x0ce2, 0x0ce3},   {0x0d41, 0x0d43},   {0x0d4d, 0x0d4d},
+      {0x0dca, 0x0dca},   {0x0dd2, 0x0dd4},   {0x0dd6, 0x0dd6},
+      {0x0e31, 0x0e31},   {0x0e34, 0x0e3a},   {0x0e47, 0x0e4e},
+      {0x0eb1, 0x0eb1},   {0x0eb4, 0x0eb9},   {0x0ebb, 0x0ebc},
+      {0x0ec8, 0x0ecd},   {0x0f18, 0x0f19},   {0x0f35, 0x0f35},
+      {0x0f37, 0x0f37},   {0x0f39, 0x0f39},   {0x0f71, 0x0f7e},
+      {0x0f80, 0x0f84},   {0x0f86, 0x0f87},   {0x0f90, 0x0f97},
+      {0x0f99, 0x0fbc},   {0x0fc6, 0x0fc6},   {0x102d, 0x1030},
+      {0x1032, 0x1032},   {0x1036, 0x1037},   {0x1039, 0x1039},
+      {0x1058, 0x1059},   {0x1160, 0x11ff},   {0x135f, 0x135f},
+      {0x1712, 0x1714},   {0x1732, 0x1734},   {0x1752, 0x1753},
+      {0x1772, 0x1773},   {0x17b4, 0x17b5},   {0x17b7, 0x17bd},
+      {0x17c6, 0x17c6},   {0x17c9, 0x17d3},   {0x17dd, 0x17dd},
+      {0x180b, 0x180d},   {0x18a9, 0x18a9},   {0x1920, 0x1922},
+      {0x1927, 0x1928},   {0x1932, 0x1932},   {0x1939, 0x193b},
+      {0x1a17, 0x1a18},   {0x1b00, 0x1b03},   {0x1b34, 0x1b34},
+      {0x1b36, 0x1b3a},   {0x1b3c, 0x1b3c},   {0x1b42, 0x1b42},
+      {0x1b6b, 0x1b73},   {0x1dc0, 0x1dca},   {0x1dfe, 0x1dff},
+      {0x200b, 0x200f},   {0x202a, 0x202e},   {0x2060, 0x2063},
+      {0x206a, 0x206f},   {0x20d0, 0x20ef},   {0x302a, 0x302f},
+      {0x3099, 0x309a},   {0xa806, 0xa806},   {0xa80b, 0xa80b},
+      {0xa825, 0xa826},   {0xfb1e, 0xfb1e},   {0xfe00, 0xfe0f},
+      {0xfe20, 0xfe23},   {0xfeff, 0xfeff},   {0xfff9, 0xfffb},
+      {0x10a01, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a0f},
+      {0x10a38, 0x10a3a}, {0x10a3f, 0x10a3f}, {0x1d167, 0x1d169},
+      {0x1d173, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad},
+      {0x1d242, 0x1d244}, {0xe0001, 0xe0001}, {0xe0020, 0xe007f},
+      {0xe0100, 0xe01ef},
+  };
   int min = 0;
   int max = sizeof(combining) / sizeof(struct interval) - 1;
   int mid;