X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=src%2Fpatches%2Flltjdefs.sty;h=347f66b4688fbe5513f7f40ca99c1e5fa316e812;hb=b0e23554957e57c3bbafa1ac664319e4f4af249b;hp=837e2ac1ec8bc52011ad822afa7cb4dc05f942d4;hpb=c97c2ddfdaaa2645767ef49e1777b956845b4f7f;p=luatex-ja%2Fluatexja.git diff --git a/src/patches/lltjdefs.sty b/src/patches/lltjdefs.sty index 837e2ac..347f66b 100644 --- a/src/patches/lltjdefs.sty +++ b/src/patches/lltjdefs.sty @@ -3,10 +3,12 @@ % \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{lltjdefs}[2017/05/05 Default font settings of LuaTeX-ja] +\ProvidesPackage{lltjdefs}[2019/09/26 Default font settings of LuaTeX-ja] -\def\ltj@stdmcfont{IPAExMincho} -\def\ltj@stdgtfont{IPAExGothic} +\ifdefined\ltj@stdmcfont\else\def\ltj@stdmcfont{IPAExMincho}\fi +\ifdefined\ltj@stdgtfont\else\def\ltj@stdgtfont{IPAExGothic}\fi +\ifdefined\ltj@stdyokojfm\else\def\ltj@stdyokojfm{ujis}\fi +\ifdefined\ltj@stdtatejfm\else\def\ltj@stdtatejfm{ujisv}\fi \InputIfFileExists{luatexja.cfg}{% \typeout{*************************^^J% * Loading luatexja.cfg.^^J% @@ -15,6 +17,10 @@ \DeclareKanjiEncodingDefaults{}{} \DeclareErrorKanjiFont{JY3}{mc}{m}{n}{10} +\kanjifamily{mc} +\kanjiseries{m} +\kanjishape{n} +\fontsize{10}{10} \DeclareYokoKanjiEncoding{JY3}{}{} \DeclareKanjiSubstitution{JY3}{mc}{m}{n} \DeclareTateKanjiEncoding{JT3}{}{} @@ -26,23 +32,42 @@ \newcommand\kanjiencodingdefault{JY3} \newcommand\kanjifamilydefault{\mcdefault} \newcommand\kanjiseriesdefault{\mddefault} -\newcommand\kanjishapedefault{\updefault} +\ifdefined\shapedefault + %% LaTeX 2020-02-02 + \newcommand\kanjishapedefault{\shapedefault} +\else + %% LaTeX 2019-10-01 + \newcommand\kanjishapedefault{\updefault} +\fi \DeclareKanjiFamily{JY3}{mc}{} -\DeclareFontShape{JY3}{mc}{m}{n}{<-> s*[0.962216] \ltj@stdmcfont:jfm=ujis}{} +\DeclareFontShape{JY3}{mc}{m}{n}{<-> s*[\ifdefined\Cjascale\Cjascale\else 0.962216\fi] \ltj@stdmcfont:jfm=\ltj@stdyokojfm}{} \DeclareKanjiFamily{JY3}{gt}{} -\DeclareFontShape{JY3}{gt}{m}{n}{<-> s*[0.962216] \ltj@stdgtfont:jfm=ujis}{} +\DeclareFontShape{JY3}{gt}{m}{n}{<-> s*[\ifdefined\Cjascale\Cjascale\else 0.962216\fi] \ltj@stdgtfont:jfm=\ltj@stdyokojfm}{} \DeclareFontShape{JY3}{mc}{bx}{n}{<-> ssub*gt/m/n}{} \DeclareFontShape{JY3}{gt}{bx}{n}{<-> ssub*gt/m/n}{} +\DeclareFontShape{JY3}{mc}{b}{n}{<-> ssub*gt/m/n}{} +\DeclareFontShape{JY3}{gt}{b}{n}{<-> ssub*gt/m/n}{} \DeclareKanjiFamily{JT3}{mc}{} -\DeclareFontShape{JT3}{mc}{m}{n}{<-> s*[0.962216] \ltj@stdmcfont:jfm=ujisv}{} +\DeclareFontShape{JT3}{mc}{m}{n}{<-> s*[\ifdefined\Cjascale\Cjascale\else 0.962216\fi] \ltj@stdmcfont:jfm=\ltj@stdtatejfm}{} \DeclareKanjiFamily{JT3}{gt}{} -\DeclareFontShape{JT3}{gt}{m}{n}{<-> s*[0.962216] \ltj@stdgtfont:jfm=ujisv}{} +\DeclareFontShape{JT3}{gt}{m}{n}{<-> s*[\ifdefined\Cjascale\Cjascale\else 0.962216\fi] \ltj@stdgtfont:jfm=\ltj@stdtatejfm}{} \DeclareFontShape{JT3}{mc}{bx}{n}{<-> ssub*gt/m/n}{} \DeclareFontShape{JT3}{gt}{bx}{n}{<-> ssub*gt/m/n}{} +\DeclareFontShape{JT3}{mc}{b}{n}{<-> ssub*gt/m/n}{} +\DeclareFontShape{JT3}{gt}{b}{n}{<-> ssub*gt/m/n}{} \KanjiEncodingPair{JY3}{JT3} +\DeclareRelationFont{JY3}{gt}{m}{}{TU}{lmr}{bx}{} +\DeclareRelationFont{JY3}{mc}{m}{}{TU}{lmr}{m}{} +\DeclareRelationFont{JY3}{mc}{bx}{}{TU}{lmr}{bx}{} +\DeclareRelationFont{JY3}{mc}{b}{}{TU}{lmr}{b}{} +\DeclareRelationFont{JT3}{gt}{m}{}{TU}{lmr}{bx}{} +\DeclareRelationFont{JT3}{mc}{m}{}{TU}{lmr}{m}{} +\DeclareRelationFont{JT3}{mc}{bx}{}{TU}{lmr}{bx}{} +\DeclareRelationFont{JT3}{mc}{b}{}{TU}{lmr}{b}{} + \kanjiencoding{JY3}\selectfont\adjustbaseline \DeclareTextFontCommand{\textmc}{\mcfamily} @@ -50,31 +75,59 @@ \DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{} \DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{} -\DeclareSymbolFont{mincho}{JY3}{mc}{m}{n} -\jfam\symmincho -\SetSymbolFont{mincho}{bold}{JY3}{gt}{m}{n} -\DeclareSymbolFontAlphabet{\mathmc}{mincho} -\DeclareMathAlphabet{\mathgt}{JY3}{gt}{m}{n} +\unless\ifltj@disablejfam + \DeclareSymbolFont{mincho}{JY3}{mc}{m}{n} + \jfam\symmincho + \SetSymbolFont{mincho}{bold}{JY3}{gt}{m}{n} + \DeclareSymbolFontAlphabet{\mathmc}{mincho} + \DeclareMathAlphabet{\mathgt}{JY3}{gt}{m}{n} +\fi + +\ifdefined\@rmfamilyhook +%%%% LaTeX 2020-02-02 +\edef\bfseries@mc{\bfdefault} +\edef\bfseries@gt{\bfdefault} +\def\bfseries@jtt{\bfseries@mc} +\edef\mdseries@mc{\mddefault} +\edef\mdseries@gt{\mddefault} +\def\mdseries@jtt{\mdseries@mc} +\fi \newif\if@ltj@match@family \@ltj@match@familyfalse \def\verbatim@font{\normalfont\ttfamily\kanjifamily\jttdefault\selectfont} -\DeclareRobustCommand\rmfamily - {\not@math@alphabet\rmfamily\mathrm - \romanfamily\rmdefault - \if@ltj@match@family\kanjifamily\mcdefault\fi\selectfont} -\DeclareRobustCommand\sffamily - {\not@math@alphabet\sffamily\mathsf - \romanfamily\sfdefault - \if@ltj@match@family\kanjifamily\gtdefault\fi\selectfont} -\DeclareRobustCommand\ttfamily - {\not@math@alphabet\ttfamily\mathtt - \romanfamily\ttdefault - \if@ltj@match@family\kanjifamily\jttdefault\fi\selectfont} + +\def\@ltj@hook@family#1#2{ % #1: csname #2: contents + \ifcsname @#1hook\endcsname % LaTeX 2020-02-02 + \csappto{@#1hook}{#2}% + \else % LaTeX 2019-10-01 + \ifcsname #1 \endcsname + \expandafter\patchcmd\csname #1 \endcsname{\selectfont}{#2\selectfont}{}{}% + \else + \PackageWarningNoLine{luatexja}{% + Patching to \expandafter\string\csname #1\endcsname\space failed + }% + \fi + \fi +} +\@ltj@hook@family{rmfamily}{% + \if@ltj@match@family + \prepare@family@series@update@kanji{mc}\mcdefault + \fi +} +\@ltj@hook@family{sffamily}{% + \if@ltj@match@family + \prepare@family@series@update@kanji{gt}\gtdefault + \fi +} +\@ltj@hook@family{ttfamily}{% + \if@ltj@match@family + \prepare@family@series@update@kanji{jtt}\jttdefault + \fi +} + %%% \eminnershape -\DeclareRobustCommand\em - {\@nomath\em \ifdim \fontdimen\@ne\font >\z@ - \eminnershape \else \gtfamily \itshape \fi} +\expandafter\patchcmd\csname em \endcsname{\itshape}{\gtfamily\itshape}{}{} \def\eminnershape{\mcfamily \upshape} \ltjdefcharrange{1}{"80-"36F, "1E00-"1EFF} @@ -83,20 +136,35 @@ "2000-"243F, "2500-"27BF, "2900-"29FF, "2B00-"2BFF} \ltjdefcharrange{4}{% "500-"10FF, "1200-"1DFF, "2440-"245F, "27C0-"28FF, "2A00-"2AFF, - "2C00-"2E7F, "4DC0-"4DFF, "A4D0-"A82F, "A840-"ABFF, "FB00-"FE0F, - "FE20-"FE2F, "FE70-"FEFF, "10000-"1FFFF, "E000-"F8FF} % non-Japanese + "2C00-"2E7F, "4DC0-"4DFF, "A4D0-"A95F, "A980-"ABFF, "E000-"F8FF, + "FB00-"FE0F, "FE20-"FE2F, "FE70-"FEFF, "10000-"1AFFF, "1B170-"1F0FF, + "1F300-"1FFFF, "2000-"206F +} % non-Japanese \ltjdefcharrange{5}{"D800-"DFFF, "E0000-"E00FF, "E01F0-"10FFFF} \ltjdefcharrange{6}{% "2460-"24FF, "2E80-"2EFF, "3000-"30FF, "3190-"319F, "31F0-"4DBF, - "4E00-"9FFF, "F900-"FAFF, "FE10-"FE6F, "20000-"2FFFF, "E0100-"E01EF} -\ltjdefcharrange{7}{ - "1100-"11FF, "2F00-"2FFF, "3100-"31EF, "A000-"A4CF, "A830-"A83F, - "AC00-"D7FF} + "4E00-"9FFF, "F900-"FAFF, "FE10-"FE1F, "FE30-"FE6F, "FF00-"FFEF, + "1B000-"1B16F, "1F100-"1F2FF, "20000-"2FFFF, "E0100-"E01EF +} +\ltjdefcharrange{7}{% + "1100-"11FF, "2F00-"2FFF, "3100-"318F, "31A0-"31EF, "A000-"A4CF, + "A960-"A97F, "AC00-"D7FF +} \ltjdefcharrange{8}{"A7, "A8, "B0, "B1, "B4, "B6, "D7, "F7} -\ltjsetparameter{jacharrange={-1, +2, +3, -4, -5, +6, +7, -8}} +\ltjdefcharrange{9}{ + "2002, "2010, "2011, "2013, "2014, "2015, "2016, "2018, "2019, + "201A, "201C, "201D, "201E, "2020, "2021, "2022, "2025, "2026, + "2030, "2032, "2033, "2039, "203A, "203B, "203C, "203E, "203F, + "2042, "2044, "2047, "2048, "2049, "2051 +} +\ltjsetparameter{jacharrange={-1, +2, +3, -4, -5, +6, +7, -8, +9}} \directlua{for x=128,255 do luatexja.math.is_math_letters[x] = true end} -\def\<{\inhibitglue} +\protected\def\<{\ifvmode\leavevmode\fi\inhibitglue} + +\directlua{luatexja.jfont.register_vert_replace{ + [',']='、', ['.']='。', ['“']=0x301D, ['”']=0x301F, +}} % END OF FILE \endinput @@ -118,8 +186,7 @@ MIDDLE % Greek and Coptic, Cyrillic, Greek Extended \ltjdefcharrange{3}{% - "2000-"243F, "2500-"27BF, "2900-"29FF, "2B00-"2BFF} - % 66 "2000-"206F num = 140/112 name = General Punctuation + "2070-"243F, "2500-"27BF, "2900-"29FF, "2B00-"2BFF} % 67 "2070-"209F num = 68/48 name = Superscripts and Subscripts % 68 "20A0-"20CF num = 5/48 name = Currency Symbols % 69 "20D0-"20FF num = 2/48 name = Combining Diacritical Marks for Symbols @@ -140,8 +207,9 @@ MIDDLE \ltjdefcharrange{4}{% "500-"10FF, "1200-"1DFF, "2440-"245F, "27C0-"28FF, "2A00-"2AFF, - "2C00-"2E7F, "4DC0-"4DFF, "A4D0-"A82F, "A840-"ABFF, "FB00-"FE0F, - "FE20-"FE2F, "FE70-"FEFF, "10000-"1FFFF, "E000-"F8FF} + "2C00-"2E7F, "4DC0-"4DFF, "A4D0-"A95F, "A980-"ABFF, "E000-"F8FF, + "FB00-"FE0F, "FE20-"FE2F, "FE70-"FEFF, "10000-"1AFFF, "1B170-"1F0FF, + "1F300-"1FFFF } % non-Japanese \ltjdefcharrange{5}{"D800-"DFFF, "E0000-"E00FF, "E01F0-"10FFFF} @@ -154,7 +222,9 @@ POSITIVE % Japanese \ltjdefcharrange{6}{% "2460-"24FF, "2E80-"2EFF, "3000-"30FF, "3190-"319F, "31F0-"4DBF, - "4E00-"9FFF, "F900-"FAFF, "FE10-"FE6F, "20000-"2FFFF, "E0100-"E01EF} + "4E00-"9FFF, "F900-"FAFF, "FE10-"FE1F, "FE30-"FE6F, "FF00-"FFEF, + "1B000-"1B16F, "1F100-"1F2FF, "20000-"2FFFF, "E0100-"E01EF +} % 77 "2460-"24FF num = 150/160 name = Enclosed Alphanumerics % 98 "2E80-"2EFF num = 21 name = CJK Radicals Supplement % 101 "3000-"303F num = 144 name = CJK Symbols and Punctuation @@ -170,12 +240,19 @@ POSITIVE % 147 "FE10-"FE1F num = 0/16 name = Vertical Forms % 149 "FE30-"FE4F num = 8/32 name = CJK Compatibility Forms % 150 "FE50-"FE6F num = 0/32 name = Small Form Variants +% "FF00-"FFEF name = Halfwidth and Fullwidth Forms +% "1B000-"1B0FF name = Kana Supplement +% "1B100-"1B12F name = Kana Extended-A +% "1B130-"1B16F name = Small Kana Extension +% "1F100-"1F1FF name = Enclosed Alphanumeric Supplement +% "1F200-"1F2FF name = Enclosed Ideographic Supplement % SIP -% "E0000-"E01EF Variation Selectors Supplement +% "E0000-"E01EF name = Variation Selectors Supplement -\ltjdefcharrange{7}{ - "1100-"11FF, "2F00-"2FFF, "3100-"31EF, "A000-"A4CF, "A830-"A83F, - "AC00-"D7FF} +\ltjdefcharrange{7}{% + "1100-"11FF, "2F00-"2FFF, "3100-"318F, "31A0-"31EF, "A000-"A4CF, + "A960-"A97F, "AC00-"D7FF +} % 35 "1100-"11FF num = 1 name = Hangul Jamo % 99 "2F00-"2FDF num = 0/224 name = Kangxi Radicals % 100 "2FF0-"2FFF num = 0/16 name = Ideographic Description Characters @@ -185,6 +262,6 @@ POSITIVE % 108 "31C0-"31EF num = 0/48 name = CJK Strokes % 115 "A000-"A48F num = 0/1168 name = Yi Syllables % 116 "A490-"A4CF num = 0/64 name = Yi Radicals - % 124 "A830-"A83F num = 0/16 name = Common Indic Number Forms + % "A960-"A97F name = Hangul Jamo Extended-A % 137 "AC00-"D7AF num = 0/11184 name = Hangul Syllables % 138 "D7B0-"D7FF num = 0/80 name = Hangul Jamo Extended-B