summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakuji Tanaka <ttk@t-lab.opal.ne.jp>2020-10-25 14:04:57 +0000
committerTakuji Tanaka <ttk@t-lab.opal.ne.jp>2020-10-25 14:04:57 +0000
commite1486c671ddecbfa1ee3191ab2d0e9a7a08a666a (patch)
treeb47b26f370936f8b816c8b6a6d677300e75bbb94
parentd8e1864eb74401b9db542dd6fa247d4d144cd15f (diff)
upTeX 1.27, update is.kanji.str$ in upBiBTeX
git-svn-id: svn://tug.org/texlive/trunk@56756 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Build/source/texk/web2c/uptexdir/ChangeLog13
-rw-r--r--Build/source/texk/web2c/uptexdir/tests/unibib.aux4
-rw-r--r--Build/source/texk/web2c/uptexdir/tests/unibib.bbl50
-rw-r--r--Build/source/texk/web2c/uptexdir/tests/unibib.bib81
-rw-r--r--Build/source/texk/web2c/uptexdir/tests/unibib.tex98
-rw-r--r--Build/source/texk/web2c/uptexdir/upbibtex.ch71
-rw-r--r--Build/source/texk/web2c/uptexdir/updvitype.ch2
-rw-r--r--Build/source/texk/web2c/uptexdir/uppltotf.ch2
-rw-r--r--Build/source/texk/web2c/uptexdir/uptex-m.ch7
-rw-r--r--Build/source/texk/web2c/uptexdir/uptex_version.h2
-rw-r--r--Build/source/texk/web2c/uptexdir/uptftopl.ch2
11 files changed, 324 insertions, 8 deletions
diff --git a/Build/source/texk/web2c/uptexdir/ChangeLog b/Build/source/texk/web2c/uptexdir/ChangeLog
index 8dcd55dd442..b6db0953e71 100644
--- a/Build/source/texk/web2c/uptexdir/ChangeLog
+++ b/Build/source/texk/web2c/uptexdir/ChangeLog
@@ -1,3 +1,16 @@
+2020-10-25 TANAKA Takuji <ttk@t-lab.opal.ne.jp>
+
+ * uptex-m.ch, upbibtex.ch, updvitype.ch, uppltotf.ch, uptftopl.ch,
+ uptex_version.h: upTeX version u1.27.
+
+2020-10-25 Hironobu Yamashita <h.y.acetaminophen@gmail.com>
+
+ * upbibtex.ch:
+ Make is.kanji.str$ false for Latin, Cyrillic, Greek scripts
+ and CJK symbols.
+ * tests/unibib.{tex,bib,aux,bbl}: Test case.
+ https://github.com/texjporg/tex-jp-build/issues/109
+
2020-08-29 Hironobu Yamashita <h.y.acetaminophen@gmail.com>
* updvitype.ch: Sync with the change of pdvitype.ch.
diff --git a/Build/source/texk/web2c/uptexdir/tests/unibib.aux b/Build/source/texk/web2c/uptexdir/tests/unibib.aux
new file mode 100644
index 00000000000..c8ad2dc61ca
--- /dev/null
+++ b/Build/source/texk/web2c/uptexdir/tests/unibib.aux
@@ -0,0 +1,4 @@
+\relax
+\citation{*}
+\bibstyle{jplain}
+\bibdata{unibib}
diff --git a/Build/source/texk/web2c/uptexdir/tests/unibib.bbl b/Build/source/texk/web2c/uptexdir/tests/unibib.bbl
new file mode 100644
index 00000000000..718ab2c44bc
--- /dev/null
+++ b/Build/source/texk/web2c/uptexdir/tests/unibib.bbl
@@ -0,0 +1,50 @@
+\begin{thebibliography}{1}
+
+\bibitem{björk2020}
+Tomas Björk.
+\newblock {\em Arbitrage Theory in Continuous Time}.
+\newblock Oxford University Press, 2020.
+
+\bibitem{boswell}
+Dustin Boswell and Trevor Foucher.
+\newblock リーダブルコード
+ ―より良いコードを書くためのシンプルで実践的
+ なテクニック (Theory in practice).
+\newblock オライリージャパン, 2012.
+
+\bibitem{dostoevskii}
+Фёдор~Миха́йлович Достое́вский.
+\newblock {\em Братья Карамазовы}.
+\newblock Гослитиздат, 1958.
+
+\bibitem{gim}
+김만중.
+\newblock 구운몽.
+\newblock 高麗書林, 1975.
+
+\bibitem{nikos}
+Νίκος Καζαντζάκης.
+\newblock {\em Συμπόσιον}.
+\newblock 京緑社, 2020.
+
+\bibitem{knuth86}
+Donald~E. Knuth.
+\newblock {\em The \TeX book}.
+\newblock Addison-Wesley, 1986.
+
+\bibitem{ken-na}
+中野賢.
+\newblock 日本語{\LaTeXe}ブック.
+\newblock アスキー, 1996.
+
+\bibitem{kigou}
+Foo Hoge.
+\newblock {\em $£(!?)☃♪、。§○●}.
+\newblock Snowman commedian Press, 2020.
+
+\bibitem{fullwidth}
+Bar Fuga.
+\newblock 1.
+\newblock TeXnician Co., Ltd., 2020.
+
+\end{thebibliography}
diff --git a/Build/source/texk/web2c/uptexdir/tests/unibib.bib b/Build/source/texk/web2c/uptexdir/tests/unibib.bib
new file mode 100644
index 00000000000..11e6baa22a8
--- /dev/null
+++ b/Build/source/texk/web2c/uptexdir/tests/unibib.bib
@@ -0,0 +1,81 @@
+%% ASCII only
+@book{knuth86,
+ author = "Donald E. Knuth",
+ title = "The \TeX book",
+ publisher = "Addison-Wesley",
+ year = 1986,
+}
+
+%% Latin-1
+@book{björk2020,
+ author = "Tomas Björk",
+ title = "Arbitrage Theory in Continuous Time",
+ publisher = "Oxford University Press",
+ year = 2020,
+}
+
+%% 日本人姓名;読み仮名つき
+@book{ken-na,
+ author = "中野 賢",
+ yomi = "Ken Nakano",
+ title = "日本語{\LaTeXe}ブック",
+ publisher = "アスキー",
+ year = 1996,
+}
+
+%% ギリシャ文字;ニコス・カザンザキス「饗宴」
+@book{nikos,
+ author = "Νίκος Καζαντζάκης",
+ yomi = "Nikos Kazantzakis",
+ title = "Συμπόσιον",
+ publisher = "京緑社",
+ year = 2020,
+}
+
+%% キリル文字;ドストエフスキー「カラマーゾフの兄弟」
+@book{dostoevskii,
+ title = "Братья Карамазовы",
+ author = "Достое́вский, Фёдор Миха́йлович",
+ yomi = "Dostoevskii, F.M.",
+ publisher = "Гослитиздат",
+ year = "1958",
+}
+
+%% ハングル:金萬重「九雲夢」
+@book{gim,
+ author = "김 만중",
+ yomi = "Manjung Gim",
+ title = "구운몽",
+ publisher = "高麗書林",
+ year = 1975,
+}
+
+%% 日本語文献;著者は非・日本人
+@book{boswell,
+ author = {Boswell, Dustin and Foucher, Trevor},
+ title = {リーダブルコード ―より良いコードを書くためのシンプルで実践的
+ なテクニック (Theory in practice) },
+ year = 2012,
+ publisher = {オライリージャパン},
+ translator = {角 征典},
+ language = {ja},
+ yomi = {boswell}
+}
+
+%% 全角数字(17)は和文扱いとする
+@book{fullwidth,
+ author = "Bar Fuga",
+ yomi = "ぜんかく",
+ title = "1",
+ publisher = "TeXnician Co., Ltd.",
+ year = 2020,
+}
+
+%% 記号類(18)は欧文扱いとする
+@book{kigou,
+ author = "Foo Hoge",
+ yomi = "きごうたち",
+ title = "$£(!?)☃♪、。§○●",
+ publisher = "Snowman commedian Press",
+ year = 2020,
+}
diff --git a/Build/source/texk/web2c/uptexdir/tests/unibib.tex b/Build/source/texk/web2c/uptexdir/tests/unibib.tex
new file mode 100644
index 00000000000..918d11f37b2
--- /dev/null
+++ b/Build/source/texk/web2c/uptexdir/tests/unibib.tex
@@ -0,0 +1,98 @@
+% https://github.com/texjporg/tex-jp-build/issues/109
+
+\begin{filecontents}[overwrite]{\jobname.bib}
+%% ASCII only
+@book{knuth86,
+ author = "Donald E. Knuth",
+ title = "The \TeX book",
+ publisher = "Addison-Wesley",
+ year = 1986,
+}
+
+%% Latin-1
+@book{björk2020,
+ author = "Tomas Björk",
+ title = "Arbitrage Theory in Continuous Time",
+ publisher = "Oxford University Press",
+ year = 2020,
+}
+
+%% 日本人姓名;読み仮名つき
+@book{ken-na,
+ author = "中野 賢",
+ yomi = "Ken Nakano",
+ title = "日本語{\LaTeXe}ブック",
+ publisher = "アスキー",
+ year = 1996,
+}
+
+%% ギリシャ文字;ニコス・カザンザキス「饗宴」
+@book{nikos,
+ author = "Νίκος Καζαντζάκης",
+ yomi = "Nikos Kazantzakis",
+ title = "Συμπόσιον",
+ publisher = "京緑社",
+ year = 2020,
+}
+
+%% キリル文字;ドストエフスキー「カラマーゾフの兄弟」
+@book{dostoevskii,
+ title = "Братья Карамазовы",
+ author = "Достое́вский, Фёдор Миха́йлович",
+ yomi = "Dostoevskii, F.M.",
+ publisher = "Гослитиздат",
+ year = "1958",
+}
+
+%% ハングル:金萬重「九雲夢」
+@book{gim,
+ author = "김 만중",
+ yomi = "Manjung Gim",
+ title = "구운몽",
+ publisher = "高麗書林",
+ year = 1975,
+}
+
+%% 日本語文献;著者は非・日本人
+@book{boswell,
+ author = {Boswell, Dustin and Foucher, Trevor},
+ title = {リーダブルコード ―より良いコードを書くためのシンプルで実践的
+ なテクニック (Theory in practice) },
+ year = 2012,
+ publisher = {オライリージャパン},
+ translator = {角 征典},
+ language = {ja},
+ yomi = {boswell}
+}
+
+%% 全角数字(17)は和文扱いとする
+@book{fullwidth,
+ author = "Bar Fuga",
+ yomi = "ぜんかく",
+ title = "1",
+ publisher = "TeXnician Co., Ltd.",
+ year = 2020,
+}
+
+%% 記号類(18)は欧文扱いとする
+@book{kigou,
+ author = "Foo Hoge",
+ yomi = "きごうたち",
+ title = "$£(!?)☃♪、。§○●",
+ publisher = "Snowman commedian Press",
+ year = 2020,
+}
+\end{filecontents}
+
+\documentclass{ltjsarticle}
+% ギリシャ文字・キリル文字を欧文扱い
+\ltjsetparameter{jacharrange={-2}}
+\usepackage{luatexja-fontspec}
+\usepackage[sourcehan]{luatexja-preset}
+\setmainfont{XITS}% ギリシャ文字・キリル文字を含む
+\begin{document}
+test
+\nocite{*}
+\bibliographystyle{jplain}
+\bibliography{\jobname}
+\end{document}
diff --git a/Build/source/texk/web2c/uptexdir/upbibtex.ch b/Build/source/texk/web2c/uptexdir/upbibtex.ch
index 4282e17524e..fa3cf4e4051 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.26'
+@d banner=='This is upBibTeX, Version 0.99d-j0.33-u1.27'
@z
@x
@@ -331,11 +331,80 @@ incr(current_option);
@ An element with all zeros always ends the list.
@z
+@x procedure x_is_kanji_str
+procedure x_is_kanji_str;
+label exit;
+@y
+procedure x_is_kanji_str;
+label exit;
+var ctmp,clen:integer;
+@z
+
+@x procedure x_is_kanji_str (cont.)
+ while sp_ptr<sp_end do begin
+ if str_pool[sp_ptr]>127 then begin
+ push_lit_stk(1,stk_int);
+ return;
+ end else begin
+ incr(sp_ptr);
+ end;
+ end;
+@y
+ while sp_ptr<sp_end do begin
+ clen := multibytelen(str_pool[sp_ptr]);
+ if sp_ptr+clen<=sp_end then
+ ctmp := fromBUFF(str_pool, sp_ptr+clen, sp_ptr)
+ else
+ ctmp := str_pool[sp_ptr];
+ if is_char_kanji_upbibtex(ctmp) then begin
+ push_lit_stk(1,stk_int);
+ return;
+ end else begin
+ if sp_ptr+clen<=sp_end then
+ sp_ptr := sp_ptr + clen
+ else
+ incr(sp_ptr);
+ end;
+ end;
+@z
+
@x
exit:end;
@y
exit:end;
+@ @<Procedures and functions for handling numbers, characters, and strings@>=
+function is_char_kanji_upbibtex(@!c:integer):boolean;
+label exit;
+var k:integer;
+begin
+ { based on upTeX-1.26 kcatcode status: 16,17,19->true / 15,18->false }
+ 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 }
+ else if k=@"1FE then return { Fullwidth digit and latin alphabet }
+ else if k=@"1FF then return; { Halfwidth katakana }
+ end
+ else { is_internalEUC }
+ if is_char_kanji(c) then return;
+ is_char_kanji_upbibtex := false;
+exit:end;
+
@ @<Initialize variables depending on Kanji code@>=
if (is_internalUPTEX) then
begin
diff --git a/Build/source/texk/web2c/uptexdir/updvitype.ch b/Build/source/texk/web2c/uptexdir/updvitype.ch
index d9dc269f5cd..41b0aae3936 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.26'
+@d banner=='This is upDVItype, Version 3.6-p0.5-u1.27'
@z
@x procedure initialize
diff --git a/Build/source/texk/web2c/uptexdir/uppltotf.ch b/Build/source/texk/web2c/uptexdir/uppltotf.ch
index 4be275a57e7..8978f5de8d6 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.26'
+@d banner=='This is upPLtoTF, Version 3.6-p2.0-u1.27'
@z
@x
diff --git a/Build/source/texk/web2c/uptexdir/uptex-m.ch b/Build/source/texk/web2c/uptexdir/uptex-m.ch
index fbf48b139e9..6173e09f778 100644
--- a/Build/source/texk/web2c/uptexdir/uptex-m.ch
+++ b/Build/source/texk/web2c/uptexdir/uptex-m.ch
@@ -1,4 +1,4 @@
-% This is a change file for upTeX u1.26
+% This is a change file for upTeX u1.27
% By Takuji Tanaka.
%
% (02/26/2007) TTK upTeX u0.01
@@ -42,6 +42,7 @@
% (2019-05-06) HK Hironori Kitagawa fixed a bug in \if.
% (2019-05-06) TTK upTeX u1.25
% (2020-02-22) TTK upTeX u1.26
+% (2020-10-25) TTK upTeX u1.27
@x upTeX: banner
{printed when \pTeX\ starts}
@@ -49,8 +50,8 @@
{printed when \pTeX\ starts}
@#
@d upTeX_version=1
-@d upTeX_revision==".26"
-@d upTeX_version_string=='-u1.26' {current u\pTeX\ version}
+@d upTeX_revision==".27"
+@d upTeX_version_string=='-u1.27' {current u\pTeX\ version}
@#
@d upTeX_banner=='This is upTeX, Version 3.14159265',pTeX_version_string,upTeX_version_string
@d upTeX_banner_k==upTeX_banner
diff --git a/Build/source/texk/web2c/uptexdir/uptex_version.h b/Build/source/texk/web2c/uptexdir/uptex_version.h
index b5c4a7473b2..cfe69163294 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.26"
+#define UPTEX_VERSION "u1.27"
diff --git a/Build/source/texk/web2c/uptexdir/uptftopl.ch b/Build/source/texk/web2c/uptexdir/uptftopl.ch
index ee20994ce16..7b3032ce2db 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.26'
+@d banner=='This is upTFtoPL, Version 3.3-p2.0-u1.27'
@z
@x