From 6a384570995c5b2a72fffe9b6c3401946c308105 Mon Sep 17 00:00:00 2001 From: Takuji Tanaka Date: Sat, 21 Sep 2024 09:29:37 +0000 Subject: {,p}tex: Fix a bug in initialization of inhibit_xsp/kinsoku tables git-svn-id: svn://tug.org/texlive/trunk@72333 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/texk/web2c/Makefile.in | 31 ++- Build/source/texk/web2c/ptexdir/ChangeLog | 10 + Build/source/texk/web2c/ptexdir/am/ptex.am | 8 +- Build/source/texk/web2c/ptexdir/ptex-base.ch | 5 +- Build/source/texk/web2c/ptexdir/ptex-ctrlsym.test | 20 +- .../source/texk/web2c/ptexdir/tests/chartoken.log | 41 +++ .../source/texk/web2c/ptexdir/tests/p-lineenda.typ | 295 +++++++++++++++++++++ .../texk/web2c/ptexdir/tests/ptexlineendmode.tex | 10 +- Build/source/texk/web2c/ptexdir/tests/ucs-e.log | 3 + Build/source/texk/web2c/ptexdir/tests/ucs-s.log | 3 + Build/source/texk/web2c/ptexdir/tests/ucs.tex | 6 + Build/source/texk/web2c/uptexdir/ChangeLog | 6 + Build/source/texk/web2c/uptexdir/ptex-base.ch | 5 +- Build/source/texk/web2c/uptexdir/uptex-m.ch | 2 + 14 files changed, 422 insertions(+), 23 deletions(-) create mode 100644 Build/source/texk/web2c/ptexdir/tests/chartoken.log create mode 100644 Build/source/texk/web2c/ptexdir/tests/p-lineenda.typ diff --git a/Build/source/texk/web2c/Makefile.in b/Build/source/texk/web2c/Makefile.in index 4900db0663f..f18c95b0a6e 100644 --- a/Build/source/texk/web2c/Makefile.in +++ b/Build/source/texk/web2c/Makefile.in @@ -3274,6 +3274,8 @@ EXTRA_DIST = PROJECTS cftests cpascal.h help.h w2c/config.h \ ptexdir/tests/endlinechar.tex ptexdir/tests/endline.log \ ptexdir/tests/control-symbol.tex ptexdir/tests/jctrlsym.log \ ptexdir/tests/p-endlinea.typ ptexdir/tests/p-jctrlsyma.typ \ + ptexdir/tests/let_char_token.tex ptexdir/tests/chartoken.log \ + ptexdir/tests/ptexlineendmode.tex ptexdir/tests/p-lineenda.typ \ ptexdir/tests/printkanji.tex ptexdir/tests/pknj-s.log \ ptexdir/tests/pknj-e.log ptexdir/tests/p-pknj-sa.typ \ ptexdir/tests/p-pknj-ea.typ ptexdir/tests/ucs.tex \ @@ -3619,20 +3621,21 @@ DISTCLEANFILES = CXXLD.sh tangle.c tangle.h tangle.p tangle-web2c \ ptests/xcmr10.pl ptests/xsample*.typ ptests/x*min10.* \ ptests/xchcode*.* ptests/xskipjfmp.* ptrip.diffs p-ctrlsym.log \ p-ctrlsym.out p-ctrlsym.tex p-endline*.* p-jctrlsym*.* \ - p-pknj-*.* p-ucs*.* $(nodist_uptex_SOURCES) uptex.web uptex.ch \ - uptex-web2c uptex.p uptex.pool uptex-tangle \ - $(upweb_programs:=.c) $(upweb_programs:=.h) \ - $(upweb_programs:=.p) $(upweb_programs:=-web2c) \ - $(upweb_programs:=.web) uptests/nissya_bib.* \ - uptests/xexampl.aux uptests/xexampl.bbl uptests/xexampl.blg \ - uptests/xenc*.* uptests/fn*.* uptests/memtest.bib \ - uptests/memtest?.* uptests/xstory.dvityp uptests/xpagenum.typ \ - uptests/x*ptex[345]*.typ uptests/xcmr10.tfm uptests/xcmr10.pl \ - uptests/xsample*.typ uptests/x*min10.* uptests/xchcode*.* \ - uptests/xtestnewu*.* uptests/xuparse.* uptests/yuparse.* \ - uptests/ygkhuge*.* uptests/ygk256*.* uptests/xskipjfmp.* \ - uptrip.diffs $(nodist_euptex_SOURCES) euptex.web euptex.ch \ - euptex-web2c euptex.p euptex.pool euptex-tangle euptrip.diffs \ + p-chartoken.* p-lineend.* p-pknj-*.* p-ucs*.* \ + $(nodist_uptex_SOURCES) uptex.web uptex.ch uptex-web2c uptex.p \ + uptex.pool uptex-tangle $(upweb_programs:=.c) \ + $(upweb_programs:=.h) $(upweb_programs:=.p) \ + $(upweb_programs:=-web2c) $(upweb_programs:=.web) \ + uptests/nissya_bib.* uptests/xexampl.aux uptests/xexampl.bbl \ + uptests/xexampl.blg uptests/xenc*.* uptests/fn*.* \ + uptests/memtest.bib uptests/memtest?.* uptests/xstory.dvityp \ + uptests/xpagenum.typ uptests/x*ptex[345]*.typ \ + uptests/xcmr10.tfm uptests/xcmr10.pl uptests/xsample*.typ \ + uptests/x*min10.* uptests/xchcode*.* uptests/xtestnewu*.* \ + uptests/xuparse.* uptests/yuparse.* uptests/ygkhuge*.* \ + uptests/ygk256*.* uptests/xskipjfmp.* uptrip.diffs \ + $(nodist_euptex_SOURCES) euptex.web euptex.ch euptex-web2c \ + euptex.p euptex.pool euptex-tangle euptrip.diffs \ pdfprimitive-euptex.* eup-ctrlsym.fmt eup-ctrlsym.log \ eup-ctrlsym.out eup-ctrlsym.tex $(nodist_hitex_SOURCES) \ $(nodist_hishrink_SOURCES) $(nodist_histretch_SOURCES) \ diff --git a/Build/source/texk/web2c/ptexdir/ChangeLog b/Build/source/texk/web2c/ptexdir/ChangeLog index afa4807a662..e73b4abebfa 100644 --- a/Build/source/texk/web2c/ptexdir/ChangeLog +++ b/Build/source/texk/web2c/ptexdir/ChangeLog @@ -1,3 +1,13 @@ +2024-09-21 TANAKA Takuji + + * ptex-base.ch: + Fix a bug in initialization of inhibit_xsp/kinsoku tables + (Bug introduced on commit 2022-12-12 r65248). + * ptex-ctrlsym.test, tests/{ptexlineendmode,ucs}.tex, + (chartoken,ucs-{e,s}}.log, p-lineenda.typ: + Add more regression tests. + * am/ptex.am: Adjust. + 2024-09-16 TANAKA Takuji * ptex-base.ch: Use constants enc_jis and enc_ucs. diff --git a/Build/source/texk/web2c/ptexdir/am/ptex.am b/Build/source/texk/web2c/ptexdir/am/ptex.am index ce807ade2cd..caf30c2f986 100644 --- a/Build/source/texk/web2c/ptexdir/am/ptex.am +++ b/Build/source/texk/web2c/ptexdir/am/ptex.am @@ -177,10 +177,12 @@ DISTCLEANFILES += ptrip.diffs EXTRA_DIST += ptexdir/tests/ctrlsym.tex ptexdir/tests/ctrlsym.log \ ptexdir/tests/endlinechar.tex ptexdir/tests/endline.log \ ptexdir/tests/control-symbol.tex ptexdir/tests/jctrlsym.log \ - ptexdir/tests/p-endlinea.typ ptexdir/tests/p-jctrlsyma.typ + ptexdir/tests/p-endlinea.typ ptexdir/tests/p-jctrlsyma.typ \ + ptexdir/tests/let_char_token.tex ptexdir/tests/chartoken.log \ + ptexdir/tests/ptexlineendmode.tex ptexdir/tests/p-lineenda.typ DISTCLEANFILES += p-ctrlsym.log p-ctrlsym.out p-ctrlsym.tex \ - p-endline*.* p-jctrlsym*.* -## ptexdir/ptex-prntknj.test + p-endline*.* p-jctrlsym*.* p-chartoken.* p-lineend.* +## ptex-prntknj.test EXTRA_DIST += ptexdir/tests/printkanji.tex \ ptexdir/tests/pknj-s.log ptexdir/tests/pknj-e.log \ ptexdir/tests/p-pknj-sa.typ ptexdir/tests/p-pknj-ea.typ diff --git a/Build/source/texk/web2c/ptexdir/ptex-base.ch b/Build/source/texk/web2c/ptexdir/ptex-base.ch index 528a7b7ae23..5e20ff889cc 100644 --- a/Build/source/texk/web2c/ptexdir/ptex-base.ch +++ b/Build/source/texk/web2c/ptexdir/ptex-base.ch @@ -1305,10 +1305,11 @@ for k:=0 to 255 do begin cat_code(k):=other_char; kcat_code(k):=other_kchar; math_code(k):=hi(k); sf_code(k):=1000; auto_xsp_code(k):=0; + inhibit_xsp_type(k):=0; kinsoku_type(k):=0; end; for k:=0 to 1023 do - begin inhibit_xsp_code(k):=0; inhibit_xsp_type(k):=0; - kinsoku_code(k):=0; kinsoku_type(k):=0; + begin inhibit_xsp_code(k):=0; + kinsoku_code(k):=0; end; @z @x [17.232] l.4971 - pTeX: initialize cat_code, cur_jfont, cur_tfont diff --git a/Build/source/texk/web2c/ptexdir/ptex-ctrlsym.test b/Build/source/texk/web2c/ptexdir/ptex-ctrlsym.test index 0b84032af6d..ee0c5b88e8a 100755 --- a/Build/source/texk/web2c/ptexdir/ptex-ctrlsym.test +++ b/Build/source/texk/web2c/ptexdir/ptex-ctrlsym.test @@ -14,7 +14,7 @@ TEXINPUTS=".;$srcdir/tests"; export TEXINPUTS TEXFONTS=".;$srcdir//tests"; export TEXFONTS TEXFORMATS=.; export TEXFORMATS -rm -f p-ctrlsym.tex p-endline*.* p-jctrlsym*.* +rm -f p-ctrlsym.tex p-endline*.* p-jctrlsym*.* p-chartoken.* p-lineend.* if test ! -f ./p-basic.tex; then cp $srcdir/tests/dump-basic.tex ./p-basic.tex @@ -57,3 +57,21 @@ $_updvitype ./p-jctrlsym.dvi >ptests/xp-jctrlsym.typ sed "1d;s/TeX output 20[23].\...\...:.*'/TeX output 20XX.XX.XX'/" ptests/xp-jctrlsym.typ >ptests/xp-jctrlsyma.typ diff $srcdir/ptexdir/tests/p-jctrlsyma.typ ptests/xp-jctrlsyma.typ || exit 7 + +# let_char_token.tex +$LN_S $srcdir/ptexdir/tests/let_char_token.tex ./p-chartoken.tex +$_ptex -fmt=p-basic-euc -interaction=batchmode p-chartoken.tex || : + +sed 1d p-chartoken.log >p-chartoken.out + +diff $srcdir/ptexdir/tests/chartoken.log p-chartoken.out || exit 8 + + +# ptexlineendmode.tex +$LN_S $srcdir/ptexdir/tests/ptexlineendmode.tex ./p-lineend.tex +$_ptex -fmt=p-basic-euc -kanji=utf8 -interaction=batchmode p-lineend.tex || : + +$_updvitype -kanji=utf8 ./p-lineend.dvi >ptests/xp-lineend.typ +sed "1d;s/TeX output 20[23].\...\...:.*'/TeX output 20XX.XX.XX'/" ptests/xp-lineend.typ >ptests/xp-lineenda.typ +diff $srcdir/ptexdir/tests/p-lineenda.typ ptests/xp-lineenda.typ || exit 9 + diff --git a/Build/source/texk/web2c/ptexdir/tests/chartoken.log b/Build/source/texk/web2c/ptexdir/tests/chartoken.log new file mode 100644 index 00000000000..e834c9cf8a3 --- /dev/null +++ b/Build/source/texk/web2c/ptexdir/tests/chartoken.log @@ -0,0 +1,41 @@ + restricted \write18 enabled. + %&-line parsing enabled. +**p-chartoken.tex +(./p-chartoken.tex +\x=\count26 + +! Improper alphabetic or KANJI constant. + + \aaa +\T #1->\x =`#1 + \message {\the \x } +l.6 \def\aaa{西}\T{\aaa} + % err +A one-character control sequence belongs after a ` mark. +So I'm essentially inserting \0 here. + +48 +! Improper alphabetic or KANJI constant. + + \AAA +\T #1->\x =`#1 + \message {\the \x } +l.7 \def\AAA{s}\T{\AAA} + % err +A one-character control sequence belongs after a ` mark. +So I'm essentially inserting \0 here. + +Missing character: There is no s in font nullfont! +48 +! Improper alphabetic or KANJI constant. + + \ccc +\T #1->\x =`#1 + \message {\the \x } +l.8 \let\ccc=西\relax\T{\ccc} + % err +A one-character control sequence belongs after a ` mark. +So I'm essentially inserting \0 here. + +48 126 97 46273 46273 [1] ) +Output written on p-chartoken.dvi (1 page, 152 bytes). diff --git a/Build/source/texk/web2c/ptexdir/tests/p-lineenda.typ b/Build/source/texk/web2c/ptexdir/tests/p-lineenda.typ new file mode 100644 index 00000000000..368a57272ae --- /dev/null +++ b/Build/source/texk/web2c/ptexdir/tests/p-lineenda.typ @@ -0,0 +1,295 @@ +Options selected: + Starting page = * + Maximum number of pages = 1000000 + Output level = 4 (the works) + Resolution = 300.00000000 pixels per inch +numerator/denominator=25400000/473628672 +magnification=1000; 0.00006334 pixels per DVI unit +' TeX output 20XX.XX.XX' +Postamble starts at byte 635. +maxv=43725786, maxh=30785863, maxstackdepth=2, totalpages=1 +Font 1: min10 (JFM)---loaded at size 655360 DVI units +Font 0: ec-lmr10---loaded at size 655360 DVI units + +42: beginning of page 1 +87: push +level 0:(h=0,v=0,w=0,x=0,y=0,z=0,hh=0,vv=0) +88: down3 -917504 v:=0-917504=-917504, vv:=-58 +92: pop +level 0:(h=0,v=0,w=0,x=0,y=0,z=0,hh=0,vv=0) +93: down4 42152922 v:=0+42152922=42152922, vv:=2670 +98: push +level 0:(h=0,v=42152922,w=0,x=0,y=0,z=0,hh=0,vv=2670) +99: down4 -41497562 v:=42152922-41497562=655360, vv:=42 +104: push +level 1:(h=0,v=655360,w=0,x=0,y=0,z=0,hh=0,vv=42) +105: right3 1310720 h:=0+1310720=1310720, hh:=83 +[ ] +109: fntdef1 0: ec-lmr10 +133: fntnum0 current font is ec-lmr10 +134: setchar48 ("30) h:=1310720+327680=1638400, hh:=104 +[0] +135: fntdef1 1: min10 +156: fntnum1 current font is min10 +157: set2 8737("2221) type=0 h:=1638400+630598=2268998, hh:=144 +160: set2 8737("2221) type=0 h:=2268998+630598=2899596, hh:=184 +163: set2 8574("217E) type=0 h:=2899596+630598=3530194, hh:=224 +166: set2 9250("2422) type=0 h:=3530194+630598=4160792, hh:=264 +169: set2 8574("217E) type=0 h:=4160792+630598=4791390, hh:=304 +172: set2 9252("2424) type=0 h:=4791390+630598=5421988, hh:=344 +175: set2 8737("2221) type=0 h:=5421988+630598=6052586, hh:=384 +178: set2 8574("217E) type=0 h:=6052586+630598=6683184, hh:=424 +181: set2 8737("2221) type=0 h:=6683184+630598=7313782, hh:=464 +184: set2 8574("217E) type=0 h:=7313782+630598=7944380, hh:=504 +187: set2 13377("3441) type=0 h:=7944380+630598=8574978, hh:=544 +190: set2 15226("3B7A) type=0 h:=8574978+630598=9205576, hh:=584 +[◆◆◇あ◇い◆◇◆◇漢字] +193: fntnum0 current font is ec-lmr10 +194: setchar83 ("53) h:=9205576+364085=9569661, hh:=607 +195: setchar97 ("61) h:=9569661+327680=9897341, hh:=628 +196: right3 655360 h:=9897341+655360=10552701, hh:=668 +200: setchar112 ("70) h:=10552701+364085=10916786, hh:=691 +201: setchar52 ("34) h:=10916786+327680=11244466, hh:=712 +202: setchar46 ("2E) h:=11244466+182043=11426509, hh:=724 +203: setchar48 ("30) h:=11426509+327680=11754189, hh:=745 +204: setchar46 ("2E) h:=11754189+182043=11936232, hh:=757 +205: setchar48 ("30) h:=11936232+327680=12263912, hh:=778 +[Sa p4.0.0] +206: fntnum1 current font is min10 +207: set2 12362("304A) type=0 h:=12263912+630598=12894510, hh:=818 +210: set2 14687("395F) type=0 h:=12894510+630598=13525108, hh:=858 +[以降] +213: pop +level 1:(h=0,v=655360,w=0,x=0,y=0,z=0,hh=0,vv=42) +214: y3 786432 v:=655360+786432=1441792, vv:=91 +218: push +level 1:(h=0,v=1441792,w=0,x=0,y=786432,z=0,hh=0,vv=91) +219: right3 1310720 h:=0+1310720=1310720, hh:=83 +[ ] +223: fntnum0 current font is ec-lmr10 +224: setchar49 ("31) h:=1310720+327680=1638400, hh:=104 +[1] +225: fntnum1 current font is min10 +226: set2 8737("2221) type=0 h:=1638400+630598=2268998, hh:=144 +229: set2 8737("2221) type=0 h:=2268998+630598=2899596, hh:=184 +232: set2 8574("217E) type=0 h:=2899596+630598=3530194, hh:=224 +235: set2 9250("2422) type=0 h:=3530194+630598=4160792, hh:=264 +238: set2 8574("217E) type=0 h:=4160792+630598=4791390, hh:=304 +241: set2 9252("2424) type=0 h:=4791390+630598=5421988, hh:=344 +244: set2 8737("2221) type=0 h:=5421988+630598=6052586, hh:=384 +247: set2 8574("217E) type=0 h:=6052586+630598=6683184, hh:=424 +250: right3 218453 h:=6683184+218453=6901637, hh:=437 +254: set2 8737("2221) type=0 h:=6901637+630598=7532235, hh:=477 +257: set2 8574("217E) type=0 h:=7532235+630598=8162833, hh:=517 +260: set2 13377("3441) type=0 h:=8162833+630598=8793431, hh:=557 +263: set2 15226("3B7A) type=0 h:=8793431+630598=9424029, hh:=597 +[◆◆◇あ◇い◆◇ ◆◇漢字] +266: fntnum0 current font is ec-lmr10 +267: setchar83 ("53) h:=9424029+364085=9788114, hh:=620 +268: setchar97 ("61) h:=9788114+327680=10115794, hh:=641 +269: right3 655360 h:=10115794+655360=10771154, hh:=682 +273: setchar112 ("70) h:=10771154+364085=11135239, hh:=705 +274: setchar51 ("33) h:=11135239+327680=11462919, hh:=726 +275: setchar46 ("2E) h:=11462919+182043=11644962, hh:=738 +276: setchar56 ("38) h:=11644962+327680=11972642, hh:=759 +277: setchar46 ("2E) h:=11972642+182043=12154685, hh:=771 +278: setchar50 ("32) h:=12154685+327680=12482365, hh:=792 +[Sa p3.8.2] +279: fntnum1 current font is min10 +280: set2 12362("304A) type=0 h:=12482365+630598=13112963, hh:=832 +283: set2 14687("395F) type=0 h:=13112963+630598=13743561, hh:=872 +[以降] +286: pop +level 1:(h=0,v=1441792,w=0,x=0,y=786432,z=0,hh=0,vv=91) +287: y0 786432 v:=1441792+786432=2228224, vv:=141 +288: push +level 1:(h=0,v=2228224,w=0,x=0,y=786432,z=0,hh=0,vv=141) +289: right3 1310720 h:=0+1310720=1310720, hh:=83 +[ ] +293: fntnum0 current font is ec-lmr10 +294: setchar50 ("32) h:=1310720+327680=1638400, hh:=104 +[2] +295: fntnum1 current font is min10 +296: set2 8737("2221) type=0 h:=1638400+630598=2268998, hh:=144 +299: set2 8737("2221) type=0 h:=2268998+630598=2899596, hh:=184 +302: set2 8574("217E) type=0 h:=2899596+630598=3530194, hh:=224 +305: w3 218453 h:=3530194+218453=3748647, hh:=237 +309: set2 9250("2422) type=0 h:=3748647+630598=4379245, hh:=277 +312: set2 8574("217E) type=0 h:=4379245+630598=5009843, hh:=317 +315: w0 218453 h:=5009843+218453=5228296, hh:=331 +316: set2 9252("2424) type=0 h:=5228296+630598=5858894, hh:=371 +319: set2 8737("2221) type=0 h:=5858894+630598=6489492, hh:=411 +322: set2 8574("217E) type=0 h:=6489492+630598=7120090, hh:=451 +325: set2 8737("2221) type=0 h:=7120090+630598=7750688, hh:=491 +328: set2 8574("217E) type=0 h:=7750688+630598=8381286, hh:=531 +331: set2 13377("3441) type=0 h:=8381286+630598=9011884, hh:=571 +334: set2 15226("3B7A) type=0 h:=9011884+630598=9642482, hh:=611 +[◆◆◇ あ◇ い◆◇◆◇漢字] +337: fntnum0 current font is ec-lmr10 +338: setchar83 ("53) h:=9642482+364085=10006567, hh:=634 +339: setchar97 ("61) h:=10006567+327680=10334247, hh:=655 +[Sa] +340: pop +level 1:(h=0,v=2228224,w=0,x=0,y=786432,z=0,hh=0,vv=141) +341: y0 786432 v:=2228224+786432=3014656, vv:=191 +342: push +level 1:(h=0,v=3014656,w=0,x=0,y=786432,z=0,hh=0,vv=191) +343: right3 1310720 h:=0+1310720=1310720, hh:=83 +347: setchar51 ("33) h:=1310720+327680=1638400, hh:=104 +[ 3] +348: fntnum1 current font is min10 +349: set2 8737("2221) type=0 h:=1638400+630598=2268998, hh:=144 +352: set2 8737("2221) type=0 h:=2268998+630598=2899596, hh:=184 +355: set2 8574("217E) type=0 h:=2899596+630598=3530194, hh:=224 +358: w3 218453 h:=3530194+218453=3748647, hh:=237 +362: set2 9250("2422) type=0 h:=3748647+630598=4379245, hh:=277 +365: set2 8574("217E) type=0 h:=4379245+630598=5009843, hh:=317 +368: w0 218453 h:=5009843+218453=5228296, hh:=331 +369: set2 9252("2424) type=0 h:=5228296+630598=5858894, hh:=371 +372: set2 8737("2221) type=0 h:=5858894+630598=6489492, hh:=411 +375: set2 8574("217E) type=0 h:=6489492+630598=7120090, hh:=451 +378: w0 218453 h:=7120090+218453=7338543, hh:=465 +379: set2 8737("2221) type=0 h:=7338543+630598=7969141, hh:=505 +382: set2 8574("217E) type=0 h:=7969141+630598=8599739, hh:=545 +385: set2 13377("3441) type=0 h:=8599739+630598=9230337, hh:=585 +388: set2 15226("3B7A) type=0 h:=9230337+630598=9860935, hh:=625 +[◆◆◇ あ◇ い◆◇ ◆◇漢字] +391: fntnum0 current font is ec-lmr10 +392: setchar83 ("53) h:=9860935+364085=10225020, hh:=648 +393: setchar97 ("61) h:=10225020+327680=10552700, hh:=669 +394: right3 655360 h:=10552700+655360=11208060, hh:=710 +398: setchar112 ("70) h:=11208060+364085=11572145, hh:=733 +399: setchar51 ("33) h:=11572145+327680=11899825, hh:=754 +400: setchar46 ("2E) h:=11899825+182043=12081868, hh:=766 +401: setchar56 ("38) h:=12081868+327680=12409548, hh:=787 +402: setchar46 ("2E) h:=12409548+182043=12591591, hh:=799 +403: setchar49 ("31) h:=12591591+327680=12919271, hh:=820 +[Sa p3.8.1] +404: fntnum1 current font is min10 +405: set2 12362("304A) type=0 h:=12919271+630598=13549869, hh:=860 +408: set2 16688("4130) type=0 h:=13549869+630598=14180467, hh:=900 +[以前] +411: pop +level 1:(h=0,v=3014656,w=0,x=0,y=786432,z=0,hh=0,vv=191) +412: y0 786432 v:=3014656+786432=3801088, vv:=241 +413: push +level 1:(h=0,v=3801088,w=0,x=0,y=786432,z=0,hh=0,vv=241) +414: right3 1310720 h:=0+1310720=1310720, hh:=83 +[ ] +418: fntnum0 current font is ec-lmr10 +419: setchar52 ("34) h:=1310720+327680=1638400, hh:=104 +[4] +420: fntnum1 current font is min10 +421: set2 8737("2221) type=0 h:=1638400+630598=2268998, hh:=144 +424: w3 218453 h:=2268998+218453=2487451, hh:=158 +428: set2 8737("2221) type=0 h:=2487451+630598=3118049, hh:=198 +431: set2 8574("217E) type=0 h:=3118049+630598=3748647, hh:=238 +434: set2 9250("2422) type=0 h:=3748647+630598=4379245, hh:=278 +437: set2 8574("217E) type=0 h:=4379245+630598=5009843, hh:=318 +440: w0 218453 h:=5009843+218453=5228296, hh:=331 +441: set2 9252("2424) type=0 h:=5228296+630598=5858894, hh:=371 +444: set2 8737("2221) type=0 h:=5858894+630598=6489492, hh:=411 +447: set2 8574("217E) type=0 h:=6489492+630598=7120090, hh:=451 +450: set2 8737("2221) type=0 h:=7120090+630598=7750688, hh:=491 +453: set2 8574("217E) type=0 h:=7750688+630598=8381286, hh:=531 +456: set2 13377("3441) type=0 h:=8381286+630598=9011884, hh:=571 +459: set2 15226("3B7A) type=0 h:=9011884+630598=9642482, hh:=611 +[◆ ◆◇あ◇ い◆◇◆◇漢字] +462: fntnum0 current font is ec-lmr10 +463: setchar83 ("53) h:=9642482+364085=10006567, hh:=634 +464: setchar97 ("61) h:=10006567+327680=10334247, hh:=655 +[Sa] +465: pop +level 1:(h=0,v=3801088,w=0,x=0,y=786432,z=0,hh=0,vv=241) +466: y0 786432 v:=3801088+786432=4587520, vv:=291 +467: push +level 1:(h=0,v=4587520,w=0,x=0,y=786432,z=0,hh=0,vv=291) +468: right3 1310720 h:=0+1310720=1310720, hh:=83 +472: setchar53 ("35) h:=1310720+327680=1638400, hh:=104 +[ 5] +473: fntnum1 current font is min10 +474: set2 8737("2221) type=0 h:=1638400+630598=2268998, hh:=144 +477: w3 218453 h:=2268998+218453=2487451, hh:=158 +481: set2 8737("2221) type=0 h:=2487451+630598=3118049, hh:=198 +484: set2 8574("217E) type=0 h:=3118049+630598=3748647, hh:=238 +487: set2 9250("2422) type=0 h:=3748647+630598=4379245, hh:=278 +490: set2 8574("217E) type=0 h:=4379245+630598=5009843, hh:=318 +493: w0 218453 h:=5009843+218453=5228296, hh:=331 +494: set2 9252("2424) type=0 h:=5228296+630598=5858894, hh:=371 +497: set2 8737("2221) type=0 h:=5858894+630598=6489492, hh:=411 +500: set2 8574("217E) type=0 h:=6489492+630598=7120090, hh:=451 +503: w0 218453 h:=7120090+218453=7338543, hh:=465 +504: set2 8737("2221) type=0 h:=7338543+630598=7969141, hh:=505 +507: set2 8574("217E) type=0 h:=7969141+630598=8599739, hh:=545 +510: set2 13377("3441) type=0 h:=8599739+630598=9230337, hh:=585 +513: set2 15226("3B7A) type=0 h:=9230337+630598=9860935, hh:=625 +[◆ ◆◇あ◇ い◆◇ ◆◇漢字] +516: fntnum0 current font is ec-lmr10 +517: setchar83 ("53) h:=9860935+364085=10225020, hh:=648 +518: setchar97 ("61) h:=10225020+327680=10552700, hh:=669 +[Sa] +519: pop +level 1:(h=0,v=4587520,w=0,x=0,y=786432,z=0,hh=0,vv=291) +520: y0 786432 v:=4587520+786432=5373952, vv:=340 +521: push +level 1:(h=0,v=5373952,w=0,x=0,y=786432,z=0,hh=0,vv=340) +522: right3 1310720 h:=0+1310720=1310720, hh:=83 +526: setchar54 ("36) h:=1310720+327680=1638400, hh:=104 +[ 6] +527: fntnum1 current font is min10 +528: set2 8737("2221) type=0 h:=1638400+630598=2268998, hh:=144 +531: w3 218453 h:=2268998+218453=2487451, hh:=158 +535: set2 8737("2221) type=0 h:=2487451+630598=3118049, hh:=198 +538: set2 8574("217E) type=0 h:=3118049+630598=3748647, hh:=238 +541: w0 218453 h:=3748647+218453=3967100, hh:=251 +542: set2 9250("2422) type=0 h:=3967100+630598=4597698, hh:=291 +545: set2 8574("217E) type=0 h:=4597698+630598=5228296, hh:=331 +548: w0 218453 h:=5228296+218453=5446749, hh:=345 +549: set2 9252("2424) type=0 h:=5446749+630598=6077347, hh:=385 +552: set2 8737("2221) type=0 h:=6077347+630598=6707945, hh:=425 +555: set2 8574("217E) type=0 h:=6707945+630598=7338543, hh:=465 +558: set2 8737("2221) type=0 h:=7338543+630598=7969141, hh:=505 +561: set2 8574("217E) type=0 h:=7969141+630598=8599739, hh:=545 +564: set2 13377("3441) type=0 h:=8599739+630598=9230337, hh:=585 +567: set2 15226("3B7A) type=0 h:=9230337+630598=9860935, hh:=625 +[◆ ◆◇ あ◇ い◆◇◆◇漢字] +570: fntnum0 current font is ec-lmr10 +571: setchar83 ("53) h:=9860935+364085=10225020, hh:=648 +572: setchar97 ("61) h:=10225020+327680=10552700, hh:=669 +[Sa] +573: pop +level 1:(h=0,v=5373952,w=0,x=0,y=786432,z=0,hh=0,vv=340) +574: y0 786432 v:=5373952+786432=6160384, vv:=390 +575: push +level 1:(h=0,v=6160384,w=0,x=0,y=786432,z=0,hh=0,vv=390) +576: right3 1310720 h:=0+1310720=1310720, hh:=83 +580: setchar55 ("37) h:=1310720+327680=1638400, hh:=104 +[ 7] +581: fntnum1 current font is min10 +582: set2 8737("2221) type=0 h:=1638400+630598=2268998, hh:=144 +585: w3 218453 h:=2268998+218453=2487451, hh:=158 +589: set2 8737("2221) type=0 h:=2487451+630598=3118049, hh:=198 +592: set2 8574("217E) type=0 h:=3118049+630598=3748647, hh:=238 +595: w0 218453 h:=3748647+218453=3967100, hh:=251 +596: set2 9250("2422) type=0 h:=3967100+630598=4597698, hh:=291 +599: set2 8574("217E) type=0 h:=4597698+630598=5228296, hh:=331 +602: w0 218453 h:=5228296+218453=5446749, hh:=345 +603: set2 9252("2424) type=0 h:=5446749+630598=6077347, hh:=385 +606: set2 8737("2221) type=0 h:=6077347+630598=6707945, hh:=425 +609: set2 8574("217E) type=0 h:=6707945+630598=7338543, hh:=465 +612: w0 218453 h:=7338543+218453=7556996, hh:=479 +613: set2 8737("2221) type=0 h:=7556996+630598=8187594, hh:=519 +616: set2 8574("217E) type=0 h:=8187594+630598=8818192, hh:=559 +619: set2 13377("3441) type=0 h:=8818192+630598=9448790, hh:=599 +622: set2 15226("3B7A) type=0 h:=9448790+630598=10079388, hh:=639 +[◆ ◆◇ あ◇ い◆◇ ◆◇漢字] +625: fntnum0 current font is ec-lmr10 +626: setchar83 ("53) h:=10079388+364085=10443473, hh:=662 +627: setchar97 ("61) h:=10443473+327680=10771153, hh:=683 +[Sa] +628: pop +level 1:(h=0,v=6160384,w=0,x=0,y=786432,z=0,hh=0,vv=390) +629: pop +level 0:(h=0,v=42152922,w=0,x=0,y=0,z=0,hh=0,vv=2670) +630: down3 1572864 v:=42152922+1572864=43725786, vv:=2770 +634: eop diff --git a/Build/source/texk/web2c/ptexdir/tests/ptexlineendmode.tex b/Build/source/texk/web2c/ptexdir/tests/ptexlineendmode.tex index 5dce40d2e12..cf38ff5e8d6 100644 --- a/Build/source/texk/web2c/ptexdir/tests/ptexlineendmode.tex +++ b/Build/source/texk/web2c/ptexdir/tests/ptexlineendmode.tex @@ -1,4 +1,12 @@ -\font\fn=ec-lmr10\fn\catcode`\^^9f=11 +\font\fn=ec-lmr10\fn +\ifx\kanjiskip\undefined\else + \ifnum\jis"2121="3000 + \jfont\jpy=umin10 at 10pt\jpy + \else + \jfont\jpy=min10 at 10pt\jpy + \fi +\fi +\catcode`\^^9f=11 \def\◆{◇}\def\漢{◇}\def\^^9f{S} \ptexlineendmode=0 % p4.0.0標準 diff --git a/Build/source/texk/web2c/ptexdir/tests/ucs-e.log b/Build/source/texk/web2c/ptexdir/tests/ucs-e.log index 2e34c2ee9b8..33428e2db9e 100644 --- a/Build/source/texk/web2c/ptexdir/tests/ucs-e.log +++ b/Build/source/texk/web2c/ptexdir/tests/ucs-e.log @@ -21,5 +21,8 @@ -1, -1, -1, -1, -1 -1, 34821, 34722 12354, 29081, -1 +41393, 41405, 41409, 41410, 41412, 41437, 41455, 41457, 41458, 41676 +41393, 41405, 41409, 41410, 41412, 41437, 41455, 41457, 41458, 41676 +41393, 41405, 41409, 41410, 41412, 41437, 41455, 41457, 41458, 41676 ) No pages of output. diff --git a/Build/source/texk/web2c/ptexdir/tests/ucs-s.log b/Build/source/texk/web2c/ptexdir/tests/ucs-s.log index 6ca6314c440..576b027e823 100644 --- a/Build/source/texk/web2c/ptexdir/tests/ucs-s.log +++ b/Build/source/texk/web2c/ptexdir/tests/ucs-s.log @@ -21,5 +21,8 @@ -1, -1, -1, -1, -1 12450, 29081, -1 -1, -1, -1 +33104, 33116, 33120, 33121, 33123, 33148, 33167, 33169, 33170, 33226 +33104, 33116, 33120, 33121, 33123, 33148, 33167, 33169, 33170, 33226 +33104, 33116, 33120, 33121, 33123, 33148, 33167, 33169, 33170, 33226 ) No pages of output. diff --git a/Build/source/texk/web2c/ptexdir/tests/ucs.tex b/Build/source/texk/web2c/ptexdir/tests/ucs.tex index f4976ad7045..520a7485d57 100644 --- a/Build/source/texk/web2c/ptexdir/tests/ucs.tex +++ b/Build/source/texk/web2c/ptexdir/tests/ucs.tex @@ -24,6 +24,12 @@ \typeout{\toucs"0, \toucs"80, \toucs"D7, \toucs"A7, \toucs"10000} \typeout{\toucs"8341, \toucs"EAA4, \toucs"EAA5} \typeout{\toucs"A4A2, \toucs"F4A6, \toucs"F4A7} +\typeout{\jis"2131, \jis"213D, \jis"2141, \jis"2142, \jis"2144, + \jis"215D, \jis"216F, \jis"2171, \jis"2172, \jis"224C} +\typeout{\ucs"203E, \ucs"2014, \ucs"301C, \ucs"2016, \ucs"2026, + \ucs"2212, \ucs"00A5, \ucs"00A2, \ucs"00A3, \ucs"00AC} +\typeout{\ucs"FFE3, \ucs"2015, \ucs"FF5E, \ucs"2225, \ucs"22EF, + \ucs"FF0D, \ucs"FFE5, \ucs"FFE0, \ucs"FFE1, \ucs"FFE2} \bye diff --git a/Build/source/texk/web2c/uptexdir/ChangeLog b/Build/source/texk/web2c/uptexdir/ChangeLog index 961ecff4390..010daf21ba0 100644 --- a/Build/source/texk/web2c/uptexdir/ChangeLog +++ b/Build/source/texk/web2c/uptexdir/ChangeLog @@ -1,3 +1,9 @@ +2024-09-21 TANAKA Takuji + + * ptex-base.ch, uptex-m.ch: + Fix a bug in initialization of inhibit_xsp/kinsoku tables + (Bug introduced on commit 2022-12-12 r65248). + 2024-09-16 TANAKA Takuji * ptex-base.ch: Use constants enc_jis and enc_ucs. diff --git a/Build/source/texk/web2c/uptexdir/ptex-base.ch b/Build/source/texk/web2c/uptexdir/ptex-base.ch index 528a7b7ae23..5e20ff889cc 100644 --- a/Build/source/texk/web2c/uptexdir/ptex-base.ch +++ b/Build/source/texk/web2c/uptexdir/ptex-base.ch @@ -1305,10 +1305,11 @@ for k:=0 to 255 do begin cat_code(k):=other_char; kcat_code(k):=other_kchar; math_code(k):=hi(k); sf_code(k):=1000; auto_xsp_code(k):=0; + inhibit_xsp_type(k):=0; kinsoku_type(k):=0; end; for k:=0 to 1023 do - begin inhibit_xsp_code(k):=0; inhibit_xsp_type(k):=0; - kinsoku_code(k):=0; kinsoku_type(k):=0; + begin inhibit_xsp_code(k):=0; + kinsoku_code(k):=0; end; @z @x [17.232] l.4971 - pTeX: initialize cat_code, cur_jfont, cur_tfont diff --git a/Build/source/texk/web2c/uptexdir/uptex-m.ch b/Build/source/texk/web2c/uptexdir/uptex-m.ch index f4b7c7272d9..0a79a0d7fff 100644 --- a/Build/source/texk/web2c/uptexdir/uptex-m.ch +++ b/Build/source/texk/web2c/uptexdir/uptex-m.ch @@ -239,6 +239,7 @@ for k:=0 to 255 do begin cat_code(k):=other_char; kcat_code(k):=other_kchar; math_code(k):=hi(k); sf_code(k):=1000; auto_xsp_code(k):=0; + inhibit_xsp_type(k):=0; kinsoku_type(k):=0; end; @y eqtb[auto_xspacing_code]:=eqtb[cat_code_base]; @@ -247,6 +248,7 @@ for k:=0 to 255 do begin cat_code(k):=other_char; math_code(k):=hi(k); sf_code(k):=1000; auto_xsp_code(k):=0; + inhibit_xsp_type(k):=0; kinsoku_type(k):=0; end; for k:=0 to 511 do begin kcat_code(k):=other_kchar; -- cgit v1.2.3