Twitterの文字数カウントの新仕様について

先月 Twitter の仕様が変わり、一部地域を除いて文字数の上限が280文字になった。
日本はその一部地域に含まれており、実際に入力してみると英字は280文字、日本語は140文字で上限に達することが確認できた。

また、これらの文字は同一投稿内で混在でき、英字を含んだ場合日本語の文章でも140字をオーバーできる。
つまり、ロケーションではなく入力した文字の種類によって「何文字と数えるか」を決定しているようだ。
残り文字数を数字でカウントする代わりにドーナツ状のプログレスバーに変わったのはこういった理由からだと思われる。

詳しい仕様が気になったので調べてみた。

[twitter/twitter-text](https://github.com/twitter/twitter-text)

> ⚠️ Note that a new version of twitter-text will be released soon. See the announcement on the Twitter Developer forums, and documentation regarding the changes.

twitter-text のリポジトリはまだ古いバージョンのままだったが、README に新仕様のドキュメントへのリンクが貼られていた。

[twitter-text Parser — Twitter Developers](https://developer.twitter.com/en/docs/developer-utilities/twitter-text)

## 概要
ざっくり言うと…

* 重み付けを考慮した最大文字数を定義
* スケールを定義
* デフォルトの文字の重みを定義
* 例外的なコードポイントのレンジとその重みを定義

文字数を数える時は文章をコードポイント単位で処理する。
コードポイントに定義された重みをスケールで割ったものがその文字の（重みを考慮した）文字数となる。

twitter-text Configuration は以下のように定義されている。

```
{
  "version": 2,
  "maxWeightedTweetLength": 280,
  "scale": 100,
  "defaultWeight": 200,
  "transformedURLLength": 23,
  "ranges": [
    {
      "start": 0,
      "end": 4351,
      "weight": 100
    },
    {
      "start": 8192,
      "end": 8205,
      "weight": 100
    },
    {
      "start": 8208,
      "end": 8223,
      "weight": 100
    },
    {
      "start": 8242,
      "end": 8247,
      "weight": 100
    }
  ]
}
```

maxWeightedTweetLength が 280、scale が 100、defaultWeight が 200 となっており、デフォルトでコードポイント1つにつき2文字という扱いになっている。

ranges で指定された文字は全て weight が 100 で、コードポイントがこの範囲に含まれていれば1文字として数える。

## weight が 100 の文字一覧
* C0, C1制御文字は除外してあるが range 上は weight 100 に含まれる。
* 環境によっては豆腐化すると思うが Firefox のデフォルトフォントでほぼ表示できていることを確認。

### Basic Latin (U+0000 - 007F)
&#x20; &#x21; &#x22; &#x23; &#x24; &#x25; &#x26; &#x27; &#x28; &#x29; &#x2a; &#x2b; &#x2c; &#x2d; &#x2e; &#x2f; &#x30; &#x31; &#x32; &#x33; &#x34; &#x35; &#x36; &#x37; &#x38; &#x39; &#x3a; &#x3b; &#x3c; &#x3d; &#x3e; &#x3f; &#x40; &#x41; &#x42; &#x43; &#x44; &#x45; &#x46; &#x47; &#x48; &#x49; &#x4a; &#x4b; &#x4c; &#x4d; &#x4e; &#x4f; &#x50; &#x51; &#x52; &#x53; &#x54; &#x55; &#x56; &#x57; &#x58; &#x59; &#x5a; &#x5b; &#x5c; &#x5d; &#x5e; &#x5f; &#x60; &#x61; &#x62; &#x63; &#x64; &#x65; &#x66; &#x67; &#x68; &#x69; &#x6a; &#x6b; &#x6c; &#x6d; &#x6e; &#x6f; &#x70; &#x71; &#x72; &#x73; &#x74; &#x75; &#x76; &#x77; &#x78; &#x79; &#x7a; &#x7b; &#x7c; &#x7d; &#x7e; &#x7f;

### Latin-1 Sudivdivlement (U+0080 - 00FF)
&#xa0; &#xa1; &#xa2; &#xa3; &#xa4; &#xa5; &#xa6; &#xa7; &#xa8; &#xa9; &#xaa; &#xab; &#xac; &#xad; &#xae; &#xaf; &#xb0; &#xb1; &#xb2; &#xb3; &#xb4; &#xb5; &#xb6; &#xb7; &#xb8; &#xb9; &#xba; &#xbb; &#xbc; &#xbd; &#xbe; &#xbf; &#xc0; &#xc1; &#xc2; &#xc3; &#xc4; &#xc5; &#xc6; &#xc7; &#xc8; &#xc9; &#xca; &#xcb; &#xcc; &#xcd; &#xce; &#xcf; &#xd0; &#xd1; &#xd2; &#xd3; &#xd4; &#xd5; &#xd6; &#xd7; &#xd8; &#xd9; &#xda; &#xdb; &#xdc; &#xdd; &#xde; &#xdf; &#xe0; &#xe1; &#xe2; &#xe3; &#xe4; &#xe5; &#xe6; &#xe7; &#xe8; &#xe9; &#xea; &#xeb; &#xec; &#xed; &#xee; &#xef; &#xf0; &#xf1; &#xf2; &#xf3; &#xf4; &#xf5; &#xf6; &#xf7; &#xf8; &#xf9; &#xfa; &#xfb; &#xfc; &#xfd; &#xfe; &#xff;

### Latin Extended-A (U+0100 - U+017F)
&#x100; &#x101; &#x102; &#x103; &#x104; &#x105; &#x106; &#x107; &#x108; &#x109; &#x10a; &#x10b; &#x10c; &#x10d; &#x10e; &#x10f; &#x110; &#x111; &#x112; &#x113; &#x114; &#x115; &#x116; &#x117; &#x118; &#x119; &#x11a; &#x11b; &#x11c; &#x11d; &#x11e; &#x11f; &#x120; &#x121; &#x122; &#x123; &#x124; &#x125; &#x126; &#x127; &#x128; &#x129; &#x12a; &#x12b; &#x12c; &#x12d; &#x12e; &#x12f; &#x130; &#x131; &#x132; &#x133; &#x134; &#x135; &#x136; &#x137; &#x138; &#x139; &#x13a; &#x13b; &#x13c; &#x13d; &#x13e; &#x13f; &#x140; &#x141; &#x142; &#x143; &#x144; &#x145; &#x146; &#x147; &#x148; &#x149; &#x14a; &#x14b; &#x14c; &#x14d; &#x14e; &#x14f; &#x150; &#x151; &#x152; &#x153; &#x154; &#x155; &#x156; &#x157; &#x158; &#x159; &#x15a; &#x15b; &#x15c; &#x15d; &#x15e; &#x15f; &#x160; &#x161; &#x162; &#x163; &#x164; &#x165; &#x166; &#x167; &#x168; &#x169; &#x16a; &#x16b; &#x16c; &#x16d; &#x16e; &#x16f; &#x170; &#x171; &#x172; &#x173; &#x174; &#x175; &#x176; &#x177; &#x178; &#x179; &#x17a; &#x17b; &#x17c; &#x17d; &#x17e; &#x17f;

### Latin Extended-B (U+0180 - U+024F)
&#x180; &#x181; &#x182; &#x183; &#x184; &#x185; &#x186; &#x187; &#x188; &#x189; &#x18a; &#x18b; &#x18c; &#x18d; &#x18e; &#x18f; &#x190; &#x191; &#x192; &#x193; &#x194; &#x195; &#x196; &#x197; &#x198; &#x199; &#x19a; &#x19b; &#x19c; &#x19d; &#x19e; &#x19f; &#x1a0; &#x1a1; &#x1a2; &#x1a3; &#x1a4; &#x1a5; &#x1a6; &#x1a7; &#x1a8; &#x1a9; &#x1aa; &#x1ab; &#x1ac; &#x1ad; &#x1ae; &#x1af; &#x1b0; &#x1b1; &#x1b2; &#x1b3; &#x1b4; &#x1b5; &#x1b6; &#x1b7; &#x1b8; &#x1b9; &#x1ba; &#x1bb; &#x1bc; &#x1bd; &#x1be; &#x1bf; &#x1c0; &#x1c1; &#x1c2; &#x1c3; &#x1c4; &#x1c5; &#x1c6; &#x1c7; &#x1c8; &#x1c9; &#x1ca; &#x1cb; &#x1cc; &#x1cd; &#x1ce; &#x1cf; &#x1d0; &#x1d1; &#x1d2; &#x1d3; &#x1d4; &#x1d5; &#x1d6; &#x1d7; &#x1d8; &#x1d9; &#x1da; &#x1db; &#x1dc; &#x1dd; &#x1de; &#x1df; &#x1e0; &#x1e1; &#x1e2; &#x1e3; &#x1e4; &#x1e5; &#x1e6; &#x1e7; &#x1e8; &#x1e9; &#x1ea; &#x1eb; &#x1ec; &#x1ed; &#x1ee; &#x1ef; &#x1f0; &#x1f1; &#x1f2; &#x1f3; &#x1f4; &#x1f5; &#x1f6; &#x1f7; &#x1f8; &#x1f9; &#x1fa; &#x1fb; &#x1fc; &#x1fd; &#x1fe; &#x1ff; &#x200; &#x201; &#x202; &#x203; &#x204; &#x205; &#x206; &#x207; &#x208; &#x209; &#x20a; &#x20b; &#x20c; &#x20d; &#x20e; &#x20f; &#x210; &#x211; &#x212; &#x213; &#x214; &#x215; &#x216; &#x217; &#x218; &#x219; &#x21a; &#x21b; &#x21c; &#x21d; &#x21e; &#x21f; &#x220; &#x221; &#x222; &#x223; &#x224; &#x225; &#x226; &#x227; &#x228; &#x229; &#x22a; &#x22b; &#x22c; &#x22d; &#x22e; &#x22f; &#x230; &#x231; &#x232; &#x233; &#x234; &#x235; &#x236; &#x237; &#x238; &#x239; &#x23a; &#x23b; &#x23c; &#x23d; &#x23e; &#x23f; &#x240; &#x241; &#x242; &#x243; &#x244; &#x245; &#x246; &#x247; &#x248; &#x249; &#x24a; &#x24b; &#x24c; &#x24d; &#x24e; &#x24f;

### IPA Extensions (U+0250 - U+02AF)
&#x250; &#x251; &#x252; &#x253; &#x254; &#x255; &#x256; &#x257; &#x258; &#x259; &#x25a; &#x25b; &#x25c; &#x25d; &#x25e; &#x25f; &#x260; &#x261; &#x262; &#x263; &#x264; &#x265; &#x266; &#x267; &#x268; &#x269; &#x26a; &#x26b; &#x26c; &#x26d; &#x26e; &#x26f; &#x270; &#x271; &#x272; &#x273; &#x274; &#x275; &#x276; &#x277; &#x278; &#x279; &#x27a; &#x27b; &#x27c; &#x27d; &#x27e; &#x27f; &#x280; &#x281; &#x282; &#x283; &#x284; &#x285; &#x286; &#x287; &#x288; &#x289; &#x28a; &#x28b; &#x28c; &#x28d; &#x28e; &#x28f; &#x290; &#x291; &#x292; &#x293; &#x294; &#x295; &#x296; &#x297; &#x298; &#x299; &#x29a; &#x29b; &#x29c; &#x29d; &#x29e; &#x29f; &#x2a0; &#x2a1; &#x2a2; &#x2a3; &#x2a4; &#x2a5; &#x2a6; &#x2a7; &#x2a8; &#x2a9; &#x2aa; &#x2ab; &#x2ac; &#x2ad; &#x2ae; &#x2af;

### Spacing Modifier Letters (U+02B0 - U+02FF)
&#x2b0; &#x2b1; &#x2b2; &#x2b3; &#x2b4; &#x2b5; &#x2b6; &#x2b7; &#x2b8; &#x2b9; &#x2ba; &#x2bb; &#x2bc; &#x2bd; &#x2be; &#x2bf; &#x2c0; &#x2c1; &#x2c2; &#x2c3; &#x2c4; &#x2c5; &#x2c6; &#x2c7; &#x2c8; &#x2c9; &#x2ca; &#x2cb; &#x2cc; &#x2cd; &#x2ce; &#x2cf; &#x2d0; &#x2d1; &#x2d2; &#x2d3; &#x2d4; &#x2d5; &#x2d6; &#x2d7; &#x2d8; &#x2d9; &#x2da; &#x2db; &#x2dc; &#x2dd; &#x2de; &#x2df; &#x2e0; &#x2e1; &#x2e2; &#x2e3; &#x2e4; &#x2e5; &#x2e6; &#x2e7; &#x2e8; &#x2e9; &#x2ea; &#x2eb; &#x2ec; &#x2ed; &#x2ee; &#x2ef; &#x2f0; &#x2f1; &#x2f2; &#x2f3; &#x2f4; &#x2f5; &#x2f6; &#x2f7; &#x2f8; &#x2f9; &#x2fa; &#x2fb; &#x2fc; &#x2fd; &#x2fe; &#x2ff;

### Combining Diacritical Marks (U+0300 - U+036F)
&#x300; &#x301; &#x302; &#x303; &#x304; &#x305; &#x306; &#x307; &#x308; &#x309; &#x30a; &#x30b; &#x30c; &#x30d; &#x30e; &#x30f; &#x310; &#x311; &#x312; &#x313; &#x314; &#x315; &#x316; &#x317; &#x318; &#x319; &#x31a; &#x31b; &#x31c; &#x31d; &#x31e; &#x31f; &#x320; &#x321; &#x322; &#x323; &#x324; &#x325; &#x326; &#x327; &#x328; &#x329; &#x32a; &#x32b; &#x32c; &#x32d; &#x32e; &#x32f; &#x330; &#x331; &#x332; &#x333; &#x334; &#x335; &#x336; &#x337; &#x338; &#x339; &#x33a; &#x33b; &#x33c; &#x33d; &#x33e; &#x33f; &#x340; &#x341; &#x342; &#x343; &#x344; &#x345; &#x346; &#x347; &#x348; &#x349; &#x34a; &#x34b; &#x34c; &#x34d; &#x34e; &#x34f; &#x350; &#x351; &#x352; &#x353; &#x354; &#x355; &#x356; &#x357; &#x358; &#x359; &#x35a; &#x35b; &#x35c; &#x35d; &#x35e; &#x35f; &#x360; &#x361; &#x362; &#x363; &#x364; &#x365; &#x366; &#x367; &#x368; &#x369; &#x36a; &#x36b; &#x36c; &#x36d; &#x36e; &#x36f;

### Greek and Codivtic (U+0370 - U+03FF)
&#x370; &#x371; &#x372; &#x373; &#x374; &#x375; &#x376; &#x377; &#x37a; &#x37b; &#x37c; &#x37d; &#x37e; &#x37f; &#x384; &#x385; &#x386; &#x387; &#x388; &#x389; &#x38a; &#x38c; &#x38e; &#x38f; &#x390; &#x391; &#x392; &#x393; &#x394; &#x395; &#x396; &#x397; &#x398; &#x399; &#x39a; &#x39b; &#x39c; &#x39d; &#x39e; &#x39f; &#x3a0; &#x3a1; &#x3a3; &#x3a4; &#x3a5; &#x3a6; &#x3a7; &#x3a8; &#x3a9; &#x3aa; &#x3ab; &#x3ac; &#x3ad; &#x3ae; &#x3af; &#x3b0; &#x3b1; &#x3b2; &#x3b3; &#x3b4; &#x3b5; &#x3b6; &#x3b7; &#x3b8; &#x3b9; &#x3ba; &#x3bb; &#x3bc; &#x3bd; &#x3be; &#x3bf; &#x3c0; &#x3c1; &#x3c2; &#x3c3; &#x3c4; &#x3c5; &#x3c6; &#x3c7; &#x3c8; &#x3c9; &#x3ca; &#x3cb; &#x3cc; &#x3cd; &#x3ce; &#x3cf; &#x3d0; &#x3d1; &#x3d2; &#x3d3; &#x3d4; &#x3d5; &#x3d6; &#x3d7; &#x3d8; &#x3d9; &#x3da; &#x3db; &#x3dc; &#x3dd; &#x3de; &#x3df; &#x3e0; &#x3e1; &#x3e2; &#x3e3; &#x3e4; &#x3e5; &#x3e6; &#x3e7; &#x3e8; &#x3e9; &#x3ea; &#x3eb; &#x3ec; &#x3ed; &#x3ee; &#x3ef; &#x3f0; &#x3f1; &#x3f2; &#x3f3; &#x3f4; &#x3f5; &#x3f6; &#x3f7; &#x3f8; &#x3f9; &#x3fa; &#x3fb; &#x3fc; &#x3fd; &#x3fe; &#x3ff;

### Cyrillic (U+0400 - U+04FF)
&#x400; &#x401; &#x402; &#x403; &#x404; &#x405; &#x406; &#x407; &#x408; &#x409; &#x40a; &#x40b; &#x40c; &#x40d; &#x40e; &#x40f; &#x410; &#x411; &#x412; &#x413; &#x414; &#x415; &#x416; &#x417; &#x418; &#x419; &#x41a; &#x41b; &#x41c; &#x41d; &#x41e; &#x41f; &#x420; &#x421; &#x422; &#x423; &#x424; &#x425; &#x426; &#x427; &#x428; &#x429; &#x42a; &#x42b; &#x42c; &#x42d; &#x42e; &#x42f; &#x430; &#x431; &#x432; &#x433; &#x434; &#x435; &#x436; &#x437; &#x438; &#x439; &#x43a; &#x43b; &#x43c; &#x43d; &#x43e; &#x43f; &#x440; &#x441; &#x442; &#x443; &#x444; &#x445; &#x446; &#x447; &#x448; &#x449; &#x44a; &#x44b; &#x44c; &#x44d; &#x44e; &#x44f; &#x450; &#x451; &#x452; &#x453; &#x454; &#x455; &#x456; &#x457; &#x458; &#x459; &#x45a; &#x45b; &#x45c; &#x45d; &#x45e; &#x45f; &#x460; &#x461; &#x462; &#x463; &#x464; &#x465; &#x466; &#x467; &#x468; &#x469; &#x46a; &#x46b; &#x46c; &#x46d; &#x46e; &#x46f; &#x470; &#x471; &#x472; &#x473; &#x474; &#x475; &#x476; &#x477; &#x478; &#x479; &#x47a; &#x47b; &#x47c; &#x47d; &#x47e; &#x47f; &#x480; &#x481; &#x482; &#x483; &#x484; &#x485; &#x486; &#x487; &#x488; &#x489; &#x48a; &#x48b; &#x48c; &#x48d; &#x48e; &#x48f; &#x490; &#x491; &#x492; &#x493; &#x494; &#x495; &#x496; &#x497; &#x498; &#x499; &#x49a; &#x49b; &#x49c; &#x49d; &#x49e; &#x49f; &#x4a0; &#x4a1; &#x4a2; &#x4a3; &#x4a4; &#x4a5; &#x4a6; &#x4a7; &#x4a8; &#x4a9; &#x4aa; &#x4ab; &#x4ac; &#x4ad; &#x4ae; &#x4af; &#x4b0; &#x4b1; &#x4b2; &#x4b3; &#x4b4; &#x4b5; &#x4b6; &#x4b7; &#x4b8; &#x4b9; &#x4ba; &#x4bb; &#x4bc; &#x4bd; &#x4be; &#x4bf; &#x4c0; &#x4c1; &#x4c2; &#x4c3; &#x4c4; &#x4c5; &#x4c6; &#x4c7; &#x4c8; &#x4c9; &#x4ca; &#x4cb; &#x4cc; &#x4cd; &#x4ce; &#x4cf; &#x4d0; &#x4d1; &#x4d2; &#x4d3; &#x4d4; &#x4d5; &#x4d6; &#x4d7; &#x4d8; &#x4d9; &#x4da; &#x4db; &#x4dc; &#x4dd; &#x4de; &#x4df; &#x4e0; &#x4e1; &#x4e2; &#x4e3; &#x4e4; &#x4e5; &#x4e6; &#x4e7; &#x4e8; &#x4e9; &#x4ea; &#x4eb; &#x4ec; &#x4ed; &#x4ee; &#x4ef; &#x4f0; &#x4f1; &#x4f2; &#x4f3; &#x4f4; &#x4f5; &#x4f6; &#x4f7; &#x4f8; &#x4f9; &#x4fa; &#x4fb; &#x4fc; &#x4fd; &#x4fe; &#x4ff;

### Cyrillic Sudivdivlement (U+0500 - U+052F)
&#x500; &#x501; &#x502; &#x503; &#x504; &#x505; &#x506; &#x507; &#x508; &#x509; &#x50a; &#x50b; &#x50c; &#x50d; &#x50e; &#x50f; &#x510; &#x511; &#x512; &#x513; &#x514; &#x515; &#x516; &#x517; &#x518; &#x519; &#x51a; &#x51b; &#x51c; &#x51d; &#x51e; &#x51f; &#x520; &#x521; &#x522; &#x523; &#x524; &#x525; &#x526; &#x527; &#x528; &#x529; &#x52a; &#x52b; &#x52c; &#x52d; &#x52e; &#x52f;

### Armenian (U+0530 - U+058F)
&#x531; &#x532; &#x533; &#x534; &#x535; &#x536; &#x537; &#x538; &#x539; &#x53a; &#x53b; &#x53c; &#x53d; &#x53e; &#x53f; &#x540; &#x541; &#x542; &#x543; &#x544; &#x545; &#x546; &#x547; &#x548; &#x549; &#x54a; &#x54b; &#x54c; &#x54d; &#x54e; &#x54f; &#x550; &#x551; &#x552; &#x553; &#x554; &#x555; &#x556; &#x559; &#x55a; &#x55b; &#x55c; &#x55d; &#x55e; &#x55f; &#x561; &#x562; &#x563; &#x564; &#x565; &#x566; &#x567; &#x568; &#x569; &#x56a; &#x56b; &#x56c; &#x56d; &#x56e; &#x56f; &#x570; &#x571; &#x572; &#x573; &#x574; &#x575; &#x576; &#x577; &#x578; &#x579; &#x57a; &#x57b; &#x57c; &#x57d; &#x57e; &#x57f; &#x580; &#x581; &#x582; &#x583; &#x584; &#x585; &#x586; &#x587; &#x589; &#x58a; &#x58d; &#x58e; &#x58f;

### Hebrew (U+0590	 - U+05FF)
&#x591; &#x592; &#x593; &#x594; &#x595; &#x596; &#x597; &#x598; &#x599; &#x59a; &#x59b; &#x59c; &#x59d; &#x59e; &#x59f; &#x5a0; &#x5a1; &#x5a2; &#x5a3; &#x5a4; &#x5a5; &#x5a6; &#x5a7; &#x5a8; &#x5a9; &#x5aa; &#x5ab; &#x5ac; &#x5ad; &#x5ae; &#x5af; &#x5b0; &#x5b1; &#x5b2; &#x5b3; &#x5b4; &#x5b5; &#x5b6; &#x5b7; &#x5b8; &#x5b9; &#x5ba; &#x5bb; &#x5bc; &#x5bd; &#x5be; &#x5bf; &#x5c0; &#x5c1; &#x5c2; &#x5c3; &#x5c4; &#x5c5; &#x5c6; &#x5c7; &#x5d0; &#x5d1; &#x5d2; &#x5d3; &#x5d4; &#x5d5; &#x5d6; &#x5d7; &#x5d8; &#x5d9; &#x5da; &#x5db; &#x5dc; &#x5dd; &#x5de; &#x5df; &#x5e0; &#x5e1; &#x5e2; &#x5e3; &#x5e4; &#x5e5; &#x5e6; &#x5e7; &#x5e8; &#x5e9; &#x5ea; &#x5f0; &#x5f1; &#x5f2; &#x5f3; &#x5f4;

### Arabic (U+0600 - U+06FF)
&#x600; &#x601; &#x602; &#x603; &#x604; &#x605; &#x606; &#x607; &#x608; &#x609; &#x60a; &#x60b; &#x60c; &#x60d; &#x60e; &#x60f; &#x610; &#x611; &#x612; &#x613; &#x614; &#x615; &#x616; &#x617; &#x618; &#x619; &#x61a; &#x61b; &#x61c; &#x61e; &#x61f; &#x620; &#x621; &#x622; &#x623; &#x624; &#x625; &#x626; &#x627; &#x628; &#x629; &#x62a; &#x62b; &#x62c; &#x62d; &#x62e; &#x62f; &#x630; &#x631; &#x632; &#x633; &#x634; &#x635; &#x636; &#x637; &#x638; &#x639; &#x63a; &#x63b; &#x63c; &#x63d; &#x63e; &#x63f; &#x640; &#x641; &#x642; &#x643; &#x644; &#x645; &#x646; &#x647; &#x648; &#x649; &#x64a; &#x64b; &#x64c; &#x64d; &#x64e; &#x64f; &#x650; &#x651; &#x652; &#x653; &#x654; &#x655; &#x656; &#x657; &#x658; &#x659; &#x65a; &#x65b; &#x65c; &#x65d; &#x65e; &#x65f; &#x660; &#x661; &#x662; &#x663; &#x664; &#x665; &#x666; &#x667; &#x668; &#x669; &#x66a; &#x66b; &#x66c; &#x66d; &#x66e; &#x66f; &#x670; &#x671; &#x672; &#x673; &#x674; &#x675; &#x676; &#x677; &#x678; &#x679; &#x67a; &#x67b; &#x67c; &#x67d; &#x67e; &#x67f; &#x680; &#x681; &#x682; &#x683; &#x684; &#x685; &#x686; &#x687; &#x688; &#x689; &#x68a; &#x68b; &#x68c; &#x68d; &#x68e; &#x68f; &#x690; &#x691; &#x692; &#x693; &#x694; &#x695; &#x696; &#x697; &#x698; &#x699; &#x69a; &#x69b; &#x69c; &#x69d; &#x69e; &#x69f; &#x6a0; &#x6a1; &#x6a2; &#x6a3; &#x6a4; &#x6a5; &#x6a6; &#x6a7; &#x6a8; &#x6a9; &#x6aa; &#x6ab; &#x6ac; &#x6ad; &#x6ae; &#x6af; &#x6b0; &#x6b1; &#x6b2; &#x6b3; &#x6b4; &#x6b5; &#x6b6; &#x6b7; &#x6b8; &#x6b9; &#x6ba; &#x6bb; &#x6bc; &#x6bd; &#x6be; &#x6bf; &#x6c0; &#x6c1; &#x6c2; &#x6c3; &#x6c4; &#x6c5; &#x6c6; &#x6c7; &#x6c8; &#x6c9; &#x6ca; &#x6cb; &#x6cc; &#x6cd; &#x6ce; &#x6cf; &#x6d0; &#x6d1; &#x6d2; &#x6d3; &#x6d4; &#x6d5; &#x6d6; &#x6d7; &#x6d8; &#x6d9; &#x6da; &#x6db; &#x6dc; &#x6dd; &#x6de; &#x6df; &#x6e0; &#x6e1; &#x6e2; &#x6e3; &#x6e4; &#x6e5; &#x6e6; &#x6e7; &#x6e8; &#x6e9; &#x6ea; &#x6eb; &#x6ec; &#x6ed; &#x6ee; &#x6ef; &#x6f0; &#x6f1; &#x6f2; &#x6f3; &#x6f4; &#x6f5; &#x6f6; &#x6f7; &#x6f8; &#x6f9; &#x6fa; &#x6fb; &#x6fc; &#x6fd; &#x6fe; &#x6ff;

### Syriac (U+0700 - U+074F)
&#x700; &#x701; &#x702; &#x703; &#x704; &#x705; &#x706; &#x707; &#x708; &#x709; &#x70a; &#x70b; &#x70c; &#x70d; &#x70f; &#x710; &#x711; &#x712; &#x713; &#x714; &#x715; &#x716; &#x717; &#x718; &#x719; &#x71a; &#x71b; &#x71c; &#x71d; &#x71e; &#x71f; &#x720; &#x721; &#x722; &#x723; &#x724; &#x725; &#x726; &#x727; &#x728; &#x729; &#x72a; &#x72b; &#x72c; &#x72d; &#x72e; &#x72f; &#x730; &#x731; &#x732; &#x733; &#x734; &#x735; &#x736; &#x737; &#x738; &#x739; &#x73a; &#x73b; &#x73c; &#x73d; &#x73e; &#x73f; &#x740; &#x741; &#x742; &#x743; &#x744; &#x745; &#x746; &#x747; &#x748; &#x749; &#x74a; &#x74d; &#x74e; &#x74f;

### Arabic Supplement (U+0750 - U+077F)
&#x750; &#x751; &#x752; &#x753; &#x754; &#x755; &#x756; &#x757; &#x758; &#x759; &#x75a; &#x75b; &#x75c; &#x75d; &#x75e; &#x75f; &#x760; &#x761; &#x762; &#x763; &#x764; &#x765; &#x766; &#x767; &#x768; &#x769; &#x76a; &#x76b; &#x76c; &#x76d; &#x76e; &#x76f; &#x770; &#x771; &#x772; &#x773; &#x774; &#x775; &#x776; &#x777; &#x778; &#x779; &#x77a; &#x77b; &#x77c; &#x77d; &#x77e; &#x77f;

### Thaana (U+0780 - U+07BF)
&#x780; &#x781; &#x782; &#x783; &#x784; &#x785; &#x786; &#x787; &#x788; &#x789; &#x78a; &#x78b; &#x78c; &#x78d; &#x78e; &#x78f; &#x790; &#x791; &#x792; &#x793; &#x794; &#x795; &#x796; &#x797; &#x798; &#x799; &#x79a; &#x79b; &#x79c; &#x79d; &#x79e; &#x79f; &#x7a0; &#x7a1; &#x7a2; &#x7a3; &#x7a4; &#x7a5; &#x7a6; &#x7a7; &#x7a8; &#x7a9; &#x7aa; &#x7ab; &#x7ac; &#x7ad; &#x7ae; &#x7af; &#x7b0; &#x7b1;

### NKo (U+07C0 - U+07FF)
&#x7c0; &#x7c1; &#x7c2; &#x7c3; &#x7c4; &#x7c5; &#x7c6; &#x7c7; &#x7c8; &#x7c9; &#x7ca; &#x7cb; &#x7cc; &#x7cd; &#x7ce; &#x7cf; &#x7d0; &#x7d1; &#x7d2; &#x7d3; &#x7d4; &#x7d5; &#x7d6; &#x7d7; &#x7d8; &#x7d9; &#x7da; &#x7db; &#x7dc; &#x7dd; &#x7de; &#x7df; &#x7e0; &#x7e1; &#x7e2; &#x7e3; &#x7e4; &#x7e5; &#x7e6; &#x7e7; &#x7e8; &#x7e9; &#x7ea; &#x7eb; &#x7ec; &#x7ed; &#x7ee; &#x7ef; &#x7f0; &#x7f1; &#x7f2; &#x7f3; &#x7f4; &#x7f5; &#x7f6; &#x7f7; &#x7f8; &#x7f9; &#x7fa;

### Samaritan (U+0800 - U+083F)
&#x800; &#x801; &#x802; &#x803; &#x804; &#x805; &#x806; &#x807; &#x808; &#x809; &#x80a; &#x80b; &#x80c; &#x80d; &#x80e; &#x80f; &#x810; &#x811; &#x812; &#x813; &#x814; &#x815; &#x816; &#x817; &#x818; &#x819; &#x81a; &#x81b; &#x81c; &#x81d; &#x81e; &#x81f; &#x820; &#x821; &#x822; &#x823; &#x824; &#x825; &#x826; &#x827; &#x828; &#x829; &#x82a; &#x82b; &#x82c; &#x82d; &#x830; &#x831; &#x832; &#x833; &#x834; &#x835; &#x836; &#x837; &#x838; &#x839; &#x83a; &#x83b; &#x83c; &#x83d; &#x83e;

### Mandaic (U+0840 - U+085F)
&#x840; &#x841; &#x842; &#x843; &#x844; &#x845; &#x846; &#x847; &#x848; &#x849; &#x84a; &#x84b; &#x84c; &#x84d; &#x84e; &#x84f; &#x850; &#x851; &#x852; &#x853; &#x854; &#x855; &#x856; &#x857; &#x858; &#x859; &#x85a; &#x85b; &#x85e;

### Syriac Supplement (U+0860 - U+086F)
&#x860; &#x861; &#x862; &#x863; &#x864; &#x865; &#x866; &#x867; &#x868; &#x869; &#x86a;

### Arabic Extended-A (U+08A0 - U+08FF)
&#x8a0; &#x8a1; &#x8a2; &#x8a3; &#x8a4; &#x8a5; &#x8a6; &#x8a7; &#x8a8; &#x8a9; &#x8aa; &#x8ab; &#x8ac; &#x8ad; &#x8ae; &#x8af; &#x8b0; &#x8b1; &#x8b2; &#x8b3; &#x8b4; &#x8b6; &#x8b7; &#x8b8; &#x8b9; &#x8ba; &#x8bb; &#x8bc; &#x8bd; &#x8d4; &#x8d5; &#x8d6; &#x8d7; &#x8d8; &#x8d9; &#x8da; &#x8db; &#x8dc; &#x8dd; &#x8de; &#x8df; &#x8e0; &#x8e1; &#x8e2; &#x8e3; &#x8e4; &#x8e5; &#x8e6; &#x8e7; &#x8e8; &#x8e9; &#x8ea; &#x8eb; &#x8ec; &#x8ed; &#x8ee; &#x8ef; &#x8f0; &#x8f1; &#x8f2; &#x8f3; &#x8f4; &#x8f5; &#x8f6; &#x8f7; &#x8f8; &#x8f9; &#x8fa; &#x8fb; &#x8fc; &#x8fd; &#x8fe; &#x8ff;

### Devanagari (U+0900 - U+097F)
&#x900; &#x901; &#x902; &#x903; &#x904; &#x905; &#x906; &#x907; &#x908; &#x909; &#x90a; &#x90b; &#x90c; &#x90d; &#x90e; &#x90f; &#x910; &#x911; &#x912; &#x913; &#x914; &#x915; &#x916; &#x917; &#x918; &#x919; &#x91a; &#x91b; &#x91c; &#x91d; &#x91e; &#x91f; &#x920; &#x921; &#x922; &#x923; &#x924; &#x925; &#x926; &#x927; &#x928; &#x929; &#x92a; &#x92b; &#x92c; &#x92d; &#x92e; &#x92f; &#x930; &#x931; &#x932; &#x933; &#x934; &#x935; &#x936; &#x937; &#x938; &#x939; &#x93a; &#x93b; &#x93c; &#x93d; &#x93e; &#x93f; &#x940; &#x941; &#x942; &#x943; &#x944; &#x945; &#x946; &#x947; &#x948; &#x949; &#x94a; &#x94b; &#x94c; &#x94d; &#x94e; &#x94f; &#x950; &#x951; &#x952; &#x953; &#x954; &#x955; &#x956; &#x957; &#x958; &#x959; &#x95a; &#x95b; &#x95c; &#x95d; &#x95e; &#x95f; &#x960; &#x961; &#x962; &#x963; &#x964; &#x965; &#x966; &#x967; &#x968; &#x969; &#x96a; &#x96b; &#x96c; &#x96d; &#x96e; &#x96f; &#x970; &#x971; &#x972; &#x973; &#x974; &#x975; &#x976; &#x977; &#x978; &#x979; &#x97a; &#x97b; &#x97c; &#x97d; &#x97e; &#x97f;

### Bengali (U+0980 - U+09FF)
&#x980; &#x981; &#x982; &#x983; &#x985; &#x986; &#x987; &#x988; &#x989; &#x98a; &#x98b; &#x98c; &#x98f; &#x990; &#x993; &#x994; &#x995; &#x996; &#x997; &#x998; &#x999; &#x99a; &#x99b; &#x99c; &#x99d; &#x99e; &#x99f; &#x9a0; &#x9a1; &#x9a2; &#x9a3; &#x9a4; &#x9a5; &#x9a6; &#x9a7; &#x9a8; &#x9aa; &#x9ab; &#x9ac; &#x9ad; &#x9ae; &#x9af; &#x9b0; &#x9b2; &#x9b6; &#x9b7; &#x9b8; &#x9b9; &#x9bc; &#x9bd; &#x9be; &#x9bf; &#x9c0; &#x9c1; &#x9c2; &#x9c3; &#x9c4; &#x9c7; &#x9c8; &#x9cb; &#x9cc; &#x9cd; &#x9ce; &#x9d7; &#x9dc; &#x9dd; &#x9df; &#x9e0; &#x9e1; &#x9e2; &#x9e3; &#x9e6; &#x9e7; &#x9e8; &#x9e9; &#x9ea; &#x9eb; &#x9ec; &#x9ed; &#x9ee; &#x9ef; &#x9f0; &#x9f1; &#x9f2; &#x9f3; &#x9f4; &#x9f5; &#x9f6; &#x9f7; &#x9f8; &#x9f9; &#x9fa; &#x9fb; &#x9fc; &#x9fd;

### Gurmukhi (U+0A00 - U+0A7F)
&#xa01; &#xa02; &#xa03; &#xa05; &#xa06; &#xa07; &#xa08; &#xa09; &#xa0a; &#xa0f; &#xa10; &#xa13; &#xa14; &#xa15; &#xa16; &#xa17; &#xa18; &#xa19; &#xa1a; &#xa1b; &#xa1c; &#xa1d; &#xa1e; &#xa1f; &#xa20; &#xa21; &#xa22; &#xa23; &#xa24; &#xa25; &#xa26; &#xa27; &#xa28; &#xa2a; &#xa2b; &#xa2c; &#xa2d; &#xa2e; &#xa2f; &#xa30; &#xa32; &#xa33; &#xa35; &#xa36; &#xa38; &#xa39; &#xa3c; &#xa3e; &#xa3f; &#xa40; &#xa41; &#xa42; &#xa47; &#xa48; &#xa4b; &#xa4c; &#xa4d; &#xa51; &#xa59; &#xa5a; &#xa5b; &#xa5c; &#xa5e; &#xa66; &#xa67; &#xa68; &#xa69; &#xa6a; &#xa6b; &#xa6c; &#xa6d; &#xa6e; &#xa6f; &#xa70; &#xa71; &#xa72; &#xa73; &#xa74; &#xa75;

### Gujarati (U+0A80 - U+0AFF)
&#xa81; &#xa82; &#xa83; &#xa85; &#xa86; &#xa87; &#xa88; &#xa89; &#xa8a; &#xa8b; &#xa8c; &#xa8d; &#xa8f; &#xa90; &#xa91; &#xa93; &#xa94; &#xa95; &#xa96; &#xa97; &#xa98; &#xa99; &#xa9a; &#xa9b; &#xa9c; &#xa9d; &#xa9e; &#xa9f; &#xaa0; &#xaa1; &#xaa2; &#xaa3; &#xaa4; &#xaa5; &#xaa6; &#xaa7; &#xaa8; &#xaaa; &#xaab; &#xaac; &#xaad; &#xaae; &#xaaf; &#xab0; &#xab2; &#xab3; &#xab5; &#xab6; &#xab7; &#xab8; &#xab9; &#xabc; &#xabd; &#xabe; &#xabf; &#xac0; &#xac1; &#xac2; &#xac3; &#xac4; &#xac5; &#xac7; &#xac8; &#xac9; &#xacb; &#xacc; &#xacd; &#xad0; &#xae0; &#xae1; &#xae2; &#xae3; &#xae6; &#xae7; &#xae8; &#xae9; &#xaea; &#xaeb; &#xaec; &#xaed; &#xaee; &#xaef; &#xaf0; &#xaf1; &#xaf9; &#xafa; &#xafb; &#xafc; &#xafd; &#xafe; &#xaff;

### Oriya (U+0B00 - U+0B7F)
&#xb01; &#xb02; &#xb03; &#xb05; &#xb06; &#xb07; &#xb08; &#xb09; &#xb0a; &#xb0b; &#xb0c; &#xb0f; &#xb10; &#xb13; &#xb14; &#xb15; &#xb16; &#xb17; &#xb18; &#xb19; &#xb1a; &#xb1b; &#xb1c; &#xb1d; &#xb1e; &#xb1f; &#xb20; &#xb21; &#xb22; &#xb23; &#xb24; &#xb25; &#xb26; &#xb27; &#xb28; &#xb2a; &#xb2b; &#xb2c; &#xb2d; &#xb2e; &#xb2f; &#xb30; &#xb32; &#xb33; &#xb35; &#xb36; &#xb37; &#xb38; &#xb39; &#xb3c; &#xb3d; &#xb3e; &#xb3f; &#xb40; &#xb41; &#xb42; &#xb43; &#xb44; &#xb47; &#xb48; &#xb4b; &#xb4c; &#xb4d; &#xb56; &#xb57; &#xb5c; &#xb5d; &#xb5f; &#xb60; &#xb61; &#xb62; &#xb63; &#xb66; &#xb67; &#xb68; &#xb69; &#xb6a; &#xb6b; &#xb6c; &#xb6d; &#xb6e; &#xb6f; &#xb70; &#xb71; &#xb72; &#xb73; &#xb74; &#xb75; &#xb76; &#xb77;

### Tamil (U+0B80 - U+0BFF)
&#xb82; &#xb83; &#xb85; &#xb86; &#xb87; &#xb88; &#xb89; &#xb8a; &#xb8e; &#xb8f; &#xb90; &#xb92; &#xb93; &#xb94; &#xb95; &#xb99; &#xb9a; &#xb9c; &#xb9e; &#xb9f; &#xba3; &#xba4; &#xba8; &#xba9; &#xbaa; &#xbae; &#xbaf; &#xbb0; &#xbb1; &#xbb2; &#xbb3; &#xbb4; &#xbb5; &#xbb6; &#xbb7; &#xbb8; &#xbb9; &#xbbe; &#xbbf; &#xbc0; &#xbc1; &#xbc2; &#xbc6; &#xbc7; &#xbc8; &#xbca; &#xbcb; &#xbcc; &#xbcd; &#xbd0; &#xbd7; &#xbe6; &#xbe7; &#xbe8; &#xbe9; &#xbea; &#xbeb; &#xbec; &#xbed; &#xbee; &#xbef; &#xbf0; &#xbf1; &#xbf2; &#xbf3; &#xbf4; &#xbf5; &#xbf6; &#xbf7; &#xbf8; &#xbf9; &#xbfa;

### Telugu (U+0C00 - U+0C7F)
&#xc00; &#xc01; &#xc02; &#xc03; &#xc05; &#xc06; &#xc07; &#xc08; &#xc09; &#xc0a; &#xc0b; &#xc0c; &#xc0e; &#xc0f; &#xc10; &#xc12; &#xc13; &#xc14; &#xc15; &#xc16; &#xc17; &#xc18; &#xc19; &#xc1a; &#xc1b; &#xc1c; &#xc1d; &#xc1e; &#xc1f; &#xc20; &#xc21; &#xc22; &#xc23; &#xc24; &#xc25; &#xc26; &#xc27; &#xc28; &#xc2a; &#xc2b; &#xc2c; &#xc2d; &#xc2e; &#xc2f; &#xc30; &#xc31; &#xc32; &#xc33; &#xc34; &#xc35; &#xc36; &#xc37; &#xc38; &#xc39; &#xc3d; &#xc3e; &#xc3f; &#xc40; &#xc41; &#xc42; &#xc43; &#xc44; &#xc46; &#xc47; &#xc48; &#xc4a; &#xc4b; &#xc4c; &#xc4d; &#xc55; &#xc56; &#xc58; &#xc59; &#xc5a; &#xc60; &#xc61; &#xc62; &#xc63; &#xc66; &#xc67; &#xc68; &#xc69; &#xc6a; &#xc6b; &#xc6c; &#xc6d; &#xc6e; &#xc6f; &#xc78; &#xc79; &#xc7a; &#xc7b; &#xc7c; &#xc7d; &#xc7e; &#xc7f;

### Kannada (U+0C80 - U+0CFF)
&#xc80; &#xc81; &#xc82; &#xc83; &#xc85; &#xc86; &#xc87; &#xc88; &#xc89; &#xc8a; &#xc8b; &#xc8c; &#xc8e; &#xc8f; &#xc90; &#xc92; &#xc93; &#xc94; &#xc95; &#xc96; &#xc97; &#xc98; &#xc99; &#xc9a; &#xc9b; &#xc9c; &#xc9d; &#xc9e; &#xc9f; &#xca0; &#xca1; &#xca2; &#xca3; &#xca4; &#xca5; &#xca6; &#xca7; &#xca8; &#xcaa; &#xcab; &#xcac; &#xcad; &#xcae; &#xcaf; &#xcb0; &#xcb1; &#xcb2; &#xcb3; &#xcb5; &#xcb6; &#xcb7; &#xcb8; &#xcb9; &#xcbc; &#xcbd; &#xcbe; &#xcbf; &#xcc0; &#xcc1; &#xcc2; &#xcc3; &#xcc4; &#xcc6; &#xcc7; &#xcc8; &#xcca; &#xccb; &#xccc; &#xccd; &#xcd5; &#xcd6; &#xcde; &#xce0; &#xce1; &#xce2; &#xce3; &#xce6; &#xce7; &#xce8; &#xce9; &#xcea; &#xceb; &#xcec; &#xced; &#xcee; &#xcef; &#xcf1; &#xcf2;

### Malayalam (U+0D00 - U+0D7F)
&#xd00; &#xd01; &#xd02; &#xd03; &#xd05; &#xd06; &#xd07; &#xd08; &#xd09; &#xd0a; &#xd0b; &#xd0c; &#xd0e; &#xd0f; &#xd10; &#xd12; &#xd13; &#xd14; &#xd15; &#xd16; &#xd17; &#xd18; &#xd19; &#xd1a; &#xd1b; &#xd1c; &#xd1d; &#xd1e; &#xd1f; &#xd20; &#xd21; &#xd22; &#xd23; &#xd24; &#xd25; &#xd26; &#xd27; &#xd28; &#xd29; &#xd2a; &#xd2b; &#xd2c; &#xd2d; &#xd2e; &#xd2f; &#xd30; &#xd31; &#xd32; &#xd33; &#xd34; &#xd35; &#xd36; &#xd37; &#xd38; &#xd39; &#xd3a; &#xd3b; &#xd3c; &#xd3d; &#xd3e; &#xd3f; &#xd40; &#xd41; &#xd42; &#xd43; &#xd44; &#xd46; &#xd47; &#xd48; &#xd4a; &#xd4b; &#xd4c; &#xd4d; &#xd4e; &#xd4f; &#xd54; &#xd55; &#xd56; &#xd57; &#xd58; &#xd59; &#xd5a; &#xd5b; &#xd5c; &#xd5d; &#xd5e; &#xd5f; &#xd60; &#xd61; &#xd62; &#xd63; &#xd66; &#xd67; &#xd68; &#xd69; &#xd6a; &#xd6b; &#xd6c; &#xd6d; &#xd6e; &#xd6f; &#xd70; &#xd71; &#xd72; &#xd73; &#xd74; &#xd75; &#xd76; &#xd77; &#xd78; &#xd79; &#xd7a; &#xd7b; &#xd7c; &#xd7d; &#xd7e; &#xd7f;

### Sinhala (U+0D80 - U+0DFF)
&#xd82; &#xd83; &#xd85; &#xd86; &#xd87; &#xd88; &#xd89; &#xd8a; &#xd8b; &#xd8c; &#xd8d; &#xd8e; &#xd8f; &#xd90; &#xd91; &#xd92; &#xd93; &#xd94; &#xd95; &#xd96; &#xd9a; &#xd9b; &#xd9c; &#xd9d; &#xd9e; &#xd9f; &#xda0; &#xda1; &#xda2; &#xda3; &#xda4; &#xda5; &#xda6; &#xda7; &#xda8; &#xda9; &#xdaa; &#xdab; &#xdac; &#xdad; &#xdae; &#xdaf; &#xdb0; &#xdb1; &#xdb3; &#xdb4; &#xdb5; &#xdb6; &#xdb7; &#xdb8; &#xdb9; &#xdba; &#xdbb; &#xdbd; &#xdc0; &#xdc1; &#xdc2; &#xdc3; &#xdc4; &#xdc5; &#xdc6; &#xdca; &#xdcf; &#xdd0; &#xdd1; &#xdd2; &#xdd3; &#xdd4; &#xdd6; &#xdd8; &#xdd9; &#xdda; &#xddb; &#xddc; &#xddd; &#xdde; &#xddf; &#xde6; &#xde7; &#xde8; &#xde9; &#xdea; &#xdeb; &#xdec; &#xded; &#xdee; &#xdef; &#xdf2; &#xdf3; &#xdf4;; 

### Thai (U+0E00 - U+0E7F)
&#xe01; &#xe02; &#xe03; &#xe04; &#xe05; &#xe06; &#xe07; &#xe08; &#xe09; &#xe0a; &#xe0b; &#xe0c; &#xe0d; &#xe0e; &#xe0f; &#xe10; &#xe11; &#xe12; &#xe13; &#xe14; &#xe15; &#xe16; &#xe17; &#xe18; &#xe19; &#xe1a; &#xe1b; &#xe1c; &#xe1d; &#xe1e; &#xe1f; &#xe20; &#xe21; &#xe22; &#xe23; &#xe24; &#xe25; &#xe26; &#xe27; &#xe28; &#xe29; &#xe2a; &#xe2b; &#xe2c; &#xe2d; &#xe2e; &#xe2f; &#xe30; &#xe31; &#xe32; &#xe33; &#xe34; &#xe35; &#xe36; &#xe37; &#xe38; &#xe39; &#xe3a; &#xe3f; &#xe40; &#xe41; &#xe42; &#xe43; &#xe44; &#xe45; &#xe46; &#xe47; &#xe48; &#xe49; &#xe4a; &#xe4b; &#xe4c; &#xe4d; &#xe4e; &#xe4f; &#xe50; &#xe51; &#xe52; &#xe53; &#xe54; &#xe55; &#xe56; &#xe57; &#xe58; &#xe59; &#xe5a; &#xe5b;

### Lao (U+0E80 - U+0EFF)
&#xe81; &#xe82; &#xe84; &#xe87; &#xe88; &#xe8a; &#xe8d; &#xe94; &#xe95; &#xe96; &#xe97; &#xe99; &#xe9a; &#xe9b; &#xe9c; &#xe9d; &#xe9e; &#xe9f; &#xea1; &#xea2; &#xea3; &#xea5; &#xea7; &#xeaa; &#xeab; &#xead; &#xeae; &#xeaf; &#xeb0; &#xeb1; &#xeb2; &#xeb3; &#xeb4; &#xeb5; &#xeb6; &#xeb7; &#xeb8; &#xeb9; &#xebb; &#xebc; &#xebd; &#xec0; &#xec1; &#xec2; &#xec3; &#xec4; &#xec6; &#xec8; &#xec9; &#xeca; &#xecb; &#xecc; &#xecd; &#xed0; &#xed1; &#xed2; &#xed3; &#xed4; &#xed5; &#xed6; &#xed7; &#xed8; &#xed9; &#xedc; &#xedd; &#xede; &#xedf;

### Tibetan (U+0F00 - U+0FFF)
&#xf00; &#xf01; &#xf02; &#xf03; &#xf04; &#xf05; &#xf06; &#xf07; &#xf08; &#xf09; &#xf0a; &#xf0b; &#xf0c; &#xf0d; &#xf0e; &#xf0f; &#xf10; &#xf11; &#xf12; &#xf13; &#xf14; &#xf15; &#xf16; &#xf17; &#xf18; &#xf19; &#xf1a; &#xf1b; &#xf1c; &#xf1d; &#xf1e; &#xf1f; &#xf20; &#xf21; &#xf22; &#xf23; &#xf24; &#xf25; &#xf26; &#xf27; &#xf28; &#xf29; &#xf2a; &#xf2b; &#xf2c; &#xf2d; &#xf2e; &#xf2f; &#xf30; &#xf31; &#xf32; &#xf33; &#xf34; &#xf35; &#xf36; &#xf37; &#xf38; &#xf39; &#xf3a; &#xf3b; &#xf3c; &#xf3d; &#xf3e; &#xf3f; &#xf40; &#xf41; &#xf42; &#xf43; &#xf44; &#xf45; &#xf46; &#xf47; &#xf49; &#xf4a; &#xf4b; &#xf4c; &#xf4d; &#xf4e; &#xf4f; &#xf50; &#xf51; &#xf52; &#xf53; &#xf54; &#xf55; &#xf56; &#xf57; &#xf58; &#xf59; &#xf5a; &#xf5b; &#xf5c; &#xf5d; &#xf5e; &#xf5f; &#xf60; &#xf61; &#xf62; &#xf63; &#xf64; &#xf65; &#xf66; &#xf67; &#xf68; &#xf69; &#xf6a; &#xf6b; &#xf6c; &#xf71; &#xf72; &#xf73; &#xf74; &#xf75; &#xf76; &#xf77; &#xf78; &#xf79; &#xf7a; &#xf7b; &#xf7c; &#xf7d; &#xf7e; &#xf7f; &#xf80; &#xf81; &#xf82; &#xf83; &#xf84; &#xf85; &#xf86; &#xf87; &#xf88; &#xf89; &#xf8a; &#xf8b; &#xf8c; &#xf8d; &#xf8e; &#xf8f; &#xf90; &#xf91; &#xf92; &#xf93; &#xf94; &#xf95; &#xf96; &#xf97; &#xf99; &#xf9a; &#xf9b; &#xf9c; &#xf9d; &#xf9e; &#xf9f; &#xfa0; &#xfa1; &#xfa2; &#xfa3; &#xfa4; &#xfa5; &#xfa6; &#xfa7; &#xfa8; &#xfa9; &#xfaa; &#xfab; &#xfac; &#xfad; &#xfae; &#xfaf; &#xfb0; &#xfb1; &#xfb2; &#xfb3; &#xfb4; &#xfb5; &#xfb6; &#xfb7; &#xfb8; &#xfb9; &#xfba; &#xfbb; &#xfbc; &#xfbe; &#xfbf; &#xfc0; &#xfc1; &#xfc2; &#xfc3; &#xfc4; &#xfc5; &#xfc6; &#xfc7; &#xfc8; &#xfc9; &#xfca; &#xfcb; &#xfcc; &#xfce; &#xfcf; &#xfd0; &#xfd1; &#xfd2; &#xfd3; &#xfd4; &#xfd5; &#xfd6; &#xfd7; &#xfd8; &#xfd9; &#xfda;

### Myanmar (U+1000 - U+109F)
&#x1000; &#x1001; &#x1002; &#x1003; &#x1004; &#x1005; &#x1006; &#x1007; &#x1008; &#x1009; &#x100a; &#x100b; &#x100c; &#x100d; &#x100e; &#x100f; &#x1010; &#x1011; &#x1012; &#x1013; &#x1014; &#x1015; &#x1016; &#x1017; &#x1018; &#x1019; &#x101a; &#x101b; &#x101c; &#x101d; &#x101e; &#x101f; &#x1020; &#x1021; &#x1022; &#x1023; &#x1024; &#x1025; &#x1026; &#x1027; &#x1028; &#x1029; &#x102a; &#x102b; &#x102c; &#x102d; &#x102e; &#x102f; &#x1030; &#x1031; &#x1032; &#x1033; &#x1034; &#x1035; &#x1036; &#x1037; &#x1038; &#x1039; &#x103a; &#x103b; &#x103c; &#x103d; &#x103e; &#x103f; &#x1040; &#x1041; &#x1042; &#x1043; &#x1044; &#x1045; &#x1046; &#x1047; &#x1048; &#x1049; &#x104a; &#x104b; &#x104c; &#x104d; &#x104e; &#x104f; &#x1050; &#x1051; &#x1052; &#x1053; &#x1054; &#x1055; &#x1056; &#x1057; &#x1058; &#x1059; &#x105a; &#x105b; &#x105c; &#x105d; &#x105e; &#x105f; &#x1060; &#x1061; &#x1062; &#x1063; &#x1064; &#x1065; &#x1066; &#x1067; &#x1068; &#x1069; &#x106a; &#x106b; &#x106c; &#x106d; &#x106e; &#x106f; &#x1070; &#x1071; &#x1072; &#x1073; &#x1074; &#x1075; &#x1076; &#x1077; &#x1078; &#x1079; &#x107a; &#x107b; &#x107c; &#x107d; &#x107e; &#x107f; &#x1080; &#x1081; &#x1082; &#x1083; &#x1084; &#x1085; &#x1086; &#x1087; &#x1088; &#x1089; &#x108a; &#x108b; &#x108c; &#x108d; &#x108e; &#x108f; &#x1090; &#x1091; &#x1092; &#x1093; &#x1094; &#x1095; &#x1096; &#x1097; &#x1098; &#x1099; &#x109a; &#x109b; &#x109c; &#x109d; &#x109e; &#x109f;

### Georgian (U+10A0 - U+10FF)
&#x10a0; &#x10a1; &#x10a2; &#x10a3; &#x10a4; &#x10a5; &#x10a6; &#x10a7; &#x10a8; &#x10a9; &#x10aa; &#x10ab; &#x10ac; &#x10ad; &#x10ae; &#x10af; &#x10b0; &#x10b1; &#x10b2; &#x10b3; &#x10b4; &#x10b5; &#x10b6; &#x10b7; &#x10b8; &#x10b9; &#x10ba; &#x10bb; &#x10bc; &#x10bd; &#x10be; &#x10bf; &#x10c0; &#x10c1; &#x10c2; &#x10c3; &#x10c4; &#x10c5; &#x10c7; &#x10cd; &#x10d0; &#x10d1; &#x10d2; &#x10d3; &#x10d4; &#x10d5; &#x10d6; &#x10d7; &#x10d8; &#x10d9; &#x10da; &#x10db; &#x10dc; &#x10dd; &#x10de; &#x10df; &#x10e0; &#x10e1; &#x10e2; &#x10e3; &#x10e4; &#x10e5; &#x10e6; &#x10e7; &#x10e8; &#x10e9; &#x10ea; &#x10eb; &#x10ec; &#x10ed; &#x10ee; &#x10ef; &#x10f0; &#x10f1; &#x10f2; &#x10f3; &#x10f4; &#x10f5; &#x10f6; &#x10f7; &#x10f8; &#x10f9; &#x10fa; &#x10fb; &#x10fc; &#x10fd; &#x10fe; &#x10ff;

### General Punctuation (U+2000 - U+206F)
&#x2000; &#x2001; &#x2002; &#x2003; &#x2004; &#x2005; &#x2006; &#x2007; &#x2008; &#x2009; &#x200a; &#x200b; &#x200c; &#x200d; &#x200e; &#x200f; &#x2010; &#x2011; &#x2012; &#x2013; &#x2014; &#x2015; &#x2016; &#x2017; &#x2018; &#x2019; &#x201a; &#x201b; &#x201c; &#x201d; &#x201e; &#x201f; &#x2020; &#x2021; &#x2022; &#x2023; &#x2024; &#x2025; &#x2026; &#x2027; &#x2028; &#x2029; &#x202a; &#x202b; &#x202c; &#x202d; &#x202e; &#x202f; &#x2030; &#x2031; &#x2032; &#x2033; &#x2034; &#x2035; &#x2036; &#x2037;

## General Punctuation の内訳

基本的に range はブロック単位で設定しているが、 General Punctuation ブロック内は文字単位で細かい指定をしている。

|Character|Description|Browser|Weight|
|---|---|---|---|
|U+2000|EN QUAD |&#x2000;| 100|
|U+2001|EM QUAD |&#x2001;| 100|
|U+2002|EN SPACE |&#x2002;| 100|
|U+2003|EM SPACE |&#x2003;| 100|
|U+2004|THREE-PER-EM SPACE |&#x2004;| 100|
|U+2005|FOUR-PER-EM SPACE |&#x2005;| 100|
|U+2006|SIX-PER-EM SPACE |&#x2006;| 100|
|U+2007|FIGURE SPACE |&#x2007;| 100|
|U+2008|PUNCTUATION SPACE |&#x2008;| 100|
|U+2009|THIN SPACE |&#x2009;| 100|
|U+200A|HAIR SPACE |&#x200A;| 100|
|U+200B|ZERO WIDTH SPACE |&#x200B;| 100|
|U+200C|ZERO WIDTH NON-JOINER |&#x200C;| 100|
|U+200D|ZERO WIDTH JOINER |&#x200D;| 100|
|U+200E|LEFT-TO-RIGHT MARK |&#x200E;| 200|
|U+200F|RIGHT-TO-LEFT MARK |&#x200F;| 200|
|U+2010|HYPHEN |&#x2010;| 100|
|U+2011|NON-BREAKING HYPHEN |&#x2011;| 100|
|U+2012|FIGURE DASH |&#x2012;| 100|
|U+2013|EN DASH |&#x2013;| 100|
|U+2014|EM DASH |&#x2014;| 100|
|U+2015|HORIZONTAL BAR |&#x2015;| 100|
|U+2016|DOUBLE VERTICAL LINE |&#x2016;| 100|
|U+2017|DOUBLE LOW LINE |&#x2017;| 100|
|U+2018|LEFT SINGLE QUOTATION MARK |&#x2018;| 100|
|U+2019|RIGHT SINGLE QUOTATION MARK |&#x2019;| 100|
|U+201A|SINGLE LOW-9 QUOTATION MARK |&#x201A;| 100|
|U+201B|SINGLE HIGH-REVERSED-9 QUOTATION MARK |&#x201B;| 100|
|U+201C|LEFT DOUBLE QUOTATION MARK |&#x201C;| 100|
|U+201D|RIGHT DOUBLE QUOTATION MARK |&#x201D;| 100|
|U+201E|DOUBLE LOW-9 QUOTATION MARK |&#x201E;| 100|
|U+201F|DOUBLE HIGH-REVERSED-9 QUOTATION MARK |&#x201F;| 100|
|U+2020|DAGGER |&#x2020;| 200|
|U+2021|DOUBLE DAGGER |&#x2021;| 200|
|U+2022|BULLET |&#x2022;| 200|
|U+2023|TRIANGULAR BULLET |&#x2023;| 200|
|U+2024|ONE DOT LEADER |&#x2024;| 200|
|U+2025|TWO DOT LEADER |&#x2025;| 200|
|U+2026|HORIZONTAL ELLIPSIS |&#x2026;| 200|
|U+2027|HYPHENATION POINT |&#x2027;| 200|
|U+2028|LINE SEPARATOR |&#x2028;| 200|
|U+2029|PARAGRAPH SEPARATOR |&#x2029;| 200|
|U+202A|LEFT-TO-RIGHT EMBEDDING |&#x202A;| 200|
|U+202B|RIGHT-TO-LEFT EMBEDDING |&#x202B;| 200|
|U+202C|POP DIRECTIONAL FORMATTING |&#x202C;| 200|
|U+202D|LEFT-TO-RIGHT OVERRIDE |&#x202D;| 200|
|U+202E|RIGHT-TO-LEFT OVERRIDE |&#x202E;| 200|
|U+202F|NARROW NO-BREAK SPACE |&#x202F;| 200|
|U+2030|PER MILLE SIGN |&#x2030;| 200|
|U+2031|PER TEN THOUSAND SIGN |&#x2031;| 200|
|U+2032|PRIME |&#x2032;| 100|
|U+2033|DOUBLE PRIME |&#x2033;| 100|
|U+2034|TRIPLE PRIME |&#x2034;| 100|
|U+2035|REVERSED PRIME |&#x2035;| 100|
|U+2036|REVERSED DOUBLE PRIME |&#x2036;| 100|
|U+2037|REVERSED TRIPLE PRIME |&#x2037;| 100|
|U+2038|CARET |&#x2038;| 200|
|U+2039|SINGLE LEFT-POINTING ANGLE QUOTATION MARK |&#x2039;| 200|
|U+203A|SINGLE RIGHT-POINTING ANGLE QUOTATION MARK |&#x203A;| 200|
|U+203B|REFERENCE MARK |&#x203B;| 200|
|U+203C|DOUBLE EXCLAMATION MARK |&#x203C;| 200|
|U+203D|INTERROBANG |&#x203D;| 200|
|U+203E|OVERLINE |&#x203E;| 200|
|U+203F|UNDERTIE |&#x203F;| 200|
|U+2040|CHARACTER TIE |&#x2040;| 200|
|U+2041|CARET INSERTION POINT |&#x2041;| 200|
|U+2042|ASTERISM |&#x2042;| 200|
|U+2043|HYPHEN BULLET |&#x2043;| 200|
|U+2044|FRACTION SLASH |&#x2044;| 200|
|U+2045|LEFT SQUARE BRACKET WITH QUILL |&#x2045;| 200|
|U+2046|RIGHT SQUARE BRACKET WITH QUILL |&#x2046;| 200|
|U+2047|DOUBLE QUESTION MARK |&#x2047;| 200|
|U+2048|QUESTION EXCLAMATION MARK |&#x2048;| 200|
|U+2049|EXCLAMATION QUESTION MARK |&#x2049;| 200|
|U+204A|TIRONIAN SIGN ET |&#x204A;| 200|
|U+204B|REVERSED PILCROW SIGN |&#x204B;| 200|
|U+204C|BLACK LEFTWARDS BULLET |&#x204C;| 200|
|U+204D|BLACK RIGHTWARDS BULLET |&#x204D;| 200|
|U+204E|LOW ASTERISK |&#x204E;| 200|
|U+204F|REVERSED SEMICOLON |&#x204F;| 200|
|U+2050|CLOSE UP |&#x2050;| 200|
|U+2051|TWO ASTERISKS ALIGNED VERTICALLY |&#x2051;| 200|
|U+2052|COMMERCIAL MINUS SIGN |&#x2052;| 200|
|U+2053|SWUNG DASH |&#x2053;| 200|
|U+2054|INVERTED UNDERTIE |&#x2054;| 200|
|U+2055|FLOWER PUNCTUATION MARK |&#x2055;| 200|
|U+2056|THREE DOT PUNCTUATION |&#x2056;| 200|
|U+2057|QUADRUPLE PRIME |&#x2057;| 200|
|U+2058|FOUR DOT PUNCTUATION |&#x2058;| 200|
|U+2059|FIVE DOT PUNCTUATION |&#x2059;| 200|
|U+205A|TWO DOT PUNCTUATION |&#x205A;| 200|
|U+205B|FOUR DOT MARK |&#x205B;| 200|
|U+205C|DOTTED CROSS |&#x205C;| 200|
|U+205D|TRICOLON |&#x205D;| 200|
|U+205E|VERTICAL FOUR DOTS |&#x205E;| 200|
|U+205F|MEDIUM MATHEMATICAL SPACE |&#x205F;| 200|
|U+2060|WORD JOINER |&#x2060;| 200|
|U+2061|FUNCTION APPLICATION |&#x2061;| 200|
|U+2062|INVISIBLE TIMES |&#x2062;| 200|
|U+2063|INVISIBLE SEPARATOR |&#x2063;| 200|
|U+2064|INVISIBLE PLUS |&#x2064;| 200|
|U+2066|LEFT-TO-RIGHT ISOLATE |&#x2066;| 200|
|U+2067|RIGHT-TO-LEFT ISOLATE |&#x2067;| 200|
|U+2068|FIRST STRONG ISOLATE |&#x2068;| 200|
|U+2069|POP DIRECTIONAL ISOLATE |&#x2069;| 200|
|U+206A|INHIBIT SYMMETRIC SWAPPING |&#x206A;| 200|
|U+206B|ACTIVATE SYMMETRIC SWAPPING |&#x206B;| 200|
|U+206C|INHIBIT ARABIC FORM SHAPING |&#x206C;| 200|
|U+206D|ACTIVATE ARABIC FORM SHAPING |&#x206D;| 200|
|U+206E|NATIONAL DIGIT SHAPES |&#x206E;| 200|
|U+206F|NOMINAL DIGIT SHAPES |&#x206F;| 200|

## 合字について
ダイアクリティカルマーク付き文字や濁音を結合文字列で表現した場合、合成後の文字にコードポイントが存在する場合は合成済として処理される模様。（事前にNFCで正規化されている？）

&#x304C; (U+304C) → 2文字
&#x304B;&#x3099; (U+304B + U+3099) → 2文字



鼻濁音のように合成後の文字を表すコードポイントが存在しない場合は4文字と数えられる。

&#x304B;&#x309A; (U+304B + U+309A) → 4文字

## 余談
新仕様を見て「全角っぽいのに280文字打てる文字があったら面白いんじゃね？」と思いついたのが調べてみるきっかけだった。

weightが100の文字一覧を眺めた感じだと（フォントにもよると思うが） U+0BF5の &#xBF5; がかなり幅を取っている。（タミル語の年を表す記号らしい）

勿論これは280個並べて投稿する事が可能である。

![0BF5.png](https://qiita-image-store.s3.amazonaws.com/0/60104/b494b377-550d-02a0-7da3-21d1e5724421.png)

（良い子は真似しないでね！）

また、 Halfwidth and fullwidth forms は Weight 100 のレンジに含まれないため、所謂半角カナはデフォルトの2文字とカウントされる。

![halfwidth-katakana.png](https://qiita-image-store.s3.amazonaws.com/0/60104/aa4da291-f535-a050-9353-aa08737f7d17.png)

（文字数の節約には使えない）