texlive[74786] Master/texmf-dist: sjtutex (29mar25)

commits+karl at tug.org commits+karl at tug.org
Sat Mar 29 20:42:08 CET 2025


Revision: 74786
          https://tug.org/svn/texlive?view=revision&revision=74786
Author:   karl
Date:     2025-03-29 20:42:08 +0100 (Sat, 29 Mar 2025)
Log Message:
-----------
sjtutex (29mar25)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/sjtutex/sjtutex.pdf
    trunk/Master/texmf-dist/source/latex/sjtutex/sjtutex.dtx
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-adobe.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-fandol.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-founder.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-hanyi.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-mac.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-ubuntu.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-windows.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-cambria.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-libertinus.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-lm.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-newcm.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-newpx.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-newtx.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-stixtwo.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-times.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-xits.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-cambria.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-libertinus.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-lm.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-newcm.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-newpx.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-newtx.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-stixtwo.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-times.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-xits.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-de.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-en.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-ja.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-zh.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-de.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-en.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-ja.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-zh.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/sjtuarticle.cls
    trunk/Master/texmf-dist/tex/latex/sjtutex/sjtureport.cls
    trunk/Master/texmf-dist/tex/latex/sjtutex/sjtuthesis.cls
    trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-de.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-en.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-ja.def
    trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-zh.def

Modified: trunk/Master/texmf-dist/doc/latex/sjtutex/sjtutex.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/sjtutex/sjtutex.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/sjtutex/sjtutex.dtx	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/source/latex/sjtutex/sjtutex.dtx	2025-03-29 19:42:08 UTC (rev 74786)
@@ -185,7 +185,7 @@
     Please update your TeX distribution}{}}
 %</class>
 %<*!(driver|install)>
-%<+!driver>\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+%<+!driver>\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
 %<class&thesis>  {Thesis document class for Shanghai Jiao Tong University (SJTUTeX)}
 %<class&thesis>\ProvidesExplClass{sjtuthesis}
 %<class&report>  {Report document class for Shanghai Jiao Tong University (SJTUTeX)}
@@ -266,7 +266,7 @@
 %<font&cjk&founder>\ProvidesExplFile{sjtu-cjk-font-founder.def}
 %<font&cjk&hanyi>  {Hanyi CJK fonts definition (SJTUTeX)}
 %<font&cjk&hanyi>\ProvidesExplFile{sjtu-cjk-font-hanyi.def}
-%<!driver>  {\ExplFileDate}{2.2}{\ExplFileDescription}
+%<!driver>  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 %</!(driver|install)>
 %
 %<*driver>
@@ -274,7 +274,7 @@
 \documentclass{ctxdoc}
 \newcommand{\sjtutex}{SJTU\TeX}
 \expandafter\def\csname ver@\jobname.dtx\endcsname
-  {2025/02/12 v2.2 SJTUTeX}
+  {2025/03/29 v2.2.1 SJTUTeX}
 \usepackage{float}
 \usepackage{multirow}
 \usepackage{longtable}
@@ -1345,13 +1345,14 @@
 %   \end{itemize}
 % \end{function}
 %
-% \begin{function}[rEXP,updated=2024-12-21]{\copyrightpage}
+% \begin{function}[rEXP,updated=2025-03-22]{\copyrightpage}
 %   \begin{syntax}
 %     \TNA{copyrightpage}
-%     \TNA{copyrightpage}\oarg{file=授权书扫描件,额外选项}
+%     \TNA{copyrightpage}\oarg{file=授权书扫描件,variant=<a|b>,额外选项}
 %   \end{syntax}
 %   生成空白版权使用授权书。
-%   接受可选参数用于插入版权使用授权书扫描件,插入外置 PDF 页时需要手动加载 \pkg{pdfpages} 宏包。
+%   接受可选参数 \opt{file} 用于插入版权使用授权书扫描件,插入外置 PDF 页时需要手动加载 \pkg{pdfpages} 宏包。
+%   接受可选参数 \opt{variant} 用于选择版权使用授权书的文本变种,\opt{a} 为硕士及博士学位论文的默认变种,\opt{b} 为学士学位论文的默认变种。
 %   额外选项将传递给 \tn{includepdf} 命令。
 % \end{function}
 %
@@ -1566,7 +1567,6 @@
 %       \item \pkg{fancyhdr},处理页眉页脚。
 %       \item \pkg{titletoc},设置目录格式。
 %       \item \pkg{caption}、\cls{bicaption} 和 \cls{subcaption},用于设置题注。
-%       \item \pkg{xcolor},提供彩色支持。
 %       \item \pkg{graphicx},提供图形插入的接口。
 %       \item \pkg{enumitem},设置列表环境格式。
 %     \end{itemize}
@@ -2192,6 +2192,7 @@
 %<article>\LoadClass { ctexart }
 %    \end{macrocode}
 %
+% \changes{v2.2.1}{2025/03/27}{不再自动载入 \pkg{xcolor} 宏包。}
 % 载入各宏包。
 %    \begin{macrocode}
 \RequirePackage
@@ -2204,7 +2205,6 @@
     caption,
     bicaption,
     subcaption,
-    xcolor,
     graphicx,
     enumitem
   }
@@ -3255,13 +3255,11 @@
 %    \begin{macrocode}
 \geometry
   {
-    top           = 3.5 cm,
-    bottom        = 4.0 cm,
-    left          = 2.5 cm,
-    right         = 2.5 cm,
-%<thesis>    bindingoffset = 0.5 cm,
-    headheight    = 1.5 cm,
-    headsep       = 0.5 cm,
+    vmargin       = { 3.5 cm , 4.0 cm } ,
+    hmargin       = 2.5 cm ,
+%<thesis>    bindingoffset = 0.5 cm ,
+    headheight    = 1.5 cm ,
+    headsep       = 0.5 cm ,
     footskip      = 1.0 cm
   }
 %    \end{macrocode}
@@ -3961,7 +3959,16 @@
 %    \end{macrocode}
 % \end{macro}
 %
