Skip to content

Commit

Permalink
docs: one doc for both graduate nad undergraduate
Browse files Browse the repository at this point in the history
  • Loading branch information
fky2015 committed Apr 22, 2024
1 parent 0a4fca2 commit 6afd255
Show file tree
Hide file tree
Showing 6 changed files with 110 additions and 25 deletions.
40 changes: 36 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -105,24 +105,56 @@ pkg: doc pkg-only

GRAD_DEST_DIR = ./BIThesis-graduate-thesis-template

grad: doc copy FORCE_MAKE
handbooks: copy FORCE_MAKE
cd the-graduates-handbook && latexmk -c \
&& GRADUATE=true latexmk && mv main.pdf graduate-handbook.pdf \
&& latexmk && latexmk -c \
&& latexmk && mv main.pdf undergraduate-handbook.pdf && cd -

# 用于提供给研究生院
grad: doc copy handbooks FORCE_MAKE
# if $version is not specified, alert the user.
@if [ -z "$$version" ]; then \
echo -e "\e[32mPlease specify the version of the template you want to generate.\e[0m"; \
echo -e "\e[32mFor example: make grad version=1.0.0\e[0m"; \
exit 1; \
fi
rm -rf ${GRAD_DEST_DIR}-${version} ${GRAD_DEST_DIR}-${version}.zip
cd ./the-graduates-handbook && latexmk && cd -
cd $(SCAFFOLDDIR)/graduate-thesis && latexmk && latexmk -c && cd -
mkdir ${GRAD_DEST_DIR}-${version}
cp -r $(SCAFFOLDDIR)/graduate-thesis/ ${GRAD_DEST_DIR}-${version}/graduate-thesis/
cp ./bithesis.pdf ${GRAD_DEST_DIR}-${version}/'3-详细配置手册'.pdf
cp ./the-graduates-handbook/main.pdf ${GRAD_DEST_DIR}-${version}/'2-快速使用手册'.pdf
cp ./the-graduates-handbook/graduate-handbook.pdf ${GRAD_DEST_DIR}-${version}/'2-快速使用手册'.pdf
(cd ${GRAD_DEST_DIR}-${version}/graduate-thesis/ && zip -rm ../"1-BIThesis-论文模板-${version}".zip . )
rmdir ${GRAD_DEST_DIR}-${version}/graduate-thesis
zip -r ${GRAD_DEST_DIR}-${version}.zip ${GRAD_DEST_DIR}-${version}


UNDERGRAD_DEST_DIR = ./BIThesis-undergraduate-thesis-templates

# 用于提供给教务部
undergrad: doc copy handbooks FORCE_MAKE
@if [ -z "$$version" ]; then \
echo -e "\e[32mPlease specify the version of the template you want to generate.\e[0m"; \
echo -e "\e[32mFor example: make grad version=1.0.0\e[0m"; \
exit 1; \
fi
rm -rf ${UNDERGRAD_DEST_DIR}-${version} ${UNDERGRAD_DEST_DIR}-${version}.zip
cd $(SCAFFOLDDIR)/undergraduate-thesis && latexmk && latexmk -c && cd -
cd $(SCAFFOLDDIR)/undergraduate-thesis-en && latexmk && latexmk -c && cd -
cd $(SCAFFOLDDIR)/paper-translation && latexmk && latexmk -c && cd -
mkdir ${UNDERGRAD_DEST_DIR}-${version}
cp -r $(SCAFFOLDDIR)/undergraduate-thesis/ ${UNDERGRAD_DEST_DIR}-${version}/undergraduate-thesis/
cp -r $(SCAFFOLDDIR)/undergraduate-thesis-en/ ${UNDERGRAD_DEST_DIR}-${version}/undergraduate-thesis-en/
cp -r $(SCAFFOLDDIR)/paper-translation/ ${UNDERGRAD_DEST_DIR}-${version}/paper-translation/
cp ./bithesis.pdf ${UNDERGRAD_DEST_DIR}-${version}/'4-详细配置手册'.pdf
cp ./the-graduates-handbook/undergraduate-handbook.pdf ${UNDERGRAD_DEST_DIR}-${version}/'5-快速使用手册'.pdf
(cd ${UNDERGRAD_DEST_DIR}-${version}/undergraduate-thesis/ && zip -rm ../"1-BIThesis-本科毕设论文模板-${version}".zip . )
(cd ${UNDERGRAD_DEST_DIR}-${version}/undergraduate-thesis-en/ && zip -rm ../"2-BIThesis-本科毕设论文模板(全英文)-${version}".zip . )
(cd ${UNDERGRAD_DEST_DIR}-${version}/paper-translation/ && zip -rm ../"3-BIThesis-本科毕设外文翻译-${version}".zip . )
rmdir ${UNDERGRAD_DEST_DIR}-${version}/undergraduate-thesis
rmdir ${UNDERGRAD_DEST_DIR}-${version}/undergraduate-thesis-en
rmdir ${UNDERGRAD_DEST_DIR}-${version}/paper-translation
zip -r ${UNDERGRAD_DEST_DIR}-${version}.zip ${UNDERGRAD_DEST_DIR}-${version}

