summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2024-03-19 20:38:58 +0000
committerKarl Berry <karl@freefriends.org>2024-03-19 20:38:58 +0000
commit164d3fae5bf2c573dc2260fca75dce114ddd51cf (patch)
tree4dbb02bb06fef6305db9ec2ea3c9a5d11d54fc76 /Master/texmf-dist/tex
parent96e5952276ff4da2ecceacb9544371590343c126 (diff)
njuthesis (19mar24)
git-svn-id: svn://tug.org/texlive/trunk@70705 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/latex/njuthesis/njuthesis-doc.cls23
-rw-r--r--Master/texmf-dist/tex/latex/njuthesis/njuthesis-graduate.def173
-rw-r--r--Master/texmf-dist/tex/latex/njuthesis/njuthesis-postdoctoral.def67
-rw-r--r--Master/texmf-dist/tex/latex/njuthesis/njuthesis-undergraduate.def48
-rw-r--r--Master/texmf-dist/tex/latex/njuthesis/njuthesis.cls561
5 files changed, 479 insertions, 393 deletions
diff --git a/Master/texmf-dist/tex/latex/njuthesis/njuthesis-doc.cls b/Master/texmf-dist/tex/latex/njuthesis/njuthesis-doc.cls
index f1809cda0a5..6ab2fac855c 100644
--- a/Master/texmf-dist/tex/latex/njuthesis/njuthesis-doc.cls
+++ b/Master/texmf-dist/tex/latex/njuthesis/njuthesis-doc.cls
@@ -6,7 +6,7 @@
%%
%% njuthesis.dtx (with options: `doc-cls')
%%
-%% Copyright (C) 2021 - 2023
+%% Copyright (C) 2021 - 2024
%% by Nanjing University Linux User Group
%% <git+nju-lug-email-3104-issue-@yaoge123.cn>
%%
@@ -23,7 +23,7 @@
%% To produce the documentation run the original source files ending with
%% `.dtx' through XeTeX.
%%
-\GetIdInfo $Id: njuthesis.dtx 1.3.2 2023-12-05 16:30:00
+\GetIdInfo $Id: njuthesis.dtx 1.4.0 2024-03-19 20:30:00
+0800 NJU LUG <git+nju-lug-email-3104-issue-@yaoge123.cn>$
{Documentation style for njuthesis}
\ProvidesExplFile{njuthesis-doc.cls}
@@ -32,8 +32,8 @@
\RequirePackage { l3keys2e }
\keys_define:nn { njudoc }
{
- codehigh .bool_set:N = \g__njudoc_codehigh_bool,
- codehigh .initial:n = false
+ codehigh .bool_gset:N = \g__njudoc_codehigh_bool,
+ codehigh .initial:n = false
}
\ProcessKeysOptions { njudoc }
\PassOptionsToPackage { fontset = fandol } { ctex }
@@ -61,8 +61,19 @@
\NewDocumentCommand \CJKsout { o m }
{ \textcolor { black!50 } {#1} }
}
-\cs_if_exist:NF \__codedoc_get_hyper_target:xN
- { \cs_new_eq:NN \__codedoc_get_hyper_target:xN \__codedoc_get_hyper_target:eN }
+\cs_generate_variant:Nn \__codedoc_get_hyper_target:nN { x }
+\cs_generate_variant:Nn \tl_replace_all:Nnn { No }
+\cs_if_exist:NF \__codedoc_macroname_prefix:o
+ {
+ \cs_new_protected:Npn \__codedoc_macroname_prefix:n #1
+ {
+ \__codedoc_if_macro_internal:nTF {#1}
+ { \__codedoc_typeset_aux:n {#1} } {#1}
+ }
+ \cs_generate_variant:Nn \__codedoc_macroname_prefix:n { o }
+ \cs_new_protected:Npn \__codedoc_macroname_suffix:N #1
+ { \bool_if:NTF #1 { \__codedoc_typeset_TF: } { } }
+ }
\backgroundsetup{
contents={\njuemblem[white!85!gray]{22cm}{!}},
scale=1, angle=0, hshift=-4cm
diff --git a/Master/texmf-dist/tex/latex/njuthesis/njuthesis-graduate.def b/Master/texmf-dist/tex/latex/njuthesis/njuthesis-graduate.def
index f8e42af7e42..2e4bbbaf95d 100644
--- a/Master/texmf-dist/tex/latex/njuthesis/njuthesis-graduate.def
+++ b/Master/texmf-dist/tex/latex/njuthesis/njuthesis-graduate.def
@@ -6,7 +6,7 @@
%%
%% njuthesis.dtx (with options: `def-g')
%%
-%% Copyright (C) 2021 - 2023
+%% Copyright (C) 2021 - 2024
%% by Nanjing University Linux User Group
%% <git+nju-lug-email-3104-issue-@yaoge123.cn>
%%
@@ -23,7 +23,7 @@
%% To produce the documentation run the original source files ending with
%% `.dtx' through XeTeX.
%%
-\GetIdInfo $Id: njuthesis.dtx 1.3.2 2023-12-05 16:30:00
+\GetIdInfo $Id: njuthesis.dtx 1.4.0 2024-03-19 20:30:00
+0800 NJU LUG <git+nju-lug-email-3104-issue-@yaoge123.cn>$
{Graduate definition file for njuthesis}
\ProvidesExplFile{njuthesis-graduate.def}
@@ -33,26 +33,26 @@
\cs_set:Npn \__nju_date:nn #1#2
{ \__nju_date:nnn { } {#1} {#2} \__nju_date:nnn { _en } {#1} {#2} }
\tl_new:N \g__nju_info_confer_tl
-\tl_set:Nn \g__nju_info_confer_tl
+\tl_gset:Nn \g__nju_info_confer_tl
{
- \textbf { \c__nju_name_nju_tl } \hfil
+ \textbf { \l__nju_name_nju_tl } \hfil
\g__nju_info_conferdate_tl
}
\tl_new:N \g__nju_info_type_tl
-\tl_set:Ne \g__nju_info_type_tl
+\tl_gset:Ne \g__nju_info_type_tl
{ \clist_item:Nn \c__nju_name_type_clist { \g__nju_info_type_int } }
\tl_new:N \g__nju_info_degree_tl
-\tl_set_eq:NN \g__nju_info_degree_tl \g__nju_info_type_tl
+\tl_gset_eq:NN \g__nju_info_degree_tl \g__nju_info_type_tl
\bool_if:NF \g__nju_opt_academic_bool
- { \tl_put_right:Nn \g__nju_info_degree_tl { 专业 } }
+ { \tl_gput_right:Nn \g__nju_info_degree_tl { 专业 } }
\tl_new:N \g__nju_info_degree_en_tl
-\tl_set:Ne \g__nju_info_degree_en_tl
+\tl_gset:Ne \g__nju_info_degree_en_tl
{ \clist_item:Nn \c__nju_name_type_en_clist { \g__nju_info_type_int } }
\ctex_at_end_preamble:n { \__nju_loadfont_stzhongs: }
\cs_new_protected:Npn \__nju_decl_sign:
{
\clist_map_inline:nn { origsign, date }
- { \tex_par:D \__nju_name:n { ##1 } : \hbox_to_wd:nn { 6 em } { } }
+ { \tex_par:D \__nju_name:n {##1} : \hbox_to_wd:nn { 6 em } { } }
}
\__nju_declare_element:nn { g / cover-front / top }
{
@@ -65,12 +65,12 @@
}
\__nju_declare_element:nn { g / cover-front / emblem-img }
{
- content = \__nju_emblem:N \c__nju_emblemwd_dim,
+ content = \__nju_emblem:N \l__nju_emblemwd_dim,
bottom-skip = .47 cm
}
\__nju_declare_element:nn { g / cover-front / name-img }
{
- content = \__nju_name:N \c__nju_namewd_dim,
+ content = \__nju_name:N \l__nju_namewd_dim,
bottom-skip = 2.25 cm
}
\__nju_declare_element:nn { g / cover-front / type }
@@ -97,8 +97,8 @@
\__nju_get_width:NV \l__nju_tmpb_dim \g__nju_info_id_tl
\clist_map_inline:nn { code, clc, secretlv, udc, id }
{
- \__nju_cover_entry:NNNNn \c__nju_name_colon_tl \l__nju_tmpa_dim
- \l__nju_tmpb_dim \tex_relax:D { ##1 }
+ \__nju_cover_entry:NNNNn \l__nju_name_colon_tl \l__nju_tmpa_dim
+ \l__nju_tmpb_dim \tex_relax:D {##1}
}
}
\cs_new_protected:Npn \__nju_g_cover_info:NNNNN #1#2#3#4#5
@@ -108,13 +108,13 @@
{ \clist_set:Nn #1 { author, majorc, field, supvfull } }
\__nju_cover_entry_title:NNNN #2 #3 #4 #5
\clist_map_inline:Nn #1
- { \__nju_cover_entry:NNNNn #2 #3 #4 #5 { ##1 } }
+ { \__nju_cover_entry:NNNNn #2 #3 #4 #5 {##1} }
}
\cs_new:Npn \__nju_g_cover_info:
{
\tl_set:Nn \l__nju_tmpa_tl { \skip_horizontal:n { .7 cm } }
\__nju_g_cover_info:NNNNN \l__nju_tmp_clist \l__nju_tmpa_tl
- \c__nju_clabelwd_dim \c__nju_crulewd_dim \c__nju_fmt_coverlabel_tl
+ \l__nju_clabelwd_dim \l__nju_crulewd_dim \l__nju_fmt_coverlabel_tl
}
\__nju_declare_element:nn { g / cover-back / info }
{
@@ -143,8 +143,8 @@
}
\cs_new:Npn \__nju_g_cover_back:
{
- \__nju_g_cover_back:NNN \c__nju_clabelwdi_dim
- \c__nju_crulewdi_dim \c__nju_fmt_coverlabel_tl
+ \__nju_g_cover_back:NNN \l__nju_clabelwdi_dim
+ \l__nju_crulewdi_dim \l__nju_fmt_coverlabel_tl
}
\cs_new_protected:Npn \__nju_g_cover_sign:NNN #1#2#3
{
@@ -153,8 +153,8 @@
}
\cs_new:Npn \__nju_g_cover_sign:
{
- \__nju_g_cover_sign:NNN \c__nju_clabelwdii_dim
- \c__nju_fmt_coverlabel_tl \c__nju_name_colon_tl
+ \__nju_g_cover_sign:NNN \l__nju_clabelwdii_dim
+ \l__nju_fmt_coverlabel_tl \l__nju_name_colon_tl
}
\__nju_declare_element:nn { g / cover-en / title }
{
@@ -179,21 +179,21 @@
\__nju_declare_element:nn { g / cover-en / middle }
{
content =
- \c__nju_text_cover_en_tl \__nju_vskip:
+ \l__nju_text_cover_en_tl \__nju_vskip:
\group_begin: \scshape \g__nju_info_degree_en_tl \group_end:
\__nju_vskip: { in } \__nju_vskip: \g__nju_info_major_en_tl,
bottom-skip = .5 cm plus 1 fil
}
\__nju_declare_element:nn { g / cover-en / emblem-img }
{
- content = \__nju_emblem:N \c__nju_emblemwdii_dim,
+ content = \__nju_emblem:N \l__nju_emblemwdii_dim,
bottom-skip = 1 cm minus .5 cm
}
\__nju_declare_element:nn { g / cover-en / bottom }
{
content =
\g__nju_info_dept_en_tl \skip_vertical:N \c_zero_skip
- \c__nju_name_nju_en_tl \skip_vertical:n { 1 cm }
+ \l__nju_name_nju_en_tl \skip_vertical:n { 1 cm }
\g__nju_info_submitdate_en_tl
}
\__nju_declare_element:nn { cover-nl / top }
@@ -232,28 +232,30 @@
content = \g__nju_info_bottomdate_tl,
format = \kaishu \zihao { 3 }
}
-\cs_new_protected:Npn \__nju_cover_top_nl:
- {
- \dim_set:Nn \l__nju_tmpa_dim { 38.6 pt }
- \dim_set:Nn \l__nju_tmpb_dim { 109 pt }
- \__nju_box_spread_name:Nn \l__nju_tmpa_dim { clc } \__nju_hskip:
- \__nju_box_ulined_info:Nn \l__nju_tmpb_dim { clc } \tex_hfill:D
- \__nju_box_spread_name:Nn \l__nju_tmpa_dim { secretlv } \__nju_hskip:
- \__nju_box_ulined_info:Nn \l__nju_tmpb_dim { secretlv } \tex_par:D
- \__nju_box_spread_name:Nn \l__nju_tmpa_dim { udc } \__nju_hskip:
- \__nju_box_ulined_info:Nn \l__nju_tmpb_dim { udc } \tex_hfill:D
+\cs_new:Npn \__nju_cover_top_nl:
+ { \__nju_cover_top_nl:NN \l__nju_tmpa_dim \l__nju_tmpb_dim }
+\cs_new_protected:Npn \__nju_cover_top_nl:NN #1#2
+ {
+ \dim_set:Nn #1 { 38.6 pt }
+ \dim_set:Nn #2 { 109 pt }
+ \__nju_box_spread_name:Nn #1 { clc } \__nju_hskip:
+ \__nju_box_ulined_info:Nn #2 { clc } \tex_hfill:D
+ \__nju_box_spread_name:Nn #1 { secretlv } \__nju_hskip:
+ \__nju_box_ulined_info:Nn #2 { secretlv } \tex_par:D
+ \__nju_box_spread_name:Nn #1 { udc } \__nju_hskip:
+ \__nju_box_ulined_info:Nn #2 { udc } \tex_hfill:D
\__nju_null:
}
\cs_new_protected:Npn \__nju_cover_title_nl:
{
\parbox [ b ] { 15 em } { \__nju_uline_title: } \tex_par:D
\skip_vertical:n { - 0.5 cm }
- { \zihao { 4 } \c__nju_name_subtitle_tl }
+ { \zihao { 4 } \l__nju_name_subtitle_tl }
\skip_vertical:N \c_zero_skip
\dim_set:Nn \l__nju_tmpa_dim { 4.5 em }
\__nju_box_ulined_info:Nn \l__nju_tmpa_dim { author }
\skip_vertical:n { - 0.5 cm }
- { \zihao { 4 } { ( } \c__nju_name_author_tl { ) } }
+ { \zihao { 4 } { ( } \l__nju_name_author_tl { ) } }
}
\cs_new_protected:Npn \__nju_cover_info_nl:
{
@@ -265,9 +267,9 @@
}
\skip_set:Nn \l__nju_tmp_skip { .5 em plus 1 fill }
\__nju_uline_list:NNn \l__nju_tmpa_tl \l__nju_tmp_skip
- { \c__nju_name_supvinfo_tl }
+ { \l__nju_name_supvinfo_tl }
\group_begin:
- \tl_set_eq:NN \c__nju_name_major_tl \c__nju_name_majorb_tl
+ \tl_set_eq:NN \l__nju_name_major_tl \l__nju_name_majorb_tl
\__nju_uline_bientry:Nn \l__nju_tmpa_dim { degree }
\__nju_uline_bientry:Nn \l__nju_tmpa_dim { major }
\tex_par:D
@@ -287,13 +289,13 @@
}
\__nju_declare_element:nn { g / decl / orig / title }
{
- content = \c__nju_name_origdecl_tl,
- format = \c__nju_fmt_chapter_tl,
- bottom-skip = \c__nju_chapterafter_dim
+ content = \l__nju_name_origdecl_tl,
+ format = \l__nju_fmt_chapter_tl,
+ bottom-skip = \l__nju_chapterafter_dim
}
\__nju_declare_element:nn { g / decl / orig / text }
{
- content = \c__nju_text_origdecl_tl,
+ content = \l__nju_text_origdecl_tl,
align = n,
bottom-skip = 0 pt plus 1 fil
}
@@ -304,13 +306,13 @@
}
\__nju_declare_element:nn { g / decl / auth / title }
{
- content = \c__nju_name_authdecl_tl,
- format = \c__nju_fmt_chapter_tl,
- bottom-skip = \c__nju_chapterafter_dim
+ content = \l__nju_name_authdecl_tl,
+ format = \l__nju_fmt_chapter_tl,
+ bottom-skip = \l__nju_chapterafter_dim
}
\__nju_declare_element:nn { g / decl / auth / text }
{
- content = \c__nju_text_authdecl_tl,
+ content = \l__nju_text_authdecl_tl,
align = n,
bottom-skip = 2 cm
}
@@ -354,35 +356,32 @@
cell{1}{2} = {c=5}{m}, cell{3}{2} = {c=5}{m},
cell{4}{2} = {c=5}{m}, cell{5}{2} = {c=5}{m}
}
- \c__nju_name_titlec_tl & \g__nju_info_title_tl \\
- \c__nju_name_ida_tl & \g__nju_info_id_tl &
- \c__nju_name_depta_tl & \g__nju_info_dept_tl &
- \c__nju_name_year_tl &
+ \l__nju_name_titlec_tl & \g__nju_info_title_tl \\
+ \l__nju_name_ida_tl & \g__nju_info_id_tl &
+ \l__nju_name_depta_tl & \g__nju_info_dept_tl &
+ \l__nju_name_year_tl &
\tl_range:Nnn \g__nju_info_submitdate_tl {1} {4} \\
- \c__nju_name_degreea_tl &
+ \l__nju_name_degreea_tl &
{
\__nju_degree_checkbox:nn { } { 2 } 学术学位硕士 \qquad
\__nju_degree_checkbox:nn { ! } { 2 } 专业学位硕士 \\
\__nju_degree_checkbox:nn { } { 3 } 学术学位博士 \qquad
\__nju_degree_checkbox:nn { ! } { 3 } 专业学位博士
} \\
- \c__nju_name_email_tl & \g__nju_info_email_tl \\
- \c__nju_name_supvb_tl &
+ \l__nju_name_email_tl & \g__nju_info_email_tl \\
+ \l__nju_name_supvb_tl &
\clist_item:Nn \g__nju_info_supv_clist { 1 }
\bool_if:NT \g__nju_opt_supvii_bool
{ \__nju_quad: \clist_item:Nn \g__nju_info_supvii_clist { 1 } } \\
\end{tblr}
}
\cs_new_protected:Npn \__nju_g_decl_auth_sign:
- {
- \c__nju_name_authsign_tl \tex_par:D
- \c__nju_name_blankdatea_tl
- }
+ { \l__nju_name_authsign_tl \tex_par:D \l__nju_name_blankdatea_tl }
\cs_new_protected:Npn \__nju_g_decl_auth_secretlv:
{
- \c__nju_name_secretstatus_tl \tex_par:D
- \ensuremath { \mdwhtsquare } \c__nju_name_secretfree_tl \tex_par:D
- \ensuremath { \mdwhtsquare } \c__nju_name_secretdate_tl
+ \l__nju_name_secretstatus_tl \tex_par:D
+ \ensuremath { \mdwhtsquare } \l__nju_name_secretfree_tl \tex_par:D
+ \ensuremath { \mdwhtsquare } \l__nju_name_secretdate_tl
}
\__nju_declare_page:nn { cover-g-front }
{
@@ -415,18 +414,18 @@
{
element = { title, text, sign },
prefix = g / decl / orig /,
- top-skip = \c__nju_chapterbefore_dim,
+ top-skip = \l__nju_chapterbefore_dim,
bottom-skip = 0 pt plus 1 fil,
- bm-text = \c__nju_name_origdecl_tl,
+ bm-text = \l__nju_name_origdecl_tl,
bm-name = origdecl
}
\__nju_declare_page:nn { authdecl-g }
{
element = { title, text, sign, info, date },
prefix = g / decl / auth /,
- top-skip = \c__nju_chapterbefore_dim,
+ top-skip = \l__nju_chapterbefore_dim,
bottom-skip = 0.5 cm plus 1.5 fill,
- bm-text = \c__nju_name_authdecl_tl,
+ bm-text = \l__nju_name_authdecl_tl,
bm-name = authdecl,
bookmark = toc
}
@@ -457,13 +456,13 @@
}
\__nju_declare_element:nn { abstract / title }
{
- content = \__nju_abs_title:N \c__nju_name_abstracttitle_tl,
+ content = \__nju_abs_title:N \l__nju_name_abstracttitle_tl,
format = \bfseries \kaishu \zihao { -2 },
bottom-skip = 20 pt
}
\__nju_declare_element:nn { abstract / en / title }
{
- content = \__nju_abs_title:N \c__nju_name_abstracttitle_en_tl,
+ content = \__nju_abs_title:N \l__nju_name_abstracttitle_en_tl,
format = \bfseries \kaishu \zihao { -2 },
bottom-skip = 20 pt
}
@@ -483,35 +482,35 @@
}
\__nju_declare_element:nn { abstract / mark }
{
- content = \c__nju_name_abstractb_tl,
+ content = \l__nju_name_abstractb_tl,
format = \sffamily \zihao { -3 },
bottom-skip = 15 pt
}
\__nju_declare_element:nn { abstract / en / mark }
{
- content = \c__nju_name_abstractb_en_tl,
+ content = \l__nju_name_abstractb_en_tl,
format = \sffamily \zihao { -3 },
bottom-skip = 15 pt
}
\cs_new_protected:Npn \__nju_abs_info_g:
- { \__nju_abs_info_g:N \c__nju_name_colon_tl }
+ { \__nju_abs_info_g:N \l__nju_name_colon_tl }
\cs_new_protected:Npn \__nju_abs_info_en_g:
- { \__nju_abs_info_en_g:N \c__nju_name_colon_en_tl }
+ { \__nju_abs_info_en_g:N \l__nju_name_colon_en_tl }
\cs_new_protected:Npn \__nju_abs_info_g:N #1
{
\__nju_uline_list:NNe \g__nju_info_title_tl \g__nju_abs_title_left_skip
- { \c__nju_name_titlea_tl #1 }
+ { \l__nju_name_titlea_tl #1 }
\__nju_get_width_print:Ne \l__nju_tmp_skip
{
\dim_set:Nn \l__nju_tmpa_dim { 11 em }
\dim_set:Nn \l__nju_tmpb_dim { 4 em }
\__nju_box_ulined_info:Nn \l__nju_tmpa_dim { major }
- \c__nju_name_majora_tl
+ \l__nju_name_majora_tl
\__nju_box_ulined_info:Nn \l__nju_tmpb_dim { grade }
- \c__nju_name_grade_tl \c__nju_name_authora_tl #1
+ \l__nju_name_grade_tl \l__nju_name_authora_tl #1
}
\__nju_box_ulined_info:Nn \l__nju_tmp_skip { author } \tex_par:D
- \__nju_get_width_print:Ne \l__nju_tmpa_dim { \c__nju_name_supva_tl #1 }
+ \__nju_get_width_print:Ne \l__nju_tmpa_dim { \l__nju_name_supva_tl #1 }
\__nju_box_ulined_info:Nn \l__nju_tmpa_dim { supvfull }
}
\cs_new_protected:Npn \__nju_abs_info_en_g:N #1
@@ -519,7 +518,7 @@
\bool_if:NTF \g__nju_abs_underline_bool
{
\__nju_uline_list:NNe \g__nju_info_title_en_tl
- \g__nju_abs_title_left_skip { \c__nju_name_title_en_tl #1 }
+ \g__nju_abs_title_left_skip { \l__nju_name_title_en_tl #1 }
\clist_map_inline:nn { major, author, supvfull }
{
\tex_par:D
@@ -582,8 +581,8 @@
{ secret status } { 论文涉密情况: },
{ secret free } { 不保密 },
{ secret date }
- { 保密,保密期( \c__nju_name_blankdatea_tl 至
- \c__nju_name_blankdatea_tl ) },
+ { 保密,保密期( \l__nju_name_blankdatea_tl 至
+ \l__nju_name_blankdatea_tl ) },
{ sign } { (签字) },
{ sign a } { 研究生签名 },
{ sign b } { 导师签名 },
@@ -611,8 +610,8 @@
{ abstract a } { 中文摘要 } { ABSTRACT },
{ abstract b } { 摘\qquad{}要 } { ABSTRACT },
{ abstracttitle }
- { \c__nju_name_nju_tl 研究生毕业论文中文摘要首页用纸 }
- { \c__nju_name_nju_tl 研究生毕业论文英文摘要首页用纸 },
+ { \l__nju_name_nju_tl 研究生毕业论文中文摘要首页用纸 }
+ { \l__nju_name_nju_tl 研究生毕业论文英文摘要首页用纸 },
{ appendix } { 附录 } { appendix },
{ author } { 作者姓名 } { POSTGRADUATE },
{ blankdate } { \qquad{}年 \quad{}月 \quad{}日 } { },
@@ -632,7 +631,7 @@
{ type } { 学位论文 } { g }
}
{ \__nju_define_name:nnn #1 }
-\tl_const:Nn \c__nju_text_origdecl_tl
+\tl_set:Nn \l__nju_text_origdecl_tl
{
本人郑重声明,所提交的学位论文是本人在导师指导下独立进行科学研究工作所
取得的成果。除本论文中已经注明引用的内容外,本论文不包含其他个人或集体
@@ -640,7 +639,7 @@
证书而使用过的材料。对本文的研究做出重要贡献的个人和集体,均已在论文的
致谢部分明确标明。本人郑重申明愿承担本声明的法律责任。
}
-\tl_const:Nn \c__nju_text_authdecl_tl
+\tl_set:Nn \l__nju_text_authdecl_tl
{
本人完全同意《中国优秀博硕士学位论文全文数据库出版章程》(以下简称“章
程”),愿意将本人的学位论文提交“中国学术期刊(光盘版)电子杂志社”在《
@@ -650,10 +649,10 @@
总库》,在《中国博硕士学位论文评价数据库》中使用和在互联网上传播,同意
按“章程”规定享受相关权益。
}
-\tl_const:Nn \c__nju_text_cover_en_tl
+\tl_set:Nn \l__nju_text_cover_en_tl
{
A~ dissertation~ submitted~ to \\
- the~ graduate~ school~ of~ \c__nju_name_nju_en_tl \\
+ the~ graduate~ school~ of~ \l__nju_name_nju_en_tl \\
in~ partial~ fulfilment~ of~ the~ requirements~ for~ the~ degree~ of
}
\clist_map_inline:nn
@@ -689,12 +688,12 @@
{ emblem color } { black },
{ name color } { black },
{ section } { \bigger \normalfont \sffamily },
- { chapter } { \c__nju_fmt_section_tl \centering },
- { subsection } { \c__nju_fmt_section_tl },
- { subsubsection } { \c__nju_fmt_section_tl },
- { paragraph } { \c__nju_fmt_section_tl },
- { subparagraph } { \c__nju_fmt_section_tl },
- { chapterintoc } { \c__nju_fmt_section_tl },
+ { chapter } { \l__nju_fmt_section_tl \centering },
+ { subsection } { \l__nju_fmt_section_tl },
+ { subsubsection } { \l__nju_fmt_section_tl },
+ { paragraph } { \l__nju_fmt_section_tl },
+ { subparagraph } { \l__nju_fmt_section_tl },
+ { chapterintoc } { \l__nju_fmt_section_tl },
{ tabular } { \zihao { 5 } },
{ toc title } { \centering \zihao { 3 } \bfseries },
{ header } { \small \kaishu },
diff --git a/Master/texmf-dist/tex/latex/njuthesis/njuthesis-postdoctoral.def b/Master/texmf-dist/tex/latex/njuthesis/njuthesis-postdoctoral.def
index 7150de4a320..4fd12af3b1a 100644
--- a/Master/texmf-dist/tex/latex/njuthesis/njuthesis-postdoctoral.def
+++ b/Master/texmf-dist/tex/latex/njuthesis/njuthesis-postdoctoral.def
@@ -6,7 +6,7 @@
%%
%% njuthesis.dtx (with options: `def-p')
%%
-%% Copyright (C) 2021 - 2023
+%% Copyright (C) 2021 - 2024
%% by Nanjing University Linux User Group
%% <git+nju-lug-email-3104-issue-@yaoge123.cn>
%%
@@ -23,7 +23,7 @@
%% To produce the documentation run the original source files ending with
%% `.dtx' through XeTeX.
%%
-\GetIdInfo $Id: njuthesis.dtx 1.3.2 2023-12-05 16:30:00
+\GetIdInfo $Id: njuthesis.dtx 1.4.0 2024-03-19 20:30:00
+0800 NJU LUG <git+nju-lug-email-3104-issue-@yaoge123.cn>$
{Postdoctoral definition file for njuthesis}
\ProvidesExplFile{njuthesis-postdoctoral.def}
@@ -31,33 +31,32 @@
\__nju_declare_element:nn { p / cover / name-img }
{
- content = \__nju_name:N \c__nju_namewd_dim,
+ content = \__nju_name:N \l__nju_namewd_dim,
bottom-skip = 40 pt
}
\__nju_declare_element:nn { p / cover / report }
{
- content = \c__nju_name_report_tl,
+ content = \l__nju_name_report_tl,
format = \zihao { 0 } \sffamily,
bottom-skip = 40 pt plus 1.5 fil
}
\__nju_declare_element:nn { p / cover / title }
{
content =
- \c__nju_name_title_tl
- \c__nju_name_colon_tl
+ \l__nju_name_title_tl
+ \l__nju_name_colon_tl
\g__nju_info_title_tl,
format = \zihao { 4 },
bottom-skip = 80 pt
}
\__nju_declare_element:nn { p / cover / info }
{
- content =
- \__nju_p_cover_info:NN
- \c__nju_clabelwd_dim
- \c__nju_fmt_coverlabel_tl,
+ content = \__nju_p_cover_info:,
format = \zihao { -4 },
bottom-skip = 0 pt
}
+\cs_new:Npn \__nju_p_cover_info:
+ { \__nju_p_cover_info:NN \l__nju_clabelwd_dim \l__nju_fmt_coverlabel_tl }
\cs_new_protected:Npn \__nju_p_cover_info:NN #1#2
{
\clist_set:Nn \l__nju_tmp_clist
@@ -65,21 +64,21 @@
\__nju_get_max_width:NN \l__nju_tmpb_dim \l__nju_tmp_clist
\clist_map_inline:Nn \l__nju_tmp_clist
{
- \__nju_box_spread_name:NNn #1 #2 { ##1 }
- \c__nju_name_colon_tl
- \__nju_box_center:Nn \l__nju_tmpb_dim { \__nju_info:n { ##1 } }
+ \__nju_box_spread_name:NNn #1 #2 {##1}
+ \l__nju_name_colon_tl
+ \__nju_box_center:Nn \l__nju_tmpb_dim { \__nju_info:n {##1} }
\tex_par:D
}
}
\__nju_declare_element:nn { p / decl / orig / title }
{
- content = \c__nju_name_origdecl_tl,
- format = \c__nju_fmt_chapter_tl,
- bottom-skip = \c__nju_chapterafter_dim
+ content = \l__nju_name_origdecl_tl,
+ format = \l__nju_fmt_chapter_tl,
+ bottom-skip = \l__nju_chapterafter_dim
}
\__nju_declare_element:nn { p / decl / orig / text }
{
- content = \c__nju_text_origdecl_tl,
+ content = \l__nju_text_origdecl_tl,
align = n,
bottom-skip = 2 cm
}
@@ -90,13 +89,13 @@
}
\__nju_declare_element:nn { p / decl / auth / title }
{
- content = \c__nju_name_authdecl_tl,
- format = \c__nju_fmt_chapter_tl,
- bottom-skip = \c__nju_chapterafter_dim
+ content = \l__nju_name_authdecl_tl,
+ format = \l__nju_fmt_chapter_tl,
+ bottom-skip = \l__nju_chapterafter_dim
}
\__nju_declare_element:nn { p / decl / auth / text }
{
- content = \c__nju_text_authdecl_tl,
+ content = \l__nju_text_authdecl_tl,
align = n,
bottom-skip = 2 cm
}
@@ -109,8 +108,8 @@
}
\cs_new_protected:Npn \__nju_p_decl_sign:nn #1#2
{
- \__nju_name:n {#1} \c__nju_name_colon_tl \tex_hfill:D
- \__nju_name:n {#2} \c__nju_name_colon_tl
+ \__nju_name:n {#1} \l__nju_name_colon_tl \tex_hfill:D
+ \__nju_name:n {#2} \l__nju_name_colon_tl
\skip_horizontal:n { 160 pt } \__nju_null: \__nju_vskip:
}
\__nju_declare_page:nn { cover-p }
@@ -130,7 +129,7 @@
prefix = p / decl /,
bm-text = 声明页,
bm-name = decl,
- top-skip = \c__nju_chapterbefore_dim,
+ top-skip = \l__nju_chapterbefore_dim,
bottom-skip = 0 pt
}
\cs_new_protected:Npn \__nju_make_cover:
@@ -160,13 +159,13 @@
}
\__nju_declare_element:nn { abstract / mark }
{
- content = \c__nju_name_abstractb_tl,
+ content = \l__nju_name_abstractb_tl,
format = \sffamily \zihao { -3 },
bottom-skip = 15 pt
}
\__nju_declare_element:nn { abstract / en / mark }
{
- content = \c__nju_name_abstractb_en_tl,
+ content = \l__nju_name_abstractb_en_tl,
format = \sffamily \zihao { -3 },
bottom-skip = 15 pt
}
@@ -227,14 +226,14 @@
{ table } { 表 } { table },
}
{ \__nju_define_name:nnn #1 }
-\tl_const:Nn \c__nju_text_origdecl_tl
+\tl_set:Nn \l__nju_text_origdecl_tl
{
本人郑重声明:所呈交的研究报告,是本人独立进行研究工作所取得的成果。除
文中已经注明引用的内容外,本报告不含任何其他个人或集体已经发表或撰写过
的作品成果。对本报告的研究做出重要贡献的个人和集体,均已在报告中以明确
方式标明。本人完全意识到本声明的法律结果由本人承担。
}
-\tl_const:Nn \c__nju_text_authdecl_tl
+\tl_set:Nn \l__nju_text_authdecl_tl
{
本研究报告作者完全了解南京大学有关保留和使用该报告的规定,即:博士后在
职期间的知识产权单位属南京大学。学校有权保留并向国家有关部门或机构送交
@@ -267,12 +266,12 @@
{ emblem color } { black },
{ name color } { black },
{ section } { \bigger \normalfont \sffamily },
- { chapter } { \c__nju_fmt_section_tl \centering },
- { subsection } { \c__nju_fmt_section_tl },
- { subsubsection } { \c__nju_fmt_section_tl },
- { paragraph } { \c__nju_fmt_section_tl },
- { subparagraph } { \c__nju_fmt_section_tl },
- { chapterintoc } { \c__nju_fmt_section_tl },
+ { chapter } { \l__nju_fmt_section_tl \centering },
+ { subsection } { \l__nju_fmt_section_tl },
+ { subsubsection } { \l__nju_fmt_section_tl },
+ { paragraph } { \l__nju_fmt_section_tl },
+ { subparagraph } { \l__nju_fmt_section_tl },
+ { chapterintoc } { \l__nju_fmt_section_tl },
{ tabular } { \zihao { 5 } },
{ toc title } { \centering \zihao { 3 } \bfseries },
{ header } { \small \kaishu },
diff --git a/Master/texmf-dist/tex/latex/njuthesis/njuthesis-undergraduate.def b/Master/texmf-dist/tex/latex/njuthesis/njuthesis-undergraduate.def
index 9f78082444c..a2120d56bd0 100644
--- a/Master/texmf-dist/tex/latex/njuthesis/njuthesis-undergraduate.def
+++ b/Master/texmf-dist/tex/latex/njuthesis/njuthesis-undergraduate.def
@@ -6,7 +6,7 @@
%%
%% njuthesis.dtx (with options: `def-u')
%%
-%% Copyright (C) 2021 - 2023
+%% Copyright (C) 2021 - 2024
%% by Nanjing University Linux User Group
%% <git+nju-lug-email-3104-issue-@yaoge123.cn>
%%
@@ -23,7 +23,7 @@
%% To produce the documentation run the original source files ending with
%% `.dtx' through XeTeX.
%%
-\GetIdInfo $Id: njuthesis.dtx 1.3.2 2023-12-05 16:30:00
+\GetIdInfo $Id: njuthesis.dtx 1.4.0 2024-03-19 20:30:00
+0800 NJU LUG <git+nju-lug-email-3104-issue-@yaoge123.cn>$
{Undergraduate definition file for njuthesis}
\ProvidesExplFile{njuthesis-undergraduate.def}
@@ -31,12 +31,12 @@
\__nju_declare_element:nn { u / cover / emblem-img }
{
- content = \__nju_emblem:N \c__nju_emblemwd_dim,
+ content = \__nju_emblem:N \l__nju_emblemwd_dim,
bottom-skip = 1.2 cm
}
\__nju_declare_element:nn { u / cover / name-img }
{
- content = \__nju_name:N \c__nju_namewd_dim,
+ content = \__nju_name:N \l__nju_namewd_dim,
bottom-skip = 1 cm,
}
\__nju_declare_element:nn { u / cover / title }
@@ -65,23 +65,23 @@
}
\cs_new:Npn \__nju_u_cover_info:
{
- \__nju_u_cover_info:NNNN \c__nju_clabelwd_dim \c__nju_crulewd_dim
- \c__nju_hsep_dim \kaishu
+ \__nju_u_cover_info:NNNN \l__nju_clabelwd_dim \l__nju_crulewd_dim
+ \l__nju_hsep_dim \kaishu
}
\__nju_declare_element:nn { u / decl / orig / emblem }
{
- content = \__nju_emblem:N \c__nju_emblemwdi_dim,
+ content = \__nju_emblem:N \l__nju_emblemwdi_dim,
bottom-skip = 30 pt
}
\__nju_declare_element:nn { u / decl / orig / title }
{
- content = \c__nju_name_origdecl_tl,
+ content = \l__nju_name_origdecl_tl,
format = \sffamily \__nju_fontsize:nn { 24 bp } { 22.15 bp } \bfseries,
bottom-skip = 50 pt
}
\__nju_declare_element:nn { u / decl / orig / text }
{
- content = \c__nju_text_origdecl_tl,
+ content = \l__nju_text_origdecl_tl,
format = \__nju_zihao:nn { 1.9 } { -3 },
align = n,
bottom-skip = 2.7 cm
@@ -95,7 +95,7 @@
\cs_new_protected:Npn \__nju_decl_sign:
{
\clist_map_inline:nn { origsign, id, date }
- { \tex_par:D \__nju_name:n { ##1 } : \hbox_to_wd:nn { 6 em } { } }
+ { \tex_par:D \__nju_name:n {##1} : \hbox_to_wd:nn { 6 em } { } }
}
\__nju_declare_page:nn { cover-u }
{
@@ -125,13 +125,13 @@
}
\__nju_declare_element:nn { abstract / title }
{
- content = \__nju_abs_title:N \c__nju_name_abstracttitle_tl,
+ content = \__nju_abs_title:N \l__nju_name_abstracttitle_tl,
format = \bfseries \kaishu \zihao { -2 },
bottom-skip = 20 pt
}
\__nju_declare_element:nn { abstract / en / title }
{
- content = \__nju_abs_title:N \c__nju_name_abstracttitle_en_tl,
+ content = \__nju_abs_title:N \l__nju_name_abstracttitle_en_tl,
format = \bfseries \kaishu \zihao { -2 },
bottom-skip = 20 pt
}
@@ -150,12 +150,12 @@
align = l
}
\cs_new_protected:Npn \__nju_abs_info_u:
- { \__nju_abs_info_u:nn { } { \c__nju_name_colon_tl } }
+ { \__nju_abs_info_u:nn { } { \l__nju_name_colon_tl } }
\cs_new_protected:Npn \__nju_abs_info_en_u:
- { \__nju_abs_info_u:nn { _en } { \c__nju_name_colon_en_tl } }
+ { \__nju_abs_info_u:nn { _en } { \l__nju_name_colon_en_tl } }
\cs_new_protected:Npn \__nju_abs_info_u:nn #1#2
{
- \tl_set_eq:NN \c__nju_name_author_tl \c__nju_name_authora_tl
+ \tl_set_eq:NN \l__nju_name_author_tl \l__nju_name_authora_tl
\clist_map_inline:nn { title, dept, major, author, supvfull }
{
\__nju_name:nn { abslabel #1 } { ##1 #1 } #2
@@ -203,8 +203,8 @@
{ abstract a } { 中文摘要 } { ABSTRACT },
{ abstract b } { 摘\qquad{}要 } { ABSTRACT },
{ abstracttitle }
- { \c__nju_name_nju_tl 本科生毕业论文(设计、作品)中文摘要 }
- { \c__nju_name_nju_tl 本科生毕业论文(设计、作品)英文摘要 },
+ { \l__nju_name_nju_tl 本科生毕业论文(设计、作品)中文摘要 }
+ { \l__nju_name_nju_tl 本科生毕业论文(设计、作品)英文摘要 },
{ appendix } { 附录 } { appendix },
{ author } { 学生姓名 } { UNDERGRADUATE },
{ blankdate } { \qquad{}年 \quad{}月 \quad{}日 } { },
@@ -224,7 +224,7 @@
{ type } { 本科毕业论文 } { u }
}
{ \__nju_define_name:nnn #1 }
-\tl_const:Nn \c__nju_text_origdecl_tl
+\tl_set:Nn \l__nju_text_origdecl_tl
{
本人郑重承诺:所呈交的毕业论文(设计)(题目: \g__nju_info_title_tl )
是在指导教师的指导下严格按照学校和院系有关规定由本人独立完成的。
@@ -261,12 +261,12 @@
{ emblem color } { black },
{ name color } { black },
{ section } { \bigger \normalfont \sffamily },
- { chapter } { \c__nju_fmt_section_tl \centering },
- { subsection } { \c__nju_fmt_section_tl },
- { subsubsection } { \c__nju_fmt_section_tl },
- { paragraph } { \c__nju_fmt_section_tl },
- { subparagraph } { \c__nju_fmt_section_tl },
- { chapterintoc } { \c__nju_fmt_section_tl },
+ { chapter } { \l__nju_fmt_section_tl \centering },
+ { subsection } { \l__nju_fmt_section_tl },
+ { subsubsection } { \l__nju_fmt_section_tl },
+ { paragraph } { \l__nju_fmt_section_tl },
+ { subparagraph } { \l__nju_fmt_section_tl },
+ { chapterintoc } { \l__nju_fmt_section_tl },
{ tabular } { \zihao { 5 } },
{ toc title } { \centering \zihao { 3 } \bfseries },
{ header } { \small \kaishu },
diff --git a/Master/texmf-dist/tex/latex/njuthesis/njuthesis.cls b/Master/texmf-dist/tex/latex/njuthesis/njuthesis.cls
index d860877df20..2560e613a2e 100644
--- a/Master/texmf-dist/tex/latex/njuthesis/njuthesis.cls
+++ b/Master/texmf-dist/tex/latex/njuthesis/njuthesis.cls
@@ -6,7 +6,7 @@
%%
%% njuthesis.dtx (with options: `class')
%%
-%% Copyright (C) 2021 - 2023
+%% Copyright (C) 2021 - 2024
%% by Nanjing University Linux User Group
%% <git+nju-lug-email-3104-issue-@yaoge123.cn>
%%
@@ -24,7 +24,7 @@
%% `.dtx' through XeTeX.
%%
\NeedsTeXFormat{LaTeX2e}
-\GetIdInfo $Id: njuthesis.dtx 1.3.2 2023-12-05 16:30:00
+\GetIdInfo $Id: njuthesis.dtx 1.4.0 2024-03-19 20:30:00
+0800 NJU LUG <git+nju-lug-email-3104-issue-@yaoge123.cn>$
{Thesis template for Nanjing University}
\ProvidesExplClass{njuthesis}
@@ -46,6 +46,7 @@
\@ifpackagelater { expl3 } { 2023/10/10 } { }
{
\cs_generate_variant:Nn \tl_set:Nn { Ne }
+ \cs_generate_variant:Nn \tl_gset:Nn { Ne }
\cs_generate_variant:Nn \tl_const:Nn { Ne }
\cs_generate_variant:Nn \tl_gput_right:Nn { Ne }
}
@@ -74,11 +75,14 @@
\tl_new:N \l__nju_tmpb_tl
\int_new:N \g__nju_info_type_int
\bool_new:N \g__nju_opt_academic_bool
-\bool_new:N \g__nju_opt_twoside_bool
-\bool_set_true:N \g__nju_opt_twoside_bool
+\bool_new:N \g__nju_opt_draft_bool
+\bool_gset_false:N \g__nju_opt_draft_bool
\bool_new:N \g__nju_opt_supvii_bool
\tl_new:N \g__nju_info_supvfull_tl
\tl_new:N \g__nju_info_supvfull_en_tl
+\tl_new:N \g__nju_info_major_tl
+\tl_new:N \g__nju_info_majorc_tl
+\tl_new:N \g__nju_font_set_tl
\tl_new:N \g__nju_font_latin_tl
\tl_new:N \g__nju_font_cjk_tl
\tl_new:N \g__nju_font_math_tl
@@ -108,10 +112,10 @@
\clist_const:Nn \c__nju_name_anon_en_clist
{ author, supervisor, supervisor-ii }
\cs_new:Nn \__nju_null: { \hbox:n { } }
-\cs_new:Nn \__nju_quad: { \skip_horizontal:n { 1 em } }
-\cs_new:Nn \__nju_qquad: { \skip_horizontal:n { 2 em } }
-\cs_new:Nn \__nju_vskip: { \skip_vertical:N \c__nju_vsep_dim }
-\cs_new:Nn \__nju_hskip: { \skip_horizontal:N \c__nju_hsep_dim }
+\cs_new:Nn \__nju_space: { \skip_horizontal:n { .5 em } }
+\cs_new:Nn \__nju_quad: { \skip_horizontal:n { 1 em } }
+\cs_new:Nn \__nju_vskip: { \skip_vertical:N \l__nju_vsep_dim }
+\cs_new:Nn \__nju_hskip: { \skip_horizontal:N \l__nju_hsep_dim }
\cs_set_protected:Npn \__nju_vskip:N #1
{
\tex_hrule:D \@height \c_zero_dim \scan_stop:
@@ -119,22 +123,30 @@
\skip_vertical:N #1
\skip_vertical:N \c_zero_dim
}
-\cs_new_protected:Npn \__nju_define_name:nn #1#2
- { \tl_const:cn { c__nju_name_ #1 _tl } {#2} }
-\cs_new_protected:Npn \__nju_define_name:nnn #1#2#3
+\cs_new:Npn \__nju_define_name:nn #1
{
- \tl_const:cn { c__nju_name_ #1 _tl } {#2}
- \tl_const:cn { c__nju_name_ #1 _en_tl } {#3}
+ \tl_new:c { l__nju_name_ #1 _tl }
+ \tl_set:cn { l__nju_name_ #1 _tl }
+ }
+\cs_new:Npn \__nju_define_name:nnn #1#2#3
+ {
+ \__nju_define_name:nn { #1 } {#2}
+ \__nju_define_name:nn { #1 _en } {#3}
+ }
+\cs_new:Npn \__nju_define_fmt:nn #1 { \tl_set:cn { l__nju_fmt_ #1 _tl } }
+\cs_new:Npn \__nju_define_dim:nn #1
+ {
+ \dim_new:c { l__nju_ #1 _dim }
+ \dim_set:cn { l__nju_ #1 _dim }
+ }
+\cs_new:Npn \__nju_define_skip:nn #1
+ {
+ \skip_new:c { l__nju_ #1 _skip }
+ \skip_set:cn { l__nju_ #1 _skip }
}
-\cs_new_protected:Npn \__nju_define_fmt:nn #1#2
- { \tl_const:cn { c__nju_fmt_ #1 _tl } {#2} }
-\cs_new_protected:Npn \__nju_define_dim:nn #1#2
- { \dim_const:cn { c__nju_ #1 _dim } {#2} }
-\cs_new_protected:Npn \__nju_define_skip:nn #1#2
- { \skip_const:cn { c__nju_ #1 _skip } {#2} }
-\cs_new:Npn \__nju_name:n #1 { \tl_use:c { c__nju_name_ #1 _tl } }
\cs_new:Npn \__nju_info:n #1 { \tl_use:c { g__nju_info_ #1 _tl } }
-\cs_new:Npn \__nju_fmt:n #1 { \tl_use:c { c__nju_fmt_ #1 _tl } }
+\cs_new:Npn \__nju_name:n #1 { \tl_use:c { l__nju_name_ #1 _tl } }
+\cs_new:Npn \__nju_fmt:n #1 { \tl_use:c { l__nju_fmt_ #1 _tl } }
\cs_new:Npn \__nju_name:nn #1#2
{ \group_begin: \__nju_fmt:n {#1} \__nju_name:n {#2} \group_end: }
\cs_new:Npn \__nju_fontsize:nn #1#2
@@ -158,7 +170,7 @@
\cs_new_protected:Npn \__nju_box_ulined:NN #1#2
{
\mode_leave_vertical:
- \rule [ \c__nju_ruledpi_dim ] {#1} { \c__nju_rulehti_dim }
+ \rule [ \l__nju_ruledpi_dim ] {#1} { \l__nju_rulehti_dim }
\skip_horizontal:n { -#1 }
\hbox_to_wd:nn {#1} { \tex_hfil:D #2 \tex_hfil:D }
}
@@ -184,9 +196,9 @@
\cs_generate_variant:Nn \__nju_box_spread:NNn { NNv }
\cs_generate_variant:Nn \__nju_box_spread:NNn { NNe }
\cs_new_protected:Npn \__nju_box_spread_name:Nn #1#2
- { \__nju_box_spread:NNv #1 \c_empty_tl { c__nju_name_ #2 _tl } }
+ { \__nju_box_spread:NNv #1 \c_empty_tl { l__nju_name_ #2 _tl } }
\cs_new_protected:Npn \__nju_box_spread_name:NNn #1#2#3
- { \__nju_box_spread:NNv #1 #2 { c__nju_name_ #3 _tl } }
+ { \__nju_box_spread:NNv #1 #2 { l__nju_name_ #3 _tl } }
\cs_new_protected:Npn \__nju_box_center:Nn #1#2
{
\mode_leave_vertical:
@@ -197,7 +209,7 @@
\int_set:Nn #1 { \int_max:nn { \clist_count:N #3 } {#5} }
\int_step_inline:nn {#1}
{
- \clist_pop:NNF #3 #2 { \tl_set_eq:NN #2 \c_empty_tl }
+ \clist_gpop:NNF #3 #2 { \tl_set_eq:NN #2 \c_empty_tl }
\__nju_box_ulined:NN #4 #2 \tex_par:D
}
}
@@ -206,15 +218,15 @@
\cs_new_protected:Npn \__nju_uline:n #1
{
\mode_leave_vertical:
- \rule [ \c__nju_ruledpi_dim ] {#1} { \c__nju_rulehti_dim }
+ \rule [ \l__nju_ruledpi_dim ] {#1} { \l__nju_rulehti_dim }
\skip_horizontal:n { -#1 }
}
\cs_new_protected:Npn \__nju_uuline:N #1
{
\mode_leave_vertical:
- \rule [ \c__nju_ruledpii_dim ] {#1} { \c__nju_rulehtii_dim }
+ \rule [ \l__nju_ruledpii_dim ] {#1} { \l__nju_rulehtii_dim }
\skip_horizontal:n { -#1 }
- \rule [ \c__nju_ruledpiii_dim ] {#1} { \c__nju_rulehtii_dim }
+ \rule [ \l__nju_ruledpiii_dim ] {#1} { \l__nju_rulehtii_dim }
\skip_horizontal:n { -#1 }
}
\cs_new:Npn \__nju_get_width:Nn #1#2
@@ -241,12 +253,12 @@
\cs_generate_variant:Nn \__nju_get_width_print:Nn { Ne }
\cs_new_protected:Npn \__nju_uline_entry:Nn #1#2
{
- \__nju_get_width_print:Nv #1 { c__nju_name_ #2 _tl }
+ \__nju_get_width_print:Nv #1 { l__nju_name_ #2 _tl }
\__nju_box_ulined_info:Nn #1 {#2}
}
\cs_new_protected:Npn \__nju_uline_bientry:Nn #1#2
{
- \__nju_get_width_print:Nv #1 { c__nju_name_ #2 _tl }
+ \__nju_get_width_print:Nv #1 { l__nju_name_ #2 _tl }
\dim_sub:Nn #1 { \textwidth / 2 }
\__nju_box_ulined_info:Nn #1 {#2}
}
@@ -257,7 +269,7 @@
\cs_new:Npn \__nju_date:nn { \__nju_date:nnn { } }
\cs_new:Npn \__nju_date:nnn #1#2#3
{
- \tl_set:cx { g__nju_info_ #2 date #1 _tl }
+ \tl_gset:cx { g__nju_info_ #2 date #1 _tl }
{
\tl_if_empty:nTF {#3}
{ \__nju_name:n { blankdate #1 } }
@@ -273,7 +285,7 @@
\cs_new:Npn \__nju_breakpar_loop:n #1
{
\dim_set:Nn \l__nju_tmpa_dim
- { - \tex_prevdepth:D - \c__nju_ruledpi_dim - \c__nju_rulehti_dim }
+ { - \tex_prevdepth:D - \l__nju_ruledpi_dim - \l__nju_rulehti_dim }
\hbox_gset:Nn \l__nju_tmpc_box { }
\__nju_loop_until:nnn { \box_if_empty_p:N \l__nju_tmpb_box }
{
@@ -323,7 +335,7 @@
\mode_leave_vertical: #1
\parbox [ t ] {#3}
{
- \c__nju_fmt_covertitle_tl \__nju_uline_title:
+ \l__nju_fmt_covertitle_tl \__nju_uline_title:
\dim_gset_eq:NN \l__nju_tmpa_dim \tex_prevdepth:D
}
\tex_par:D
@@ -355,9 +367,9 @@
\__nju_box_ulined:NN #2 \l__nju_tmpb_tl \tex_par:D
}
\cs_new_protected:Npn \__nju_emblem:N #1
- { \njuemblem [ \c__nju_fmt_emblemcolor_tl ] {#1} { ! } }
+ { \njuemblem [ \l__nju_fmt_emblemcolor_tl ] {#1} { ! } }
\cs_new_protected:Npn \__nju_name:N #1
- { \njuname [ \c__nju_fmt_namecolor_tl ] {#1} { ! } }
+ { \njuname [ \l__nju_fmt_namecolor_tl ] {#1} { ! } }
\cs_new_protected:Npn \__nju_abs_bookmark:nn #1#2
{
\phantomsection
@@ -547,6 +559,10 @@
The~ font~ is~ normally~ distributed~ with~ MS~ Windows.~
I~ have~ used~ songti~ for~ substitution.
}
+\cs_new:Npn \__nju_pass_option:nn #1#2 { \PassOptionsToClass {#2} {#1} }
+\cs_new:Npn \__nju_pass_option:n { \__nju_pass_option:nn { ctexbook } }
+\cs_generate_variant:Nn \__nju_pass_option:n { V }
+\cs_new:Npn \__nju_pass_option: { \__nju_pass_option:V \l_keys_key_str }
\keys_define:nn { nju }
{
type .choices:nn = { bachelor, master, doctor, postdoc }
@@ -554,45 +570,66 @@
type .initial:n = bachelor,
degree .choice:,
degree / academic .code:n =
- { \bool_set_true:N \g__nju_opt_academic_bool },
+ { \bool_gset_true:N \g__nju_opt_academic_bool },
degree / professional .code:n =
- { \bool_set_false:N \g__nju_opt_academic_bool },
+ { \bool_gset_false:N \g__nju_opt_academic_bool },
degree .initial:n = academic,
- nl-cover .bool_set:N = \g__nju_opt_nlcover_bool,
+ nl-cover .bool_gset:N = \g__nju_opt_nlcover_bool,
nl-cover .initial:n = false,
- decl-page .bool_set:N = \g__nju_opt_decl_bool,
+ decl-page .bool_gset:N = \g__nju_opt_decl_bool,
decl-page .initial:n = false,
- draft .bool_gset:N = \g__nju_opt_draft_bool,
- draft .initial:n = false,
+ draft .value_forbidden:n = true,
+ draft .code:n =
+ {
+ \bool_gset_true:N \g__nju_opt_draft_bool
+ \__nju_pass_option:
+ },
oneside .value_forbidden:n = true,
twoside .value_forbidden:n = true,
- oneside .bool_gset_inverse:N = \g__nju_opt_twoside_bool,
- anonymous .bool_set:N = \g__nju_opt_anon_bool,
+ oneside .code:n =
+ {
+ \bool_gset_false:N \g__nju_opt_twoside_bool
+ \tl_gset:Nn \g__nju_name_pagemode_tl { oneside }
+ \__nju_pass_option:
+ },
+ twoside .code:n =
+ {
+ \bool_gset_true:N \g__nju_opt_twoside_bool
+ \tl_gset:Nn \g__nju_name_pagemode_tl { twoside }
+ \__nju_pass_option:
+ },
+ anonymous .bool_gset:N = \g__nju_opt_anon_bool,
anonymous .initial:n = false,
latin-font .choices:nn =
- { gyre, mac, win, none }
- { \tl_set_eq:NN \g__nju_font_latin_tl \l_keys_choice_tl },
+ { fandol, gyre, mac, macoffice, win, none }
+ { \tl_gset:Nn \g__nju_font_latin_tl {#1} },
cjk-font .choices:nn =
- { fandol, founder, mac, noto, source, win, none }
- { \tl_set_eq:NN \g__nju_font_cjk_tl \l_keys_choice_tl },
+ { fandol, founder, mac, macoffice, noto, source, win, none }
+ { \tl_gset:Nn \g__nju_font_cjk_tl {#1} },
+ fontset .choices:nn =
+ { fandol, mac, macoffice, win, none }
+ { \keys_set:nn { nju } { latin-font = #1, cjk-font = #1 } },
math-font .choices:nn =
{
asana, cambria, fira, garamond, lm, libertinus, newcm,
stix, bonum, dejavu, pagella, schola, termes, xits, none
}
- { \tl_set_eq:NN \g__nju_font_math_tl \l_keys_choice_tl },
+ { \tl_gset_eq:NN \g__nju_font_math_tl \l_keys_choice_tl },
math-font .initial:n = xits,
font-path .code:n =
{
- \bool_set_true:N \g__nju_font_path_bool
- \tl_set_eq:NN \g__nju_font_path_tl \l_keys_value_tl
+ \bool_gset_true:N \g__nju_font_path_bool
+ \tl_gset_eq:NN \g__nju_font_path_tl \l_keys_value_tl
},
- zihao .tl_set:N = \g__nju_opt_zihao_tl,
+ zihao .code:n =
+ { \__nju_pass_option:n { zihao = #1 } },
zihao .initial:n = -4,
- linespread .tl_set:N = \g__nju_opt_linespread_tl,
+ linespread .code:n =
+ { \__nju_pass_option:n { linespread = #1 } },
linespread .initial:n = 1.625,
- config .clist_set:N = \g__nju_config_clist
+ config .clist_gset:N = \g__nju_config_clist
}
+\keys_set:nn { nju } { twoside }
\clist_new:N \g__nju_name_optional_pkg_clist
\cs_new_protected:Npn \__nju_define_pkg_keys:nnn #1#2#3
{
@@ -606,7 +643,7 @@
\bool_if:cT { g__nju_opt_load_ #2 _bool }
{ \RequirePackage {#1} }
}
- \clist_put_right:Nn \g__nju_name_optional_pkg_clist {#1}
+ \clist_gput_right:Nn \g__nju_name_optional_pkg_clist {#1}
}
\clist_map_inline:nn
{
@@ -629,11 +666,8 @@
}
}
\ProcessKeysOptions { nju }
-\bool_if:NTF \g__nju_opt_twoside_bool
- { \tl_const:Nn \c__nju_name_pagemode_tl { twoside } }
- { \tl_const:Nn \c__nju_name_pagemode_tl { oneside } }
\bool_if:NT \g__nju_opt_anon_bool
- { \bool_set_false:N \g__nju_opt_decl_bool }
+ { \bool_gset_false:N \g__nju_opt_decl_bool }
\clist_map_inline:nn
{
abstract, bib, image, footer, footnote, header,
@@ -659,12 +693,12 @@
}
\@onlypreamble \njusetup
\NewDocumentCommand \njusetformat { m m }
- { \tl_gset:cn { c__nju_fmt_ #1 _tl } {#2} }
+ { \__nju_define_fmt:nn {#1} {#2} }
\NewDocumentCommand \njusetlength { s m m }
{
\bool_if:nTF {#1}
- { \skip_gset:cn { c__nju_ #2 _skip } {#3} }
- { \dim_gset:cn { c__nju_ #2 _dim } {#3} }
+ { \skip_gset:cn { l__nju_ #2 _skip } {#3} }
+ { \dim_gset:cn { l__nju_ #2 _dim } {#3} }
}
\NewDocumentCommand \njusetname { s m O{} m }
{ \__nju_set_tokenlist:nnnnn {#1} {#2} {#3} {#4} { name } }
@@ -673,28 +707,23 @@
\cs_new_protected:Npn \__nju_set_tokenlist:nnnnn #1#2#3#4#5
{
\bool_if:nTF {#1}
- { \tl_set_eq:NN \l__nju_tmpb_tl \c__nju_name_suffix_en_tl }
+ { \tl_set_eq:NN \l__nju_tmpb_tl \l__nju_name_suffix_en_tl }
{ \tl_clear:N \l__nju_tmpb_tl }
- \tl_gset:cn { c__nju_ #5 _ #2 #3 \l__nju_tmpb_tl _tl } {#4}
+ \tl_gset:cn { l__nju_ #5 _ #2 #3 \l__nju_tmpb_tl _tl } {#4}
}
-\exp_args:Ne \PassOptionsToClass
+\__nju_pass_option:n
{
a4paper,
UTF8,
scheme = chinese,
- \c__nju_name_pagemode_tl,
- \bool_if:NT \g__nju_opt_draft_bool { draft, }
- linespread = \g__nju_opt_linespread_tl,
- fontset = none,
- zihao = \g__nju_opt_zihao_tl
+ fontset = none
}
- { ctexbook }
\clist_map_inline:nn
{
- { quiet } { xeCJK },
{ no-math } { fontspec },
{ perpage } { footmisc },
- { capitalise, nameinlink, noabbrev } { cleveref }
+ { capitalise, nameinlink, noabbrev } { cleveref },
+ { amsmath, thmmarks, noconfig } { ntheorem }
}
{ \PassOptionsToPackage #1 }
\LoadClass { ctexbook } [ 2018/04/01 ]
@@ -719,14 +748,10 @@
booktabs,
caption,
graphicx,
- hyperref
}
+\__nju_loadpkg_nthm:
+\RequirePackage { hyperref }
\__nju_loadpkg_cref:
-\bool_if:NT \g__nju_opt_load_nthm_bool
- {
- \PassOptionsToPackage { amsmath, thmmarks, noconfig } { ntheorem }
- \RequirePackage { ntheorem }
- }
\bool_if:NT \g__nju_opt_twoside_bool { \RequirePackage { emptypage } }
\sys_if_engine_xetex:T
{
@@ -778,46 +803,51 @@
}
\keys_define:nn { nju / info }
{
- title .tl_set:N = \g__nju_info_title_tl ,
+ title .tl_gset:N = \g__nju_info_title_tl ,
title .initial:n = { 空 } ,
- title* .tl_set:N = \g__nju_info_title_en_tl ,
+ title* .tl_gset:N = \g__nju_info_title_en_tl ,
title* .initial:n = { Empty } ,
- keywords .clist_set:N = \g__nju_info_keywords_clist ,
- keywords* .clist_set:N = \g__nju_info_keywords_en_clist ,
- grade .tl_set:N = \g__nju_info_grade_tl ,
- student-id .tl_set:N = \g__nju_info_id_tl ,
- author .tl_set:N = \g__nju_info_author_tl ,
- author* .tl_set:N = \g__nju_info_author_en_tl ,
- department .tl_set:N = \g__nju_info_dept_tl ,
- department* .tl_set:N = \g__nju_info_dept_en_tl ,
- major* .tl_set:N = \g__nju_info_major_en_tl ,
- field .tl_set:N = \g__nju_info_field_tl ,
- field* .tl_set:N = \g__nju_info_field_en_tl ,
+ keywords .clist_gset:N = \g__nju_info_keywords_clist ,
+ keywords* .clist_gset:N = \g__nju_info_keywords_en_clist ,
+ grade .tl_gset:N = \g__nju_info_grade_tl ,
+ student-id .tl_gset:N = \g__nju_info_id_tl ,
+ author .tl_gset:N = \g__nju_info_author_tl ,
+ author* .tl_gset:N = \g__nju_info_author_en_tl ,
+ department .tl_gset:N = \g__nju_info_dept_tl ,
+ department* .tl_gset:N = \g__nju_info_dept_en_tl ,
+ major* .tl_gset:N = \g__nju_info_major_en_tl ,
+ field .tl_gset:N = \g__nju_info_field_tl ,
+ field* .tl_gset:N = \g__nju_info_field_en_tl ,
major .code:n =
{
\bool_if:NTF \g__nju_opt_academic_bool
- { \clist_pop:NN \l_keys_value_tl \g__nju_info_major_tl }
{
- \clist_pop:NN \l_keys_value_tl \g__nju_info_majorc_tl
- \clist_pop:NNF \l_keys_value_tl \g__nju_info_major_tl
- { \tl_set_eq:NN \g__nju_info_major_tl \g__nju_info_majorc_tl }
+ \clist_pop:NN \l_keys_value_tl \l__nju_tmpa_tl
+ \tl_gset_eq:NN \g__nju_info_major_tl \l__nju_tmpa_tl
+ }
+ {
+ \clist_pop:NN \l_keys_value_tl \l__nju_tmpa_tl
+ \tl_gset_eq:NN \g__nju_info_majorc_tl \l__nju_tmpa_tl
+ \clist_pop:NNTF \l_keys_value_tl \l__nju_tmpa_tl
+ { \tl_gset_eq:NN \g__nju_info_major_tl \l__nju_tmpa_tl }
+ { \tl_gset_eq:NN \g__nju_info_major_tl \g__nju_info_majorc_tl }
}
},
- supervisor .clist_set:N = \g__nju_info_supv_clist ,
- supervisor* .tl_set:N = \g__nju_info_supv_en_tl ,
- supervisor-ii .clist_set:N = \g__nju_info_supvii_clist ,
- supervisor-ii* .tl_set:N = \g__nju_info_supvii_en_tl ,
- chairman .tl_set:N = \g__nju_info_chairman_tl ,
- reviewer .clist_set:N = \g__nju_info_reviewer_clist ,
- clc .tl_set:N = \g__nju_info_clc_tl ,
- udc .tl_set:N = \g__nju_info_udc_tl ,
- secret-level .tl_set:N = \g__nju_info_secretlv_tl ,
- supervisor-contact .tl_set:N = \g__nju_info_supvcont_tl ,
- email .tl_set:N = \g__nju_info_email_tl ,
- school-code .tl_set:N = \g__nju_info_code_tl ,
+ supervisor .clist_gset:N = \g__nju_info_supv_clist ,
+ supervisor* .tl_gset:N = \g__nju_info_supv_en_tl ,
+ supervisor-ii .clist_gset:N = \g__nju_info_supvii_clist ,
+ supervisor-ii* .tl_gset:N = \g__nju_info_supvii_en_tl ,
+ chairman .tl_gset:N = \g__nju_info_chairman_tl ,
+ reviewer .clist_gset:N = \g__nju_info_reviewer_clist ,
+ clc .tl_gset:N = \g__nju_info_clc_tl ,
+ udc .tl_gset:N = \g__nju_info_udc_tl ,
+ secret-level .tl_gset:N = \g__nju_info_secretlv_tl ,
+ supervisor-contact .tl_gset:N = \g__nju_info_supvcont_tl ,
+ email .tl_gset:N = \g__nju_info_email_tl ,
+ school-code .tl_gset:N = \g__nju_info_code_tl ,
school-code .initial:n = { 10284 } ,
- degree .tl_set:N = \g__nju_info_degree_tl ,
- degree* .tl_set:N = \g__nju_info_degree_en_tl ,
+ degree .tl_gset:N = \g__nju_info_degree_tl ,
+ degree* .tl_gset:N = \g__nju_info_degree_en_tl ,
}
\clist_map_inline:nn { submit, defend, confer, bottom }
{
@@ -833,15 +863,15 @@
{ \keys_define:nn { nju / info } { #1 * .groups:n = { anonymous } } }
\__nju_at_begin_document:n
{
- \tl_set:Ne \g__nju_info_supvfull_tl
- { \clist_use:Nn \g__nju_info_supv_clist { \__nju_hskip: } }
+ \tl_gset:Ne \g__nju_info_supvfull_tl
+ { \clist_use:Nn \g__nju_info_supv_clist { \__nju_quad: } }
\clist_if_empty:NF \g__nju_info_supvii_clist
{
\bool_gset_true:N \g__nju_opt_supvii_bool
\tl_gput_right:Ne \g__nju_info_supvfull_tl
- { \__nju_quad: \clist_use:Nn \g__nju_info_supvii_clist { \__nju_hskip: } }
+ { \__nju_quad: \clist_use:Nn \g__nju_info_supvii_clist { \__nju_quad: } }
}
- \tl_set_eq:NN \g__nju_info_supvfull_en_tl \g__nju_info_supv_en_tl
+ \tl_gset_eq:NN \g__nju_info_supvfull_en_tl \g__nju_info_supv_en_tl
\tl_if_empty:NF \g__nju_info_supvii_en_tl
{
\tl_gput_right:Ne \g__nju_info_supvfull_en_tl
@@ -850,15 +880,27 @@
}
\bool_if:NT \g__nju_opt_anon_bool
{
- \tl_gclear:N \c__nju_name_nju_tl
- \tl_gclear:N \c__nju_name_nju_en_tl
+ \tl_clear:N \l__nju_name_nju_tl
+ \tl_clear:N \l__nju_name_nju_en_tl
+ }
+\tl_const:Nn \c__nju_path_macoffice_tl
+ { /Applications/Microsoft~ Word.app/Contents/Resources/DFonts/ }
+\sys_if_platform_windows:TF
+ { \tl_gset:Nn \g__nju_font_set_tl { win } }
+ {
+ \ctex_if_platform_macos:TF
+ {
+ \file_if_exist:nTF { \c__nju_path_macoffice_tl times.ttf }
+ { \tl_gset:Nn \g__nju_font_set_tl { macoffice } }
+ { \tl_gset:Nn \g__nju_font_set_tl { mac } }
+ }
+ { \tl_gset:Nn \g__nju_font_set_tl { fandol } }
}
-\ctex_detect_platform:
\tl_if_empty:NT \g__nju_font_latin_tl
- { \tl_gset_eq:NN \g__nju_font_latin_tl \g__ctex_fontset_tl }
+ { \tl_gset_eq:NN \g__nju_font_latin_tl \g__nju_font_set_tl }
\tl_if_empty:NT \g__nju_font_cjk_tl
- { \tl_gset_eq:NN \g__nju_font_cjk_tl \g__ctex_fontset_tl }
-\cs_new_protected:Npn \__nju_loadfont_latin:n #1
+ { \tl_gset_eq:NN \g__nju_font_cjk_tl \g__nju_font_set_tl }
+\cs_new:Npn \__nju_loadfont_latin:n #1
{
\__fontspec_main_setmainfont:nn { } { Times~New~Roman }
\__fontspec_main_setsansfont:nn { } { Arial }
@@ -876,6 +918,24 @@
{ \c__nju_name_gyrefeature_clist } { texgyretermes }
}
}
+\cs_new_protected:Npn \__nju_loadfont_latin_macoffice:
+ {
+ \__fontspec_main_setmainfont:nn
+ { \l__nju_name_macofficefeature_clist } { times }
+ \__fontspec_main_setsansfont:nn
+ { \l__nju_name_macofficefeature_clist } { arial }
+ \__fontspec_main_setmonofont:nn
+ { Scale = MatchLowercase } { Menlo }
+ }
+\clist_const:Nn \c__nju_name_macofficefeature_clist
+ {
+ Path = \c__nju_path_macoffice_tl,
+ Extension = .ttf,
+ UprightFont = *,
+ BoldFont = *bd,
+ ItalicFont = *i,
+ BoldItalicFont = *bi
+ }
\cs_new_protected:Npn \__nju_loadfont_latin_gyre:
{
\__fontspec_main_setmainfont:nn
@@ -890,6 +950,7 @@
}
{ texgyrecursor }
}
+\cs_new_eq:NN \__nju_loadfont_latin_fandol: \__nju_loadfont_latin_gyre:
\clist_const:Nn \c__nju_name_gyrefeature_clist
{
Extension = .otf,
@@ -909,6 +970,7 @@
\setCJKfamilyfont { zhhei } { SimHei } [#1]
\setCJKfamilyfont { zhfs } { FangSong } [#1]
\setCJKfamilyfont { zhkai } { KaiTi } [#1]
+ \__nju_stzhongs:n {#1}
}
\cs_new:Npn \__nju_loadfont_cjk_win:
{ \__nju_loadfont_cjk_win:N \c__nju_name_fakebold_tl }
@@ -928,6 +990,22 @@
\setCJKfamilyfont { zhfs } { STFangsong }
\setCJKfamilyfont { zhkai } { Kaiti~SC } [ BoldFont = Kaiti~SC~Bold ]
}
+\cs_new:Npn \__nju_loadfont_cjk_macoffice:n #1
+ {
+ \setCJKmainfont { Simsun.ttc } [ ItalicFont = Kaiti.ttf, #1 ]
+ \setCJKsansfont { SimHei.ttf } [#1]
+ \setCJKmonofont { Fangsong.ttf } [#1]
+ \setCJKfamilyfont { zhsong } { Simsun.ttc } [#1]
+ \setCJKfamilyfont { zhhei } { SimHei.ttf } [#1]
+ \setCJKfamilyfont { zhfs } { Fangsong.ttf } [#1]
+ \setCJKfamilyfont { zhkai } { Kaiti.ttf } [#1]
+ \__nju_stzhongs:nn { STZHONGS.ttf } {#1}
+ }
+\cs_new:Npn \__nju_loadfont_cjk_macoffice:
+ {
+ \__nju_loadfont_cjk_macoffice:n
+ { Path = \c__nju_path_macoffice_tl, \c__nju_name_fakebold_tl }
+ }
\cs_new_protected:Npn \__nju_loadfont_cjk_fandol:
{
\__nju_hide_no_script_msg:
@@ -1015,22 +1093,25 @@
ItalicFeatures = FakeSlant,
BoldItalicFeatures = FakeSlant
}
-\cs_new:Npn \__nju_loadfont_stzhongs:
+\cs_new:Npn \__nju_stzhongs:nn #1#2
+ { \newCJKfontfamily \__nju_stzhongs: {#1} [#2] }
+\cs_new:Npn \__nju_stzhongs:n { \__nju_stzhongs:nn { 华文中宋 } }
+\cs_new_protected:Npn \__nju_loadfont_stzhongs:
{
- \fontspec_font_if_exist:nTF { 华文中宋 }
+ \cs_if_exist_use:NF \__nju_stzhongs:
{
- \newCJKfontfamily \__nju_stzhongs: { 华文中宋 }
- [ \c__nju_name_fakebold_tl ]
- }
- {
- \bool_if:NTF \g__nju_font_path_bool
- {
- \newCJKfontfamily \__nju_stzhongs: { \c__nju_name_stzhongsfile_tl }
- [ Path = \g__nju_font_path_tl, \c__nju_name_fakebold_tl ]
- }
+ \fontspec_font_if_exist:nTF { 华文中宋 }
+ { \__nju_stzhongs:n { \c__nju_name_fakebold_tl } }
{
- \cs_set_eq:NN \__nju_stzhongs: \rmfamily
- \msg_warning:nn { njuthesis } { missing-stzhongs }
+ \bool_if:NTF \g__nju_font_path_bool
+ {
+ \__nju_stzhongs:nn { \l__nju_name_stzhongsfile_tl }
+ { Path = \g__nju_font_path_tl, \c__nju_name_fakebold_tl }
+ }
+ {
+ \cs_set_eq:NN \__nju_stzhongs: \rmfamily
+ \msg_warning:nn { njuthesis } { missing-stzhongs }
+ }
}
}
}
@@ -1131,9 +1212,6 @@
{ NewCMMono10 }
}
\__nju_cs_clear:N \__nju_loadfont_math_none:
-\cs_new_eq:NN \__nju_loadfont_latin_windows: \__nju_loadfont_latin_win:
-\cs_new_eq:NN \__nju_loadfont_latin_fandol: \__nju_loadfont_latin_gyre:
-\cs_new_eq:NN \__nju_loadfont_cjk_windows: \__nju_loadfont_cjk_win:
\cs_new_protected:Npn \__nju_loadfont:
{
\use:c { __nju_loadfont_latin_ \g__nju_font_latin_tl : }
@@ -1172,15 +1250,15 @@
\clist_new:N \g__nju_footer_clist
\ctex_at_end_preamble:n
{
- \clist_set_eq:Nc \g__nju_header_clist
- { g__nju_header_ \c__nju_name_pagemode_tl _clist }
- \clist_set_eq:Nc \g__nju_footer_clist
- { g__nju_footer_ \c__nju_name_pagemode_tl _clist }
+ \clist_gset_eq:Nc \g__nju_header_clist
+ { g__nju_header_ \g__nju_name_pagemode_tl _clist }
+ \clist_gset_eq:Nc \g__nju_footer_clist
+ { g__nju_footer_ \g__nju_name_pagemode_tl _clist }
}
\cs_new_protected:Npn \__nju_header:nn #1#2
- { \fancyhead [#1] { \c__nju_fmt_header_tl \nouppercase {#2} } }
+ { \fancyhead [#1] { \l__nju_fmt_header_tl \nouppercase {#2} } }
\cs_new_protected:Npn \__nju_footer:nn #1#2
- { \fancyfoot [#1] { \c__nju_fmt_footer_tl \nouppercase {#2} } }
+ { \fancyfoot [#1] { \l__nju_fmt_footer_tl \nouppercase {#2} } }
\fancypagestyle { plain }
{
\fancyhf { }
@@ -1207,30 +1285,29 @@
\RenewDocumentCommand \frontmatter { }
{
\cleardoublepage
- \exp_args:NV \pagestyle \c__nju_fmt_pagestyle_tl
+ \exp_args:NV \pagestyle \l__nju_fmt_pagestyle_tl
\pagenumbering { Roman }
}
\RenewDocumentCommand \mainmatter { }
{
\cleardoublepage
- \exp_args:NV \pagestyle \c__nju_fmt_pagestyle_tl
+ \exp_args:NV \pagestyle \l__nju_fmt_pagestyle_tl
\pagenumbering { arabic }
\normalfont \normalsize
}
\AtBeginEnvironment { document }
{
- \exp_args:NV \pagestyle \c__nju_fmt_pagestyle_tl
+ \exp_args:NV \pagestyle \l__nju_fmt_pagestyle_tl
\pagenumbering { Roman }
}
\cs_new:Npn \__nju_bookmark_toc:n #1
- { \addcontentsline { toc } { chapter } { \c__nju_fmt_chapterintoc_tl #1 } }
+ { \addcontentsline { toc } { chapter } { \l__nju_fmt_chapterintoc_tl #1 } }
\cs_generate_variant:Nn \__nju_bookmark_toc:n { V }
\cs_new:Npn \__nju_bookmark_toc:nn #1#2
{ \phantomsection \__nju_bookmark_toc:n {#1} }
-\cs_new:Npn \__nju_bookmark_pdf_nosec:nn #1#2
- { \pdfbookmark [0] {#1} {#2} }
-\cs_new:Npn \__nju_bookmark_pdf:nn #1#2
- { \phantomsection \__nju_bookmark_pdf_nosec:nn {#1} {#2} }
+\cs_new:Npn \__nju_bookmark_pdf_nosec:nn { \pdfbookmark [0] }
+\cs_new:Npn \__nju_bookmark_pdf:nn
+ { \phantomsection \__nju_bookmark_pdf_nosec:nn }
\cs_new:Npn \__nju_bookmark:Nnn #1#2#3
{
\bool_if:NTF #1
@@ -1256,24 +1333,24 @@
\NewDocumentCommand \njuchapter { m } { \__nju_chapter:n {#1} }
\keys_set:nn { ctex }
{
- chapter / beforeskip = \c__nju_chapterbefore_dim,
- chapter / afterskip = \c__nju_chapterafter_dim,
- chapter / format = \c__nju_fmt_chapter_tl,
- section / format = \c__nju_fmt_section_tl,
- subsection / format = \c__nju_fmt_subsection_tl,
- subsubsection / format = \c__nju_fmt_subsubsection_tl,
- paragraph / format = \c__nju_fmt_paragraph_tl,
- subparagraph / format = \c__nju_fmt_subparagraph_tl,
- contentsname = \c__nju_name_tableofcontents_tl,
- listfigurename = \c__nju_name_listoffigures_tl,
- listtablename = \c__nju_name_listoftables_tl,
- chapter / tocline = \c__nju_fmt_chapterintoc_tl \CTEXnumberline {#1} #2
+ chapter / beforeskip = \l__nju_chapterbefore_dim,
+ chapter / afterskip = \l__nju_chapterafter_dim,
+ chapter / format = \l__nju_fmt_chapter_tl,
+ section / format = \l__nju_fmt_section_tl,
+ subsection / format = \l__nju_fmt_subsection_tl,
+ subsubsection / format = \l__nju_fmt_subsubsection_tl,
+ paragraph / format = \l__nju_fmt_paragraph_tl,
+ subparagraph / format = \l__nju_fmt_subparagraph_tl,
+ contentsname = \l__nju_name_tableofcontents_tl,
+ listfigurename = \l__nju_name_listoffigures_tl,
+ listtablename = \l__nju_name_listoftables_tl,
+ chapter / tocline = \l__nju_fmt_chapterintoc_tl \CTEXnumberline {#1} #2
}
\cs_new_protected:Npn \__nju_make_toc:nn #1#2
{
\group_begin:
\keys_set:nn { ctex }
- { chapter/format = \c__nju_fmt_toctitle_tl }
+ { chapter/format = \l__nju_fmt_toctitle_tl }
\__nju_chapter:cnn { g__nju_ #2 _showentry_bool } {#1} {#2}
\group_end:
\@starttoc {#2}
@@ -1283,7 +1360,7 @@
{
\keys_define:nn { nju / #1 }
{
- toc-entry .bool_set:c = { g__nju_ #3 _showentry_bool },
+ toc-entry .bool_gset:c = { g__nju_ #3 _showentry_bool },
toc-entry .initial:n = true
}
\exp_args:Nc \RenewDocumentCommand {#1} { }
@@ -1300,8 +1377,8 @@
{
\bool_if:NF \g__nju_toc_showentry_bool
{
- \bool_set_false:N \g__nju_lof_showentry_bool
- \bool_set_false:N \g__nju_lot_showentry_bool
+ \bool_gset_false:N \g__nju_lof_showentry_bool
+ \bool_gset_false:N \g__nju_lot_showentry_bool
}
}
\keys_define:nn { nju / tableofcontents }
@@ -1336,10 +1413,7 @@
{ \clist_gput_right:Nn \g__nju_blx_option_clist { style = #1 } },
style .initial:n = numeric,
option .code:n =
- {
- \clist_gput_right:NV \g__nju_blx_option_clist
- \l_keys_value_tl
- },
+ { \clist_gput_right:NV \g__nju_blx_option_clist \l_keys_value_tl },
resource .code:n =
{ \clist_gput_right:NV \g__nju_blx_resource_clist \l_keys_value_tl },
}
@@ -1356,12 +1430,11 @@
}
\cs_new_protected:Npn \__nju_blx_post_setup:
{
- \defbibheading { njubibintoc } [ \bibname ] { \__nju_chapter:n { ##1 } }
+ \defbibheading { njubibintoc } [ \bibname ] { \__nju_chapter:n {##1} }
\tl_if_eq:NnTF \blx@refsecreset@level { 2 }
{ \DeclarePrintbibliographyDefaults { heading = subbibintoc } }
{ \DeclarePrintbibliographyDefaults { heading = njubibintoc } }
- \clist_map_inline:Nn \g__nju_blx_resource_clist
- { \addbibresource { ##1 } }
+ \clist_map_inline:Nn \g__nju_blx_resource_clist { \addbibresource {##1} }
}
\bool_if:NT \g__nju_opt_load_blx_bool
{
@@ -1372,24 +1445,28 @@
\__nju_blx_post_setup:
}
}
+\hypersetup
+ {
+ bookmarksnumbered = true,
+ psdextra = true,
+ unicode = true,
+ hidelinks
+ }
+\pdfstringdefDisableCommands
+ {
+ \clist_map_inline:nn
+ { \\, \quad, \qquad, \bigger }
+ { \__nju_cs_clear:N #1 }
+ \cs_set_eq:NN \zihao \use_none:n
+ }
\ctex_at_end_preamble:n
{
- \pdfstringdefDisableCommands
- {
- \clist_map_inline:nn
- { \\, \quad, \qquad, \bigger }
- { \__nju_cs_clear:N #1 }
- }
\hypersetup
{
- bookmarksnumbered = true,
- psdextra = true,
- unicode = true,
- hidelinks,
pdftitle = \g__nju_info_title_tl,
pdfauthor = \g__nju_info_author_tl,
pdfkeywords = \g__nju_info_keywords_clist,
- pdfcreator = \c__nju_name_pdfcreator_tl
+ pdfcreator = \l__nju_name_pdfcreator_tl
}
}
\cs_new:Npn \__nju_cref_name:n #1
@@ -1402,10 +1479,10 @@
\crefformat { section } { 第~#2#1#3~节 }
\crefformat { subsection } { 第~#2#1#3~小节 }
\crefformat { subsubsection } { 第~#2#1#3~小节 }
- \clist_map_inline:nn { figure, table, appendix, proof }
+ \clist_map_inline:nn { figure, table, appendix }
{ \__nju_cref_name:n {#1} }
}
-\clist_set:Nn \g__nju_fn_ctext_option_clist { charf = \scriptsize }
+\clist_gset:Nn \g__nju_fn_ctext_option_clist { charf = \scriptsize }
\keys_define:nn { nju / footnote }
{
style .choices:nn = { plain, pifont, circled, circled* }
@@ -1440,7 +1517,7 @@
\cs_set:Npn \__nju_fn_hang:
{
\int_set:Nn \tex_hangafter:D { 1 }
- \dim_set_eq:NN \tex_hangindent:D \c__nju_fnhang_dim
+ \dim_set_eq:NN \tex_hangindent:D \l__nju_fnhang_dim
}
},
hang / false .code:n = { \__nju_cs_clear:N \__nju_fn_hang: },
@@ -1463,7 +1540,7 @@
\cs_set:Npn \@makefntext #1
{
\mode_leave_vertical:
- \hbox_to_wd:nn { \c__nju_fnhang_dim } { \@thefnmark \tex_hfil:D }
+ \hbox_to_wd:nn { \l__nju_fnhang_dim } { \@thefnmark \tex_hfil:D }
\tex_penalty:D \@M
\__nju_fn_hang:
#1
@@ -1471,17 +1548,19 @@
}
\keys_define:nn { nju / image } { path .code:n = { \graphicspath {#1} } }
\DeclareGraphicsExtensions { .pdf, .eps, .jpg, .png }
-\BeforeBeginEnvironment { tabular } { \centering \c__nju_fmt_tabular_tl }
+\BeforeBeginEnvironment { tabular } { \centering \l__nju_fmt_tabular_tl }
\ctex_at_end_package:nn { tabularray }
{
\__tblr_use_lib_booktabs:
\tl_set:Nn \l__nju_tmpb_tl
- { , abovesep = 4 pt, stretch = 0.8, cells = { font = \c__nju_fmt_tabular_tl } }
+ { , abovesep = 4 pt, stretch = 0.8, cells = { font = \l__nju_fmt_tabular_tl } }
\tl_put_right:NV \l__tblr_default_tblr_inner_tl \l__nju_tmpb_tl
\tl_put_right:NV \l__tblr_default_talltblr_inner_tl \l__nju_tmpb_tl
- \tl_put_right:Nn \l__tblr_default_talltblr_outer_tl { , headsep = -4 pt }
+ \tl_put_right:NV \l__tblr_default_longtblr_inner_tl \l__nju_tmpb_tl
+ \tl_put_right:Nn \l__tblr_default_talltblr_outer_tl { , headsep = 12.63 pt }
+ \tl_put_right:Nn \l__tblr_default_longtblr_outer_tl { , headsep = 12.63 pt }
\DefTblrTemplate { caption-tag } { default }
- { \c__nju_name_table_tl \hspace { 0.25em } \thetable }
+ { \l__nju_name_table_tl \hspace { 0.25em } \thetable }
\DefTblrTemplate { caption-sep } { default } { \quad }
\DefTblrTemplate { firsthead } { caption }
{
@@ -1491,11 +1570,11 @@
\SetTblrTemplate { firsthead } { caption }
\SetTblrStyle { caption } { font = \normalfont \bfseries \small }
\SetTblrStyle { note } { font = \normalfont \footnotesize }
+ \SetTblrStyle { remark } { font = \normalfont \footnotesize }
}
\DeclareCaptionStyle{njucap}
{
- font = small,
- font += bf,
+ font = {small, bf},
labelsep = quad,
justification = centering
}
@@ -1506,7 +1585,7 @@
{
\keys_define:nn { nju / label-sep }
{
- #1 .tl_set:c = { g__nju_sep_ #1 _tl },
+ #1 .tl_gset:c = { g__nju_sep_ #1 _tl },
#1 .initial:n = { - }
}
\__nju_at_begin_document:n
@@ -1598,8 +1677,8 @@
\bool_new:N \g__nju_opt_math_leq_bool
\bool_new:N \g__nju_opt_math_vec_bool
\bool_if:NTF \g__nju_opt_load_um_bool
- { \tl_set_eq:NN \c__nju_name_integral_tl \l__um_nolimits_tl }
- { \tl_set_eq:NN \c__nju_name_integral_tl \c_empty_tl }
+ { \tl_set_eq:NN \l__nju_name_integral_tl \l__um_nolimits_tl }
+ { \tl_set_eq:NN \l__nju_name_integral_tl \c_empty_tl }
\bool_if:NTF \g__nju_opt_load_um_bool
{ \cs_new:Npn \__nju_um_setup:n #1 { \keys_set:nn { unicode-math } {#1} } }
{ \cs_new_eq:NN \__nju_um_setup:n \use_none:n }
@@ -1607,19 +1686,19 @@
{
integral .choice:,
integral / upright .code:n =
- { \bool_set_true:N \g__nju_opt_math_int_bool },
+ { \bool_gset_true:N \g__nju_opt_math_int_bool },
integral / slanted .code:n =
- { \bool_set_false:N \g__nju_opt_math_int_bool },
+ { \bool_gset_false:N \g__nju_opt_math_int_bool },
integral-limits .choice:,
integral-limits / true .code:n =
{ \tl_clear:N \l__um_nolimits_tl },
integral-limits / false .code:n =
- { \tl_set_eq:NN \l__um_nolimits_tl \c__nju_name_integral_tl },
+ { \tl_set_eq:NN \l__um_nolimits_tl \l__nju_name_integral_tl },
less-than-or-equal .choice:,
less-than-or-equal / slanted .code:n =
- { \bool_set_true:N \g__nju_opt_math_leq_bool },
+ { \bool_gset_true:N \g__nju_opt_math_leq_bool },
less-than-or-equal / horizontal .code:n =
- { \bool_set_false:N \g__nju_opt_math_leq_bool },
+ { \bool_gset_false:N \g__nju_opt_math_leq_bool },
math-ellipsis .choice:,
math-ellipsis / centered .code:n =
{
@@ -1640,9 +1719,9 @@
{ \bool_set_false:N \g__nju_opt_math_re_bool },
vector .choice:,
vector / boldfont .code:n =
- { \bool_set_true:N \g__nju_opt_math_vec_bool },
+ { \bool_gset_true:N \g__nju_opt_math_vec_bool },
vector / arrow .code:n =
- { \bool_set_false:N \g__nju_opt_math_vec_bool },
+ { \bool_gset_false:N \g__nju_opt_math_vec_bool },
uppercase-greek .choice:,
uppercase-greek / upright .code:n =
{ \__nju_um_setup:n { math-style = ISO } },
@@ -1751,60 +1830,58 @@
\pagenumbering { gobble }
\__nju_make_cover:
}
- \bool_if:NF \g__nju_opt_draft_bool
- {
- \bool_if:NT \g__nju_opt_decl_bool
- {
- \__nju_make_decl_i:
- \__nju_make_decl_ii:
- }
- }
+ \tl_gremove_all:Nn \g__nju_info_title_tl { \\ }
+ \tl_gremove_all:Nn \g__nju_info_title_en_tl { \\ }
+ \bool_lazy_and:nnT
+ { ! \g__nju_opt_draft_bool }
+ { \g__nju_opt_decl_bool }
+ { \__nju_make_decl_i: \__nju_make_decl_ii: }
\cleardoublepage
- \exp_args:NV \pagestyle \c__nju_fmt_pagestyle_tl
+ \exp_args:NV \pagestyle \l__nju_fmt_pagestyle_tl
\pagenumbering { Roman }
}
-\cs_new_protected:Npn \__nju_print_keywords:nn #1#2
+\cs_new_protected:Npn \__nju_print_keywords:nn
+ { \__nju_print_keywords:NNnn \l__nju_tmpa_tl \l__nju_tmpa_dim }
+\cs_new:Npn \__nju_print_keywords:NNnn #1#2#3#4
{
- \tl_set:Nv \l__nju_tmpa_tl { c__nju_name_keywords #1 _tl }
- \exp_args:NNv \tl_put_left:Nn
- \l__nju_tmpa_tl { c__nju_fmt_abslabel #1 _tl }
- \exp_args:NNv \tl_put_right:Nn
- \l__nju_tmpa_tl { c__nju_name_colon #1 _tl }
- \__nju_get_width:NV \l__nju_tmpa_dim \l__nju_tmpa_tl
- \list { \l__nju_tmpa_tl }
+ \tl_set:Nv #1 { l__nju_name_keywords #3 _tl }
+ \exp_args:NNv \tl_put_left:Nn #1 { l__nju_fmt_abslabel #3 _tl }
+ \exp_args:NNv \tl_put_right:Nn #1 { l__nju_name_colon #3 _tl }
+ \__nju_get_width:NV #2 #1
+ \list {#1}
{
- \labelwidth \l__nju_tmpa_dim
+ \labelwidth #2
\labelsep \c_zero_dim
\leftmargin \c_zero_dim
\rightmargin \c_zero_dim
- \advance \leftmargin \l__nju_tmpa_dim
+ \advance \leftmargin #2
\__nju_cs_clear:N \makelabel
}
- \item \clist_use:cn { g__nju_info_keywords #1 _clist } {#2}
+ \item \clist_use:cn { g__nju_info_keywords #3 _clist } {#4}
\endlist
}
\skip_new:N \g__nju_abs_title_left_skip
\keys_define:nn { nju / abstract }
{
- toc-entry .bool_set:N = \g__nju_abs_showentry_bool,
+ toc-entry .bool_gset:N = \g__nju_abs_showentry_bool,
toc-entry .initial:n = true,
- underline .bool_set:N = \g__nju_abs_underline_bool,
+ underline .bool_gset:N = \g__nju_abs_underline_bool,
underline .initial:n = true,
title-style .choice:,
title-style / strict .code:n =
{
- \bool_set_true:N \g__nju_abs_title_strict_bool
- \skip_set:Nn \g__nju_abs_title_left_skip { .5 em }
+ \bool_gset_true:N \g__nju_abs_title_strict_bool
+ \skip_gset:Nn \g__nju_abs_title_left_skip { .5 em }
},
title-style / centered .code:n =
{
- \bool_set_true:N \g__nju_abs_title_strict_bool
- \skip_set:Nn \g__nju_abs_title_left_skip { .5 em plus 1 fill }
+ \bool_gset_true:N \g__nju_abs_title_strict_bool
+ \skip_gset:Nn \g__nju_abs_title_left_skip { .5 em plus 1 fill }
},
title-style / natural .code:n =
{
- \bool_set_false:N \g__nju_abs_title_strict_bool
- \skip_set:Nn \g__nju_abs_title_left_skip { .5 em plus 1 fill }
+ \bool_gset_false:N \g__nju_abs_title_strict_bool
+ \skip_gset:Nn \g__nju_abs_title_left_skip { .5 em plus 1 fill }
},
title-style .initial:n = strict
}
@@ -1812,7 +1889,7 @@
{
\cleardoublepage
\thispagestyle { plain }
- \__nju_abs_bookmark:Vn \c__nju_name_abstracta_tl { abstract }
+ \__nju_abs_bookmark:Vn \l__nju_name_abstracta_tl { abstract }
\tl_gremove_all:Nn \g__nju_info_title_tl { \\ }
\__nju_make_abstract:
\group_begin: \kaishu \zihao { -4 } #1
@@ -1822,34 +1899,34 @@
{
\cleardoublepage
\thispagestyle { plain }
- \__nju_abs_bookmark:Vn \c__nju_name_abstracta_en_tl { abstract-en }
+ \__nju_abs_bookmark:Vn \l__nju_name_abstracta_en_tl { abstract-en }
\tl_gremove_all:Nn \g__nju_info_title_en_tl { \\ }
\__nju_make_abstract_en:
\group_begin: \zihao { -4 } #1
}
{ \__nju_print_keywords:nn { _en } { ;~ } \group_end: }
\NewDocumentEnvironment { preface } { +b }
- { \__nju_chapter:V \c__nju_name_preface_tl #1 }
+ { \__nju_chapter:V \l__nju_name_preface_tl #1 }
{ \cleardoublepage }
\NewDocumentEnvironment { acknowledgement } { +b }
{
\bool_if:NTF \g__nju_opt_anon_bool
- { \__nju_bookmark_toc:V \c__nju_name_acknowledgementa_tl }
- { \__nju_chapter:V \c__nju_name_acknowledgement_tl #1 }
+ { \__nju_bookmark_toc:V \l__nju_name_acknowledgementa_tl }
+ { \__nju_chapter:V \l__nju_name_acknowledgement_tl #1 }
}
{ \cleardoublepage }
\NewDocumentCommand \njupaperlist
- { O { \c__nju_name_paperlist_tl } m }
+ { O { \l__nju_name_paperlist_tl } m }
{
\group_begin:
\RenewDocumentCommand \mkbibnamegiven { m }
{ \ifitemannotation { thesisauthor }
- { \njuline { \bf ##1 } } { ##1 } }
+ { \njuline { \bf ##1 } } {##1} }
\RenewDocumentCommand \mkbibnamefamily { m }
{ \ifitemannotation { thesisauthor }
- { \njuline { \bf ##1 } } { ##1 } }
+ { \njuline { \bf ##1 } } {##1} }
\RenewDocumentCommand \mkbibdateshort { m m m }
- { \textbf { \thefield { ##1 } } }
+ { \textbf { \thefield {##1} } }
\newrefsection
\nocite {#2}
\printbibliography [ heading = subbibliography, title = #1 ]
@@ -1874,13 +1951,13 @@
}
\NewDocumentEnvironment { notation } { O { 10 em } O { 5 em } }
{
- \__nju_chapter:V \c__nju_name_notation_tl
+ \__nju_chapter:V \l__nju_name_notation_tl
\__nju_make_notation:nn {#1} {#2}
}
{ \endlist \cleardoublepage }
\NewDocumentEnvironment { notation* } { O { 10 em } O { 5 em } }
{
- \chapter * { \c__nju_name_notation_tl }
+ \chapter * { \l__nju_name_notation_tl }
\__nju_make_notation:nn {#1} {#2}
}
{ \endlist \cleardoublepage }