+% \changes{v2.2.1}{2025/03/27}{新增语言设置钩子。}
+% 语言设置钩子。
 %    \begin{macrocode}
+%<zh>\NewHook { sjtutex / lang / zh }
+%<en>\NewHook { sjtutex / lang / en }
+%<de>\NewHook { sjtutex / lang / de }
+%<ja>\NewHook { sjtutex / lang / ja }
+%    \end{macrocode}
+%
+%    \begin{macrocode}
 \keys_define:nn { sjtu / private }
   {
 %<zh>    lang / zh .code:n =
@@ -3970,16 +3977,13 @@
 %<ja>    lang / ja .code:n =
       {
         \tl_set_eq:NN \l_@@_lang_tl \l_keys_value_tl
-%<zh>        \tl_set:Nn \languagename { chinese }
-%<en>        \tl_set:Nn \languagename { english }
-%<de>        \tl_set:Nn \languagename { ngerman }
-%<ja>        \tl_set:Nn \languagename { japanese }
 %<zh>        \@@_set_cjk_default_zh:
 %<ja>        \@@_set_cjk_default_ja:
         \normalfont
-%<zh>        \ctex_set:n { autoindent = true }
-%<en|de>        \ctex_set:n { autoindent = 1.5 em }
-%<ja>        \ctex_set:n { autoindent = 1 }
+%<zh>        \UseHook { sjtutex / lang / zh }
+%<en>        \UseHook { sjtutex / lang / en }
+%<de>        \UseHook { sjtutex / lang / de }
+%<ja>        \UseHook { sjtutex / lang / ja }
       } ,
 %<zh>    zh .meta:n = { lang = zh } ,
 %<zh>    zh .groups:n = { lang }
@@ -3992,6 +3996,22 @@
   }
 %    \end{macrocode}
 %
+%    \begin{macrocode}
+%<zh>\AddToHook { sjtutex / lang / zh }
+%<en>\AddToHook { sjtutex / lang / en }
+%<de>\AddToHook { sjtutex / lang / de }
+%<ja>\AddToHook { sjtutex / lang / ja }
+  {
+%<zh>    \tl_set:Nn \languagename { chinese }
+%<en>    \tl_set:Nn \languagename { english }
+%<de>    \tl_set:Nn \languagename { ngerman }
+%<ja>    \tl_set:Nn \languagename { japanese }
+%<zh>    \ctex_set:n { autoindent = true }
+%<en|de>    \ctex_set:n { autoindent = 1.5 em }
+%<ja>    \ctex_set:n { autoindent = 1 }
+  }
+%    \end{macrocode}
+%
 % \begin{macro}[int]{\@@_title_case_aux_zh:n,\@@_title_case_aux_en:n,
 % \@@_title_case_aux_de:n,\@@_title_case_aux_ja:n}
 % 设置标题大小写转换的辅助命令。
@@ -4210,27 +4230,27 @@
 %<de>\keys_define:nn { sjtu / info / de }
 %<ja>\keys_define:nn { sjtu / info / ja }
   {
-    subject          .initial:e =
+    subject          .initial:n =
       {
 %<*zh>
-        \exp_not:V \c_@@_name_univ_zh_tl
-        \exp_not:V \c_@@_name_degree_level_zh_tl
-        \exp_not:V \c_@@_name_thesis_zh_tl
+        \c_@@_name_univ_zh_tl
+        \c_@@_name_degree_level_zh_tl
+        \c_@@_name_thesis_zh_tl
 %</zh>
 %<*en>
-        A~ Dissertation~ Submitted~ to \exp_not:N \\
-        { \exp_not:V \c_@@_name_univ_en_tl }~ for~
-        the~ Degree~ of~ { \exp_not:V \c_@@_name_degree_level_en_tl }
+        A~ Dissertation~ Submitted~ to \\
+        { \c_@@_name_univ_en_tl }~ for~
+        the~ Degree~ of~ { \c_@@_name_degree_level_en_tl }
 %</en>
 %<*de>
-        Eine~ Dissertation~ Eingereicht~ an \exp_not:N \\
-        der~ { \exp_not:V \c_@@_name_univ_de_tl }~ für~
-        { \exp_not:V \c_@@_name_degree_level_de_tl } titel
+        Eine~ Dissertation~ Eingereicht~ an \\
+        der~ { \c_@@_name_univ_de_tl }~ für~
+        { \c_@@_name_degree_level_de_tl } titel
 %</de>
 %<*ja>
-        \exp_not:V \c_@@_name_univ_ja_tl
-        \exp_not:V \c_@@_name_degree_level_ja_tl
-        \exp_not:V \c_@@_name_thesis_ja_tl
+        \c_@@_name_univ_ja_tl
+        \c_@@_name_degree_level_ja_tl
+        \c_@@_name_thesis_ja_tl
 %</ja>
       }
   }
@@ -4667,6 +4687,7 @@
     bookmark : tokenlist ,
     style    : tokenlist = empty ,
     format   : tokenlist = \linespread { } \selectfont ,
+    precode  : tokenlist ,
     prefix   : tokenlist ,
     elements : commalist
   }
@@ -4675,6 +4696,7 @@
     bookmark = \l_@@_page_bookmark_tl ,
     style    = \l_@@_page_style_tl ,
     format   = \l_@@_page_format_tl ,
+    precode  = \l_@@_page_precode_tl ,
     prefix   = \l_@@_page_prefix_tl ,
     elements = \l_@@_page_elements_clist
   }
