From 8d09cd2666eed0e30bee7070359aeb1a06caf80b Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 17 Jul 2021 20:41:45 +0000 Subject: cjk-ko (17jul21) git-svn-id: svn://tug.org/texlive/trunk@59958 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/tex/latex/cjk-ko/cjkutf8-josa.sty | 2 +- Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-ko.sty | 184 +++++++++++++-------- .../tex/latex/cjk-ko/cjkutf8-nanummjhanja.sty | 2 +- 3 files changed, 118 insertions(+), 70 deletions(-) (limited to 'Master/texmf-dist/tex/latex/cjk-ko') diff --git a/Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-josa.sty b/Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-josa.sty index 0fb6d6c35c3..7623138b7f5 100644 --- a/Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-josa.sty +++ b/Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-josa.sty @@ -17,7 +17,7 @@ % Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, % MA 02110-1301 USA -\ProvidesPackage{cjkutf8-josa}[2021/03/01 v1.9 Automatic Josa selection for cjk-ko] +\ProvidesPackage{cjkutf8-josa}[2021/07/17 v2.0 Automatic Josa selection for cjk-ko] \AtBeginDocument{ \ifx\use@josa\undefined\else diff --git a/Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-ko.sty b/Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-ko.sty index ca7244f97af..155278fd2d7 100644 --- a/Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-ko.sty +++ b/Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-ko.sty @@ -17,8 +17,8 @@ % Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, % MA 02110-1301 USA -\NeedsTeXFormat{LaTeX2e}[2020/10/01] -\ProvidesPackage{cjkutf8-ko}[2021/03/01 v1.9 Hangul typesetting on CJKutf8] +\NeedsTeXFormat{LaTeX2e}[2021/06/01] +\ProvidesPackage{cjkutf8-ko}[2021/07/17 v2.0 Hangul typesetting on CJKutf8] \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname eTeXversion\endcsname\relax @@ -84,7 +84,6 @@ % font settings \ifx\usecjk@@font\undefined\else \PassOptionsToPackage{T1}{CJKutf8} - \RequirePackage{textcomp} \IfFileExists{t1\CJKKO@mjfont.fd}{\let\rmdefault\CJKKO@mjfont}{} \IfFileExists{t1\CJKKO@gtfont.fd}{\let\sfdefault\CJKKO@gtfont}{} \fi @@ -160,21 +159,19 @@ %%%%%%%%%%%%%%%%%%%%%%%%% % italic correction after cjk -\edef\maybe@ic@{% - \unexpanded{% +\AddToHook{cmd/maybe@ic@/before}{% + \let\CJKKO@wasCJK\undefined + \ifnum\lastkern=\@ne + \unkern\unkern + \let\CJKKO@wasCJK\empty + \fi +} +\AddToHook{cmd/maybe@ic@/after}{% + \ifx\CJKKO@wasCJK\empty + \CJK@CJK + \CJKKO@check@next@tok@ \let\CJKKO@wasCJK\undefined - \ifnum\lastkern=\@ne - \unkern\unkern - \let\CJKKO@wasCJK\empty - \fi - }% - \unexpanded\expandafter{\maybe@ic@ - \ifx\CJKKO@wasCJK\empty - \CJK@CJK - \CJKKO@check@next@tok@ - \let\CJKKO@wasCJK\undefined - \fi - }% + \fi } %%%%%%%%%%%%%%%%%%%%%%%%% @@ -194,8 +191,7 @@ \ifx\usecjk@@font\undefined \ifx\CJK@scale\undefined\else % redefine \CJK@empty - \let\CJKKO@@empty\CJK@empty - \def\CJK@empty{\afterassignment\CJKKO@@empty@insert\CJKKO@@empty} + \AddToHook{cmd/CJK@empty/before}{\afterassignment\CJKKO@@empty@insert} \def\CJKKO@@empty@insert{\@tempdimb\CJK@scale\@tempdimb} % end of redefinition \if@hangul % hangul is main language @@ -256,11 +252,8 @@ \sfcode96=998 % ` \sfcode102=998 % oms { \sfcode123=998 % t1 { -\def\CJK@testLastCJK{% - \global\CJK@false +\AddToHook{cmd/CJK@testLastCJK/after}{% \ifnum\lastkern=\@ne - \global \CJK@true - %%% inserted \else \ifhmode \ifnum\lastkern=\tw@\else @@ -277,8 +270,8 @@ \else \CJKglue \fi \fi \fi\fi\fi\fi\fi - %%% end of inserted - \fi} + \fi +} %%%%%%%%%%%%%%%%%%%%%%%%% % half-width puncts @@ -352,13 +345,8 @@ \AtBeginDocument{ \ifx\usecjk@@font\undefined \ifx\CJK@charlower\undefined\else - \expandafter\let - \expandafter\CJKKO@orig@CJKsymbol - \csname CJKsymbol \endcsname - \DeclareRobustCommand{\CJKsymbol}[1]{% - \leavevmode\lower\CJK@charlower\hbox\bgroup - \CJKKO@orig@CJKsymbol{#1}\egroup - } + \AddToHook{cmd/CJKsymbol/before}{\leavevmode\lower\CJK@charlower\hbox\bgroup} + \AddToHook{cmd/CJKsymbol/after}{\egroup} \fi\fi } @@ -377,7 +365,7 @@ % hangul captions, labels, and spacing \RequirePackage{kolabels-utf} \if@hangul - \AtBeginDocument{\RequirePackage{konames-utf}} + \RequirePackage{konames-utf} \linespread{1.3888} \footnotesep=1.3888\footnotesep \skip\footins=1.3888\skip\footins plus6pt minus3pt @@ -395,55 +383,115 @@ \ifx\pdfgentounicode\undefined\else \ifx\use@cjk@cmap@\relax % truetype \ifx\pdfnobuiltintounicode\undefined\else - \let\origin@l@CJK@addcmap\CJK@addcmap - \def\CJK@addcmap#1{\origin@l@CJK@addcmap{#1}% - \pdfnobuiltintounicode\font@name } + \AddToHook{cmd/CJK@addcmap/after}{\pdfnobuiltintounicode\font@name } \fi \else % type1 - \IfFormatAtLeastTF{2021/05/01}{} - {\InputIfFileExists{glyphtounicode} - {\pdfgentounicode\@ne}{} - } \let\CJK@addcmap\@gobble \fi \fi \fi %%%%%%%%%%%%%%%%%%%%%%%%% -%%% \makeindex in memoir class clashed with this package. -%%% cause: memoir appempts to write index entries to a file -%%% at the end of document without protecting active characters. -%%% spotted by Juho Lee. thanks to him. -%\AtEndDocument{\CJK@makeInactive} -%%% still conflicts with package verbments. -%%% so now we make utf8 characters robust. -\count@"C2 \loop - \uccode\count@\count@ - \lccode\count@\count@ - \begingroup - \lccode`\~\count@ - \lowercase{\endgroup - \protected\edef~{\unexpanded\expandafter{~}}} -\ifnum\count@<"F4 \advance\count@\@ne \repeat -% then we have to care about hyperref bookmarks. +% allow non-cjk characters in labels +\def\CJK@XX#1#2{% + \ifx #2\protect + \expandafter\CJK@XXp\expandafter#1% + \else + \ifincsname \string#1\string#2\else % added + \expandafter\ifx\csname u8:\string #1\string #2\endcsname \relax + \csname CJK@\number `#1\endcsname{`#2}% + \expandafter\expandafter % added wrt allowbreak before ( + \expandafter\CJK@ignorespaces + \else + \csname u8:\string #1\string #2\endcsname + \fi + \fi % added + \fi} +\def\CJK@XXX#1#2#3{% + \ifx #2\protect + \expandafter\CJK@XXXp\expandafter#1#3% + \else + \ifincsname \string#1\string#2\string#3\else % added + \expandafter\ifx\csname u8:\string #1\string #2\string #3\endcsname \relax + \csname CJK@\number `#1\endcsname{`#2}{`#3}% + \expandafter\expandafter % added wrt allowbreak before ( + \expandafter\CJK@ignorespaces + \else + \csname u8:\string #1\string #2\string #3\endcsname + \fi + \fi % added + \fi} +\def\CJK@XXXX#1#2#3#4{% + \ifx #2\protect + \expandafter\CJK@XXXXp\expandafter#1#3% + \else + \ifincsname \string#1\string#2\string#3\string#4\else % added + \csname CJK@\number `#1\endcsname{`#2}{`#3}{`#4}% + \expandafter % added wrt allowbreak before ( + \CJK@ignorespaces + \fi % added + \fi} + +%%%%%%%%%%%%%%%%%%%%%%%%% +% protect against lowercase +\count@="80 \loop + \lccode\count@=\count@ + \ifnum\count@<"DF \advance\count@\@ne \repeat +% redefine MakeUppercase/MakeLowercase +\DeclareRobustCommand{\MakeUppercase}[1]{{% + % begin patch + \count@"A0 \loop + \ifnum\count@="B7 \else + \begingroup + \@tempcnta\count@ \advance\@tempcnta-"20 + \lccode`\~\count@ \lccode`\!\@tempcnta \lccode"C3="C3\relax + \lowercase{\endgroup + \expandafter\def\csname u8:\string^^c3\string~\endcsname{^^c3!}}% + \fi + \ifnum\count@<"BE \advance\count@\@ne \repeat + % end patch + \def\i{I}\def\j{J}% + \def\reserved@a##1##2{\let##1##2\reserved@a}% + \expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}% + \let\UTF@two@octets@noexpand\@empty + \let\UTF@three@octets@noexpand\@empty + \let\UTF@four@octets@noexpand\@empty + \protected@edef\reserved@a{\uppercase{#1}}% + \reserved@a +}} +\DeclareRobustCommand{\MakeLowercase}[1]{{% + % begin patch + \count@"80 \loop + \ifnum\count@="97 \else + \begingroup + \@tempcnta\count@ \advance\@tempcnta "20 + \lccode`\~\count@ \lccode`\!\@tempcnta \lccode"C3="C3\relax + \lowercase{\endgroup + \expandafter\def\csname u8:\string^^c3\string~\endcsname{^^c3!}}% + \fi + \ifnum\count@<"9E \advance\count@\@ne \repeat + % end patch + \def\reserved@a##1##2{\let##2##1\reserved@a}% + \expandafter\reserved@a\@uclclist\reserved@b{\reserved@b\@gobble}% + \let\UTF@two@octets@noexpand\@empty + \let\UTF@three@octets@noexpand\@empty + \let\UTF@four@octets@noexpand\@empty + \protected@edef\reserved@a{\lowercase{#1}}% + \reserved@a +}} +\protected@edef\MakeUppercase#1{\MakeUppercase{#1}} +\protected@edef\MakeLowercase#1{\MakeLowercase{#1}} + +%%% for fancyvrb/verbments package +\AddToHook{env/VerbatimOut/begin}{\CJK@makeInactive} + +%%% hyperref bookmarks. \ifx\pdfstringdefPreHook\undefined \let\pdfstringdefPreHook\empty \fi \g@addto@macro\pdfstringdefPreHook{% - \count@"C2 \loop - \begingroup - \lccode`\~\count@ - \lowercase{\endgroup - \edef~{\unexpanded\expandafter{~}}}% - \ifnum\count@<"F4 \advance\count@\@ne \repeat - % and dotemph as well \let\dotemph\@firstofone } -% protect against lowercase -\count@"80 \loop - \uccode\count@\count@ - \lccode\count@\count@ -\ifnum\count@<"BF \advance\count@\@ne \repeat %%% ignore variation selectors for korean hanja \DeclareUnicodeCharacter{FE00}{} diff --git a/Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-nanummjhanja.sty b/Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-nanummjhanja.sty index f31ba8bd3d1..4eb2121f376 100644 --- a/Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-nanummjhanja.sty +++ b/Master/texmf-dist/tex/latex/cjk-ko/cjkutf8-nanummjhanja.sty @@ -18,7 +18,7 @@ % MA 02110-1301 USA \ProvidesPackage{cjkutf8-nanummjhanja} - [2021/03/01 v1.9 UHC hanja for Nanum Myeongjo] + [2021/07/17 v2.0 UHC hanja for Nanum Myeongjo] \def\CJKKO@mjdefault{nanummj} \def\CJKKO@mjhanjafamily{\def\CJK@family{uhcmj}} -- cgit v1.2.3