2 % lltjp-fontspec.sty 2020-01-13
5 \NeedsTeXFormat{LaTeX2e}
7 \RequirePackage{fontspec}
10 %%%%%%%% fontspec v2.5c overwrites \rmfamily etc. in \setmainfont
11 \@ifpackagelater{fontspec}{2020/01/09}{ %% 2.7e or later
12 \tl_replace_all:cnn { rmfamily~ } { \fontfamily }{ \romanfamily }
13 \tl_replace_all:cnn { sffamily~ } { \fontfamily }{ \romanfamily }
14 \tl_replace_all:cnn { ttfamily~ } { \fontfamily }{ \romanfamily }
15 \cs_if_exist:NF \@rmfamilyhook {
16 \tl_replace_all:cnn { rmfamily~ } { \selectfont } {
18 \prepare@family@series@update@kanji{mc}\mcdefault
21 \tl_replace_all:cnn { sffamily~ } { \selectfont } {
23 \prepare@family@series@update@kanji{gt}\gtdefault
26 \tl_replace_all:cnn { ttfamily~ } { \selectfont } {
28 \prepare@family@series@update@kanji{jtt}\jttdefault
32 %% end of 2.7e (or later)
33 }{\@ifpackagelater{fontspec}{2019/10/19}{ %% 2.7d
34 \cs_set:Nn \__fontspec_main_setmainfont:nn
36 \fontspec_set_family:Nnn \l__fontspec_rmfamily_family_tl {#1} {#2}
37 \tl_set_eq:NN \rmdefault \l__fontspec_rmfamily_family_tl
40 \exp_not:n { \DeclareRobustCommand \rmfamily }
42 \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
43 \exp_not:N \fontfamily { \exp_not:N \rmdefault }
44 \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\mcdefault\exp_not:N\fi%%%
45 \exp_not:N \selectfont
48 \str_if_eq:eeT {\familydefault} {\rmdefault}
49 { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
50 \__fontspec_setmainfont_hook:nn {#1} {#2}
53 \cs_set:Nn \__fontspec_main_setsansfont:nn
55 \fontspec_set_family:Nnn \l__fontspec_sffamily_family_tl {#1} {#2}
56 \tl_set_eq:NN \sfdefault \l__fontspec_sffamily_family_tl
59 \exp_not:n { \DeclareRobustCommand \sffamily }
61 \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
62 \exp_not:N \fontfamily { \exp_not:N \sfdefault }
63 \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\gtdefault\exp_not:N\fi%%%
64 \exp_not:N \selectfont
67 \str_if_eq:eeT {\familydefault} {\sfdefault}
68 { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
69 \__fontspec_setsansfont_hook:nn {#1} {#2}
72 \cs_set:Nn \__fontspec_main_setmonofont:nn
74 \fontspec_set_family:Nnn \l__fontspec_ttfamily_family_tl {#1} {#2}
75 \tl_set_eq:NN \ttdefault \l__fontspec_ttfamily_family_tl
78 \exp_not:n { \DeclareRobustCommand \ttfamily }
80 \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
81 \exp_not:N \fontfamily { \exp_not:N \ttdefault }
82 \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\jttdefault\exp_not:N\fi%%%
83 \exp_not:N \selectfont
86 \str_if_eq:eeT {\familydefault} {\ttdefault}
87 { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
88 \__fontspec_setmonofont_hook:nn {#1} {#2}
93 \cs_set:Nn \__fontspec_main_setmainfont:nn
95 \fontspec_set_family:Nnn \l__fontspec_rmfamily_family_tl {#1} {#2}
96 \tl_set_eq:NN \rmdefault \l__fontspec_rmfamily_family_tl
99 \exp_not:n { \DeclareRobustCommand \rmfamily }
101 \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
102 \exp_not:N \fontfamily { \l__fontspec_rmfamily_family_tl }
103 \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\mcdefault\exp_not:N\fi%%%
104 \exp_not:N \selectfont
107 \str_if_eq:eeT {\familydefault} {\rmdefault}
108 { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
109 \__fontspec_setmainfont_hook:nn {#1} {#2}
112 \cs_set:Nn \__fontspec_main_setsansfont:nn
114 \fontspec_set_family:Nnn \l__fontspec_sffamily_family_tl {#1} {#2}
115 \tl_set_eq:NN \sfdefault \l__fontspec_sffamily_family_tl
118 \exp_not:n { \DeclareRobustCommand \sffamily }
120 \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
121 \exp_not:N \fontfamily { \l__fontspec_sffamily_family_tl }
122 \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\gtdefault\exp_not:N\fi%%%
123 \exp_not:N \selectfont
126 \str_if_eq:eeT {\familydefault} {\sfdefault}
127 { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
128 \__fontspec_setsansfont_hook:nn {#1} {#2}
131 \cs_set:Nn \__fontspec_main_setmonofont:nn
133 \fontspec_set_family:Nnn \l__fontspec_ttfamily_family_tl {#1} {#2}
134 \tl_set_eq:NN \ttdefault \l__fontspec_ttfamily_family_tl
137 \exp_not:n { \DeclareRobustCommand \ttfamily }
139 \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
140 \exp_not:N \fontfamily { \l__fontspec_ttfamily_family_tl }
141 \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\jttdefault\exp_not:N\fi%%%
142 \exp_not:N \selectfont
145 \str_if_eq:eeT {\familydefault} {\ttdefault}
146 { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
147 \__fontspec_setmonofont_hook:nn {#1} {#2}
153 \cs_set:Nn \fontspec_visible_space:
155 \__fontspec_primitive_font_glyph_if_exist:NnTF \font {"2423}
156 { \ltjalchar"2423\scan_stop: }
157 { \fontspec_visible_space_fallback: }
160 \cs_set:Npn \emshape { \gtfamily \itshape }
161 \cs_set:Npn \eminnershape { \mcfamily \upshape }
164 \expandafter\patchcmd\csname TU\string\textasteriskcentered\endcsname{\char}{\ltjalchar}{}{}