@@ -4681,20 +4703,22 @@
   {
     \tl_set_eq:NN \l_@@_page_bookmark_tl \c_novalue_tl
     \AssignTemplateKeys
+    \legacy_if:nTF { @openright }
+      { \cleardoublepage } { \clearpage }
+    \l_@@_page_precode_tl
+    \exp_args:No \thispagestyle { \l_@@_page_style_tl }
     \group_begin:
       \@@_select_language:n {#1}
       \clist_gset_eq:Nc \l_@@_info_fund_clist
         { l_@@_info_fund_ \l_@@_lang_tl _clist }
-      \legacy_if:nTF { @openright }
-        { \cleardoublepage } { \clearpage }
       \exp_args:No \tl_if_novalue:nF { \l_@@_page_bookmark_tl }
         { \@@_pdf_bookmark:nn { 0 } { \l_@@_page_bookmark_tl } }
-      \exp_args:No \thispagestyle { \l_@@_page_style_tl }
       \l_@@_page_format_tl
       \clist_map_inline:Nn \l_@@_page_elements_clist
         { \UseInstance { sjtu / element } { \l_@@_page_prefix_tl / ##1 } }
+      \clearpage
     \group_end:
-    \clearpage
+    \restoregeometry
   }
 %    \end{macrocode}
 %
@@ -4924,28 +4948,44 @@
 % \begin{macro}{\maketitle}
 % 生成标题页。
 %    \begin{macrocode}
-%<*class>
-%<*thesis>
+%<*class&thesis>
 \RenewDocumentCommand \maketitle { }
   {
     \clist_map_inline:Nn \g_@@_lang_clist
       { \UseInstance { sjtu / page } { title / ##1 } { ##1 } }
   }
+%</class&thesis>
 %    \end{macrocode}
 % \end{macro}
 %
 % \subsubsection{原创性声明及使用授权书}
 %
+% \changes{v2.2.1}{2025/03/22}{添加原创性声明变体。}
+%
 % 声明及授权书文本。
 %    \begin{macrocode}
-\tl_const:Nn \c_@@_orig_decl_text_zh_tl
+%<*thesis-i18n&zh>
+\tl_const:Nn \c_@@_orig_decl_text_a_zh_tl
   {
     本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工
-    作所取得的成果。除文中已经注明引用的内容外,本论文不包含任何其他个人
-    或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集
-    体,均已在文中以明确方式标明。本人完全知晓本声明的法律后果由本人承
-    担。
+    作所取得的成果。
+    除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或
+    撰写过的作品成果。
+    对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
+    本人完全知晓本声明的法律后果由本人承担。
   }
+\tl_const:Nn \c_@@_orig_decl_text_b_zh_tl
+  {
+    本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工
+    作所取得的成果。
+    除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或
+    撰写过的作品成果。
+    对本文的研究做出重要贡献的个人和集体,已在文中以适当方式予以致谢。
+    若在论文撰写过程中使用了人工智能工具,本人已遵循《上海交通大学关于在
+    教育教学中使用~ AI~ 的规范》,确保人工智能生成内容的应用场景、引用范
+    围及标注方式均符合规定,并杜绝学术不端行为。
+    本人完全知晓本声明的法律后果由本人承担。
+  }
 \tl_const:Nn \c_@@_auth_decl_text_zh_tl
   {
     本人同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许
@@ -4983,10 +5023,13 @@
     \parbox [ t ] { 12 em }
       { #1 \c_@@_signature_text_zh_tl }
   }
+%</thesis-i18n&zh>
 %    \end{macrocode}
 %
 % 声明及授权书元素实例。
 %    \begin{macrocode}
+%<*class>
+%<*thesis>
 \clist_map_inline:nn
   {
     { orig / title }
@@ -5005,7 +5048,6 @@
     { orig / text  }
       {
         format      = \zihao { -4 } \setbaselineskip { 24 bp } ,
-        content     = \c_@@_orig_decl_text_zh_tl ,
         bottom-skip = 24 bp ,
         align       = normal
       },
@@ -5015,9 +5057,9 @@
         content     =
           {
             \@@_signature:N \c_@@_name_decl_author_zh_tl
-            \skip_horizontal:n { 4 em } \hbox:n { }
+            \skip_horizontal:n { 2 em } \hbox:n { }
           } ,
-        bottom-skip = \c_zero_dim plus 2 fill ,
+        bottom-skip = 24 bp plus 1 fill ,
         align       = right
       },
     { auth / title }
@@ -5048,7 +5090,6 @@
             \@@_signature:N \c_@@_name_decl_author_zh_tl
             \hfill
             \@@_signature:N \c_@@_name_decl_supervisor_zh_tl
-            \skip_horizontal:n { 2 em } \hbox:n { }
           } ,
         bottom-skip = \c_zero_dim plus 1 fill ,
         align       = normal
@@ -5063,9 +5104,14 @@
 %    \begin{macrocode}
 \@@_declare_page_instance:nnn { copyright }
   {
-    bookmark = \tl_use:c { c_@@_name_declaration_ \g_@@_lang_tl _tl } ,
-    prefix   = copyright ,
-    elements =
+    bookmark  = \tl_use:c { c_@@_name_declaration_ \g_@@_lang_tl _tl } ,
+    precode   = \newgeometry
+                  {
+                    margin        = 3.0 cm ,
+                    bindingoffset = 0.5 cm
+                  } ,
+    prefix    = copyright ,
+    elements  =
       {
         orig / title, orig / text, orig / sign,
         auth / title, auth / text, auth / sign
@@ -5084,7 +5130,16 @@
   {
     file .tl_set:N = \l_@@_copyright_page_file_tl ,
     file .value_required:n = true ,
-    filename .meta:n = { file = #1 }
+    filename .meta:n = { file = #1 } ,
+    variant .choice: ,
+    variant .choices:nn =
+      { a, b }
+      {
+        \EditInstance { sjtu / element } { copyright / orig / text }
+          { content = \tl_use:c { c_@@_orig_decl_text_ #1 _zh_tl } }
+      } ,
+    variant  .initial:e = \int_compare:nNnTF { \g_@@_thesis_type_int } > { 1 }
+                            { a } { b }
   }
 %    \end{macrocode}
 %
@@ -5114,7 +5169,8 @@
                 {
                   \legacy_if:nTF { @openright }
                     { \cleardoublepage } { \clearpage }
-                  \@@_pdf_bookmark:nn { 0 } { \c_@@_name_declaration_tl }
+                  \exp_args:Nnv \@@_pdf_bookmark:nn
+                    { 0 } { c_@@_name_declaration_ \g_@@_lang_tl _tl }
                   \tl_set_rescan:NnV \l_@@_tmp_tl { } \l_@@_tmp_tl
                   \exp_args:NNo \includepdf [ \l_@@_tmp_tl ]
                     { \l_@@_copyright_page_file_tl }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-adobe.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-adobe.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-adobe.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Adobe CJK fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-cjk-font-adobe.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \__sjtu_if_main_lang_ja:TF

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-fandol.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-fandol.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-fandol.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Fandol CJK fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-cjk-font-fandol.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \__sjtu_if_main_lang_ja:TF

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-founder.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-founder.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-founder.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Founder CJK fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-cjk-font-founder.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \__sjtu_if_main_lang_ja:TF

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-hanyi.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-hanyi.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-hanyi.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Hanyi CJK fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-cjk-font-hanyi.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \__sjtu_if_main_lang_ja:TF

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-mac.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-mac.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-mac.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {macOS CJK fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-cjk-font-mac.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \__sjtu_if_main_lang_ja:TF

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-ubuntu.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-ubuntu.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-ubuntu.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Ubuntu CJK fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-cjk-font-ubuntu.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \__sjtu_if_main_lang_ja:TF

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-windows.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-windows.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-cjk-font-windows.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Windows CJK fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-cjk-font-windows.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \__sjtu_if_main_lang_ja:TF

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-cambria.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-cambria.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-cambria.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Cambria math fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-math-font-cambria.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \RequirePackage { unicode-math }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-libertinus.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-libertinus.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-libertinus.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Libertinus math fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-math-font-libertinus.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \RequirePackage { unicode-math }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-lm.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-lm.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-lm.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Latin Modern math fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-math-font-lm.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \RequirePackage { amssymb, upgreek }
 \SetSymbolFont { operators    } { normal } { OT1 } { lmr  } { m  } { n  }
 \SetSymbolFont { letters      } { normal } { OML } { lmm  } { m  } { it }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-newcm.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-newcm.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-newcm.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {New Computer Modern math fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-math-font-newcm.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \RequirePackage { unicode-math }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-newpx.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-newpx.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-newpx.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {New PX math fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-math-font-newpx.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \tl_set_eq:NN \l__sjtu_save_encodingdefault_tl \encodingdefault
 \tl_set_eq:NN \l__sjtu_save_rmdefault_tl \rmdefault
 \tl_set_eq:NN \l__sjtu_save_sfdefault_tl \sfdefault

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-newtx.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-newtx.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-newtx.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {New TX math fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-math-font-newtx.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \tl_set_eq:NN \l__sjtu_save_encodingdefault_tl \encodingdefault
 \tl_set_eq:NN \l__sjtu_save_rmdefault_tl \rmdefault
 \tl_set_eq:NN \l__sjtu_save_sfdefault_tl \sfdefault

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-stixtwo.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-stixtwo.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-stixtwo.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {STIX Two math fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-math-font-stixtwo.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \RequirePackage { unicode-math }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-times.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-times.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-times.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Times math fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-math-font-times.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \PassOptionsToPackage { Symbol } { upgreek }
 \RequirePackage { amssymb, upgreek }
 \tl_set_eq:NN \l__sjtu_save_rmdefault_tl \rmdefault

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-xits.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-xits.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-math-font-xits.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {XITS math fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-math-font-xits.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \RequirePackage { unicode-math }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-cambria.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-cambria.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-cambria.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Cambria text fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-text-font-cambria.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \setmainfont { Cambria }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-libertinus.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-libertinus.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-libertinus.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Libertinus text fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-text-font-libertinus.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \setmainfont

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-lm.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-lm.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-lm.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Latin Modern text fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-text-font-lm.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:F
   {
     \tl_set:Nn \encodingdefault { T1 }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-newcm.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-newcm.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-newcm.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {New Computer Modern text fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-text-font-newcm.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \setmainfont

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-newpx.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-newpx.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-newpx.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {New PX text fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-text-font-newpx.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \setmainfont

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-newtx.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-newtx.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-newtx.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {New TX text fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-text-font-newtx.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \setmainfont

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-stixtwo.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-stixtwo.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-stixtwo.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {STIX Two text fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-text-font-stixtwo.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \setmainfont

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-times.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-times.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-times.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Times text fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-text-font-times.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \setmainfont { Times~New~Roman } [ Ligatures = Rare ]

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-xits.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-xits.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/font/sjtu-text-font-xits.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {XITS text fonts definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-text-font-xits.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_if_engine_opentype:TF
   {
     \setmainfont

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-de.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-de.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-de.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,22 +21,27 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {German specific definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-lang-de.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
+\NewHook { sjtutex / lang / de }
 \keys_define:nn { sjtu / private }
   {
     lang / de .code:n =
       {
         \tl_set_eq:NN \l__sjtu_lang_tl \l_keys_value_tl
-        \tl_set:Nn \languagename { ngerman }
         \normalfont
-        \ctex_set:n { autoindent = 1.5 em }
+        \UseHook { sjtutex / lang / de }
       } ,
     de .meta:n = { lang = de } ,
     de .groups:n = { lang }
   }
+\AddToHook { sjtutex / lang / de }
+  {
+    \tl_set:Nn \languagename { ngerman }
+    \ctex_set:n { autoindent = 1.5 em }
+  }
 \cs_set_eq:NN \__sjtu_title_case_aux_de:n \MakeUppercase
 \clist_map_inline:nn
   {

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-en.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-en.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-en.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,22 +21,27 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {English specific definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-lang-en.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
+\NewHook { sjtutex / lang / en }
 \keys_define:nn { sjtu / private }
   {
     lang / en .code:n =
       {
         \tl_set_eq:NN \l__sjtu_lang_tl \l_keys_value_tl
-        \tl_set:Nn \languagename { english }
         \normalfont
-        \ctex_set:n { autoindent = 1.5 em }
+        \UseHook { sjtutex / lang / en }
       } ,
     en .meta:n = { lang = en } ,
     en .groups:n = { lang }
   }
+\AddToHook { sjtutex / lang / en }
+  {
+    \tl_set:Nn \languagename { english }
+    \ctex_set:n { autoindent = 1.5 em }
+  }
 \cs_set_eq:NN \__sjtu_title_case_aux_en:n \MakeUppercase
 \clist_map_inline:nn
   {

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-ja.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-ja.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-ja.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Japanese specific definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-lang-ja.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \cs_new_protected:Nn \__sjtu_set_cjk_default_ja:
   {
     \tl_set:Nn \CJKrmdefault { jamin  }
@@ -31,19 +31,24 @@
     \tl_set:Nn \CJKsfdefault { jagoth }
     \tl_set:Nn \CJKttdefault { jagoth }
   }
+\NewHook { sjtutex / lang / ja }
 \keys_define:nn { sjtu / private }
   {
     lang / ja .code:n =
       {
         \tl_set_eq:NN \l__sjtu_lang_tl \l_keys_value_tl
-        \tl_set:Nn \languagename { japanese }
         \__sjtu_set_cjk_default_ja:
         \normalfont
-        \ctex_set:n { autoindent = 1 }
+        \UseHook { sjtutex / lang / ja }
       } ,
     ja .meta:n = { lang = ja } ,
     ja .groups:n = { lang }
   }
+\AddToHook { sjtutex / lang / ja }
+  {
+    \tl_set:Nn \languagename { japanese }
+    \ctex_set:n { autoindent = 1 }
+  }
 \cs_set_eq:NN \__sjtu_title_case_aux_ja:n \use:n
 \clist_map_inline:nn
   {

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-zh.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-zh.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/lang/sjtu-lang-zh.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Chinese specific definition (SJTUTeX)}
 \ProvidesExplFile{sjtu-lang-zh.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \cs_new_protected:Nn \__sjtu_set_cjk_default_zh:
   {
     \tl_set:Nn \CJKrmdefault { zhsong }
@@ -31,19 +31,24 @@
     \tl_set:Nn \CJKsfdefault { zhhei  }
     \tl_set:Nn \CJKttdefault { zhfs   }
   }
+\NewHook { sjtutex / lang / zh }
 \keys_define:nn { sjtu / private }
   {
     lang / zh .code:n =
       {
         \tl_set_eq:NN \l__sjtu_lang_tl \l_keys_value_tl
-        \tl_set:Nn \languagename { chinese }
         \__sjtu_set_cjk_default_zh:
         \normalfont
-        \ctex_set:n { autoindent = true }
+        \UseHook { sjtutex / lang / zh }
       } ,
     zh .meta:n = { lang = zh } ,
     zh .groups:n = { lang }
   }
+\AddToHook { sjtutex / lang / zh }
+  {
+    \tl_set:Nn \languagename { chinese }
+    \ctex_set:n { autoindent = true }
+  }
 \cs_set_eq:NN \__sjtu_title_case_aux_zh:n \use:n
 \clist_map_inline:nn
   {

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-de.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-de.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-de.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {German scheme (SJTUTeX)}
 \ProvidesExplFile{sjtu-scheme-de.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \ctex_if_autoindent_touched:F
   { \ctex_set:n { autoindent = 1.5 em } }
 \ctex_patch_cmd:Nnn \quotation { 1.5em } { \parindent }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-en.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-en.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-en.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {English scheme (SJTUTeX)}
 \ProvidesExplFile{sjtu-scheme-en.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \ctex_if_autoindent_touched:F
   { \ctex_set:n { autoindent = 1.5 em } }
 \ctex_patch_cmd:Nnn \quotation { 1.5em } { \parindent }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-ja.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-ja.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-ja.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Japanese scheme (SJTUTeX)}
 \ProvidesExplFile{sjtu-scheme-ja.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \keys_set_known:nn { ctex / chapter }
   { name = { 第 \space , \space 章 } }
 \ctex_if_autoindent_touched:F

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-zh.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-zh.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/scheme/sjtu-scheme-zh.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Chinese scheme (SJTUTeX)}
 \ProvidesExplFile{sjtu-scheme-zh.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \keys_set_known:nn { ctex / chapter }
   { name = { 第 \space , \space 章 } }
 \ctex_if_autoindent_touched:F

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/sjtuarticle.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/sjtuarticle.cls	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/sjtuarticle.cls	2025-03-29 19:42:08 UTC (rev 74786)
@@ -29,10 +29,10 @@
     Release '2024-06-01' or newer is required to\MessageBreak
     compile this document.\MessageBreak\MessageBreak
     Please update your TeX distribution}{}}
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Article document class for Shanghai Jiao Tong University (SJTUTeX)}
 \ProvidesExplClass{sjtuarticle}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \msg_new:nnn { sjtutex } { unsupported-engine }
   {
     The~sjtutex~classes~does~NOT~support~'#1'~engine. \\\\
@@ -238,7 +238,6 @@
     caption,
     bicaption,
     subcaption,
-    xcolor,
     graphicx,
     enumitem
   }
@@ -465,12 +464,10 @@
   }
 \geometry
   {
-    top           = 3.5 cm,
-    bottom        = 4.0 cm,
-    left          = 2.5 cm,
-    right         = 2.5 cm,
-    headheight    = 1.5 cm,
-    headsep       = 0.5 cm,
+    vmargin       = { 3.5 cm , 4.0 cm } ,
+    hmargin       = 2.5 cm ,
+    headheight    = 1.5 cm ,
+    headsep       = 0.5 cm ,
     footskip      = 1.0 cm
   }
 \pagestyle { fancy }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/sjtureport.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/sjtureport.cls	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/sjtureport.cls	2025-03-29 19:42:08 UTC (rev 74786)
@@ -29,10 +29,10 @@
     Release '2024-06-01' or newer is required to\MessageBreak
     compile this document.\MessageBreak\MessageBreak
     Please update your TeX distribution}{}}
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Report document class for Shanghai Jiao Tong University (SJTUTeX)}
 \ProvidesExplClass{sjtureport}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \msg_new:nnn { sjtutex } { unsupported-engine }
   {
     The~sjtutex~classes~does~NOT~support~'#1'~engine. \\\\
@@ -241,7 +241,6 @@
     caption,
     bicaption,
     subcaption,
-    xcolor,
     graphicx,
     enumitem
   }
@@ -469,12 +468,10 @@
   }
 \geometry
   {
-    top           = 3.5 cm,
-    bottom        = 4.0 cm,
-    left          = 2.5 cm,
-    right         = 2.5 cm,
-    headheight    = 1.5 cm,
-    headsep       = 0.5 cm,
+    vmargin       = { 3.5 cm , 4.0 cm } ,
+    hmargin       = 2.5 cm ,
+    headheight    = 1.5 cm ,
+    headsep       = 0.5 cm ,
     footskip      = 1.0 cm
   }
 \pagestyle { fancy }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/sjtuthesis.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/sjtuthesis.cls	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/sjtuthesis.cls	2025-03-29 19:42:08 UTC (rev 74786)
@@ -29,10 +29,10 @@
     Release '2024-06-01' or newer is required to\MessageBreak
     compile this document.\MessageBreak\MessageBreak
     Please update your TeX distribution}{}}
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Thesis document class for Shanghai Jiao Tong University (SJTUTeX)}
 \ProvidesExplClass{sjtuthesis}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \msg_new:nnn { sjtutex } { unsupported-engine }
   {
     The~sjtutex~classes~does~NOT~support~'#1'~engine. \\\\
@@ -268,7 +268,6 @@
     caption,
     bicaption,
     subcaption,
-    xcolor,
     graphicx,
     enumitem
   }
@@ -507,13 +506,11 @@
   }
 \geometry
   {
-    top           = 3.5 cm,
-    bottom        = 4.0 cm,
-    left          = 2.5 cm,
-    right         = 2.5 cm,
-    bindingoffset = 0.5 cm,
-    headheight    = 1.5 cm,
-    headsep       = 0.5 cm,
+    vmargin       = { 3.5 cm , 4.0 cm } ,
+    hmargin       = 2.5 cm ,
+    bindingoffset = 0.5 cm ,
+    headheight    = 1.5 cm ,
+    headsep       = 0.5 cm ,
     footskip      = 1.0 cm
   }
 \AtEndOfClass { \raggedbottom }
@@ -1048,6 +1045,7 @@
     bookmark : tokenlist ,
     style    : tokenlist = empty ,
     format   : tokenlist = \linespread { } \selectfont ,
+    precode  : tokenlist ,
     prefix   : tokenlist ,
     elements : commalist
   }
@@ -1056,6 +1054,7 @@
     bookmark = \l__sjtu_page_bookmark_tl ,
     style    = \l__sjtu_page_style_tl ,
     format   = \l__sjtu_page_format_tl ,
+    precode  = \l__sjtu_page_precode_tl ,
     prefix   = \l__sjtu_page_prefix_tl ,
     elements = \l__sjtu_page_elements_clist
   }
@@ -1062,20 +1061,22 @@
   {
     \tl_set_eq:NN \l__sjtu_page_bookmark_tl \c_novalue_tl
     \AssignTemplateKeys
+    \legacy_if:nTF { @openright }
+      { \cleardoublepage } { \clearpage }
+    \l__sjtu_page_precode_tl
+    \exp_args:No \thispagestyle { \l__sjtu_page_style_tl }
     \group_begin:
       \__sjtu_select_language:n {#1}
       \clist_gset_eq:Nc \l__sjtu_info_fund_clist
         { l__sjtu_info_fund_ \l__sjtu_lang_tl _clist }
-      \legacy_if:nTF { @openright }
-        { \cleardoublepage } { \clearpage }
       \exp_args:No \tl_if_novalue:nF { \l__sjtu_page_bookmark_tl }
         { \__sjtu_pdf_bookmark:nn { 0 } { \l__sjtu_page_bookmark_tl } }
-      \exp_args:No \thispagestyle { \l__sjtu_page_style_tl }
       \l__sjtu_page_format_tl
       \clist_map_inline:Nn \l__sjtu_page_elements_clist
         { \UseInstance { sjtu / element } { \l__sjtu_page_prefix_tl / ##1 } }
+      \clearpage
     \group_end:
-    \clearpage
+    \restoregeometry
   }
 \cs_new_protected:Npn \__sjtu_declare_element_instance:nnn #1#2#3
   { \DeclareInstance { sjtu / element } {#1/#2} { plain } {#3} }
@@ -1237,47 +1238,6 @@
     \clist_map_inline:Nn \g__sjtu_lang_clist
       { \UseInstance { sjtu / page } { title / ##1 } { ##1 } }
   }
-\tl_const:Nn \c__sjtu_orig_decl_text_zh_tl
-  {
-    本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工
-    作所取得的成果。除文中已经注明引用的内容外,本论文不包含任何其他个人
-    或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集
-    体,均已在文中以明确方式标明。本人完全知晓本声明的法律后果由本人承
-    担。
-  }
-\tl_const:Nn \c__sjtu_auth_decl_text_zh_tl
-  {
-    本人同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许
-    论文被查阅和借阅。 \par
-    \vskip 6 bp
-    \noindent
-    本学位论文属于: \par
-    { \c__sjtu_symbol_white_square_tl } \, \textbf { 公开论文 } \par
-    { \c__sjtu_symbol_white_square_tl } \, \textbf { 内部论文 },
-      保密 \, { \c__sjtu_symbol_white_square_tl } \, 1 \, 年 \, /
-           \, { \c__sjtu_symbol_white_square_tl } \, 2 \, 年 \, /
-           \, { \c__sjtu_symbol_white_square_tl } \, 3 \, 年,
-      过保密期后适用本授权书。 \par
-    { \c__sjtu_symbol_white_square_tl } \, \textbf { 秘密论文 },
-      保密 \, \underline { \hspace { 2 em } } \, 年(不超过~ 10~ 年),
-      过保密期后适用本授权书。 \par
-    { \c__sjtu_symbol_white_square_tl } \, \textbf { 机密论文 },
-      保密 \, \underline { \hspace { 2 em } } \, 年(不超过~ 20~ 年),
-      过保密期后适用本授权书。 \par
-    \hspace { 6 em }(请在以上方框内选择打“ \ensuremath { \checkmark } ”)
-  }
-\tl_const:Nn \c__sjtu_signature_text_zh_tl
-  {
-    签名: \\
-    日期: \hspace { \stretch { 3 } } 年
-           \hspace { \stretch { 2 } } 月
-           \hspace { \stretch { 2 } } 日
-  }
-\cs_new_protected:Npn \__sjtu_signature:N #1
-  {
-    \parbox [ t ] { 12 em }
-      { #1 \c__sjtu_signature_text_zh_tl }
-  }
 \clist_map_inline:nn
   {
     { orig / title }
@@ -1296,7 +1256,6 @@
     { orig / text  }
       {
         format      = \zihao { -4 } \setbaselineskip { 24 bp } ,
-        content     = \c__sjtu_orig_decl_text_zh_tl ,
         bottom-skip = 24 bp ,
         align       = normal
       },
@@ -1306,9 +1265,9 @@
         content     =
           {
             \__sjtu_signature:N \c__sjtu_name_decl_author_zh_tl
-            \skip_horizontal:n { 4 em } \hbox:n { }
+            \skip_horizontal:n { 2 em } \hbox:n { }
           } ,
-        bottom-skip = \c_zero_dim plus 2 fill ,
+        bottom-skip = 24 bp plus 1 fill ,
         align       = right
       },
     { auth / title }
@@ -1339,7 +1298,6 @@
             \__sjtu_signature:N \c__sjtu_name_decl_author_zh_tl
             \hfill
             \__sjtu_signature:N \c__sjtu_name_decl_supervisor_zh_tl
-            \skip_horizontal:n { 2 em } \hbox:n { }
           } ,
         bottom-skip = \c_zero_dim plus 1 fill ,
         align       = normal
@@ -1350,9 +1308,14 @@
   }
 \__sjtu_declare_page_instance:nnn { copyright }
   {
-    bookmark = \tl_use:c { c__sjtu_name_declaration_ \g__sjtu_lang_tl _tl } ,
-    prefix   = copyright ,
-    elements =
+    bookmark  = \tl_use:c { c__sjtu_name_declaration_ \g__sjtu_lang_tl _tl } ,
+    precode   = \newgeometry
+                  {
+                    margin        = 3.0 cm ,
+                    bindingoffset = 0.5 cm
+                  } ,
+    prefix    = copyright ,
+    elements  =
       {
         orig / title, orig / text, orig / sign,
         auth / title, auth / text, auth / sign
@@ -1363,7 +1326,16 @@
   {
     file .tl_set:N = \l__sjtu_copyright_page_file_tl ,
     file .value_required:n = true ,
-    filename .meta:n = { file = #1 }
+    filename .meta:n = { file = #1 } ,
+    variant .choice: ,
+    variant .choices:nn =
+      { a, b }
+      {
+        \EditInstance { sjtu / element } { copyright / orig / text }
+          { content = \tl_use:c { c__sjtu_orig_decl_text_ #1 _zh_tl } }
+      } ,
+    variant  .initial:e = \int_compare:nNnTF { \g__sjtu_thesis_type_int } > { 1 }
+                            { a } { b }
   }
 \msg_new:nnn { sjtutex } { require-pdfpages }
   {
@@ -1384,7 +1356,8 @@
                 {
                   \legacy_if:nTF { @openright }
                     { \cleardoublepage } { \clearpage }
-                  \__sjtu_pdf_bookmark:nn { 0 } { \c__sjtu_name_declaration_tl }
+                  \exp_args:Nnv \__sjtu_pdf_bookmark:nn
+                    { 0 } { c__sjtu_name_declaration_ \g__sjtu_lang_tl _tl }
                   \tl_set_rescan:NnV \l__sjtu_tmp_tl { } \l__sjtu_tmp_tl
                   \exp_args:NNo \includepdf [ \l__sjtu_tmp_tl ]
                     { \l__sjtu_copyright_page_file_tl }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-de.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-de.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-de.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {German config for thesis (SJTUTeX)}
 \ProvidesExplFile{sjtu-thesis-de.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_name_const_from_clist:nnnn { de }
   { degree_level } { \g__sjtu_thesis_type_int }
   { Bachelor, Master, Doktor }
@@ -47,11 +47,11 @@
   { \__sjtu_name_set:nnn { de } #1 }
 \keys_define:nn { sjtu / info / de }
   {
-    subject          .initial:e =
+    subject          .initial:n =
       {
-        Eine~ Dissertation~ Eingereicht~ an \exp_not:N \\
-        der~ { \exp_not:V \c__sjtu_name_univ_de_tl }~ für~
-        { \exp_not:V \c__sjtu_name_degree_level_de_tl } titel
+        Eine~ Dissertation~ Eingereicht~ an \\
+        der~ { \c__sjtu_name_univ_de_tl }~ für~
+        { \c__sjtu_name_degree_level_de_tl } titel
       }
   }
 \DeclareInstanceCopy { sjtu / page }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-en.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-en.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-en.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {English config for thesis (SJTUTeX)}
 \ProvidesExplFile{sjtu-thesis-en.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_name_const_from_clist:nnnn { en }
   { degree_level } { \g__sjtu_thesis_type_int }
   { Bachelor, Master, Doctor }
@@ -47,11 +47,11 @@
   { \__sjtu_name_set:nnn { en } #1 }
 \keys_define:nn { sjtu / info / en }
   {
-    subject          .initial:e =
+    subject          .initial:n =
       {
-        A~ Dissertation~ Submitted~ to \exp_not:N \\
-        { \exp_not:V \c__sjtu_name_univ_en_tl }~ for~
-        the~ Degree~ of~ { \exp_not:V \c__sjtu_name_degree_level_en_tl }
+        A~ Dissertation~ Submitted~ to \\
+        { \c__sjtu_name_univ_en_tl }~ for~
+        the~ Degree~ of~ { \c__sjtu_name_degree_level_en_tl }
       }
   }
 \DeclareInstanceCopy { sjtu / page }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-ja.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-ja.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-ja.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Japanese config for thesis (SJTUTeX)}
 \ProvidesExplFile{sjtu-thesis-ja.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_name_const_from_clist:nnnn { ja }
   { degree_level } { \g__sjtu_thesis_type_int }
   { 学士, 修士, 博士 }
@@ -48,11 +48,11 @@
   { \__sjtu_name_set:nnn { ja } #1 }
 \keys_define:nn { sjtu / info / ja }
   {
-    subject          .initial:e =
+    subject          .initial:n =
       {
-        \exp_not:V \c__sjtu_name_univ_ja_tl
-        \exp_not:V \c__sjtu_name_degree_level_ja_tl
-        \exp_not:V \c__sjtu_name_thesis_ja_tl
+        \c__sjtu_name_univ_ja_tl
+        \c__sjtu_name_degree_level_ja_tl
+        \c__sjtu_name_thesis_ja_tl
       }
   }
 \DeclareInstanceCopy { sjtu / page }

Modified: trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-zh.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-zh.def	2025-03-29 00:42:52 UTC (rev 74785)
+++ trunk/Master/texmf-dist/tex/latex/sjtutex/thesis/sjtu-thesis-zh.def	2025-03-29 19:42:08 UTC (rev 74786)
@@ -21,10 +21,10 @@
 %%     and version 1.3 or later is part of all distributions of
 %%     LaTeX version 2005/12/01 or later.
 %% 
-\GetIdInfo$Id: sjtutex.dtx d611a82 2025-02-12 23:33:21 +0800 Alexara Wu <alexarawu at outlook.com> $
+\GetIdInfo$Id: sjtutex.dtx 24e1ee7 2025-03-29 01:12:32 +0800 Alexara Wu <alexarawu at outlook.com> $
   {Chinese config for thesis (SJTUTeX)}
 \ProvidesExplFile{sjtu-thesis-zh.def}
-  {\ExplFileDate}{2.2}{\ExplFileDescription}
+  {\ExplFileDate}{2.2.1}{\ExplFileDescription}
 \__sjtu_symbol_const:nn { white_square } { "25A1 }
 \__sjtu_name_const_from_clist:nnnn { zh }
   { degree_level } { \g__sjtu_thesis_type_int }
@@ -57,15 +57,69 @@
   { \__sjtu_name_set:nnn { zh } #1 }
 \keys_define:nn { sjtu / info / zh }
   {
-    subject          .initial:e =
+    subject          .initial:n =
       {
-        \exp_not:V \c__sjtu_name_univ_zh_tl
-        \exp_not:V \c__sjtu_name_degree_level_zh_tl
-        \exp_not:V \c__sjtu_name_thesis_zh_tl
+        \c__sjtu_name_univ_zh_tl
+        \c__sjtu_name_degree_level_zh_tl
+        \c__sjtu_name_thesis_zh_tl
       }
   }
 \DeclareInstanceCopy { sjtu / page }
   { title / zh } { title a }
+\tl_const:Nn \c__sjtu_orig_decl_text_a_zh_tl
+  {
+    本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工
+    作所取得的成果。
+    除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或
+    撰写过的作品成果。
+    对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
+    本人完全知晓本声明的法律后果由本人承担。
+  }
+\tl_const:Nn \c__sjtu_orig_decl_text_b_zh_tl
+  {
+    本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工
+    作所取得的成果。
+    除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或
+    撰写过的作品成果。
+    对本文的研究做出重要贡献的个人和集体,已在文中以适当方式予以致谢。
+    若在论文撰写过程中使用了人工智能工具,本人已遵循《上海交通大学关于在
+    教育教学中使用~ AI~ 的规范》,确保人工智能生成内容的应用场景、引用范
+    围及标注方式均符合规定,并杜绝学术不端行为。
+    本人完全知晓本声明的法律后果由本人承担。
+  }
+\tl_const:Nn \c__sjtu_auth_decl_text_zh_tl
+  {
+    本人同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许
+    论文被查阅和借阅。 \par
+    \vskip 6 bp
+    \noindent
+    本学位论文属于: \par
+    { \c__sjtu_symbol_white_square_tl } \, \textbf { 公开论文 } \par
+    { \c__sjtu_symbol_white_square_tl } \, \textbf { 内部论文 },
+      保密 \, { \c__sjtu_symbol_white_square_tl } \, 1 \, 年 \, /
+           \, { \c__sjtu_symbol_white_square_tl } \, 2 \, 年 \, /
+           \, { \c__sjtu_symbol_white_square_tl } \, 3 \, 年,
+      过保密期后适用本授权书。 \par
+    { \c__sjtu_symbol_white_square_tl } \, \textbf { 秘密论文 },
+      保密 \, \underline { \hspace { 2 em } } \, 年(不超过~ 10~ 年),
+      过保密期后适用本授权书。 \par
+    { \c__sjtu_symbol_white_square_tl } \, \textbf { 机密论文 },
+      保密 \, \underline { \hspace { 2 em } } \, 年(不超过~ 20~ 年),
+      过保密期后适用本授权书。 \par
+    \hspace { 6 em }(请在以上方框内选择打“ \ensuremath { \checkmark } ”)
+  }
+\tl_const:Nn \c__sjtu_signature_text_zh_tl
+  {
+    签名: \\
+    日期: \hspace { \stretch { 3 } } 年
+           \hspace { \stretch { 2 } } 月
+           \hspace { \stretch { 2 } } 日
+  }
+\cs_new_protected:Npn \__sjtu_signature:N #1
+  {
+    \parbox [ t ] { 12 em }
+      { #1 \c__sjtu_signature_text_zh_tl }
+  }
 \endinput
 %%
 %% End of file `sjtu-thesis-zh.def'.



More information about the tex-live-commits mailing list.