Skip to content

Commit

Permalink
uptex-{euc,sjis}: test for Windows (#136)
Browse files Browse the repository at this point in the history
  • Loading branch information
t-tk committed Dec 18, 2022
1 parent 2fc1dd7 commit 985d420
Show file tree
Hide file tree
Showing 12 changed files with 140 additions and 9 deletions.
35 changes: 31 additions & 4 deletions source/texk/web2c/ptexdir/pfname.test
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,45 @@
# You may freely use, modify and/or distribute this file.

test -d ptests || mkdir -p ptests
rm -f fn*.*
rm -f ptests/fn*.log ptests/fn*.txt

rc=0

TEXMFCNF=$srcdir/../kpathsea
TEXINPUTS=$srcdir/ptexdir/tests:.
export TEXMFCNF TEXINPUTS

for enc in euc sjis; do
# pTeX internal encoding
fenc="utf8"
for ienc in euc sjis; do
for doc in fn fnさざ波; do
./ptex -ini -interaction nonstopmode -kanji=utf8 --kanji-internal=$enc $doc.tex >ptests/$doc-$enc-term.log || $rc=1
diff $doc.txt $srcdir/ptexdir/tests/fn.txt || $rc=2

echo '>>> Document:'$doc ' File Encoding:'$fenc ' Internal Encoding:'$ienc
./ptex -ini -interaction nonstopmode -jobname=$doc-$ienc -kanji=$fenc --kanji-internal=$ienc $doc.tex >ptests/$doc-$ienc-term.log || $rc=1
mv $doc-$ienc.txt $doc-$ienc.log ptests/
diff ptests/$doc-$ienc.txt $srcdir/ptexdir/tests/fn-utf8.txt || $rc=2

done
done

# pTeX, regacy encoding
for fenc in sjis euc jis utf8; do
for doc in fnさざ波-$fenc; do

ienc=$fenc
if [ "$COMSPEC" != "" ]; then
echo "*** We guess OS is Windows."
if [ $fenc != euc ]; then ienc="sjis"; fi
else
echo "*** We guess OS is not Windows."
if [ $fenc != sjis ]; then ienc="euc"; fi
fi

echo '>>> Document:'$doc ' File Encoding:'$fenc ' Internal Encoding:'$ienc
./ptex -ini -interaction nonstopmode -jobname=$doc-$ienc -kanji=$fenc --kanji-internal=$ienc $doc.tex >ptests/$doc-$fenc-term.log || $rc=3
mv $doc-$ienc.txt $doc-$ienc.log ptests/
diff ptests/$doc-$ienc.txt $srcdir/ptexdir/tests/fn-$fenc.txt || $rc=4

done
done

Expand Down
9 changes: 9 additions & 0 deletions source/texk/web2c/ptexdir/ptex-base.ch
Original file line number Diff line number Diff line change
Expand Up @@ -6865,6 +6865,15 @@ undump_things(char_base[null_font], font_ptr+1-null_font);
fix_date_and_time;@/
@y
last:=ptenc_conv_first_line(loc, last, buffer, buf_size);
begin
print_nl("debug 1st line "); print_int(loc); print(" ");
for k:=0 to last do begin
if k=loc then print(">");
if (buffer[k]<@"20)or(buffer[k]>@"7e) then
begin print("["); print_hex(buffer[k]); print("]"); end
else print(buffer[k]);
end;
print_nl(""); end;
fix_date_and_time;@/
@z
Expand Down
1 change: 1 addition & 0 deletions source/texk/web2c/ptexdir/tests/fn-euc.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
abc ���¦� �ѧҧ� �������� ŷ�Ͽ�
1 change: 1 addition & 0 deletions source/texk/web2c/ptexdir/tests/fn-jis.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
abc $B&A&B&C(B $B'Q'R'S(B $B$"%""(!o(B $BE7CO?M(B
1 change: 1 addition & 0 deletions source/texk/web2c/ptexdir/tests/fn-sjis.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
abc ������ �p�q�r ���A���� �V�n�l
File renamed without changes.
12 changes: 12 additions & 0 deletions source/texk/web2c/ptexdir/tests/fnさざ波-euc.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
% fnさざ波-euc.tex
% EUC-JP encoding
\catcode`\{=1
\catcode`\}=2

\immediate\write16{JOB[\jobname] :: We are in fnさざ波-euc.tex}

\immediate\openout0=\jobname.txt
\immediate\write0{abc αβγ абв あア※¥ 天地人}
\immediate\closeout0

\relax\end
12 changes: 12 additions & 0 deletions source/texk/web2c/ptexdir/tests/fnさざ波-jis.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
% fn$B$5$6GH(B-jis.tex
% ISO-2022-JP encoding
\catcode`\{=1
\catcode`\}=2

\immediate\write16{JOB[\jobname] :: We are in fn$B$5$6GH(B-jis.tex}
\immediate\openout0=\jobname.txt
\immediate\write0{abc $B&A&B&C(B $B'Q'R'S(B $B$"%""(!o(B $BE7CO?M(B}
\immediate\closeout0
\relax\end
12 changes: 12 additions & 0 deletions source/texk/web2c/ptexdir/tests/fnさざ波-sjis.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
% fnさざ波-sjis.tex
% Shift_JIS encoding
\catcode`\{=1
\catcode`\}=2

\immediate\write16{JOB[\jobname] :: We are in fnさざ波-sjis.tex}

\immediate\openout0=\jobname.txt
\immediate\write0{abc αβγ абв あア※¥ 天地人}
\immediate\closeout0

\relax\end
12 changes: 12 additions & 0 deletions source/texk/web2c/ptexdir/tests/fnさざ波-utf8.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
% fnさざ波-utf8.tex
% UTF-8 encoding
\catcode`\{=1
\catcode`\}=2

\immediate\write16{JOB[\jobname] :: We are in fnさざ波-utf8.tex}

\immediate\openout0=\jobname.txt
\immediate\write0{abc αβγ абв あア※¥ 天地人}
\immediate\closeout0

\relax\end
1 change: 0 additions & 1 deletion source/texk/web2c/ptexdir/tests/fnさざ波.tex
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,3 @@
\immediate\closeout0

\relax\end

53 changes: 49 additions & 4 deletions source/texk/web2c/uptexdir/pfname.test
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,63 @@
# You may freely use, modify and/or distribute this file.

test -d uptests || mkdir -p uptests
rm -f fn*.*
rm -f uptests/fn*.log uptests/fn*.txt

rc=0

TEXMFCNF=$srcdir/../kpathsea
TEXINPUTS=$srcdir/ptexdir/tests:.
export TEXMFCNF TEXINPUTS

for enc in euc sjis uptex; do
# upTeX internal encoding
fenc="utf8"
for ienc in euc sjis uptex; do
for doc in fn fnさざ波; do
./uptex -ini -interaction nonstopmode -kanji=utf8 --kanji-internal=$enc $doc.tex >uptests/$doc-$enc-term.log || $rc=1
diff $doc.txt $srcdir/ptexdir/tests/fn.txt || $rc=2

if [ "$COMSPEC" != "" ]; then
echo "*** We guess OS is Windows."
if [ $ienc = uptex ]; then
command_line_encoding=utf8
export command_line_encoding
else
command_line_encoding=none
export command_line_encoding
fi
fi

echo '>>> Document:'$doc ' File Encoding:'$fenc ' Internal Encoding:'$ienc
./uptex -ini -interaction nonstopmode -jobname=$doc-$ienc -kanji=$fenc --kanji-internal=$ienc $doc.tex >uptests/$doc-$ienc-term.log || $rc=1
mv $doc-$ienc.txt $doc-$ienc.log uptests/
diff uptests/$doc-$ienc.txt $srcdir/ptexdir/tests/fn-utf8.txt || $rc=2

done
done

# pTeX compatible mode, regacy encoding
for fenc in sjis euc jis utf8; do
for doc in fnさざ波-$fenc; do

ienc=$fenc
if [ "$COMSPEC" != "" ]; then
echo "*** We guess OS is Windows."
if [ $fenc != euc ]; then ienc="sjis"; fi
if [ $ienc = uptex ]; then
command_line_encoding=utf8
export command_line_encoding
else
command_line_encoding=none
export command_line_encoding
fi
else
echo "*** We guess OS is not Windows."
if [ $fenc != sjis ]; then ienc="euc"; fi
fi

echo '>>> Document:'$doc ' File Encoding:'$fenc ' Internal Encoding:'$ienc
./uptex -ini -interaction nonstopmode -jobname=$doc-$ienc -kanji=$fenc --kanji-internal=$ienc $doc.tex >uptests/$doc-$fenc-term.log || $rc=3
mv $doc-$ienc.txt $doc-$ienc.log uptests/
diff uptests/$doc-$ienc.txt $srcdir/ptexdir/tests/fn-$fenc.txt || $rc=4

done
done

Expand Down

0 comments on commit 985d420

Please sign in to comment.