examples: cls
cp bithesis.cls $(EXAMPLEDIR)/cover/
Expand Down
2 changes: 1 addition & 1 deletion the-graduates-handbook/chapters/ch1-intro.tex
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ \section{如何将自己电脑上的论文转到 Overleaf}

(原因:嵌套文件夹可能导致无法统计字数;不过不影响编译。)

参考图\ref{fig:overleaf-recompile},文件 \texttt{main.tex}、文件夹 \texttt{chapters/} 等在根目录,而没有嵌套在 \texttt{graduate-thesis/} 文件夹中。若您已嵌套,可到左侧文件列表单击再拖动来移动文件。
参考图\ref{fig:overleaf-recompile},文件 \texttt{main.tex}、文件夹 \texttt{chapters/} 等在根目录,而没有嵌套在 \isGraduateTF{\texttt{graduate-thesis/}}{\texttt{undergraduate-thesis/}} 文件夹中。若您已嵌套,可到左侧文件列表单击再拖动来移动文件。

详细操作如下。访问 \url{https://www.overleaf.com/project},单击左上角\texttt{New Project},然后有下面两种方法。

Expand Down
58 changes: 42 additions & 16 deletions the-graduates-handbook/chapters/ch2-template-usage.tex
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ \chapter{模板组成与使用}

\section{认识模板组成}

\dirtree{%
\isGraduateTF{\dirtree{%
.1 /graduate-thesis/.
.2 bithesis.pdf\DTcomment{\BIThesis 模板的使用手册}.
.2 bithesis.cls\DTcomment{模板类文件}.
Expand All @@ -25,7 +25,22 @@ \section{认识模板组成}
.2 references/\DTcomment{包含了「参考文献」与「成果清单」中引用的参考文献}.
.3 main.bib.
.3 pub.bib.
}
}}{\dirtree{%
.1 /undergraduate-thesis/.
.2 bithesis.pdf\DTcomment{\BIThesis 模板的使用手册}.
.2 bithesis.cls\DTcomment{模板类文件}.
.2 latexmkrc\DTcomment{配置 latexmkrc 的编译选项}.
.2 main.tex\DTcomment{入口文件}.
.2 chapters/\DTcomment{正文内容文件夹}.
.3 0\_abstract.tex\DTcomment{摘要}.
.3 1\_chapter1.tex\DTcomment{章节一}.
.3 \ldots{}.
.2 images/\DTcomment{存放了一些图片,也可以在正文写作中用于存放图片}.
.3 \ldots{}.
.2 misc/\DTcomment{包含参考文献、结论等前置、后置内容}.
.3 1\_originality.tex.
.3 \ldots{}.
}}

在本模板提供的文件夹中,主要包含了上方所示的几个文件夹与文件。

Expand All @@ -38,7 +53,8 @@ \subsection{模板手册 \texttt{bithesis.pdf}}
\subsection{入口文件 \texttt{main.tex}}

\texttt{main.tex} 是本模板的入口文件,其中包含了本模板的所有配置信息,
并引用了其余文件夹(\texttt{chapters/}、\texttt{figures/}、\texttt{references/})的各个章节。在这里,我们可以进行个人信息的录入,
并引用了其余文件夹(\texttt{chapters/}、\texttt{figures/}
\isGraduateTF{、\texttt{references/}}{})的各个章节。在这里,我们可以进行个人信息的录入,
以及通过参数调整论文的各处格式。当然,每个参数的用法都已经
\texttt{bithesis.pdf} 中进行了详细的说明。

Expand All @@ -64,15 +80,15 @@ \subsection{主体内容文件夹}
\begin{enumerate}
\item\texttt{main.tex}中填写个人信息,调整论文格式;
\item\texttt{chapters/}文件夹中编写论文的各个章节;
\item 补充在\texttt{misc/}、\texttt{references/}文件夹中的其他内容。
\item 补充在\texttt{misc/}\isGraduateTF{\texttt{references/}}{}文件夹中的其他内容。
\end{enumerate}

更棒的是,我们可以通过修改配置一键生成支持盲审的论文版本——一次写作,
多种格式!

\section{个人信息录入}

在 main.tex 中,我们可以看到如下的代码:
\texttt{main.tex} 中,我们可以看到如下的代码:
\begin{lstlisting}[language=TeX]
\BITSetup{
% ...
Expand All @@ -95,7 +111,7 @@ \section{个人信息录入}
这里的各个参数就是用于控制论文封面的个人信息的。
在这里,我们用自己的信息替换掉这些默认参数,就可以生成自己的论文封面了。

上方的 cover 参数中,date 一项用于自定义封面中的日期。如果不填写该参数,
上方的 \texttt{cover} 参数中,\texttt{date} 一项用于自定义封面中的日期。如果不填写该参数,
则默认使用当前的日期。

是的,就是这么简单!
Expand Down Expand Up @@ -133,23 +149,33 @@ \section{其他部分}

\texttt{misc/}文件夹中的各个文件与正文存在着下列的对应关系:
\begin{itemize}
\item \texttt{abstract.tex} 对应着摘要;
\item \texttt{conclusion.tex} 对应着结论;
\item \texttt{acknowledgements.tex} 对应着致谢;
\item \texttt{symbols.tex} 对应着符号表;
\item \texttt{pub.bib} 对应着「攻读学位期间发表论文与研究成果清单」中的成果;
\item \texttt{main.bib} 对应着「参考文献」中的文献。
\isGraduateTF{
\item \texttt{abstract.tex} 对应着摘要;
\item \texttt{conclusion.tex} 对应着结论;
\item \texttt{acknowledgements.tex} 对应着致谢;
\item \texttt{symbols.tex} 对应着符号表;
\item \texttt{pub.bib} 对应着「攻读学位期间发表论文与研究成果清单」中的成果;
\item \texttt{main.bib} 对应着「参考文献」中的文献。
}{
\item \texttt{1\_originality.tex} 对应着摘要;
\item \texttt{2\_conclusion.tex} 对应着结论;
\item \texttt{3\_reference.tex} 对应着参考文献;
\item \texttt{4\_appendix.tex} 对应着附录;
\item \texttt{5\_acknowledgements.tex} 对应着致谢;
\item \texttt{ref.bib} 对应着「参考文献」中的文献。
}
\end{itemize}

由于在论文中,这些部分的样式固定且内容较短,因此我们
将这些部分的内容放在了单独的文件中。同时,我们也在每个
文件中提供了示例内容,以供参考。相信你在阅读这些示例内容
时,就已经知道了如何编写这些部分的内容了。

\isGraduateTF{
需要特殊注意的是,「成果清单」中的成果是通过引用 \texttt{pub.bib}
中的文献来生成的。因此,如果你需要在「成果清单」中添加
新的成果,那么你需要首先在 \texttt{pub.bib} 中添加新的文献条目。

新的成果,那么你需要首先在 \texttt{pub.bib} 中添加新的文献条目。%
%
而如果你想要在盲审模式中隐藏自己的名字,那么你需要
根据 pub.bib 中的示例以及注释说明,为每个文献条目添加并设置
\texttt{author+an} 字段。
Expand All @@ -167,9 +193,9 @@ \section{其他部分}
\end{lstlisting}
通过设置 \texttt{author+an} 字段,我们可以在盲审模式打开时,
将自己的名字自动替换为「第一作者」。

%
更具体的用法,可以参考 \texttt{pub.bib} 的注释内容或者 \texttt{bithesis.pdf} 中的说明。

}{}
\subsection{交叉引用}

\subsubsection{公式和图标引用}
Expand Down
2 changes: 1 addition & 1 deletion the-graduates-handbook/chapters/ch3-latex-syntax.tex
Original file line number Diff line number Diff line change
Expand Up @@ -354,7 +354,7 @@ \subsection{将参考文献的内容与表现分离}

\subsection{在正文中引用参考文献}

\textit{如果想要按照章节分别管理参考文献,可以详见 biblatex中关于refsection 的部分。简单来说,就是使用 refsection 包裹一个章节的全部内容即可。但由于我校论文要求并非采用章节管理,因此不做赘述。}
\textit{如果想要按照章节分别管理参考文献,可以详见 biblatex 中关于refsection 的部分。简单来说,就是使用 refsection 包裹一个章节的全部内容即可。但由于我校论文要求并非采用章节管理,因此不做赘述。}

正文中引用参考文献时\cite{Jiang2005Size},用\verb+\cite{key1,key2,key3...}+可以产生“上标引用的参考文献”,
\cite{Meta_CN,chen2007act,DPMG}。
Expand Down
7 changes: 5 additions & 2 deletions the-graduates-handbook/chapters/cover.tex
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@

\title{\BIThesis{}研究生学位论文\LaTeX{}模板\\快速使用指南}
\author{北京理工大学~~研究生院}
% \isGraduateTF{graduate}{undergraduate}
\title{\BIThesis{}\isGraduateTF{研究生}{本科生}学位论文\LaTeX{}模板\\快速使用指南}
\author{北京理工大学~~\isGraduateTF{研究生院}{BIThesis 开源项目}}



\maketitle
26 changes: 25 additions & 1 deletion the-graduates-handbook/main.tex
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
% 采用章节标题级别的附录格式
appendices / chapterLevel = true,
style = {
head = \BIThesis 研究生学位论文 \LaTeX 模板快速使用指南,
head = \BIThesis \isGraduateTF{研究生}{本科生}学位论文 \LaTeX 模板快速使用指南,
pageVerticalAlign = top,
% 开启 Windows 平台下的中易宋体伪粗体。
% windowsSimSunFakeBold = true,
Expand Down Expand Up @@ -66,6 +66,30 @@

\addbibresource{reference/main.bib}

\ExplSyntaxOn

\NewDocumentCommand{\getenv}{om}
{
\sys_get_shell:nnN { kpsewhich ~ --var-value ~ #2 } { } \l_tmpa_tl
\tl_trim_spaces:N \l_tmpa_tl
\IfNoValueTF { #1 }
{
\tl_use:N \l_tmpa_tl
}
{
\tl_set_eq:NN #1 \l_tmpa_tl
}
}

\tl_gset:Nn \GRADUATE {}
\getenv[\GRADUATE]{GRADUATE}

\NewDocumentCommand{\isGraduateTF}{ m m } {
\tl_if_eq:nnTF {\GRADUATE} { true } { #1 } { #2 }
}

\ExplSyntaxOff

\begin{document}

\input{chapters/cover.tex}
Expand Down

0 comments on commit 6afd255

Please sign in to comment.