From d529e97b80a83d8a5b94a1e551c8ecaf931164d6 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 19 Apr 2023 20:11:39 +0000 Subject: nwafuthesis (19apr23) git-svn-id: svn://tug.org/texlive/trunk@66895 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/nwafuthesis/README.md | 4 +- .../texmf-dist/doc/latex/nwafuthesis/nwafudoc.cls | 4 +- .../doc/latex/nwafuthesis/nwafuthesis.pdf | Bin 2346554 -> 2379457 bytes .../source/latex/nwafuthesis/nwafuthesis.dtx | 438 ++++++++++++++++----- .../tex/latex/nwafuthesis/nwafuthesis.cls | 373 +++++++++++++----- 5 files changed, 604 insertions(+), 215 deletions(-) (limited to 'Master') diff --git a/Master/texmf-dist/doc/latex/nwafuthesis/README.md b/Master/texmf-dist/doc/latex/nwafuthesis/README.md index c1faa1af664..5c2886cef09 100644 --- a/Master/texmf-dist/doc/latex/nwafuthesis/README.md +++ b/Master/texmf-dist/doc/latex/nwafuthesis/README.md @@ -1,5 +1,5 @@ The nwafuthesis Class -LaTeX thesis template for Northwest A&F University, China, v1.11 +LaTeX thesis template for Northwest A&F University, China. Overview This template supports doctoral or master dissertion and undergraduate thesis in Chinese. With the help of modern LaTeX3 technology, nwafuthesis aims to create a simple interface, a normative format, as well as a hackable class for the users. @@ -30,4 +30,4 @@ Issues and pull requests are always welcome. License This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version. -Copyright (C) 2017–2022 by Nan Geng . +Copyright (C) 2019–2023 by Nan Geng . diff --git a/Master/texmf-dist/doc/latex/nwafuthesis/nwafudoc.cls b/Master/texmf-dist/doc/latex/nwafuthesis/nwafudoc.cls index 55893f90c6f..c79f21db190 100644 --- a/Master/texmf-dist/doc/latex/nwafuthesis/nwafudoc.cls +++ b/Master/texmf-dist/doc/latex/nwafuthesis/nwafudoc.cls @@ -7,7 +7,7 @@ %% nwafuthesis.dtx (with options: `doc') %% nwafuthesis-doc.dtx (with options: `doc') %% -%% Copyright (C) 2019--2022 by Nan Geng +%% Copyright (C) 2019--2023 by Nan Geng %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either @@ -31,7 +31,7 @@ %% \NeedsTeXFormat{LaTeX2e} \RequirePackage{expl3} -\GetIdInfo $Id: nwafuthesis.dtx 1.15 2022-05-29 Nan Geng $ +\GetIdInfo $Id: nwafuthesis.dtx 1.25 2023-04-18 Nan Geng $ {Documentation class for nwafuthesis} \ProvidesExplClass{nwafudoc} {\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} diff --git a/Master/texmf-dist/doc/latex/nwafuthesis/nwafuthesis.pdf b/Master/texmf-dist/doc/latex/nwafuthesis/nwafuthesis.pdf index 9b7bd35d2da..0d434617a48 100644 Binary files a/Master/texmf-dist/doc/latex/nwafuthesis/nwafuthesis.pdf and b/Master/texmf-dist/doc/latex/nwafuthesis/nwafuthesis.pdf differ diff --git a/Master/texmf-dist/source/latex/nwafuthesis/nwafuthesis.dtx b/Master/texmf-dist/source/latex/nwafuthesis/nwafuthesis.dtx index 720524e68b4..8d79d4580cd 100644 --- a/Master/texmf-dist/source/latex/nwafuthesis/nwafuthesis.dtx +++ b/Master/texmf-dist/source/latex/nwafuthesis/nwafuthesis.dtx @@ -2,7 +2,7 @@ % !TeX program = XeLaTeX % !TeX encoding = UTF-8 % -% Copyright (C) 2019--2022 by Nan Geng +% Copyright (C) 2019--2023 by Nan Geng % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -43,7 +43,7 @@ \preamble - Copyright (C) 2019--2022 by Nan Geng + Copyright (C) 2019--2023 by Nan Geng This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either @@ -110,7 +110,7 @@ %\NeedsTeXFormat{LaTeX2e} %\RequirePackage{expl3} %<*!(driver|install)> -%\GetIdInfo $Id: nwafuthesis.dtx 1.15 2022-05-29 Nan Geng $ +%\GetIdInfo $Id: nwafuthesis.dtx 1.25 2023-04-18 Nan Geng $ % {Thesis template for Northwest A\&F University} %\ProvidesExplClass{\ExplFileName} % {Definition file for nwafuthesis} @@ -143,7 +143,7 @@ \textbf{\nwafuthesis: 西北农林科技大学学位论文 \xpinyin[font=\sffamily,format=\color{MaterialIndigo800}]{模}{mu2}板}}} \author{耿楠} -\date{\today\quad v1.15% +\date{\today\quad v1.25% \thanks{\url{https://gitee.com/nwafu_nan/nwafuthesis-l3}.}} \begin{document} @@ -809,7 +809,16 @@ % \begin{nwafusyntax}[emph={[1]withsig}] % withsig = (*<\TFF>*) % \end{nwafusyntax} -% 题名页是否需要签名。 +% 题名页是否需要签名,默认为不需要签名。 +% \end{function} +% +% \changes{v1.25}{2023/04/19}{添加盲审样式参数说明。} +% +% \begin{function}[added=2023-04-19]{style/anonymous} +% \begin{nwafusyntax}[emph={[1]anonymous}] +% anonymous = (*<\TFF>*) +% \end{nwafusyntax} +% 选择是否输出盲审格式论文,默认为不输出盲审格式论文。 % \end{function} % % \begin{function}[added=2022-05-24]{style/chapnum} @@ -1815,6 +1824,16 @@ % \end{macrocode} % \end{variable} % +% \changes{v1.25}{2023/04/18}{添加盲审判断变量。} +% +% \begin{variable}{\l_@@_anonymous_bool} +% 是否输出盲审版论文(隐藏作者、导师、页眉等个人及学校信息)。 +% \begin{macrocode} +\bool_new:N \l_@@_anonymous_bool +% \end{macrocode} +% \end{variable} +% +% % \changes{v1.12}{2022/05/24}{添加本科生中文章编号处理。} % % \begin{variable}{\g_@@_chapnum_int} @@ -2270,12 +2289,21 @@ % \end{macrocode} % \end{variable} % +% \changes{v1.25}{2023/04/18}{添加盲审隐藏导师承诺中研究生姓名。} +% % \begin{variable}{\c_@@_super_decl_text_tl} % 研究生学位导师承诺。 % \begin{macrocode} \tl_const:Nn \c_@@_super_decl_text_tl { - 本人承诺{\c_@@_fwid_colon_tl}我的研究生{\@@_text_uline:V \l_@@_info_author_tl}% + 本人承诺{\c_@@_fwid_colon_tl}我的研究生{% + \bool_if:NTF \l_@@_anonymous_bool + { + \@@_text_uline:V \c_@@_name_anonname_tl + }{ + \@@_text_uline:V \l_@@_info_author_tl + } + }% 所呈交的学位论文是在我指导下独立开展研究工作及取得的研究结果% {\c_@@_fwid_comma_tl}属于我现岗职务工作的结果{\c_@@_fwid_comma_tl}% 并严格按照学校{\c_@@_fwid_left_title_tl}关于规范西北农林科技大学研% @@ -2499,9 +2527,13 @@ % 研究生与本科生相同的中英文字段。 % \begin{macrocode} % +% \changes{v1.25}{2023/04/19}{添加盲审隐藏信息符号常量。} +% \clist_map_inline:nn { - { supervisor } { 指导教师 } { Supervisor }, + { supervisor } { 指导教师 } { Supervisor }, + { anonid } { ********** } { ********** }, + { anonname } { **** } { **** }, } { \@@_define_name:nnn #1 } % @@ -3893,11 +3925,31 @@ withchapter .bool_set:N = \l_@@_withchap_bool, withchapter .default:n = true, withchapter .initial:n = true, - + } +% \end{macrocode} +% \end{macro} +% +% \subsection{是否预留签名位置} +% +% \begin{macro}{withsig} +% 设置是否预留下签名。 +% \begin{macrocode} +\keys_define:nn { nwafu / style } + { withsig .bool_set:N = \l_@@_withsignature_bool, withsig .default:n = true, withsig .initial:n = false, - + } +% \end{macrocode} +% \end{macro} +% +% \subsection{章编号格式设置} +% +% \begin{macro}{withchapter} +% 设置论文章标题编号格式(中文/阿拉伯数字)。 +% \begin{macrocode} +\keys_define:nn { nwafu / style } + { chapnum .choice:, chapnum .value_required:n = true, chapnum .choices:nn = @@ -3908,6 +3960,22 @@ % \end{macrocode} % \end{macro} % +% \changes{v1.25}{2023/04/18}{添加盲审判断变量。} +% +% \subsection{是否盲审} +% +% \begin{macro}{anonymous} +% 设置是否为盲审论文输出。 +% \begin{macrocode} +\keys_define:nn { nwafu / style } + { + anonymous .bool_set:N = \l_@@_anonymous_bool, + anonymous .default:n = true, + anonymous .initial:n = false, + } +% \end{macrocode} +% \end{macro} +% % \changes{v1.11}{2022/04/02}{修订本科生subsubsection编号两端括号为中文全角括号。} % % |\keys_set:nn{ctex}| 实际相当于调用 \cs{ctexset}。 @@ -5066,6 +5134,7 @@ % \begin{macrocode} \cs_new:Npn \@@_blank_underline:n #1 { \rule [ -0.5 ex ] {#1} { 0.4 pt } } +\cs_generate_variant:Nn \@@_blank_underline:n { V } % \end{macrocode} % \end{macro} % @@ -5093,6 +5162,8 @@ % \end{macrocode} % \end{macro} % +% \changes{v1.25}{2023/04/18}{添加盲审隐藏学号。} +% % \subsubsection{封面各部件} % % \begin{macro}{\@@_cover_id:,\@@_cover_id_aux:n} @@ -5144,12 +5215,22 @@ % 将学校代码、研究生学号变量值存入逗号分隔列表,并计算最宽宽度赋给 % \cs{l_@@_tmpd_dim}。 % \begin{macrocode} - \clist_set:Nx \l_@@_tmpd_clist - { - { \l_@@_info_school_id_tl }, - { }, - { \l_@@_info_student_id_tl } - } + \bool_if:NTF \l_@@_anonymous_bool + { + \clist_set:Nx \l_@@_tmpd_clist + { + { \l_@@_info_school_id_tl }, + { }, + { \c_@@_name_anonid_tl } + } + }{ + \clist_set:Nx \l_@@_tmpd_clist + { + { \l_@@_info_school_id_tl }, + { }, + { \l_@@_info_student_id_tl } + } + } \@@_get_max_text_width:NN \l_@@_tmpd_dim \l_@@_tmpd_clist % \end{macrocode} % 用minipage环境通过循环输出结果。 @@ -5202,7 +5283,12 @@ { \tl_use:c { c_@@_name_ #1 _tl } \c_@@_fwid_colon_tl - \@@_text_uline:n {\tl_use:c { l_@@_info_ #1 _tl }} + \bool_if:NTF \l_@@_anonymous_bool + { + \@@_text_uline:V \c_@@_name_anonid_tl + }{ + \@@_text_uline:n {\tl_use:c { l_@@_info_ #1 _tl }} + } } % \end{macrocode} % \end{macro} @@ -5275,6 +5361,8 @@ % \end{macrocode} % \end{macro} % +% \changes{v1.25}{2023/04/18}{添加盲审隐藏中文作者与导师。} +% % \begin{macro}{\@@_cover_info:} % 作者信息栏。 % \begin{macrocode} @@ -5309,15 +5397,28 @@ % 读取作者信息变量值,并将最宽者的宽度赋给 % \cs{l_@@_tmpb_dim}。 % \begin{macrocode} - \clist_set:Nx \l_@@_tmpb_clist - { - { \l_@@_info_major_tl }, - { \l_@@_info_researchfield_tl }, - { \l_@@_info_author_tl }, - { \l_@@_info_supervisor_tl }, - { \l_@@_info_cosupervisor_tl }, - { \l_@@_info_date_tl } - } + \bool_if:NTF \l_@@_anonymous_bool + { + \clist_set:Nx \l_@@_tmpb_clist + { + { \l_@@_info_major_tl }, + { \l_@@_info_researchfield_tl }, + { \c_@@_name_anonname_tl }, + { \c_@@_name_anonname_tl }, + { \c_@@_name_anonname_tl }, + { \l_@@_info_date_tl } + } + }{ + \clist_set:Nx \l_@@_tmpb_clist + { + { \l_@@_info_major_tl }, + { \l_@@_info_researchfield_tl }, + { \l_@@_info_author_tl }, + { \l_@@_info_supervisor_tl }, + { \l_@@_info_cosupervisor_tl }, + { \l_@@_info_date_tl } + } + } \@@_get_max_text_width:NN \l_@@_tmpb_dim \l_@@_tmpb_clist } % \end{macrocode} @@ -5348,15 +5449,28 @@ % 读取作者信息变量值,并将最宽者的宽度赋给 % \cs{l_@@_tmpb_dim}。 % \begin{macrocode} - \clist_set:Nx \l_@@_tmpb_clist - { - { \l_@@_info_major_tl }, - { \l_@@_info_researchfield_tl }, - { \l_@@_info_author_tl }, - { \l_@@_info_supervisor_tl }, - { \l_@@_info_cosupervisor_tl }, - { \l_@@_info_date_tl } - } + \bool_if:NTF \l_@@_anonymous_bool + { + \clist_set:Nx \l_@@_tmpb_clist + { + { \l_@@_info_major_tl }, + { \l_@@_info_researchfield_tl }, + { \c_@@_name_anonname_tl }, + { \c_@@_name_anonname_tl }, + { \c_@@_name_anonname_tl }, + { \l_@@_info_date_tl } + } + }{ + \clist_set:Nx \l_@@_tmpb_clist + { + { \l_@@_info_major_tl }, + { \l_@@_info_researchfield_tl }, + { \l_@@_info_author_tl }, + { \l_@@_info_supervisor_tl }, + { \l_@@_info_cosupervisor_tl }, + { \l_@@_info_date_tl } + } + } \@@_get_max_text_width:NN \l_@@_tmpb_dim \l_@@_tmpb_clist } % \end{macrocode} @@ -5381,15 +5495,28 @@ % 读取作者信息变量值,并将最宽者的宽度赋给 % \cs{l_@@_tmpb_dim}。 % \begin{macrocode} - \clist_set:Nx \l_@@_tmpb_clist - { - { \l_@@_info_professionaltype_tl }, - { \l_@@_info_professionalfield_tl }, - { \l_@@_info_author_tl }, - { \l_@@_info_supervisor_tl }, - { \l_@@_info_cosupervisor_tl }, - { \l_@@_info_date_tl } - } + \bool_if:NTF \l_@@_anonymous_bool + { + \clist_set:Nx \l_@@_tmpb_clist + { + { \l_@@_info_professionaltype_tl }, + { \l_@@_info_professionalfield_tl }, + { \c_@@_name_anonname_tl }, + { \c_@@_name_anonname_tl }, + { \c_@@_name_anonname_tl }, + { \l_@@_info_date_tl } + } + }{ + \clist_set:Nx \l_@@_tmpb_clist + { + { \l_@@_info_professionaltype_tl }, + { \l_@@_info_professionalfield_tl }, + { \l_@@_info_author_tl }, + { \l_@@_info_supervisor_tl }, + { \l_@@_info_cosupervisor_tl }, + { \l_@@_info_date_tl } + } + } \@@_get_max_text_width:NN \l_@@_tmpb_dim \l_@@_tmpb_clist } } @@ -5417,16 +5544,30 @@ % 读取作者信息变量值,并将最宽者的宽度赋给 % \cs{l_@@_tmpb_dim}。 % \begin{macrocode} - \clist_set:Nx \l_@@_tmpb_clist - { - { \l_@@_info_department_tl }, - { \l_@@_info_major_tl }, - { \l_@@_info_enroll_tl 级 \l_@@_info_class_id_tl 班 }, - { \l_@@_info_author_tl }, - { \l_@@_info_supervisor_tl }, - { \l_@@_info_cosupervisor_tl }, - { \l_@@_info_date_tl } - } + \bool_if:NTF \l_@@_anonymous_bool + { + \clist_set:Nx \l_@@_tmpb_clist + { + { \l_@@_info_department_tl }, + { \l_@@_info_major_tl }, + { \l_@@_info_enroll_tl 级 \l_@@_info_class_id_tl 班 }, + { \c_@@_name_anonname_tl }, + { \c_@@_name_anonname_tl }, + { \c_@@_name_anonname_tl }, + { \l_@@_info_date_tl } + } + }{ + \clist_set:Nx \l_@@_tmpb_clist + { + { \l_@@_info_department_tl }, + { \l_@@_info_major_tl }, + { \l_@@_info_enroll_tl 级 \l_@@_info_class_id_tl 班 }, + { \l_@@_info_author_tl }, + { \l_@@_info_supervisor_tl }, + { \l_@@_info_cosupervisor_tl }, + { \l_@@_info_date_tl } + } + } \@@_get_max_text_width:NN \l_@@_tmpb_dim \l_@@_tmpb_clist } } @@ -5448,6 +5589,8 @@ % \end{macrocode} % \end{macro} % +% \changes{v1.25}{2023/04/18}{添加盲审隐藏英文作者与导师。} +% % \begin{macro}{\@@_cover_info_en:} % 英文作者信息栏,仅对研究生有效。 % \begin{macrocode} @@ -5493,15 +5636,28 @@ % 读取作者信息变量值,并将最宽者的宽度赋给 % \cs{l_@@_tmpb_dim}。 % \begin{macrocode} - \clist_set:Nx \l_@@_tmpb_clist - { - { \l_@@_info_major_en_tl }, - { \l_@@_info_researchfield_en_tl }, - { \l_@@_info_author_en_tl }, - { \l_@@_info_supervisor_en_tl }, - { \l_@@_info_cosupervisor_en_tl }, - { \l_@@_info_date_en_tl } - } + \bool_if:NTF \l_@@_anonymous_bool + { + \clist_set:Nx \l_@@_tmpb_clist + { + { \l_@@_info_major_en_tl }, + { \l_@@_info_researchfield_en_tl }, + { \c_@@_name_anonname_en_tl }, + { \c_@@_name_anonname_en_tl }, + { \c_@@_name_anonname_en_tl }, + { \l_@@_info_date_en_tl } + } + }{ + \clist_set:Nx \l_@@_tmpb_clist + { + { \l_@@_info_major_en_tl }, + { \l_@@_info_researchfield_en_tl }, + { \l_@@_info_author_en_tl }, + { \l_@@_info_supervisor_en_tl }, + { \l_@@_info_cosupervisor_en_tl }, + { \l_@@_info_date_en_tl } + } + } % \end{macrocode} % 用循环输出各字段。 % \begin{macrocode} @@ -5562,15 +5718,28 @@ % 读取作者信息变量值,并将最宽者的宽度赋给 % \cs{l_@@_tmpb_dim}。 % \begin{macrocode} - \clist_set:Nx \l_@@_tmpb_clist - { - { \l_@@_info_major_en_tl }, - { \l_@@_info_researchfield_en_tl }, - { \l_@@_info_author_en_tl }, - { \l_@@_info_supervisor_en_tl }, - { \l_@@_info_cosupervisor_en_tl }, - { \l_@@_info_date_en_tl } - } + \bool_if:NTF \l_@@_anonymous_bool + { + \clist_set:Nx \l_@@_tmpb_clist + { + { \l_@@_info_major_en_tl }, + { \l_@@_info_researchfield_en_tl }, + { \c_@@_name_anonname_en_tl }, + { \c_@@_name_anonname_en_tl }, + { \c_@@_name_anonname_en_tl }, + { \l_@@_info_date_en_tl } + } + }{ + \clist_set:Nx \l_@@_tmpb_clist + { + { \l_@@_info_major_en_tl }, + { \l_@@_info_researchfield_en_tl }, + { \l_@@_info_author_en_tl }, + { \l_@@_info_supervisor_en_tl }, + { \l_@@_info_cosupervisor_en_tl }, + { \l_@@_info_date_en_tl } + } + } % \end{macrocode} % 用循环输出各字段。 % \begin{macrocode} @@ -5627,15 +5796,28 @@ % 读取作者信息变量值,并将最宽者的宽度赋给 % \cs{l_@@_tmpb_dim}。 % \begin{macrocode} - \clist_set:Nx \l_@@_tmpb_clist - { - { Master ~ of ~ \l_@@_info_professionaltype_en_tl }, - { \l_@@_info_professionalfield_en_tl }, - { \l_@@_info_author_en_tl }, - { \l_@@_info_supervisor_en_tl }, - { \l_@@_info_cosupervisor_en_tl }, - { \l_@@_info_date_en_tl } - } + \bool_if:NTF \l_@@_anonymous_bool + { + \clist_set:Nx \l_@@_tmpb_clist + { + { Master ~ of ~ \l_@@_info_professionaltype_en_tl }, + { \l_@@_info_professionalfield_en_tl }, + { \c_@@_name_anonname_en_tl }, + { \c_@@_name_anonname_en_tl }, + { \c_@@_name_anonname_en_tl }, + { \l_@@_info_date_en_tl } + } + }{ + \clist_set:Nx \l_@@_tmpb_clist + { + { Master ~ of ~ \l_@@_info_professionaltype_en_tl }, + { \l_@@_info_professionalfield_en_tl }, + { \l_@@_info_author_en_tl }, + { \l_@@_info_supervisor_en_tl }, + { \l_@@_info_cosupervisor_en_tl }, + { \l_@@_info_date_en_tl } + } + } % \end{macrocode} % 用循环输出各字段。 % \begin{macrocode} @@ -5659,6 +5841,7 @@ % \end{macro} % % \changes{v1.15}{2022/05/29}{为研究生题名页签字位置留空位。} +% \changes{v1.25}{2023/04/18}{添加盲审隐藏作者、导师、指导小组等。} % % \begin{macro}{\@@_cover_instructors:} % 题名页作者、指导教师、指导小组签名,仅对研究生有效。 @@ -5712,12 +5895,22 @@ % \end{macrocode} % 作者、导师、指导小组信息变量值,并取得最宽宽度。 % \begin{macrocode} - \clist_set:Nx \l_@@_tmpb_clist - { - {\l_@@_info_author_tl }, - {\l_@@_info_supervisor_tl }, - {\l_@@_tmpa_tl }, - } + \bool_if:NTF \l_@@_anonymous_bool + { + \clist_set:Nx \l_@@_tmpb_clist + { + { \c_@@_name_anonname_tl }, + { \c_@@_name_anonname_tl }, + { \c_@@_name_anonname_tl }, + } + }{ + \clist_set:Nx \l_@@_tmpb_clist + { + {\l_@@_info_author_tl }, + {\l_@@_info_supervisor_tl }, + {\l_@@_tmpa_tl }, + } + } \@@_get_max_text_width:NN \l_@@_tmpb_dim \l_@@_tmpb_clist % \end{macrocode} % 计算小页宽度。 @@ -5779,11 +5972,20 @@ % \end{macrocode} % 作者、导师信息,并取得最宽宽度。 % \begin{macrocode} - \clist_set:Nx \l_@@_tmpb_clist - { - {\l_@@_info_author_tl }, - {\l_@@_info_supervisor_tl }, - } + \bool_if:NTF \l_@@_anonymous_bool + { + \clist_set:Nx \l_@@_tmpb_clist + { + { \c_@@_name_anonname_tl }, + { \c_@@_name_anonname_tl }, + } + }{ + \clist_set:Nx \l_@@_tmpb_clist + { + {\l_@@_info_author_tl }, + {\l_@@_info_supervisor_tl }, + } + } \@@_get_max_text_width:NN \l_@@_tmpb_dim \l_@@_tmpb_clist \dim_add:Nn \l_@@_tmpb_dim { \l_@@_tmpb_dim } % \end{macrocode} @@ -5812,6 +6014,8 @@ % \end{macrocode} % \end{macro} % +% \changes{v1.25}{2023/04/18}{添加盲审隐藏答辩委员会。} +% % \begin{macro}{\@@_cover_defensecommittees:} % 答辩委员会名单,仅对研究生有效。 % \begin{macrocode} @@ -5859,23 +6063,28 @@ % \end{macrocode} % 输出答辩委员会信息。 % \begin{macrocode} - \begin{minipage} [ c ] { \textwidth } - \centering - \bool_until_do:nn { \clist_if_empty_p:N \l_@@_tmpa_clist } - { - \clist_pop:NN \l_@@_tmpa_clist \l_@@_tmpa_tl - \clist_pop:NN \l_@@_tmpb_clist \l_@@_tmpb_tl - \clist_pop:NN \l_@@_tmpc_clist \l_@@_tmpc_tl - \@@_spread_box:Vn \l_@@_tmpa_dim { \l_@@_tmpa_tl } - \@@_center_box:Vn \l_@@_tmpb_dim { \l_@@_tmpb_tl } - \@@_spread_box:Vn \l_@@_tmpc_dim { \l_@@_tmpc_tl } - \skip_vertical:n { 0.5 ex } - } - \end{minipage} + \bool_if:NF \l_@@_anonymous_bool + { + \begin{minipage} [ c ] { \textwidth } + \centering + \bool_until_do:nn { \clist_if_empty_p:N \l_@@_tmpa_clist } + { + \clist_pop:NN \l_@@_tmpa_clist \l_@@_tmpa_tl + \clist_pop:NN \l_@@_tmpb_clist \l_@@_tmpb_tl + \clist_pop:NN \l_@@_tmpc_clist \l_@@_tmpc_tl + \@@_spread_box:Vn \l_@@_tmpa_dim { \l_@@_tmpa_tl } + \@@_center_box:Vn \l_@@_tmpb_dim { \l_@@_tmpb_tl } + \@@_spread_box:Vn \l_@@_tmpc_dim { \l_@@_tmpc_tl } + \skip_vertical:n { 0.5 ex } + } + \end{minipage} + } } % \end{macrocode} % \end{macro} % +% \changes{v1.25}{2023/04/18}{添加盲审隐藏项目资助列表。} +% % \begin{macro}{\@@_cover_foundation:} % 项目资助列表,仅对研究生有效。 % \begin{macrocode} @@ -5926,11 +6135,26 @@ \indent \@@_qquad: 本研究得到 - \l_@@_tmpa_tl + \bool_if:NTF \l_@@_anonymous_bool + { + \c_@@_name_anonname_tl, + }{ + \l_@@_tmpa_tl + } \c_@@_fwid_colon_tl - \l_@@_tmpb_tl + \bool_if:NTF \l_@@_anonymous_bool + { + \c_@@_name_anonname_tl, + }{ + \l_@@_tmpb_tl + } (编号\c_@@_fwid_colon_tl - \l_@@_tmpc_tl + \bool_if:NTF \l_@@_anonymous_bool + { + \c_@@_name_anonname_tl, + }{ + \l_@@_tmpc_tl + } )资助 \par } diff --git a/Master/texmf-dist/tex/latex/nwafuthesis/nwafuthesis.cls b/Master/texmf-dist/tex/latex/nwafuthesis/nwafuthesis.cls index 12f70c4c7ac..3cdb6fe3a06 100644 --- a/Master/texmf-dist/tex/latex/nwafuthesis/nwafuthesis.cls +++ b/Master/texmf-dist/tex/latex/nwafuthesis/nwafuthesis.cls @@ -6,7 +6,7 @@ %% %% nwafuthesis.dtx (with options: `class') %% -%% Copyright (C) 2019--2022 by Nan Geng +%% Copyright (C) 2019--2023 by Nan Geng %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either @@ -30,7 +30,7 @@ %% \NeedsTeXFormat{LaTeX2e} \RequirePackage{expl3} -\GetIdInfo $Id: nwafuthesis.dtx 1.15 2022-05-29 Nan Geng $ +\GetIdInfo $Id: nwafuthesis.dtx 1.25 2023-04-18 Nan Geng $ {Thesis template for Northwest A\&F University} \ProvidesExplClass{\ExplFileName} {\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription} @@ -86,6 +86,7 @@ \bool_new:N \g__nwafu_draft_bool \bool_new:N \l__nwafu_withchap_bool \bool_new:N \l__nwafu_withsignature_bool +\bool_new:N \l__nwafu_anonymous_bool \int_new:N \g__nwafu_chapnum_int \cs_generate_variant:Nn \file_input:n { V } \cs_generate_variant:Nn \int_to_arabic:n { v } @@ -302,7 +303,14 @@ \__nwafu_define_orig_decl_text: \tl_const:Nn \c__nwafu_super_decl_text_tl { - 本人承诺{\c__nwafu_fwid_colon_tl}我的研究生{\__nwafu_text_uline:V \l__nwafu_info_author_tl}% + 本人承诺{\c__nwafu_fwid_colon_tl}我的研究生{% + \bool_if:NTF \l__nwafu_anonymous_bool + { + \__nwafu_text_uline:V \c__nwafu_name_anonname_tl + }{ + \__nwafu_text_uline:V \l__nwafu_info_author_tl + } + }% 所呈交的学位论文是在我指导下独立开展研究工作及取得的研究结果% {\c__nwafu_fwid_comma_tl}属于我现岗职务工作的结果{\c__nwafu_fwid_comma_tl}% 并严格按照学校{\c__nwafu_fwid_left_title_tl}关于规范西北农林科技大学研% @@ -461,7 +469,9 @@ \__nwafu_define_name_const_zh: \clist_map_inline:nn { - { supervisor } { 指导教师 } { Supervisor }, + { supervisor } { 指导教师 } { Supervisor }, + { anonid } { ********** } { ********** }, + { anonname } { **** } { **** }, } { \__nwafu_define_name:nnn #1 } \cs_new_protected:Npn \__nwafu_define_name_const_zh_en: @@ -1295,11 +1305,15 @@ withchapter .bool_set:N = \l__nwafu_withchap_bool, withchapter .default:n = true, withchapter .initial:n = true, - + } +\keys_define:nn { nwafu / style } + { withsig .bool_set:N = \l__nwafu_withsignature_bool, withsig .default:n = true, withsig .initial:n = false, - + } +\keys_define:nn { nwafu / style } + { chapnum .choice:, chapnum .value_required:n = true, chapnum .choices:nn = @@ -1307,6 +1321,12 @@ { \int_set_eq:NN \g__nwafu_chapnum_int \l_keys_choice_int }, chapnum .initial:n = en, } +\keys_define:nn { nwafu / style } + { + anonymous .bool_set:N = \l__nwafu_anonymous_bool, + anonymous .default:n = true, + anonymous .initial:n = false, + } \cs_new_protected:Npn \__nwafu_ctexset_caption: { \int_compare:nNnTF{ \g__nwafu_thesis_type_int } < { 3 } @@ -1832,6 +1852,7 @@ } \cs_new:Npn \__nwafu_blank_underline:n #1 { \rule [ -0.5 ex ] {#1} { 0.4 pt } } +\cs_generate_variant:Nn \__nwafu_blank_underline:n { V } \cs_new:Npn \__nwafu_text_uline:n #1 { \__nwafu_get_text_width:Nn \l__nwafu_tmpt_dim {#1} @@ -1871,12 +1892,22 @@ { \c__nwafu_name_student_id_tl } } \__nwafu_get_max_text_width:NN \l__nwafu_tmpc_dim \l__nwafu_tmpc_clist - \clist_set:Nx \l__nwafu_tmpd_clist - { - { \l__nwafu_info_school_id_tl }, - { }, - { \l__nwafu_info_student_id_tl } - } + \bool_if:NTF \l__nwafu_anonymous_bool + { + \clist_set:Nx \l__nwafu_tmpd_clist + { + { \l__nwafu_info_school_id_tl }, + { }, + { \c__nwafu_name_anonid_tl } + } + }{ + \clist_set:Nx \l__nwafu_tmpd_clist + { + { \l__nwafu_info_school_id_tl }, + { }, + { \l__nwafu_info_student_id_tl } + } + } \__nwafu_get_max_text_width:NN \l__nwafu_tmpd_dim \l__nwafu_tmpd_clist \begin{minipage} [ c ] { \textwidth } \bool_until_do:nn { \clist_if_empty_p:N \l__nwafu_tmpa_clist } @@ -1917,7 +1948,12 @@ { \tl_use:c { c__nwafu_name_ #1 _tl } \c__nwafu_fwid_colon_tl - \__nwafu_text_uline:n {\tl_use:c { l__nwafu_info_ #1 _tl }} + \bool_if:NTF \l__nwafu_anonymous_bool + { + \__nwafu_text_uline:V \c__nwafu_name_anonid_tl + }{ + \__nwafu_text_uline:n {\tl_use:c { l__nwafu_info_ #1 _tl }} + } } \cs_new_protected:Npn \__nwafu_cover_logo: { @@ -1974,15 +2010,28 @@ { \c__nwafu_name_date_tl } } \__nwafu_get_max_text_width:NN \l__nwafu_tmpa_dim \l__nwafu_tmpa_clist - \clist_set:Nx \l__nwafu_tmpb_clist - { - { \l__nwafu_info_major_tl }, - { \l__nwafu_info_researchfield_tl }, - { \l__nwafu_info_author_tl }, - { \l__nwafu_info_supervisor_tl }, - { \l__nwafu_info_cosupervisor_tl }, - { \l__nwafu_info_date_tl } - } + \bool_if:NTF \l__nwafu_anonymous_bool + { + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \l__nwafu_info_major_tl }, + { \l__nwafu_info_researchfield_tl }, + { \c__nwafu_name_anonname_tl }, + { \c__nwafu_name_anonname_tl }, + { \c__nwafu_name_anonname_tl }, + { \l__nwafu_info_date_tl } + } + }{ + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \l__nwafu_info_major_tl }, + { \l__nwafu_info_researchfield_tl }, + { \l__nwafu_info_author_tl }, + { \l__nwafu_info_supervisor_tl }, + { \l__nwafu_info_cosupervisor_tl }, + { \l__nwafu_info_date_tl } + } + } \__nwafu_get_max_text_width:NN \l__nwafu_tmpb_dim \l__nwafu_tmpb_clist } {2}{ @@ -1999,15 +2048,28 @@ { \c__nwafu_name_date_tl } } \__nwafu_get_max_text_width:NN \l__nwafu_tmpa_dim \l__nwafu_tmpa_clist - \clist_set:Nx \l__nwafu_tmpb_clist - { - { \l__nwafu_info_major_tl }, - { \l__nwafu_info_researchfield_tl }, - { \l__nwafu_info_author_tl }, - { \l__nwafu_info_supervisor_tl }, - { \l__nwafu_info_cosupervisor_tl }, - { \l__nwafu_info_date_tl } - } + \bool_if:NTF \l__nwafu_anonymous_bool + { + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \l__nwafu_info_major_tl }, + { \l__nwafu_info_researchfield_tl }, + { \c__nwafu_name_anonname_tl }, + { \c__nwafu_name_anonname_tl }, + { \c__nwafu_name_anonname_tl }, + { \l__nwafu_info_date_tl } + } + }{ + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \l__nwafu_info_major_tl }, + { \l__nwafu_info_researchfield_tl }, + { \l__nwafu_info_author_tl }, + { \l__nwafu_info_supervisor_tl }, + { \l__nwafu_info_cosupervisor_tl }, + { \l__nwafu_info_date_tl } + } + } \__nwafu_get_max_text_width:NN \l__nwafu_tmpb_dim \l__nwafu_tmpb_clist } {2}{ @@ -2021,15 +2083,28 @@ { \c__nwafu_name_date_tl } } \__nwafu_get_max_text_width:NN \l__nwafu_tmpa_dim \l__nwafu_tmpa_clist - \clist_set:Nx \l__nwafu_tmpb_clist - { - { \l__nwafu_info_professionaltype_tl }, - { \l__nwafu_info_professionalfield_tl }, - { \l__nwafu_info_author_tl }, - { \l__nwafu_info_supervisor_tl }, - { \l__nwafu_info_cosupervisor_tl }, - { \l__nwafu_info_date_tl } - } + \bool_if:NTF \l__nwafu_anonymous_bool + { + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \l__nwafu_info_professionaltype_tl }, + { \l__nwafu_info_professionalfield_tl }, + { \c__nwafu_name_anonname_tl }, + { \c__nwafu_name_anonname_tl }, + { \c__nwafu_name_anonname_tl }, + { \l__nwafu_info_date_tl } + } + }{ + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \l__nwafu_info_professionaltype_tl }, + { \l__nwafu_info_professionalfield_tl }, + { \l__nwafu_info_author_tl }, + { \l__nwafu_info_supervisor_tl }, + { \l__nwafu_info_cosupervisor_tl }, + { \l__nwafu_info_date_tl } + } + } \__nwafu_get_max_text_width:NN \l__nwafu_tmpb_dim \l__nwafu_tmpb_clist } } @@ -2046,16 +2121,30 @@ { \c__nwafu_name_date_tl } } \__nwafu_get_max_text_width:NN \l__nwafu_tmpa_dim \l__nwafu_tmpa_clist - \clist_set:Nx \l__nwafu_tmpb_clist - { - { \l__nwafu_info_department_tl }, - { \l__nwafu_info_major_tl }, - { \l__nwafu_info_enroll_tl 级 \l__nwafu_info_class_id_tl 班 }, - { \l__nwafu_info_author_tl }, - { \l__nwafu_info_supervisor_tl }, - { \l__nwafu_info_cosupervisor_tl }, - { \l__nwafu_info_date_tl } - } + \bool_if:NTF \l__nwafu_anonymous_bool + { + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \l__nwafu_info_department_tl }, + { \l__nwafu_info_major_tl }, + { \l__nwafu_info_enroll_tl 级 \l__nwafu_info_class_id_tl 班 }, + { \c__nwafu_name_anonname_tl }, + { \c__nwafu_name_anonname_tl }, + { \c__nwafu_name_anonname_tl }, + { \l__nwafu_info_date_tl } + } + }{ + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \l__nwafu_info_department_tl }, + { \l__nwafu_info_major_tl }, + { \l__nwafu_info_enroll_tl 级 \l__nwafu_info_class_id_tl 班 }, + { \l__nwafu_info_author_tl }, + { \l__nwafu_info_supervisor_tl }, + { \l__nwafu_info_cosupervisor_tl }, + { \l__nwafu_info_date_tl } + } + } \__nwafu_get_max_text_width:NN \l__nwafu_tmpb_dim \l__nwafu_tmpb_clist } } @@ -2098,15 +2187,28 @@ { \c__nwafu_name_cosupervisor_en_tl }, { \c__nwafu_name_date_en_tl } } - \clist_set:Nx \l__nwafu_tmpb_clist - { - { \l__nwafu_info_major_en_tl }, - { \l__nwafu_info_researchfield_en_tl }, - { \l__nwafu_info_author_en_tl }, - { \l__nwafu_info_supervisor_en_tl }, - { \l__nwafu_info_cosupervisor_en_tl }, - { \l__nwafu_info_date_en_tl } - } + \bool_if:NTF \l__nwafu_anonymous_bool + { + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \l__nwafu_info_major_en_tl }, + { \l__nwafu_info_researchfield_en_tl }, + { \c__nwafu_name_anonname_en_tl }, + { \c__nwafu_name_anonname_en_tl }, + { \c__nwafu_name_anonname_en_tl }, + { \l__nwafu_info_date_en_tl } + } + }{ + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \l__nwafu_info_major_en_tl }, + { \l__nwafu_info_researchfield_en_tl }, + { \l__nwafu_info_author_en_tl }, + { \l__nwafu_info_supervisor_en_tl }, + { \l__nwafu_info_cosupervisor_en_tl }, + { \l__nwafu_info_date_en_tl } + } + } \bool_until_do:nn { \clist_if_empty_p:N \l__nwafu_tmpa_clist } { @@ -2145,15 +2247,28 @@ { \c__nwafu_name_cosupervisor_en_tl }, { \c__nwafu_name_date_en_tl } } - \clist_set:Nx \l__nwafu_tmpb_clist - { - { \l__nwafu_info_major_en_tl }, - { \l__nwafu_info_researchfield_en_tl }, - { \l__nwafu_info_author_en_tl }, - { \l__nwafu_info_supervisor_en_tl }, - { \l__nwafu_info_cosupervisor_en_tl }, - { \l__nwafu_info_date_en_tl } - } + \bool_if:NTF \l__nwafu_anonymous_bool + { + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \l__nwafu_info_major_en_tl }, + { \l__nwafu_info_researchfield_en_tl }, + { \c__nwafu_name_anonname_en_tl }, + { \c__nwafu_name_anonname_en_tl }, + { \c__nwafu_name_anonname_en_tl }, + { \l__nwafu_info_date_en_tl } + } + }{ + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \l__nwafu_info_major_en_tl }, + { \l__nwafu_info_researchfield_en_tl }, + { \l__nwafu_info_author_en_tl }, + { \l__nwafu_info_supervisor_en_tl }, + { \l__nwafu_info_cosupervisor_en_tl }, + { \l__nwafu_info_date_en_tl } + } + } \bool_until_do:nn { \clist_if_empty_p:N \l__nwafu_tmpa_clist } { @@ -2189,15 +2304,28 @@ { \c__nwafu_name_cosupervisor_en_tl }, { \c__nwafu_name_date_en_tl } } - \clist_set:Nx \l__nwafu_tmpb_clist - { - { Master ~ of ~ \l__nwafu_info_professionaltype_en_tl }, - { \l__nwafu_info_professionalfield_en_tl }, - { \l__nwafu_info_author_en_tl }, - { \l__nwafu_info_supervisor_en_tl }, - { \l__nwafu_info_cosupervisor_en_tl }, - { \l__nwafu_info_date_en_tl } - } + \bool_if:NTF \l__nwafu_anonymous_bool + { + \clist_set:Nx \l__nwafu_tmpb_clist + { + { Master ~ of ~ \l__nwafu_info_professionaltype_en_tl }, + { \l__nwafu_info_professionalfield_en_tl }, + { \c__nwafu_name_anonname_en_tl }, + { \c__nwafu_name_anonname_en_tl }, + { \c__nwafu_name_anonname_en_tl }, + { \l__nwafu_info_date_en_tl } + } + }{ + \clist_set:Nx \l__nwafu_tmpb_clist + { + { Master ~ of ~ \l__nwafu_info_professionaltype_en_tl }, + { \l__nwafu_info_professionalfield_en_tl }, + { \l__nwafu_info_author_en_tl }, + { \l__nwafu_info_supervisor_en_tl }, + { \l__nwafu_info_cosupervisor_en_tl }, + { \l__nwafu_info_date_en_tl } + } + } \bool_until_do:nn { \clist_if_empty_p:N \l__nwafu_tmpa_clist } { @@ -2245,12 +2373,22 @@ \skip_vertical:n { 1 ex } \end{minipage} }{ - \clist_set:Nx \l__nwafu_tmpb_clist - { - {\l__nwafu_info_author_tl }, - {\l__nwafu_info_supervisor_tl }, - {\l__nwafu_tmpa_tl }, - } + \bool_if:NTF \l__nwafu_anonymous_bool + { + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \c__nwafu_name_anonname_tl }, + { \c__nwafu_name_anonname_tl }, + { \c__nwafu_name_anonname_tl }, + } + }{ + \clist_set:Nx \l__nwafu_tmpb_clist + { + {\l__nwafu_info_author_tl }, + {\l__nwafu_info_supervisor_tl }, + {\l__nwafu_tmpa_tl }, + } + } \__nwafu_get_max_text_width:NN \l__nwafu_tmpb_dim \l__nwafu_tmpb_clist \dim_set_eq:NN \l__nwafu_tmpt_dim \l__nwafu_tmpa_dim \dim_add:Nn \l__nwafu_tmpt_dim { \l__nwafu_tmpb_dim } @@ -2291,11 +2429,20 @@ \skip_vertical:n { 1 ex } \end{minipage} }{ - \clist_set:Nx \l__nwafu_tmpb_clist - { - {\l__nwafu_info_author_tl }, - {\l__nwafu_info_supervisor_tl }, - } + \bool_if:NTF \l__nwafu_anonymous_bool + { + \clist_set:Nx \l__nwafu_tmpb_clist + { + { \c__nwafu_name_anonname_tl }, + { \c__nwafu_name_anonname_tl }, + } + }{ + \clist_set:Nx \l__nwafu_tmpb_clist + { + {\l__nwafu_info_author_tl }, + {\l__nwafu_info_supervisor_tl }, + } + } \__nwafu_get_max_text_width:NN \l__nwafu_tmpb_dim \l__nwafu_tmpb_clist \dim_add:Nn \l__nwafu_tmpb_dim { \l__nwafu_tmpb_dim } \dim_set_eq:NN \l__nwafu_tmpt_dim \l__nwafu_tmpa_dim @@ -2341,19 +2488,22 @@ \__nwafu_get_max_text_width:NN \l__nwafu_tmpa_dim \l__nwafu_tmpa_clist \__nwafu_get_max_text_width:NN \l__nwafu_tmpb_dim \l__nwafu_tmpb_clist \__nwafu_get_max_text_width:NN \l__nwafu_tmpc_dim \l__nwafu_tmpc_clist - \begin{minipage} [ c ] { \textwidth } - \centering - \bool_until_do:nn { \clist_if_empty_p:N \l__nwafu_tmpa_clist } - { - \clist_pop:NN \l__nwafu_tmpa_clist \l__nwafu_tmpa_tl - \clist_pop:NN \l__nwafu_tmpb_clist \l__nwafu_tmpb_tl - \clist_pop:NN \l__nwafu_tmpc_clist \l__nwafu_tmpc_tl - \__nwafu_spread_box:Vn \l__nwafu_tmpa_dim { \l__nwafu_tmpa_tl } - \__nwafu_center_box:Vn \l__nwafu_tmpb_dim { \l__nwafu_tmpb_tl } - \__nwafu_spread_box:Vn \l__nwafu_tmpc_dim { \l__nwafu_tmpc_tl } - \skip_vertical:n { 0.5 ex } - } - \end{minipage} + \bool_if:NF \l__nwafu_anonymous_bool + { + \begin{minipage} [ c ] { \textwidth } + \centering + \bool_until_do:nn { \clist_if_empty_p:N \l__nwafu_tmpa_clist } + { + \clist_pop:NN \l__nwafu_tmpa_clist \l__nwafu_tmpa_tl + \clist_pop:NN \l__nwafu_tmpb_clist \l__nwafu_tmpb_tl + \clist_pop:NN \l__nwafu_tmpc_clist \l__nwafu_tmpc_tl + \__nwafu_spread_box:Vn \l__nwafu_tmpa_dim { \l__nwafu_tmpa_tl } + \__nwafu_center_box:Vn \l__nwafu_tmpb_dim { \l__nwafu_tmpb_tl } + \__nwafu_spread_box:Vn \l__nwafu_tmpc_dim { \l__nwafu_tmpc_tl } + \skip_vertical:n { 0.5 ex } + } + \end{minipage} + } } \cs_new_protected:Npn \__nwafu_cover_foundation: { @@ -2384,11 +2534,26 @@ \indent \__nwafu_qquad: 本研究得到 - \l__nwafu_tmpa_tl + \bool_if:NTF \l__nwafu_anonymous_bool + { + \c__nwafu_name_anonname_tl, + }{ + \l__nwafu_tmpa_tl + } \c__nwafu_fwid_colon_tl - \l__nwafu_tmpb_tl + \bool_if:NTF \l__nwafu_anonymous_bool + { + \c__nwafu_name_anonname_tl, + }{ + \l__nwafu_tmpb_tl + } (编号\c__nwafu_fwid_colon_tl - \l__nwafu_tmpc_tl + \bool_if:NTF \l__nwafu_anonymous_bool + { + \c__nwafu_name_anonname_tl, + }{ + \l__nwafu_tmpc_tl + } )资助 \par } -- cgit v1.2.3