カンナダ語の結合文字

  1. Kuro 様

    先日は 3.2.9 の結合文字のテスト結果と声調記号の提案について
    細部にまでご検討をいただき、ありがとうございました。

    提案についてご指摘いただきましたことは、おっしゃる通りです。
    Unicode の仕様では、通常のリガチャのルールに沿って、と記述
    されています。

    ただし、フォント内部では、任意選択のリガチャではなく、常に
    置換される結合文字の扱いで設定されています。

    メモ帳はいつも "liga" によるリガチャが有効で、VS Code は設定で
    リガチャを有効にできます。
    どちらもすでにリガチャの機能があるので、それを転用することが
    できるのですが…、

    Mery にはそれがありません。早くからプロポーショナル・フォントに
    対応していますが、それと共に使って効果が発揮される、複数の文字を
    より少ない数のグリフに置き換えて、短く表示するリガチャ機能はない、
    と理解していました。

    考えが安易に過ぎました。これを結合文字で代用しようとしたのですが、
    間違っていました。先の提案は取り下げます。すみません。

    Mery では、範囲選択、検索結果の強調表示、強調表示、マーカーなどで、
    結合文字ではない結合表示(リガチャ)の一部が色付けされると、グリフ
    の結合表示が分解します。
    メモ帳と VS Code では一部が範囲になっても結合表示のままです。

    しかし、多彩で柔軟な表示設定が Mery の良いところなので、それとの
    トレードオフだと考えれば、納得できます。

    リガチャの内部のカーソル移動はご推測の方法が実用されていると思い
    ます。

    フォントからリガチャ内部の位置を知らせることはできるのですが、
    もともと幅を短く表示するための合成なので、近い位置をそれほど厳密
    に合わせるよりは、文字数で割った位置を使っても、さほど不自由には
    ならないためか、Windows ではその位置を提供しないフォントも多く、
    この情報に頼ることができません。

    さて、やっと見出しにたどり着きます。

    Mery 3.2.9 の結合文字をテストしていて、見落とした点がありました。

    結合文字 (Nonspacing_mark) Mn を表示するマーカーを作りました。

    \P{M}[\p{Mn}\p{Me}]+(?![\p{Mc}\x{0E33}\x{0EB3}])

    これで MeryPortable 3.2.9 の検証データを見直すと…、

    カンナダ語  Kannada
    ನೀವು COVID-19 ಲಸಿಕೆ ಹಾಕಿದ್ದೀರಾ?
      ಹೌದು ನಾನೆ.
      ಇಲ್ಲ ನಾನಲ್ಲ.

    の結合文字の範囲に空白があります。

    次の文字を Mery が結合文字と判定していないので、ちょうどリガチャ
    のようになっています。
    U+0CBF
    U+0CC6

    0CBF;KANNADA VOWEL SIGN I;Mn;0;L;;;;;N;;;;;
    0CC6;KANNADA VOWEL SIGN E;Mn;0;L;;;;;N;;;;;

    これは、判定に使っている
    MECSUtils 1.57
    Updated on Wed, 23 Mar 2016 22:06:26 GMT

    が更新されていないため、その後に追加された結合文字に対応できて
    いないためだろうと推測しました。


    ということで更新した定数テーブルに、タイ語 U+0E33 ラオ語 U+0EB3
    を追加したものを作りました。
    MECSUtils の該当部分を差し替えてお試しいただけるとありがたいです。

    Unicode 13.0 対応です。

    MECSUtils_tmp_1_57_r13.txt

        $0300..$036F,
        $0483..$0489,
        $0591..$05BD,
        $05BF..$05BF,
        $05C1..$05C2,
        $05C4..$05C5,
        $05C7..$05C7,
        $0610..$061A,
        $064B..$065F,
        $0670..$0670,
        $06D6..$06DC,
        $06DE..$06E4,
        $06E7..$06E8,
        $06EA..$06ED,
        $0711..$0711,
        $0730..$074A,
        $07A6..$07B0,
        $07EB..$07F3,
        $07FD..$07FD,
        $0816..$0819,
        $081B..$0823,
        $0825..$0827,
        $0829..$082D,
        $0859..$085B,
        $08D3..$08E1,
        $08E3..$08FF,
        $0900..$0903,
        $093A..$093C,
        $093E..$094F,
        $0951..$0957,
        $0962..$0963,
        $0981..$0983,
        $09BC..$09BC,
        $09BE..$09C4,
        $09C7..$09C8,
        $09CB..$09CD,
        $09D7..$09D7,
        $09E2..$09E3,
        $09FE..$09FE,
        $0A01..$0A03,
        $0A3C..$0A3C,
        $0A3E..$0A42,
        $0A47..$0A48,
        $0A4B..$0A4D,
        $0A51..$0A51,
        $0A70..$0A71,
        $0A75..$0A75,
        $0A81..$0A83,
        $0ABC..$0ABC,
        $0ABE..$0AC5,
        $0AC7..$0AC9,
        $0ACB..$0ACD,
        $0AE2..$0AE3,
        $0AFA..$0AFF,
        $0B01..$0B03,
        $0B3C..$0B3C,
        $0B3E..$0B44,
        $0B47..$0B48,
        $0B4B..$0B4D,
        $0B55..$0B57,
        $0B62..$0B63,
        $0B82..$0B82,
        $0BBE..$0BC2,
        $0BC6..$0BC8,
        $0BCA..$0BCD,
        $0BD7..$0BD7,
        $0C00..$0C04,
        $0C3E..$0C44,
        $0C46..$0C48,
        $0C4A..$0C4D,
        $0C55..$0C56,
        $0C62..$0C63,
        $0C81..$0C83,
        $0CBC..$0CBC,
        $0CBE..$0CBF,
        $0CC0..$0CC4,
        $0CC6..$0CC8,
        $0CCA..$0CCD,
        $0CD5..$0CD6,
        $0CE2..$0CE3,
        $0D00..$0D03,
        $0D3B..$0D3C,
        $0D3E..$0D44,
        $0D46..$0D48,
        $0D4A..$0D4D,
        $0D57..$0D57,
        $0D62..$0D63,
        $0D81..$0D83,
        $0DCA..$0DCA,
        $0DCF..$0DD4,
        $0DD6..$0DD6,
        $0DD8..$0DDF,
        $0DF2..$0DF3,
        $0E31..$0E31,
        $0E33..$0E3A,
        $0E47..$0E4E,
        $0EB1..$0EB1,
        $0EB3..$0EBC,
        $0EC8..$0ECD,
        $0F18..$0F19,
        $0F35..$0F35,
        $0F37..$0F37,
        $0F39..$0F39,
        $0F3E..$0F3F,
        $0F71..$0F84,
        $0F86..$0F87,
        $0F8D..$0F97,
        $0F99..$0FBC,
        $0FC6..$0FC6,
        $102B..$103E,
        $1056..$1059,
        $105E..$1060,
        $1062..$1064,
        $1067..$106D,
        $1071..$1074,
        $1082..$108D,
        $108F..$108F,
        $109A..$109D,
        $135D..$135F,
        $1712..$1714,
        $1732..$1734,
        $1752..$1753,
        $1772..$1773,
        $17B4..$17D3,
        $17DD..$17DD,
        $180B..$180D,
        $1885..$1886,
        $18A9..$18A9,
        $1920..$192B,
        $1930..$193B,
        $19B0..$19C0,
        $19C8..$19C9,
        $1A17..$1A1B,
        $1A55..$1A5E,
        $1A60..$1A7C,
        $1A7F..$1A7F,
        $1AB0..$1AC0,
        $1B00..$1B04,
        $1B34..$1B44,
        $1B6B..$1B73,
        $1B80..$1B82,
        $1BA1..$1BAD,
        $1BE6..$1BF3,
        $1C24..$1C37,
        $1CD0..$1CD2,
        $1CD4..$1CE8,
        $1CED..$1CED,
        $1CF4..$1CF4,
        $1CF7..$1CF9,
        $1DC0..$1DF9,
        $1DFB..$1DFF,
        $20D0..$20F0,
        $2CEF..$2CF1,
        $2D7F..$2D7F,
        $2DE0..$2DFF,
        $302A..$302F,
        $3099..$309A,
        $A66F..$A672,
        $A674..$A67D,
        $A69E..$A69F,
        $A6F0..$A6F1,
        $A802..$A802,
        $A806..$A806,
        $A80B..$A80B,
        $A823..$A827,
        $A82C..$A82C,
        $A880..$A881,
        $A8B4..$A8C5,
        $A8E0..$A8F1,
        $A8FF..$A8FF,
        $A926..$A92D,
        $A947..$A953,
        $A980..$A983,
        $A9B3..$A9C0,
        $A9E5..$A9E5,
        $AA29..$AA36,
        $AA43..$AA43,
        $AA4C..$AA4D,
        $AA7B..$AA7D,
        $AAB0..$AAB0,
        $AAB2..$AAB4,
        $AAB7..$AAB8,
        $AABE..$AABF,
        $AAC1..$AAC1,
        $AAEB..$AAEF,
        $AAF5..$AAF6,
        $ABE3..$ABEA,
        $ABEC..$ABED,
        $FB1E..$FB1E,
        $FE00..$FE0F,
        $FE20..$FE2F,
        $101FD..$101FD,
        $102E0..$102E0,
        $10376..$1037A,
        $10A01..$10A03,
        $10A05..$10A06,
        $10A0C..$10A0F,
        $10A38..$10A3A,
        $10A3F..$10A3F,
        $10AE5..$10AE6,
        $10D24..$10D27,
        $10EAB..$10EAC,
        $10F46..$10F50,
        $11000..$11002,
        $11038..$11046,
        $1107F..$1107F,
        $11080..$11082,
        $110B0..$110BA,
        $11100..$11102,
        $11127..$11134,
        $11145..$11146,
        $11173..$11173,
        $11180..$11182,
        $111B3..$111C0,
        $111C9..$111CC,
        $111CE..$111CF,
        $1122C..$11237,
        $1123E..$1123E,
        $112DF..$112EA,
        $11300..$11303,
        $1133B..$1133C,
        $1133E..$11344,
        $11347..$11348,
        $1134B..$1134D,
        $11357..$11357,
        $11362..$11363,
        $11366..$1136C,
        $11370..$11374,
        $11435..$11446,
        $1145E..$1145E,
        $114B0..$114BF,
        $114C0..$114C3,
        $115AF..$115B5,
        $115B8..$115C0,
        $115DC..$115DD,
        $11630..$11640,
        $116AB..$116B7,
        $1171D..$1172B,
        $1182C..$1183A,
        $119D1..$119D7,
        $119DA..$119E0,
        $119E4..$119E4,
        $11A01..$11A0A,
        $11A33..$11A39,
        $11A3B..$11A3E,
        $11A47..$11A47,
        $11A51..$11A5B,
        $11A8A..$11A99,
        $11C2F..$11C3F,
        $11C92..$11CA7,
        $11CA9..$11CB6,
        $11D31..$11D36,
        $11D3A..$11D3A,
        $11D3C..$11D3D,
        $11D3F..$11D45,
        $11D47..$11D47,
        $11D8A..$11D8E,
        $11D90..$11D91,
        $11D93..$11D97,
        $11EF3..$11EF6,
        $16AF0..$16AF4,
        $16B30..$16B36,
        $16F4F..$16F4F,
        $16F51..$16F87,
        $16F8F..$16F92,
        $16FE4..$16FE4,
        $16FF0..$16FF1,
        $1BC9D..$1BC9E,
        $1D165..$1D169,
        $1D16D..$1D172,
        $1D17B..$1D182,
        $1D185..$1D18B,
        $1D1AA..$1D1AD,
        $1D242..$1D244,
        $1DA00..$1DA36,
        $1DA3B..$1DA6C,
        $1DA75..$1DA75,
        $1DA84..$1DA84,
        $1DA9B..$1DAAF,
        $1E000..$1E02A,
        $1E130..$1E136,
        $1E2EC..$1E2EF,
        $1E8D0..$1E8D6,
        $1E944..$1E94A,
        $E0100..$E01EF:

    よろしくお願いいたします。

     |  虚  |  返信
  2. こちらこそ、貴重な情報をありがとうございました。

    いただいた情報をもとに調査をしていたのですが、私の技術力の範囲を大きく超えている内容なため、非常に時間がかかってしまいました、すみません。

    挙句、成果はほとんどなかったのですが、一応、進捗のご報告ということでご容赦ください。

    > ただし、フォント内部では、任意選択のリガチャではなく、常に
    > 置換される結合文字の扱いで設定されています。

    U+02E5 U+02E9 の件ですね。リガチャとは挙動が異なるな、とは思っていましたがそんな仕様になっていたとは。

    > Mery では、範囲選択、検索結果の強調表示、強調表示、マーカーなどで、結合文字ではない結合表示(リガチャ)の一部が色付けされると、グリフの結合表示が分解します。

    そうですね。結合文字の場合は MECSUtils で結合文字かどうかを判断できるので描画が分断されないように制御しているのですが、リガチャの場合はそれが判断できないため、Mery 側の色付けの切れ目で分断されてしまいます。

    おっしゃるとおり、これは色分けで [文字色] が変更できることとトレードオフになってしまう部分だと思います。

    > メモ帳と VS Code では一部が範囲になっても結合表示のままです。

    一応、Mery でも [選択範囲] に限ってはリガチャの結合表示を維持できているはずです。

    > フォントからリガチャ内部の位置を知らせることはできるのですが、もともと幅を短く表示するための合成なので、近い位置をそれほど厳密に合わせるよりは、文字数で割った位置を使っても、さほど不自由にはならないためか、Windows ではその位置を提供しないフォントも多く、この情報に頼ることができません。

    調べてみましたところ、確かに DirectWrite でリガチャの途中で分割されたキャレット位置を取得できるような機能は見つかったのですが、これは DirectWrite の機能に大きく依存するので GDI を捨てる覚悟がないと厳しいと思いました。

    開発に挑戦してみたのですが GDI で実装している部分と競合する部分が多く、これに対応するためにはゼロから DirectWrite でエディターを開発したほうが早いような気がします。

    また、技術的にはリガチャの途中で分割された部分で色を分けることもできるようですが、これは DirectWrite で可能なのか、自分でレンダラーを用意する必要があるのかまではちょっと分かっていません。

    > リガチャの内部のカーソル移動はご推測の方法が実用されていると思います。

    単純に割り算でカーソル移動する方法ですね。その後、調べていてそれっぽい情報が見つかりましたが、「キャレットを 1 / m の方法で合字に移動する」という方法が MS の公式ブログに掲載されているのはなんとも…。

    https://docs.microsoft.com/ja-jp/archive/blogs/murrays/ligatures-clusters-combining-marks-and-variation-sequences

    しかし、この方法を使うにしても、まずは、その文字がリガチャなのかどうかを判別する手段が必要となります。

    そしてそれを判別するためには DirectWrite の複雑な処理が必要と…。(IDWriteTextAnalyzer の GetGlyphs で actualGlyphCount の数を調べる?← これがまったく動作しなくて、情報もほとんどなくてお手上げ)

    > ということで更新した定数テーブルに、タイ語 U+0E33 ラオ語 U+0EB3
    > を追加したものを作りました。
    > MECSUtils の該当部分を差し替えてお試しいただけるとありがたいです。

    ご協力ありがとうございます。

    確かに、MECSUtils、更新されてないです。前回、タイ語 U+0E33 ラオ語 U+0EB3 は追加しましたが、それ以外の部分も見直す必要がありそうですね。

    > MECSUtils_tmp_1_57_r13.txt

    カンナダ語につきましては含める方向で問題ありません。

    いただいたデータをもとに私のほうでも確認してみたのですが、ちょっと気になる点があったのでご確認いただければと思います。

    まず、いただいたデータの元となっているデータは以下のもので合っていますでしょうか?
    https://www.unicode.org/Public/UNIDATA/UnicodeData.txt

    ↑ Unicode 13.0 がこのデータなのかどうかわからなかったもので、そもそもこれが違っていたら私の検証がゴミと化してしまいますが ^^;

    前提条件として Mc, Mn, Me に分類されているものを確認してみました。タイ語 U+0E33 ラオ語 U+0EB3 は含めるものとしています。

    $06DE..$06E4,

    この部分、U+06DE は Mc, Mn, Me に該当しないようですが、必要ありますか?

    $19B0..$19C0,
    $19C8..$19C9,

    これらも Mc, Mn, Me に該当しないようですが、タイ語の関連で含める必要がありそうですか?

    $11930..$11943,

    UnicodeData.txt だと、これらは Mc, Mn, Me に該当しますが、いただいたデータには含まれていないようです。含めたほうが良いでしょうか?

    目視で確認したもので間違っていたらすみません。

    よろしくお願いいたします。

     |  Kuro  |  返信
  3. 追伸です。

    以下の箇所につきまして…

    $06DE..$06E4,
    $19B0..$19C0,
    $19C8..$19C9,

    > この部分、U+06DE は Mc, Mn, Me に該当しないようですが、必要ありますか?

    すみません、これらは新たに追加されたものではなく、もともと MECSUtils に含まれていたのですね、失礼しました。このあたりはそっとしておいたほうが良さそうですね。

     |  Kuro  |  返信
  4. ありがとうございます。
    大変にお手数をおかけしてしまって、すみません。

    恐縮ですが、リガチャについてのお話はのちほどにさせていただきます。

    お送りした定数データの詳細な照合をしていただき、本当に助かりました。

    以下、データに関するご指摘の内容についてです。

    > まず、いただいたデータの元となっているデータは以下のもので合っていますでしょうか?
    > https://www.unicode.org/Public/UNIDATA/UnicodeData.txt

    はい、これは Unicode 13.0 の内容です。

    https://www.unicode.org/Public/UNIDATA/Readme.txt

    --------------------------------------------------------------------------------
    # Unicode Character Database
    # Date: 2020-03-06, 20:34:00 GMT [KW]
    # © 2020 Unicode®, Inc.
    # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
    # For terms of use, see https://www.unicode.org/terms_of_use.html
    #
    # For documentation, see the following:
    # NamesList.html
    # UAX #38, "Unicode Han Database (Unihan)"
    # UAX #44, "Unicode Character Database"
    # UTS #51, "Unicode Emoji"
    #
    # The UAXes and UTS #51 can be accessed at https://www.unicode.org/versions/Unicode13.0.0/
    
    This directory contains the final data files 
    for the Unicode Character Database, for Version 13.0.0 of the Unicode Standard.
    --------------------------------------------------------------------------------

    次の Unicode 14.0 はやがて公開となりますが、まだドラフトです。

    こちらでは UCD (Unicode Code Database) の Zip を使っています。
    仕様は PDF です。
    下のタイムスタンプとサイズは展開したファイルのものです。

    【Unicode 12.1】
    https://www.unicode.org/Public/zipped/12.1.0/
    ReadMe.txt 2019/04/30 9:49 1 KB
    UCD.zip 2019/05/07 8:02 8214 KB
    Unihan.zip 2019/05/07 8:02 6592 KB

    https://www.unicode.org/Versions/Unicode12.0.0/
    UnicodeStandard-12.0.pdf 2019/03/05 7:10 14,029 KB

    【Unicode 13.0】
    https://www.unicode.org/Public/zipped/13.0.0/
    ReadMe.txt 2020/03/07 9:41 1 KB
    UCD.zip 2020/03/10 8:33 7361 KB
    Unihan.zip 2020/02/20 5:31 6880 KB

    https://www.unicode.org/versions/Unicode13.0.0/
    UnicodeStandard-13.0.pdf 2020/03/07 8:34 14,031 KB

    --------------------------------------------------------------------------------
    https://www.unicode.org/Public/zipped/13.0.0/UCD.zip

    Unicode 13.0 の UCD.zip から展開した、下記のファイルを使いました。

    UnicodeData.txt 2019/10/04 8:06 1809 KB
    --------------------------------------------------------------------------------

    > 追伸です。
    > すみません、これらは新たに追加されたものではなく、もともと MECSUtils に含まれていたのですね、失礼しました。このあたりはそっとしておいたほうが良さそうですね。

    恐れ入ります。理由がすべてわかりましたので、反映していただきたく思います。

    > $06DE..$06E4,
    >

    Unicode 6.0 2010-10-05 で So に変更されました

    【変更】

    $06DF..$06E4,

    --------------------------------------------------------------------------------
    Arabic

    U+06DE ルブ・エル・ヒズブ

    06DE;ARABIC START OF RUB EL HIZB;So;0;ON;;;;;N;;;;;

    【変更資料】
    https://www.unicode.org/review/pr-171-rub-el-hizb.pdf
    Public Review Issue #171

    Discussion document for polishing Koranic support in Unicode

    Title: Changing the properties of U+06DE from a combining mark to a spacing symbol
    Date: 2010-06-06

    (中略)
    But in Unicode, U+06DE is specified to be a combing character. We believe this to be a simple mistake, since it was encoded next to U+06DD ARABIC END OF AYAH (originally a combining character too). Looking at the reference glyph for U+06DE also confirms this: there is a dotted circle in the glyph, but there is no way something could fit in there.

    Recommendation
    • Change the properties of U+06DE ARABIC START OF RUB EL HIZB from that of a combining mark to a normal spacing symbol. All character properties could be copied from U+06E9 ARABIC PLACE OF SAJDAH. (This does not create any problems for normalization, as the character already has a canonical combining class of 0.) This means a general category of “So”, a bidi class of “ON”, etc.
    • Change the glyph for U+06DE ARABIC START OF RUB EL HIZB to remove the dotted circle.
    (以下略)
    --------------------------------------------------------------------------------

    > $19B0..$19C0,
    > $19C8..$19C9,
    >

    Unicode 8.0 2015-06-30 で Lo に変更されました


    【削除】

    --------------------------------------------------------------------------------
    New Tai Lue
    新タイ・ロ文字

    フォント
    Microsoft New Tai Lue
    --------------------------------------------------------------------------------
    【変更資料】
    https://www.unicode.org/review/pri281/pri281-background.html
    PRI #281: Proposed encoding model change for New Tai Lue, Background Document

    Last revision: 2014/08/29

    This public review issue involves a proposed change to the rendering model for New Tai Lue from logical ordering, in which the pre-base vowels are stored after the initial consonant, to visual order, in which the pre-base vowels are stored before the initial consonant (as is the case for Thai, Lao and Tai Viet). See also document L2/14-090.

    (中略)
    # Modifications to be made if the model is changed
    If New Tai Lue were changed to be a visually ordered script, the following would need to be modified:

    1. Change the General Category of characters U+19B0 .. U+19C0, U+19C8 ..U+19C9 from Mc to Lo. (This would reflect the attitude of users that every character is just a letter.) The pre-base vowel characters U+19B5..U+19B7 and U+19BA will be given the property Logical_Order_Exception=Y.
    2. Collation. Tai Lue is typically sorted in the priority order of: Initial cluster, final consonant, vowel, tone. Supporting this in the DUCET would result in too many contractions. The DUCET currently gives Tai Lue a fallback sorting akin to Thai. In order to keep that same behavior 176 pre-base vowel + initial consonant contractions will be added to the table.
    --------------------------------------------------------------------------------

    Unicode 7.0 2014-07-04(Fri) 16:54

    19B0;NEW TAI LUE VOWEL SIGN VOWEL SHORTENER;Mc;0;L;;;;;N;;;;;
    19B1;NEW TAI LUE VOWEL SIGN AA;Mc;0;L;;;;;N;;;;;
    19B2;NEW TAI LUE VOWEL SIGN II;Mc;0;L;;;;;N;;;;;
    19B3;NEW TAI LUE VOWEL SIGN U;Mc;0;L;;;;;N;;;;;
    19B4;NEW TAI LUE VOWEL SIGN UU;Mc;0;L;;;;;N;;;;;
    19B5;NEW TAI LUE VOWEL SIGN E;Mc;0;L;;;;;N;;;;;
    19B6;NEW TAI LUE VOWEL SIGN AE;Mc;0;L;;;;;N;;;;;
    19B7;NEW TAI LUE VOWEL SIGN O;Mc;0;L;;;;;N;;;;;
    19B8;NEW TAI LUE VOWEL SIGN OA;Mc;0;L;;;;;N;;;;;
    19B9;NEW TAI LUE VOWEL SIGN UE;Mc;0;L;;;;;N;;;;;
    19BA;NEW TAI LUE VOWEL SIGN AY;Mc;0;L;;;;;N;;;;;
    19BB;NEW TAI LUE VOWEL SIGN AAY;Mc;0;L;;;;;N;;;;;
    19BC;NEW TAI LUE VOWEL SIGN UY;Mc;0;L;;;;;N;;;;;
    19BD;NEW TAI LUE VOWEL SIGN OY;Mc;0;L;;;;;N;;;;;
    19BE;NEW TAI LUE VOWEL SIGN OAY;Mc;0;L;;;;;N;;;;;
    19BF;NEW TAI LUE VOWEL SIGN UEY;Mc;0;L;;;;;N;;;;;
    19C0;NEW TAI LUE VOWEL SIGN IY;Mc;0;L;;;;;N;;;;;
    
    19C8;NEW TAI LUE TONE MARK-1;Mc;0;L;;;;;N;;;;;
    19C9;NEW TAI LUE TONE MARK-2;Mc;0;L;;;;;N;;;;;

    Unicode 8.0 2015-06-30

    19B0;NEW TAI LUE VOWEL SIGN VOWEL SHORTENER;Lo;0;L;;;;;N;;;;;
    19B1;NEW TAI LUE VOWEL SIGN AA;Lo;0;L;;;;;N;;;;;
    19B2;NEW TAI LUE VOWEL SIGN II;Lo;0;L;;;;;N;;;;;
    19B3;NEW TAI LUE VOWEL SIGN U;Lo;0;L;;;;;N;;;;;
    19B4;NEW TAI LUE VOWEL SIGN UU;Lo;0;L;;;;;N;;;;;
    19B5;NEW TAI LUE VOWEL SIGN E;Lo;0;L;;;;;N;;;;;
    19B6;NEW TAI LUE VOWEL SIGN AE;Lo;0;L;;;;;N;;;;;
    19B7;NEW TAI LUE VOWEL SIGN O;Lo;0;L;;;;;N;;;;;
    19B8;NEW TAI LUE VOWEL SIGN OA;Lo;0;L;;;;;N;;;;;
    19B9;NEW TAI LUE VOWEL SIGN UE;Lo;0;L;;;;;N;;;;;
    19BA;NEW TAI LUE VOWEL SIGN AY;Lo;0;L;;;;;N;;;;;
    19BB;NEW TAI LUE VOWEL SIGN AAY;Lo;0;L;;;;;N;;;;;
    19BC;NEW TAI LUE VOWEL SIGN UY;Lo;0;L;;;;;N;;;;;
    19BD;NEW TAI LUE VOWEL SIGN OY;Lo;0;L;;;;;N;;;;;
    19BE;NEW TAI LUE VOWEL SIGN OAY;Lo;0;L;;;;;N;;;;;
    19BF;NEW TAI LUE VOWEL SIGN UEY;Lo;0;L;;;;;N;;;;;
    19C0;NEW TAI LUE VOWEL SIGN IY;Lo;0;L;;;;;N;;;;;
    
    19C8;NEW TAI LUE TONE MARK-1;Lo;0;L;;;;;N;;;;;
    19C9;NEW TAI LUE TONE MARK-2;Lo;0;L;;;;;N;;;;;

    --------------------------------------------------------------------------------

    > $11930..$11943,
    >

    Unicode 13.0 2020-03-06 に追加されました


    【追加】

    $11930..$1193E,
    $11940..$11940,
    $11942..$11943,

    誠にすみません。これは私の間違いです。
    DIVES AKURU U+11900 ~ U+11959 の全体が追加されたのですが、その中に
    あったものを見落としました。

    変更 1 行
    削除 2 行
    追加 3 行

    でお願いいたします。

    リガチャのお話は、別にします。
    ご確認いただき、本当にどうもありがとうございました。

     |  虚  |  返信
  5. ご確認と詳細な情報をありがとうございます。

    > 恐れ入ります。理由がすべてわかりましたので、反映していただきたく思います。

    なるほど、ユニコードの仕様が変わっていたのですね。Mc などに追加されることはあっても変更はないと思っていたもので勉強になりました。

    > 変更 1 行
    > 削除 2 行
    > 追加 3 行

    改めて確認いたしました。上記の内容で問題ないと思いますので、次のバージョンで修正しておきますね。

     |  Kuro  |  返信
スポンサーリンク