OSDN Git Service

restore luatexja-fontspec-25c.sty
[luatex-ja/luatexja.git] / src / patches / lltjp-fontspec-immediate.sty
1 %
2 % lltjp-fontspec-immediate.sty
3 %
4
5 \NeedsTeXFormat{LaTeX2e}
6 %%% \ProvidesPackage{lltjp-fontspec-immediate}[2017/08/07 Patch to fontspec for LuaTeX-ja]
7
8 \RequirePackage{fontspec,luatexja}
9 \ExplSyntaxOn
10
11 % <= v2.6g uses \l__fontspec_nfss_enc_tl instead of \g__fontspec_nfss_enc_tl
12 \ifdefined \g__fontspec_nfss_enc_tl \else
13   \def \g__fontspec_nfss_enc_tl { \l__fontspec_nfss_enc_tl }
14 \fi
15
16 \@ifpackagelater{fontspec}{2017/01/01}{
17 %%%%%%%% fontspec v2.5c overwrites \rmfamily etc. in \setmainfont
18 \DeclareDocumentCommand \setmainfont { O{} m O{} }
19  {
20   \fontspec_set_family:Nnn \g__fontspec_rmfamily_family {#1,#3} {#2}
21   \tl_set_eq:NN \rmdefault \g__fontspec_rmfamily_family
22   \use:x { \exp_not:n { \DeclareRobustCommand \rmfamily }
23    {
24     \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
25     \exp_not:N \fontfamily { \g__fontspec_rmfamily_family }
26     \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\mcdefault\exp_not:N\fi%%%
27     \exp_not:N \selectfont
28    }
29   }
30   \str_if_eq_x:nnT {\familydefault} {\rmdefault}
31     { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
32   \normalfont
33   \ignorespaces
34  }
35 \DeclareDocumentCommand \setsansfont { O{} m O{} }
36  {
37   \fontspec_set_family:Nnn \g__fontspec_sffamily_family {#1,#3} {#2}
38   \tl_set_eq:NN \sfdefault \g__fontspec_sffamily_family
39   \use:x { \exp_not:n { \DeclareRobustCommand \sffamily }
40    {
41     \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
42     \exp_not:N \fontfamily { \g__fontspec_sffamily_family }
43     \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\gtdefault\exp_not:N\fi%%%
44     \exp_not:N \selectfont
45    }
46   }
47   \str_if_eq_x:nnT {\familydefault} {\sfdefault}
48     { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
49   \normalfont
50   \ignorespaces
51  }
52 \DeclareDocumentCommand \setmonofont { O{} m O{} }
53  {
54   \fontspec_set_family:Nnn \g__fontspec_ttfamily_family {#1,#3} {#2}
55   \tl_set_eq:NN \ttdefault \g__fontspec_ttfamily_family
56   \use:x { \exp_not:n { \DeclareRobustCommand \ttfamily }
57    {
58     \exp_not:N \fontencoding { \g__fontspec_nfss_enc_tl }
59     \exp_not:N \fontfamily { \g__fontspec_ttfamily_family }
60     \exp_not:N\if@ltj@match@family\exp_not:N\kanjifamily\exp_not:N\jttdefault\exp_not:N\fi%%%
61     \exp_not:N \selectfont
62    }
63   }
64   \str_if_eq_x:nnT {\familydefault} {\ttdefault}
65     { \tl_set_eq:NN \encodingdefault \g__fontspec_nfss_enc_tl }
66   \normalfont
67   \ignorespaces
68  }
69 }
70 \ExplSyntaxOff
71 \expandafter\patchcmd\csname TU\string\textasteriskcentered\endcsname{\char}{\ltjalchar}{}{}
72 \endinput
73