2 % lltjp-fontspec.sty 2018-08-24
5 \NeedsTeXFormat{LaTeX2e}
7 \RequirePackage{fontspec,luatexja}
10 % <= v2.6g uses \l__fontspec_nfss_enc_tl instead of \g__fontspec_nfss_enc_tl
11 \ifdefined \g__fontspec_nfss_enc_tl \else
12 \def \g__fontspec_nfss_enc_tl { \l__fontspec_nfss_enc_tl }
15 %%%%%%%% fontspec v2.5c overwrites \rmfamily etc. in \setmainfont
16 \@ifpackagelater{fontspec}{2018/07/29}{ %% 2.6h or later
17 \cs_set:Nn \__fontspec_main_setmainfont:nn
19 \fontspec_set_family:Nnn \l__fontspec_rmfamily_family_tl {#1} {#2}
20 \tl_set_eq:NN \rmdefault \l__fontspec_rmfamily_family_tl
23 \exp_not:n { \DeclareRobustCommand \rmfamily }
25 \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
26 \exp_not:N \fontfamily { \l__fontspec_rmfamily_family_tl }
27 \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\mcdefault\exp_not:N\fi%%%
28 \exp_not:N \selectfont
31 \str_if_eq_x:nnT {\familydefault} {\rmdefault}
32 { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
33 \__fontspec_setmainfont_hook:nn {#1} {#2}
36 \cs_set:Nn \__fontspec_main_setsansfont:nn
38 \fontspec_set_family:Nnn \l__fontspec_sffamily_family_tl {#1} {#2}
39 \tl_set_eq:NN \sfdefault \l__fontspec_sffamily_family_tl
42 \exp_not:n { \DeclareRobustCommand \sffamily }
44 \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
45 \exp_not:N \fontfamily { \l__fontspec_sffamily_family_tl }
46 \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\gtdefault\exp_not:N\fi%%%
47 \exp_not:N \selectfont
50 \str_if_eq_x:nnT {\familydefault} {\sfdefault}
51 { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
52 \__fontspec_setsansfont_hook:nn {#1} {#2}
55 \cs_set:Nn \__fontspec_main_setmonofont:nn
57 \fontspec_set_family:Nnn \l__fontspec_ttfamily_family_tl {#1} {#2}
58 \tl_set_eq:NN \ttdefault \l__fontspec_ttfamily_family_tl
61 \exp_not:n { \DeclareRobustCommand \ttfamily }
63 \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
64 \exp_not:N \fontfamily { \l__fontspec_ttfamily_family_tl }
65 \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\jttdefault\exp_not:N\fi%%%
66 \exp_not:N \selectfont
69 \str_if_eq_x:nnT {\familydefault} {\ttdefault}
70 { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
71 \__fontspec_setmonofont_hook:nn {#1} {#2}
75 \DeclareDocumentCommand \setmainfont { O{} m O{} }
77 \fontspec_set_family:Nnn \g__fontspec_rmfamily_family {#1,#3} {#2}
78 \tl_set_eq:NN \rmdefault \g__fontspec_rmfamily_family
79 \use:x { \exp_not:n { \DeclareRobustCommand \rmfamily }
81 \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
82 \exp_not:N \fontfamily { \g__fontspec_rmfamily_family }
83 \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\mcdefault\exp_not:N\fi%%%
84 \exp_not:N \selectfont
87 \str_if_eq_x:nnT {\familydefault} {\rmdefault}
88 { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
92 \DeclareDocumentCommand \setsansfont { O{} m O{} }
94 \fontspec_set_family:Nnn \g__fontspec_sffamily_family {#1,#3} {#2}
95 \tl_set_eq:NN \sfdefault \g__fontspec_sffamily_family
96 \use:x { \exp_not:n { \DeclareRobustCommand \sffamily }
98 \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
99 \exp_not:N \fontfamily { \g__fontspec_sffamily_family }
100 \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\gtdefault\exp_not:N\fi%%%
101 \exp_not:N \selectfont
104 \str_if_eq_x:nnT {\familydefault} {\sfdefault}
105 { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
109 \DeclareDocumentCommand \setmonofont { O{} m O{} }
111 \fontspec_set_family:Nnn \g__fontspec_ttfamily_family {#1,#3} {#2}
112 \tl_set_eq:NN \ttdefault \g__fontspec_ttfamily_family
113 \use:x { \exp_not:n { \DeclareRobustCommand \ttfamily }
115 \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
116 \exp_not:N \fontfamily { \g__fontspec_ttfamily_family }
117 \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\jttdefault\exp_not:N\fi%%%
118 \exp_not:N \selectfont
121 \str_if_eq_x:nnT {\familydefault} {\ttdefault}
122 { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
128 \cs_set:Nn \fontspec_visible_space:
130 \__fontspec_primitive_font_glyph_if_exist:NnTF \font {"2423}
131 { \ltjalchar"2423\scan_stop: }
132 { \fontspec_visible_space_fallback: }
137 \relax\ifmmode\hbox\else\leavevmode\fi % same as lltjcore
139 \verb@eol@error \let\do\@makeother \dospecials
140 \verbatim@font\@noligs
141 \@ifstar\__fontspecsverb\@verb
144 \cs_set:Npn \emshape { \gtfamily \itshape }
145 \cs_set:Npn \eminnershape { \mcfamily \upshape }
148 \expandafter\patchcmd\csname TU\string\textasteriskcentered\endcsname{\char}{\ltjalchar}{}{}