-%%%%%%%% Internal control sequences
-%% Each CS is ltj_fontspec version that corresponds to original CS of fontspec.
-\cs_new:Nn \ltj_fontspec_define_option:nn {
- \ltj_fontspec_if_liiikeys:TF {
- \keys_define:nn {fontspec} { #1 .code:n = {#2}}
- } {
- \define@key[zf]{options}{#1}{#2}
- }
-}
-
-\cs_new:Nn \ltj_fontspec_define_preparse_external:nn {
- \ltj_fontspec_if_liiikeys:TF {
- \keys_define:nn {fontspec-preparse-external} { #1 .code:n = {#2}}
- } {
- \define@key[zf]{preparse-external}{#1}{#2}
- }
-}
-
-\cs_new:Nn \ltj_fontspec_select:nn {
- \group_begin:
- \ltj_fontspec_define_option:nn {CID} {
- \fontspec_update_fontid:n {+cid=##1}
- \fontspec_update_featstr:n {cid=##1}
- }
- \ltj_fontspec_define_option:nn {JFM} {
- \fontspec_update_fontid:n {+jfm=##1}
- \fontspec_update_featstr:n {jfm=##1}
- }
- \ltj_fontspec_define_option:nn {JFM-var} {
- \fontspec_update_fontid:n {+jfmvar=##1}
- \fontspec_update_featstr:n {jfmvar=##1}
- }
- \ltj_fontspec_define_preparse_external:nn {NoEmbed} {
- \cs_set:Nn \fontspec_namewrap:n {psft:####1}
- }
- %% Omit the warning message
- %% "OpenType feature 'Kerning=Off' (-kern) not available ..."
- \ltj_fontspec_define_option:nn {Kerning/Off} {
- \fontspec_update_fontid:n {-kern}
- \fontspec_update_featstr:n {-kern}
- }
- \ltj_fontspec_if_liiikeys:TF {
- \tl_set:Nn \g_fontspec_encoding_tl {JY3}
- } {
- \tl_set:Nn \zf@enc {JY3}
- }
- \tl_set:Nx \g_fontspec_default_fontopts_tl
- {JFM=ujis,Scale=\fp_use:N \g_ltj_fontspec_scale_fp,Kerning=Off,\g_ltj_fontspec_default_fontopts_tl}
- \cs_set_eq:NN \DeclareFontFamily \DeclareKanjiFamily
- \fontspec_select:nn{#1}{#2}
- \group_end:
- \ltj_fontspec_if_liiikeys:F {
- \tl_set_eq:NN \l_fontspec_family_tl \zf@family
+\bool_new:N \ltj_fontspec_match
+\keys_define:nn { luatexja-fontspec }
+ {
+ match .bool_set:N = \ltj_fontspec_match_bool,
+ match .default:n = true,
+ pass .code:n = \PassOptionsToPackage{#1} {fontspec},
+ % 互換性のために残したオプション
+ scale .fp_gset:N = \g_ltj_fontspec_scale_fp,
+ unknown .code:n = \PassOptionsToPackage { \l_keys_key_tl } {fontspec},