summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/luatex/luatexja/addons
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-02-25 22:23:20 +0000
committerKarl Berry <karl@freefriends.org>2019-02-25 22:23:20 +0000
commitf7b68fb8f80cc1750ba9409263a28989a9f7aaf6 (patch)
tree194e61c70c4e8a3d0d8ffb6c19724142a93a2c3a /Master/texmf-dist/tex/luatex/luatexja/addons
parentab8a74099e59b1e4a16672820198419ae0b07ce0 (diff)
luatexja (25feb19)
git-svn-id: svn://tug.org/texlive/trunk@50132 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/luatex/luatexja/addons')
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-preset.sty122
1 files changed, 81 insertions, 41 deletions
diff --git a/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-preset.sty b/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-preset.sty
index e3054d3e504..4b81aed1bd3 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-preset.sty
+++ b/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-preset.sty
@@ -1,5 +1,5 @@
% luatexja-preset.sty
-\ProvidesPackage{luatexja-preset}[2019/01/28 Japanese font presets]
+\ProvidesPackage{luatexja-preset}[2019/02/25 Japanese font presets]
\RequirePackage{expl3,l3keys2e}
\RequirePackage{luatexja}
@@ -112,21 +112,20 @@
gt .groups:n = { preset }, gt .value_required:n = true,
gt-m .groups:n = { preset }, gt-m .value_required:n = true,
}
-\cs_set:Nn \g__ltjpreset_tmp_cs:n {
+\cs_set:Nn \ltjpreset_define_preset_prop:n {
\keys_define:nn { luatexja-preset } {
#1 .code:n = \prop_put:Non \g__ltjpreset_font_prop { #1 } { ##1 },
#1 .groups:n = { preset }, #1 .value_required:n = true,
}
}
-\g__ltjpreset_tmp_cs:n { mc-l }
-\g__ltjpreset_tmp_cs:n { mc-m }
-\g__ltjpreset_tmp_cs:n { mc-bx }
-\g__ltjpreset_tmp_cs:n { gt-u }
-\g__ltjpreset_tmp_cs:n { gt-d }
-\g__ltjpreset_tmp_cs:n { gt-bx }
-\g__ltjpreset_tmp_cs:n { gt-eb}
-\g__ltjpreset_tmp_cs:n { mg-m }
-\cs_undefine:N \g__ltjpreset_tmp_cs:n
+\ltjpreset_define_preset_prop:n { mc-l }
+\ltjpreset_define_preset_prop:n { mc-m }
+\ltjpreset_define_preset_prop:n { mc-bx }
+\ltjpreset_define_preset_prop:n { gt-u }
+\ltjpreset_define_preset_prop:n { gt-d }
+\ltjpreset_define_preset_prop:n { gt-bx }
+\ltjpreset_define_preset_prop:n { gt-eb}
+\ltjpreset_define_preset_prop:n { mg-m }
\cs_new:Nn \__ltjpreset_set_uni:nn {
mc = #1, gt = #2, mc-bx = #2, mg-m = #2,
@@ -464,28 +463,35 @@
\msg_warning:nnx { luatexja-preset }{ scale }{ \Cjascale }
- \cs_new:Nn \ltj_preset_declare_font_shape:nnnnnn {
- \DeclareFontShape{#1}{#2}{#3}{#4}{ <-> s*[\Cjascale]
- { \bool_if:NT \g__ltjpreset_noembed_bool {psft:} #5
- ;-kern \tl_use:N \l__ltjpreset_kanji_shape_tl; #6 } } {}
+ % {1: encoding}{2: family}{3: series}{4: shape}{5: fontname}{6: feature}{7: scale}
+ \cs_new:Nn \__ltjpreset_declare_font_shape:nnnnnnn {
+ \DeclareFontShape{#1}{#2}{#3}{#4}{ <-> s*[#7]
+ \bool_if:NT \g__ltjpreset_noembed_bool {psft:} #5
+ ;-kern \tl_use:N \l__ltjpreset_kanji_shape_tl; #6 } {}
}
- \cs_new:Nn \ltj_preset_define_family:nnn {
- \ltj_preset_declare_font_shape:nnnnnn { JY3 }
- { #1 \int_to_arabic:n { \g__ltjpreset_applycount_int }} { #2 } { n }
+ \cs_new:Nn \__ltjpreset_define_family:nnn {
+ \__ltjpreset_declare_font_shape:nnnnnnn { JY3 }
+ { ltjp #1 \int_to_arabic:n { \g__ltjpreset_applycount_int }} { #2 } { n }
{ "#3" : jfm=\tl_use:N \__ltjpreset_use_jfm_yoko_tl }
{ script=hani \bool_if:NT \g__ltjpreset_expert_bool { ;+hkna } }
- \ltj_preset_declare_font_shape:nnnnnn { JT3 }
- { #1 \int_to_arabic:n { \g__ltjpreset_applycount_int }} { #2 } { n }
+ { \Cjascale }
+ \__ltjpreset_declare_font_shape:nnnnnnn { JT3 }
+ { ltjp #1 \int_to_arabic:n { \g__ltjpreset_applycount_int }} { #2 } { n }
{ "#3" : jfm=\tl_use:N \__ltjpreset_use_jfm_tate_tl }
{ script=hani \bool_if:NT \g__ltjpreset_expert_bool { ;+vkna } }
+ { \Cjascale }
\bool_if:NT \g__ltjpreset_expert_bool {
- \ltj_preset_declare_font_shape:nnnnnn { JY3 }
- { #1 \int_to_arabic:n { \g__ltjpreset_applycount_int }} { #2 } { rb }
+ \__ltjpreset_declare_font_shape:nnnnnnn { JY3 }
+ { ltjp #1 \int_to_arabic:n { \g__ltjpreset_applycount_int }} { #2 } { rb }
{ "#3" : jfm=\tl_use:N \__ltjpreset_use_jfm_yoko_tl } { script=kana; +ruby }
- \ltj_preset_declare_font_shape:nnnnnn { JT3 }
- { #1 \int_to_arabic:n { \g__ltjpreset_applycount_int }} { #2 } { rb }
+ { \Cjascale }
+ \__ltjpreset_declare_font_shape:nnnnnnn { JT3 }
+ { ltjp #1 \int_to_arabic:n { \g__ltjpreset_applycount_int }} { #2 } { rb }
{ "#3" : jfm=\tl_use:N \__ltjpreset_use_jfm_tate_tl } { script=kana; +ruby }
+ { \Cjascale }
}
+ \cs_if_exist:NT \ltjpreset_define_family_hook_nfssonly:nnn
+ { \ltjpreset_define_family_hook_nfssonly:nnn { #1 } { #2 } { #3 } }
}
\bool_if:NT \g__ltjpreset_deluxe_bool {
\let\mgfamily\undefined
@@ -501,8 +507,8 @@
%
\cs_new:Nn \__ltjpreset_do_fontset: { \group_begin:
% ======
- \xdef\mcdefault{ltjpm \int_to_arabic:n { \g__ltjpreset_applycount_int }}
- \xdef\gtdefault{ltjpg \int_to_arabic:n { \g__ltjpreset_applycount_int }}
+ \xdef\mcdefault{ltjpmc \int_to_arabic:n { \g__ltjpreset_applycount_int }}
+ \xdef\gtdefault{ltjpgt \int_to_arabic:n { \g__ltjpreset_applycount_int }}
\DeclareKanjiFamily{JY3}{\mcdefault}{}
\DeclareKanjiFamily{JT3}{\mcdefault}{}
\DeclareKanjiFamily{JY3}{\gtdefault}{}
@@ -525,17 +531,17 @@
\tl_if_eq:NNT \l__ltjpreset_kanji_shape_tl \l_tmpa_tl {
\tl_set:Nx \l__ltjpreset_kanji_shape_tl { ;+jp04 }
}
- \ltj_preset_define_family:nnn {ltjpm} {m} {\__ltjpreset_font_mc_m:}
- \ltj_preset_define_family:nnn {ltjpm} {bx} {\__ltjpreset_font_mc_bx:}
- \ltj_preset_define_family:nnn {ltjpm} {b} {\__ltjpreset_font_mc_bx:}
- \ltj_preset_define_family:nnn {ltjpg} {m} {\__ltjpreset_font_gt_m:}
- \ltj_preset_define_family:nnn {ltjpg} {bx} {\__ltjpreset_font_gt_bx:}
- \ltj_preset_define_family:nnn {ltjpg} {b} {\__ltjpreset_font_gt_bx:}
+ \__ltjpreset_define_family:nnn {mc} {m} {\__ltjpreset_font_mc_m:}
+ \__ltjpreset_define_family:nnn {mc} {bx} {\__ltjpreset_font_mc_bx:}
+ \__ltjpreset_define_family:nnn {mc} {b} {\__ltjpreset_font_mc_bx:}
+ \__ltjpreset_define_family:nnn {gt} {m} {\__ltjpreset_font_gt_m:}
+ \__ltjpreset_define_family:nnn {gt} {bx} {\__ltjpreset_font_gt_bx:}
+ \__ltjpreset_define_family:nnn {gt} {b} {\__ltjpreset_font_gt_bx:}
\normalfont
\bool_if:NT \g__ltjpreset_deluxe_bool {
- \ltj_preset_define_family:nnn {ltjpm} {l} {\__ltjpreset_font_mc_l:}
- \ltj_preset_define_family:nnn {ltjpg} {eb} {\__ltjpreset_font_gt_eb:}
- \ltj_preset_define_family:nnn {ltjpmg} {m} {\__ltjpreset_font_mg_m:}
+ \__ltjpreset_define_family:nnn {mc} {l} {\__ltjpreset_font_mc_l:}
+ \__ltjpreset_define_family:nnn {gt} {eb} {\__ltjpreset_font_gt_eb:}
+ \__ltjpreset_define_family:nnn {mg} {m} {\__ltjpreset_font_mg_m:}
}
\group_end:
}
@@ -568,22 +574,56 @@
}
}
\setmainjfont [
- \bool_if:NT \g__ltjpreset_deluxe_bool { FontFace={l}{n}{\__ltjpreset_font_mc_l:}, }
- BoldFont = \__ltjpreset_font_mc_bx: \tl_use:N \l__ltjpreset_add_features_tl
+ \bool_if:NT \g__ltjpreset_deluxe_bool {
+ FontFace={l}{n}{ Font = \__ltjpreset_font_mc_l:,
+ \cs_if_exist:NT \ltjpreset_define_family_hook_fontspec:nnn {
+ \ltjpreset_define_family_hook_fontspec:nnn
+ { mc } { l } { \__ltjpreset_font_mc_l: }
+ }
+ },
+ }
+ BoldFont = \__ltjpreset_font_mc_bx: \tl_use:N \l__ltjpreset_add_features_tl,
+ \cs_if_exist:NT \ltjpreset_define_family_hook_fontspec:nnn {
+ UprightFeatures = { \ltjpreset_define_family_hook_fontspec:nnn
+ { mc } { m } { \__ltjpreset_font_mc_m: } },
+ BoldFeatures = { \ltjpreset_define_family_hook_fontspec:nnn
+ { mc } { bx } { \__ltjpreset_font_mc_bx: } },
+ }
] { \__ltjpreset_font_mc_m: }
\setsansjfont [
- \bool_if:NT \g__ltjpreset_deluxe_bool { FontFace={eb}{n}{\__ltjpreset_font_gt_eb:}, }
- BoldFont = \__ltjpreset_font_gt_bx: \tl_use:N \l__ltjpreset_add_features_tl
+ \bool_if:NT \g__ltjpreset_deluxe_bool {
+ FontFace={eb}{n}{ Font = \__ltjpreset_font_gt_eb:,
+ \cs_if_exist:NT \ltjpreset_define_family_hook_fontspec:nnn {
+ \ltjpreset_define_family_hook_fontspec:nnn
+ { gt } { eb } { \__ltjpreset_font_gt_eb: }
+ }
+ },
+ }
+ BoldFont = \__ltjpreset_font_gt_bx: \tl_use:N \l__ltjpreset_add_features_tl,
+ \cs_if_exist:NT \ltjpreset_define_family_hook_fontspec:nnn {
+ UprightFeatures = { \ltjpreset_define_family_hook_fontspec:nnn
+ { gt } { m } { \__ltjpreset_font_gt_m: } },
+ BoldFeatures = { \ltjpreset_define_family_hook_fontspec:nnn
+ { gt } { bx } { \__ltjpreset_font_gt_bx: } },
+ }
] { \__ltjpreset_font_gt_m: }
\bool_if:NT \g__ltjpreset_deluxe_bool {
%% mg
\bool_if_exist:NTF \setfontfamily {
\setjfontfamily \mgfamily [
- BoldFont = \__ltjpreset_font_mg_m: \tl_use:N \l__ltjpreset_add_features_tl
+ BoldFont = \__ltjpreset_font_mg_m: \tl_use:N \l__ltjpreset_add_features_tl,
+ \cs_if_exist:NT \ltjpreset_define_family_hook_fontspec:nnn {
+ \ltjpreset_define_family_hook_fontspec:nnn
+ { mg } { m } { \__ltjpreset_font_mg_m: },
+ }
] { \__ltjpreset_font_mg_m: }
} {
\newjfontfamily \mgfamily [
- BoldFont = \__ltjpreset_font_mg_m: \tl_use:N \l__ltjpreset_add_features_tl
+ BoldFont = \__ltjpreset_font_mg_m: \tl_use:N \l__ltjpreset_add_features_tl,
+ \cs_if_exist:NT \ltjpreset_define_family_hook_fontspec:nnn {
+ \ltjpreset_define_family_hook_fontspec:nnn
+ { mg } { m } { \__ltjpreset_font_mg_m: },
+ }
] { \__ltjpreset_font_mg_m: }
}
\DeclareTextFontCommand{\textmg}{\mgfamily}