From 79c6fb310aa1f744dff51c41ef51e751797a567f Mon Sep 17 00:00:00 2001 From: Takuji Tanaka Date: Sun, 23 Jan 2022 09:48:03 +0000 Subject: upTeX v1.28 git-svn-id: svn://tug.org/texlive/trunk@61706 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/texk/web2c/uptexdir/COPYRIGHT | 2 +- Build/source/texk/web2c/uptexdir/COPYRIGHT.ja | 2 +- Build/source/texk/web2c/uptexdir/ChangeLog | 11 +++ Build/source/texk/web2c/uptexdir/kanji.c | 98 +++++++++++++---------- Build/source/texk/web2c/uptexdir/tests/kcat.tex | 67 ++++++++++++++++ Build/source/texk/web2c/uptexdir/tests/upkcat.txt | 38 +++++++++ Build/source/texk/web2c/uptexdir/upbibtex.ch | 32 ++++---- Build/source/texk/web2c/uptexdir/updvitype.ch | 2 +- Build/source/texk/web2c/uptexdir/upkcat.test | 15 ++++ Build/source/texk/web2c/uptexdir/uppltotf.ch | 2 +- Build/source/texk/web2c/uptexdir/uptex-m.ch | 39 ++++----- Build/source/texk/web2c/uptexdir/uptex_version.h | 2 +- Build/source/texk/web2c/uptexdir/uptftopl.ch | 2 +- 13 files changed, 228 insertions(+), 84 deletions(-) create mode 100644 Build/source/texk/web2c/uptexdir/tests/kcat.tex create mode 100644 Build/source/texk/web2c/uptexdir/tests/upkcat.txt create mode 100755 Build/source/texk/web2c/uptexdir/upkcat.test (limited to 'Build/source/texk/web2c/uptexdir') diff --git a/Build/source/texk/web2c/uptexdir/COPYRIGHT b/Build/source/texk/web2c/uptexdir/COPYRIGHT index a92f8732efd..cdc4fa4716b 100644 --- a/Build/source/texk/web2c/uptexdir/COPYRIGHT +++ b/Build/source/texk/web2c/uptexdir/COPYRIGHT @@ -1,5 +1,5 @@ Copyright (C) 2009 ASCII MEDIA WORKS. -Copyright (C) 2007-2020 Takuji Tanaka +Copyright (C) 2007-2022 Takuji Tanaka All rights reserved. Redistribution and use in source and binary forms, with or without diff --git a/Build/source/texk/web2c/uptexdir/COPYRIGHT.ja b/Build/source/texk/web2c/uptexdir/COPYRIGHT.ja index 44ab4156ed8..73eb414f39e 100644 --- a/Build/source/texk/web2c/uptexdir/COPYRIGHT.ja +++ b/Build/source/texk/web2c/uptexdir/COPYRIGHT.ja @@ -4,7 +4,7 @@ 【著作権表示】 Copyright (C) 2009 ASCII MEDIA WORKS. -Copyright (C) 2007-2020 Takuji Tanaka +Copyright (C) 2007-2022 Takuji Tanaka All rights reserved. 【契約条件】 diff --git a/Build/source/texk/web2c/uptexdir/ChangeLog b/Build/source/texk/web2c/uptexdir/ChangeLog index 3f455af6ce3..e277c5a1c15 100644 --- a/Build/source/texk/web2c/uptexdir/ChangeLog +++ b/Build/source/texk/web2c/uptexdir/ChangeLog @@ -1,3 +1,14 @@ +2022-01-23 TANAKA Takuji + + * uptex-m.ch, upbibtex.ch, updvitype.ch, uppltotf.ch, uptftopl.ch, + uptex_version.h: upTeX version u1.28. + * uptex-m.ch, ubbibtex.ch, kanji.c: + Update reference of Unicode blocks to + "Blocks-14.0.0.txt Date: 2021-01-22, 23:29:00 GMT [KW]". + * COPYRIGHT, COPYRIGHT.ja: + Update copyright year. + * upkcat.test, tests/kcat.tex, tests/upkcat.txt: Add a new test. + 2022-01-22 Hironori Kitagawa * uptex-m.ch: Change type of str_pool to unsigned short. diff --git a/Build/source/texk/web2c/uptexdir/kanji.c b/Build/source/texk/web2c/uptexdir/kanji.c index 1149c838908..a73ebf1f3cc 100644 --- a/Build/source/texk/web2c/uptexdir/kanji.c +++ b/Build/source/texk/web2c/uptexdir/kanji.c @@ -56,8 +56,8 @@ integer calc_pos(integer c) } /* Ref. http://www.unicode.org/Public/UNIDATA/Blocks.txt */ -/* # Blocks-13.0.0.txt */ -/* # Date: 2019-07-10, 19:06:00 GMT [KW] */ +/* # Blocks-14.0.0.txt */ +/* # Date: 2021-01-22, 23:29:00 GMT [KW] */ static long ucs_range[]={ 0x0000, /* Basic Latin */ /* 0x00 */ 0x0080, /* Latin-1 Supplement */ @@ -79,6 +79,7 @@ static long ucs_range[]={ 0x0800, /* Samaritan */ 0x0840, /* Mandaic */ 0x0860, /* Syriac Supplement */ + 0x0870, /* Arabic Extended-B */ 0x08A0, /* Arabic Extended-A */ 0x0900, /* Devanagari */ 0x0980, /* Bengali */ @@ -90,8 +91,8 @@ static long ucs_range[]={ 0x0C80, /* Kannada */ 0x0D00, /* Malayalam */ 0x0D80, /* Sinhala */ - 0x0E00, /* Thai */ - 0x0E80, /* Lao */ /* 0x20 */ + 0x0E00, /* Thai */ /* 0x20 */ + 0x0E80, /* Lao */ 0x0F00, /* Tibetan */ 0x1000, /* Myanmar */ 0x10A0, /* Georgian */ @@ -106,8 +107,8 @@ static long ucs_range[]={ 0x1720, /* Hanunoo */ 0x1740, /* Buhid */ 0x1760, /* Tagbanwa */ - 0x1780, /* Khmer */ - 0x1800, /* Mongolian */ /* 0x30 */ + 0x1780, /* Khmer */ /* 0x30 */ + 0x1800, /* Mongolian */ 0x18B0, /* Unified Canadian Aboriginal Syllabics Extended */ 0x1900, /* Limbu */ 0x1950, /* Tai Le */ @@ -122,8 +123,8 @@ static long ucs_range[]={ 0x1C00, /* Lepcha */ 0x1C50, /* Ol Chiki */ 0x1C80, /* Cyrillic Extended-C */ - 0x1C90, /* Georgian Extended */ - 0x1CC0, /* Sundanese Supplement */ /* 0x40 */ + 0x1C90, /* Georgian Extended */ /* 0x40 */ + 0x1CC0, /* Sundanese Supplement */ 0x1CD0, /* Vedic Extensions */ 0x1D00, /* Phonetic Extensions */ 0x1D80, /* Phonetic Extensions Supplement */ @@ -138,8 +139,8 @@ static long ucs_range[]={ 0x2150, /* Number Forms */ 0x2190, /* Arrows */ 0x2200, /* Mathematical Operators */ - 0x2300, /* Miscellaneous Technical */ - 0x2400, /* Control Pictures */ /* 0x50 */ + 0x2300, /* Miscellaneous Technical */ /* 0x50 */ + 0x2400, /* Control Pictures */ 0x2440, /* Optical Character Recognition */ 0x2460, /* Enclosed Alphanumerics */ 0x2500, /* Box Drawing */ @@ -154,8 +155,8 @@ static long ucs_range[]={ 0x2980, /* Miscellaneous Mathematical Symbols-B */ 0x2A00, /* Supplemental Mathematical Operators */ 0x2B00, /* Miscellaneous Symbols and Arrows */ - 0x2C00, /* Glagolitic */ - 0x2C60, /* Latin Extended-C */ /* 0x60 */ + 0x2C00, /* Glagolitic */ /* 0x60 */ + 0x2C60, /* Latin Extended-C */ 0x2C80, /* Coptic */ 0x2D00, /* Georgian Supplement */ 0x2D30, /* Tifinagh */ @@ -170,8 +171,8 @@ static long ucs_range[]={ 0x30A0, /* Katakana */ 0x3100, /* Bopomofo */ 0x3130, /* Hangul Compatibility Jamo */ - 0x3190, /* Kanbun */ - 0x31A0, /* Bopomofo Extended */ /* 0x70 */ + 0x3190, /* Kanbun */ /* 0x70 */ + 0x31A0, /* Bopomofo Extended */ 0x31C0, /* CJK Strokes */ 0x31F0, /* Katakana Phonetic Extensions */ 0x3200, /* Enclosed CJK Letters and Months */ @@ -186,8 +187,8 @@ static long ucs_range[]={ 0xA640, /* Cyrillic Extended-B */ 0xA6A0, /* Bamum */ 0xA700, /* Modifier Tone Letters */ - 0xA720, /* Latin Extended-D */ - 0xA800, /* Syloti Nagri */ /* 0x80 */ + 0xA720, /* Latin Extended-D */ /* 0x80 */ + 0xA800, /* Syloti Nagri */ 0xA830, /* Common Indic Number Forms */ 0xA840, /* Phags-pa */ 0xA880, /* Saurashtra */ @@ -202,8 +203,8 @@ static long ucs_range[]={ 0xAA80, /* Tai Viet */ 0xAAE0, /* Meetei Mayek Extensions */ 0xAB00, /* Ethiopic Extended-A */ - 0xAB30, /* Latin Extended-E */ - 0xAB70, /* Cherokee Supplement */ /* 0x90 */ + 0xAB30, /* Latin Extended-E */ /* 0x90 */ + 0xAB70, /* Cherokee Supplement */ 0xABC0, /* Meetei Mayek */ 0xAC00, /* Hangul Syllables */ 0xD7B0, /* Hangul Jamo Extended-B */ @@ -218,8 +219,8 @@ static long ucs_range[]={ 0xFE10, /* Vertical Forms */ 0xFE20, /* Combining Half Marks */ 0xFE30, /* CJK Compatibility Forms */ - 0xFE50, /* Small Form Variants */ - 0xFE70, /* Arabic Presentation Forms-B */ /* 0xa0 */ + 0xFE50, /* Small Form Variants */ /* 0xa0 */ + 0xFE70, /* Arabic Presentation Forms-B */ 0xFF00, /* Halfwidth and Fullwidth Forms */ 0xFFF0, /* Specials */ 0x10000, /* Linear B Syllabary */ @@ -234,24 +235,26 @@ static long ucs_range[]={ 0x10300, /* Old Italic */ 0x10330, /* Gothic */ 0x10350, /* Old Permic */ - 0x10380, /* Ugaritic */ - 0x103A0, /* Old Persian */ /* 0xb0 */ + 0x10380, /* Ugaritic */ /* 0xb0 */ + 0x103A0, /* Old Persian */ 0x10400, /* Deseret */ 0x10450, /* Shavian */ 0x10480, /* Osmanya */ 0x104B0, /* Osage */ 0x10500, /* Elbasan */ 0x10530, /* Caucasian Albanian */ + 0x10570, /* Vithkuqi */ 0x10600, /* Linear A */ + 0x10780, /* Latin Extended-F */ 0x10800, /* Cypriot Syllabary */ 0x10840, /* Imperial Aramaic */ 0x10860, /* Palmyrene */ 0x10880, /* Nabataean */ 0x108E0, /* Hatran */ - 0x10900, /* Phoenician */ + 0x10900, /* Phoenician */ /* 0xc0 */ 0x10920, /* Lydian */ 0x10980, /* Meroitic Hieroglyphs */ - 0x109A0, /* Meroitic Cursive */ /* 0xc0 */ + 0x109A0, /* Meroitic Cursive */ 0x10A00, /* Kharoshthi */ 0x10A60, /* Old South Arabian */ 0x10A80, /* Old North Arabian */ @@ -264,10 +267,11 @@ static long ucs_range[]={ 0x10C80, /* Old Hungarian */ 0x10D00, /* Hanifi Rohingya */ 0x10E60, /* Rumi Numeral Symbols */ - 0x10E80, /* Yezidi */ + 0x10E80, /* Yezidi */ /* 0xd0 */ 0x10F00, /* Old Sogdian */ 0x10F30, /* Sogdian */ - 0x10FB0, /* Chorasmian */ /* 0xd0 */ + 0x10F70, /* Old Uyghur */ + 0x10FB0, /* Chorasmian */ 0x10FE0, /* Elymaic */ 0x11000, /* Brahmi */ 0x11080, /* Kaithi */ @@ -279,11 +283,11 @@ static long ucs_range[]={ 0x11200, /* Khojki */ 0x11280, /* Multani */ 0x112B0, /* Khudawadi */ - 0x11300, /* Grantha */ + 0x11300, /* Grantha */ /* 0xe0 */ 0x11400, /* Newa */ 0x11480, /* Tirhuta */ 0x11580, /* Siddham */ - 0x11600, /* Modi */ /* 0xe0 */ + 0x11600, /* Modi */ 0x11660, /* Mongolian Supplement */ 0x11680, /* Takri */ 0x11700, /* Ahom */ @@ -293,37 +297,42 @@ static long ucs_range[]={ 0x119A0, /* Nandinagari */ 0x11A00, /* Zanabazar Square */ 0x11A50, /* Soyombo */ + 0x11AB0, /* Unified Canadian Aboriginal Syllabics Extended-A */ 0x11AC0, /* Pau Cin Hau */ - 0x11C00, /* Bhaiksuki */ + 0x11C00, /* Bhaiksuki */ /* 0xf0 */ 0x11C70, /* Marchen */ 0x11D00, /* Masaram Gondi */ 0x11D60, /* Gunjala Gondi */ 0x11EE0, /* Makasar */ - 0x11FB0, /* Lisu Supplement */ /* 0xf0 */ + 0x11FB0, /* Lisu Supplement */ 0x11FC0, /* Tamil Supplement */ 0x12000, /* Cuneiform */ 0x12400, /* Cuneiform Numbers and Punctuation */ 0x12480, /* Early Dynastic Cuneiform */ + 0x12F90, /* Cypro-Minoan */ 0x13000, /* Egyptian Hieroglyphs */ 0x13430, /* Egyptian Hieroglyph Format Controls */ 0x14400, /* Anatolian Hieroglyphs */ 0x16800, /* Bamum Supplement */ 0x16A40, /* Mro */ + 0x16A70, /* Tangsa */ /* 0x100 */ 0x16AD0, /* Bassa Vah */ 0x16B00, /* Pahawh Hmong */ 0x16E40, /* Medefaidrin */ 0x16F00, /* Miao */ 0x16FE0, /* Ideographic Symbols and Punctuation */ 0x17000, /* Tangut */ - 0x18800, /* Tangut Components */ /* 0x100 */ + 0x18800, /* Tangut Components */ 0x18B00, /* Khitan Small Script */ 0x18D00, /* Tangut Supplement */ + 0x1AFF0, /* Kana Extended-B */ 0x1B000, /* Kana Supplement */ 0x1B100, /* Kana Extended-A */ 0x1B130, /* Small Kana Extension */ 0x1B170, /* Nushu */ 0x1BC00, /* Duployan */ - 0x1BCA0, /* Shorthand Format Controls */ + 0x1BCA0, /* Shorthand Format Controls */ /* 0x110 */ + 0x1CF00, /* Znamenny Musical Notation */ 0x1D000, /* Byzantine Musical Symbols */ 0x1D100, /* Musical Symbols */ 0x1D200, /* Ancient Greek Musical Notation */ @@ -331,11 +340,14 @@ static long ucs_range[]={ 0x1D300, /* Tai Xuan Jing Symbols */ 0x1D360, /* Counting Rod Numerals */ 0x1D400, /* Mathematical Alphanumeric Symbols */ - 0x1D800, /* Sutton SignWriting */ /* 0x110 */ + 0x1D800, /* Sutton SignWriting */ + 0x1DF00, /* Latin Extended-G */ 0x1E000, /* Glagolitic Supplement */ 0x1E100, /* Nyiakeng Puachue Hmong */ + 0x1E290, /* Toto */ 0x1E2C0, /* Wancho */ - 0x1E800, /* Mende Kikakui */ + 0x1E7E0, /* Ethiopic Extended-B */ + 0x1E800, /* Mende Kikakui */ /* 0x120 */ 0x1E900, /* Adlam */ 0x1EC70, /* Indic Siyaq Numbers */ 0x1ED00, /* Ottoman Siyaq Numbers */ @@ -347,11 +359,11 @@ static long ucs_range[]={ 0x1F200, /* Enclosed Ideographic Supplement */ 0x1F300, /* Miscellaneous Symbols and Pictographs */ 0x1F600, /* Emoticons */ - 0x1F650, /* Ornamental Dingbats */ /* 0x120 */ + 0x1F650, /* Ornamental Dingbats */ 0x1F680, /* Transport and Map Symbols */ 0x1F700, /* Alchemical Symbols */ 0x1F780, /* Geometric Shapes Extended */ - 0x1F800, /* Supplemental Arrows-C */ + 0x1F800, /* Supplemental Arrows-C */ /* 0x130 */ 0x1F900, /* Supplemental Symbols and Pictographs */ 0x1FA00, /* Chess Symbols */ 0x1FA70, /* Symbols and Pictographs Extended-A */ @@ -363,11 +375,11 @@ static long ucs_range[]={ 0x2CEB0, /* CJK Unified Ideographs Extension F */ 0x2F800, /* CJK Compatibility Ideographs Supplement */ 0x30000, /* CJK Unified Ideographs Extension G */ - 0x31350, /* reserved */ /* 0x130 */ + 0x31350, /* reserved */ 0x40000, /* reserved */ 0x50000, /* reserved */ 0x60000, /* reserved */ - 0x70000, /* reserved */ + 0x70000, /* reserved */ /* 0x140 */ 0x80000, /* reserved */ 0x90000, /* reserved */ 0xA0000, /* reserved */ @@ -381,11 +393,11 @@ static long ucs_range[]={ /* Value over 0x10FFFF is illegal under Unicode, They are for some special use. *** experimental *** */ 0x110000, /* Reserved */ - 0x120000, /* Reserved */ /* 0x140 */ + 0x120000, /* Reserved */ 0x130000, /* Reserved */ 0x140000, /* Reserved */ 0x150000, /* Reserved */ - 0x160000, /* Reserved */ + 0x160000, /* Reserved */ /* 0x150 */ 0x170000, /* Reserved */ 0x180000, /* Reserved */ 0x190000, /* Reserved */ @@ -397,7 +409,7 @@ static long ucs_range[]={ 0x1F0000, /* Reserved */ 0x200000, /* Reserved */ 0x210000, /* Reserved */ - 0x220000, /* Reserved */ /* 0x150 */ + 0x220000, /* Reserved */ /* 0x15c */ CJK_CHAR_LIMIT }; @@ -443,7 +455,7 @@ integer kcatcodekey(integer c) integer block; if (is_internalUPTEX()) { block = binary_search((long)c, ucs_range, 0, NUCS_RANGE-1); - if (block==0x01) { + if (block==0x01) { /* Block : Latin-1 Supplement */ /* Latin-1 Letters */ if ( FEMININE_ORDINAL_INDICATOR ==c || MASCULINE_ORDINAL_INDICATOR==c @@ -452,7 +464,7 @@ integer kcatcodekey(integer c) || (LATIN_SMALL_LETTER_O_WITH_STROKE <=c && c<=LATIN_SMALL_LETTER_Y_WITH_DIAERESIS ) ) return 0x1FD; } - if (block==0xa1) { + if (block==0xa2) { /* Block : Halfwidth and Fullwidth Forms */ /* Fullwidth ASCII variants except for U+FF01..FF0F, U+FF1A..FF20, U+FF3B..FF40, U+FF5B..FF5E */ if ( (FULLWIDTH_DIGIT_0 <=c && c<=FULLWIDTH_DIGIT_9 ) || (FULLWIDTH_CAPITAL_A<=c && c<=FULLWIDTH_CAPITAL_Z) diff --git a/Build/source/texk/web2c/uptexdir/tests/kcat.tex b/Build/source/texk/web2c/uptexdir/tests/kcat.tex new file mode 100644 index 00000000000..b130832d069 --- /dev/null +++ b/Build/source/texk/web2c/uptexdir/tests/kcat.tex @@ -0,0 +1,67 @@ +% for INITEX +\catcode`\{=1 +\catcode`\}=2 +\def\space{ } +\edef\NAME{Engine \ifx\eTeXversion\undefined\else e-\fi + \ifx\enablecjktoken\undefined\else u\fi + pTeX p\the\ptexversion.\the\ptexminorversion\ptexrevision + \ifx\enablecjktoken\undefined\else -u\the\uptexversion\uptexrevision\fi + \ifx\epTeXversion\undefined\else -\the\epTeXversion + -\the\eTeXversion\eTeXrevision\fi + \space (dummy)} +\write16{\NAME} +% not_cjk=15 {is not cjk characters} +% kanji=16 {kanji} +% kana=17 {hiragana, katakana} +% other_kchar=18 {cjk symbol codes} +% hangul=19 {hangul codes} + +% separate in blocks +\write16{0x00C0::\the\kcatcode"00C0}% U+00C0 "Latin-1 Letters" in Latin-1 Supplement +\write16{§::\the\kcatcode"00A7}% U+00A7 Latin-1 Supplement +\write16{!::\the\kcatcode"FF01}% U+FF01 Halfwidth and Fullwidth Forms +\write16{0::\the\kcatcode"FF10}% U+FF10 "Fullwidth ASCII variants" in Halfwidth and Fullwidth Forms +\write16{ヲ::\the\kcatcode"FF66}% U+FF66 "Halfwidth Katakana variants" in Halfwidth and Fullwidth Forms + +% not_cjk=15 {is not cjk characters} +\write16{A::\the\kcatcode"0041}% U+0041 Basic Latin +\write16{0x0100::\the\kcatcode"0100}% U+0100 Latin Extended-A +\write16{0x0180::\the\kcatcode"0180}% U+0180 Latin Extended-B +\write16{0x1E00::\the\kcatcode"1E00}% U+1E00 Latin Extended Additional + +% kanji=16 {kanji} +\write16{⺀::\the\kcatcode"2E80}% U+2E80 CJK Radicals Supplement +\write16{⼀::\the\kcatcode"2F00}% U+2F00 Kangxi Radicals +\write16{⿰::\the\kcatcode"2FF0}% U+2FF0 Ideographic Description Characters +\write16{ㄅ::\the\kcatcode"3105}% U+3105 Bopomofo +\write16{㆐::\the\kcatcode"3190}% U+3190 Kanbun +\write16{ㆠ::\the\kcatcode"31A0}% U+31A0 Bopomofo Extended +\write16{㇀::\the\kcatcode"31C0}% U+31C0 CJK Strokes +\write16{㐀::\the\kcatcode"3400}% U+3400 CJK Unified Ideographs Extension A +\write16{一::\the\kcatcode"4E00}% U+4E00 CJK Unified Ideographs +\write16{豈::\the\kcatcode"F900}% U+F900 CJK Compatibility Ideographs +\write16{𠀀::\the\kcatcode"20000}% U+20000 CJK Unified Ideographs Extension B +\write16{𪜀::\the\kcatcode"2A700}% U+2A700 CJK Unified Ideographs Extension C +\write16{𫝀::\the\kcatcode"2B740}% U+2B740 CJK Unified Ideographs Extension D +\write16{𫠠::\the\kcatcode"2B820}% U+2B820 CJK Unified Ideographs Extension E +\write16{𬺰::\the\kcatcode"2CEB0}% U+2CEB0 CJK Unified Ideographs Extension F +\write16{丽::\the\kcatcode"2F800}% U+2F800 CJK Compatibility Ideographs Supplement +\write16{𰀀::\the\kcatcode"30000}% U+30000 CJK Unified Ideographs Extension G + +% kana=17 {hiragana, katakana} +\write16{あ::\the\kcatcode"3042}% U+3042 Hiragana +\write16{ア::\the\kcatcode"30A2}% U+30A2 Katakana +\write16{ㇰ::\the\kcatcode"31F0}% U+31F0 Katakana Phonetic Extensions +\write16{𚿰::\the\kcatcode"1AFF0}% U+1AFF0 Kana Extended-B +\write16{𛀀::\the\kcatcode"1B000}% U+1B000 Kana Supplement +\write16{𛄀::\the\kcatcode"1B100}% U+1B100 Kana Extended-A +\write16{𛅐::\the\kcatcode"1B150}% U+1B150 Small Kana Extension + +% hangul=19 {hangul codes} +\write16{ᄀ::\the\kcatcode"1100}% U+1100 Hangul Jamo +\write16{ㄱ::\the\kcatcode"3131}% U+3131 Hangul Compatibility Jamo +\write16{ꥠ::\the\kcatcode"A960}% U+A960 Hangul Jamo Extended-A +\write16{가::\the\kcatcode"AC00}% U+AC00 Hangul Syllables +\write16{ힰ::\the\kcatcode"D7B0}% U+D7B0 Hangul Jamo Extended-B + +\relax\end diff --git a/Build/source/texk/web2c/uptexdir/tests/upkcat.txt b/Build/source/texk/web2c/uptexdir/tests/upkcat.txt new file mode 100644 index 00000000000..4a4e0e21b79 --- /dev/null +++ b/Build/source/texk/web2c/uptexdir/tests/upkcat.txt @@ -0,0 +1,38 @@ +0x00C0::15 +§::18 +!::18 +0::17 +ヲ::17 +A::15 +0x0100::15 +0x0180::15 +0x1E00::15 +⺀::16 +⼀::16 +⿰::16 +ㄅ::16 +㆐::16 +ㆠ::16 +㇀::16 +㐀::16 +一::16 +豈::16 +𠀀::16 +𪜀::16 +𫝀::16 +𫠠::16 +𬺰::16 +丽::16 +𰀀::16 +あ::17 +ア::17 +ㇰ::17 +𚿰::17 +𛀀::17 +𛄀::17 +𛅐::17 +ᄀ::19 +ㄱ::19 +ꥠ::19 +가::19 +ힰ::19 diff --git a/Build/source/texk/web2c/uptexdir/upbibtex.ch b/Build/source/texk/web2c/uptexdir/upbibtex.ch index fa3cf4e4051..ea72fe4e88f 100644 --- a/Build/source/texk/web2c/uptexdir/upbibtex.ch +++ b/Build/source/texk/web2c/uptexdir/upbibtex.ch @@ -3,7 +3,7 @@ @d banner=='This is pBibTeX, Version 0.99d-j0.33' @y @d my_name=='upbibtex' -@d banner=='This is upBibTeX, Version 0.99d-j0.33-u1.27' +@d banner=='This is upBibTeX, Version 0.99d-j0.33-u1.28' @z @x @@ -382,21 +382,21 @@ begin is_char_kanji_upbibtex := true; if (is_internalUPTEX) then begin { should be in sync with |kcat_code| of uptex-m.ch } k := kcatcodekey(c); - if k=@"24 then return { Hangul Jamo } - else if (k>=@"67)and(k<=@"69) then return { CJK Radicals Supplement .. Ideographic Description Characters } - else if (k>=@"6B)and(k<=@"6C) then return { Hiragana, Katakana } - else if k=@"6D then return { Bopomofo } - else if k=@"6E then return { Hangul Compatibility Jamo } - else if (k>=@"6F)and(k<=@"71) then return { Kanbun .. CJK Strokes } - else if k=@"72 then return { Katakana Phonetic Extensions } - else if k=@"75 then return { CJK Unified Ideographs Extension A } - else if k=@"77 then return { CJK Unified Ideographs } - else if k=@"87 then return { Hangul Jamo Extended-A } - else if k=@"92 then return { Hangul Syllables } - else if k=@"93 then return { Hangul Jamo Extended-B } - else if k=@"98 then return { CJK Compatibility Ideographs } - else if (k>=@"103)and(k<=@"105) then return { Kana Supplement .. Small Kana Extension } - else if (k>=@"129)and(k<=@"12F) then return { CJK Unified Ideographs Extension B .. G } + if k=@"25 then return { Hangul Jamo } + else if (k>=@"68)and(k<=@"6A) then return { CJK Radicals Supplement .. Ideographic Description Characters } + else if (k>=@"6C)and(k<=@"6D) then return { Hiragana, Katakana } + else if k=@"6E then return { Bopomofo } + else if k=@"6F then return { Hangul Compatibility Jamo } + else if (k>=@"70)and(k<=@"72) then return { Kanbun .. CJK Strokes } + else if k=@"73 then return { Katakana Phonetic Extensions } + else if k=@"76 then return { CJK Unified Ideographs Extension A } + else if k=@"78 then return { CJK Unified Ideographs } + else if k=@"88 then return { Hangul Jamo Extended-A } + else if k=@"93 then return { Hangul Syllables } + else if k=@"94 then return { Hangul Jamo Extended-B } + else if k=@"99 then return { CJK Compatibility Ideographs } + else if (k>=@"10A)and(k<=@"10D) then return { Kana Extended-B .. Small Kana Extension } + else if (k>=@"135)and(k<=@"13B) then return { CJK Unified Ideographs Extension B .. G } else if k=@"1FE then return { Fullwidth digit and latin alphabet } else if k=@"1FF then return; { Halfwidth katakana } end diff --git a/Build/source/texk/web2c/uptexdir/updvitype.ch b/Build/source/texk/web2c/uptexdir/updvitype.ch index 41b0aae3936..da1d40e0682 100644 --- a/Build/source/texk/web2c/uptexdir/updvitype.ch +++ b/Build/source/texk/web2c/uptexdir/updvitype.ch @@ -3,7 +3,7 @@ @d banner=='This is pDVItype, Version 3.6-p0.5' @y @d my_name=='updvitype' -@d banner=='This is upDVItype, Version 3.6-p0.5-u1.27' +@d banner=='This is upDVItype, Version 3.6-p0.5-u1.28' @z @x procedure initialize diff --git a/Build/source/texk/web2c/uptexdir/upkcat.test b/Build/source/texk/web2c/uptexdir/upkcat.test new file mode 100755 index 00000000000..28ceca8ccfa --- /dev/null +++ b/Build/source/texk/web2c/uptexdir/upkcat.test @@ -0,0 +1,15 @@ +#! /bin/sh -vx +# $Id$ +# Copyright 2022 TANAKA Takuji +# You may freely use, modify and/or distribute this file. + +LC_ALL=C; export LC_ALL; LANGUAGE=C; export LANGUAGE + +TEXMFCNF=$srcdir/../kpathsea; export TEXMFCNF +TEXINPUTS=$srcdir/uptexdir/tests:.; export TEXINPUTS + +./uptex -ini -interaction batchmode -jobname upkcat-log kcat.tex || exit 1 +grep '::' upkcat-log.log > upkcat-log_ed.log \ + && diff upkcat-log_ed.log $srcdir/uptexdir/tests/upkcat.txt || exit 2 + +exit 0 diff --git a/Build/source/texk/web2c/uptexdir/uppltotf.ch b/Build/source/texk/web2c/uptexdir/uppltotf.ch index 8978f5de8d6..53a06f60ddd 100644 --- a/Build/source/texk/web2c/uptexdir/uppltotf.ch +++ b/Build/source/texk/web2c/uptexdir/uppltotf.ch @@ -3,7 +3,7 @@ @d banner=='This is pPLtoTF, Version 3.6-p2.0' @y @d my_name=='uppltotf' -@d banner=='This is upPLtoTF, Version 3.6-p2.0-u1.27' +@d banner=='This is upPLtoTF, Version 3.6-p2.0-u1.28' @z @x diff --git a/Build/source/texk/web2c/uptexdir/uptex-m.ch b/Build/source/texk/web2c/uptexdir/uptex-m.ch index 10a0cac21b5..1d1a3376a55 100644 --- a/Build/source/texk/web2c/uptexdir/uptex-m.ch +++ b/Build/source/texk/web2c/uptexdir/uptex-m.ch @@ -44,6 +44,7 @@ % (2019-05-06) TTK upTeX u1.25 % (2020-02-22) TTK upTeX u1.26 % (2020-10-25) TTK upTeX u1.27 +% (2022-01-23) TTK upTeX u1.28 @x upTeX: banner {printed when \pTeX\ starts} @@ -51,8 +52,8 @@ {printed when \pTeX\ starts} @# @d upTeX_version=1 -@d upTeX_revision==".27" -@d upTeX_version_string=='-u1.27' {current u\pTeX\ version} +@d upTeX_revision==".28" +@d upTeX_version_string=='-u1.28' {current u\pTeX\ version} @# @d upTeX_banner=='This is upTeX, Version 3.141592653',pTeX_version_string,upTeX_version_string @d upTeX_banner_k==upTeX_banner @@ -247,23 +248,23 @@ if (isinternalUPTEX) then begin { default: |other_kchar| } @t\hskip10pt@>kcat_code(@"0):=not_cjk; @+@t\1@>for k:=@"2 to @"3 do kcat_code(k):=not_cjk; { Latin Extended-A, Latin Extended-B } - @t\hskip10pt@>kcat_code(@"24):=hangul; { Hangul Jamo } - @t\hskip10pt@>kcat_code(@"45):=not_cjk; { Latin Extended Additional } - @+@t\1@>for k:=@"67 to @"69 do kcat_code(k):=kanji; { CJK Radicals Supplement .. Ideographic Description Characters } - @+@t\1@>for k:=@"6B to @"6C do kcat_code(k):=kana; { Hiragana, Katakana } - @t\hskip10pt@>kcat_code(@"6D):=kanji; { Bopomofo } - @t\hskip10pt@>kcat_code(@"6E):=hangul; { Hangul Compatibility Jamo } - @+@t\1@>for k:=@"6F to @"71 do kcat_code(k):=kanji; { Kanbun .. CJK Strokes } - @t\hskip10pt@>kcat_code(@"72):=kana; { Katakana Phonetic Extensions } - @t\hskip10pt@>kcat_code(@"75):=kanji; { CJK Unified Ideographs Extension A } - @t\hskip10pt@>kcat_code(@"77):=kanji; { CJK Unified Ideographs } - @t\hskip10pt@>kcat_code(@"87):=hangul; { Hangul Jamo Extended-A } - @t\hskip10pt@>kcat_code(@"92):=hangul; { Hangul Syllables } - @t\hskip10pt@>kcat_code(@"93):=hangul; { Hangul Jamo Extended-B } - @t\hskip10pt@>kcat_code(@"98):=kanji; { CJK Compatibility Ideographs } - { \hskip10pt|kcat_code(@"A1):=other_kchar;| Halfwidth and Fullwidth Forms } - @+@t\1@>for k:=@"103 to @"105 do kcat_code(k):=kana; { Kana Supplement .. Small Kana Extension } - @+@t\1@>for k:=@"129 to @"12F do kcat_code(k):=kanji; { CJK Unified Ideographs Extension B .. G } + @t\hskip10pt@>kcat_code(@"25):=hangul; { Hangul Jamo } + @t\hskip10pt@>kcat_code(@"46):=not_cjk; { Latin Extended Additional } + @+@t\1@>for k:=@"68 to @"6A do kcat_code(k):=kanji; { CJK Radicals Supplement .. Ideographic Description Characters } + @+@t\1@>for k:=@"6C to @"6D do kcat_code(k):=kana; { Hiragana, Katakana } + @t\hskip10pt@>kcat_code(@"6E):=kanji; { Bopomofo } + @t\hskip10pt@>kcat_code(@"6F):=hangul; { Hangul Compatibility Jamo } + @+@t\1@>for k:=@"70 to @"72 do kcat_code(k):=kanji; { Kanbun .. CJK Strokes } + @t\hskip10pt@>kcat_code(@"73):=kana; { Katakana Phonetic Extensions } + @t\hskip10pt@>kcat_code(@"76):=kanji; { CJK Unified Ideographs Extension A } + @t\hskip10pt@>kcat_code(@"78):=kanji; { CJK Unified Ideographs } + @t\hskip10pt@>kcat_code(@"88):=hangul; { Hangul Jamo Extended-A } + @t\hskip10pt@>kcat_code(@"93):=hangul; { Hangul Syllables } + @t\hskip10pt@>kcat_code(@"94):=hangul; { Hangul Jamo Extended-B } + @t\hskip10pt@>kcat_code(@"99):=kanji; { CJK Compatibility Ideographs } + { \hskip10pt|kcat_code(@"A2):=other_kchar;| Halfwidth and Fullwidth Forms } + @+@t\1@>for k:=@"10A to @"10D do kcat_code(k):=kana; { Kana Extended-B .. Small Kana Extension } + @+@t\1@>for k:=@"135 to @"13B do kcat_code(k):=kanji; { CJK Unified Ideographs Extension B .. G } @t\hskip10pt@>kcat_code(@"1FD):=not_cjk; { Latin-1 Letters } @t\hskip10pt@>kcat_code(@"1FE):=kana; { Fullwidth digit and latin alphabet } @t\hskip10pt@>kcat_code(@"1FF):=kana; { Halfwidth katakana } diff --git a/Build/source/texk/web2c/uptexdir/uptex_version.h b/Build/source/texk/web2c/uptexdir/uptex_version.h index cfe69163294..0b751989f7d 100644 --- a/Build/source/texk/web2c/uptexdir/uptex_version.h +++ b/Build/source/texk/web2c/uptexdir/uptex_version.h @@ -1 +1 @@ -#define UPTEX_VERSION "u1.27" +#define UPTEX_VERSION "u1.28" diff --git a/Build/source/texk/web2c/uptexdir/uptftopl.ch b/Build/source/texk/web2c/uptexdir/uptftopl.ch index 7b3032ce2db..e68d763d0a7 100644 --- a/Build/source/texk/web2c/uptexdir/uptftopl.ch +++ b/Build/source/texk/web2c/uptexdir/uptftopl.ch @@ -3,7 +3,7 @@ @d banner=='This is pTFtoPL, Version 3.3-p2.0' @y @d my_name=='uptftopl' -@d banner=='This is upTFtoPL, Version 3.3-p2.0-u1.27' +@d banner=='This is upTFtoPL, Version 3.3-p2.0-u1.28' @z @x -- cgit v1.2.3