Add project report template

This commit is contained in:
Hao He 2022-09-21 16:45:29 +08:00
parent fe9291a350
commit 861bbf48fe
6 changed files with 1103 additions and 8 deletions

View File

@ -74,16 +74,17 @@
在期末presentation结束后要求提交一个期末报告作为整个开源参与过程和思考的一个正式记录也是我们评分的重要参考之一。
报告要求使用LaTeX撰写模板参见[Report/](Report/)文件夹以PDF格式提交详细要求参见报告模板。
报告要求使用LaTeX撰写模板参见[Report/](Report/)文件夹以PDF格式提交详细要求参见报告模板。可以将报告模版文件上传到[OverLeaf](https://www.overleaf.com/)上设置编译器为XeLaTeX即可一键编译为PDF避免复杂的LaTeX环境配置。
最终提交的报告若遵循报告格式且包含了要求的所有内容即得5分基本分分配如下
* 遵循要求的报告格式1分。
* 准确列出了所有的交互和贡献1分。
* 对自己的贡献过程的总结与反思1分。
* 对开源现状的思考未来是否会继续参与开源1分。
* 对课程的建议1分。
如果合适可以直接复用你的Lab和Presentation的相关内容用于撰写期末报告。不过需要注意报告作为一个整体的逻辑完整性和一致性。
余下3分将根据报告的表达清晰度、思考深度、认真程度等因素综合评判会根据优秀率的情况进行适当调整。需要特别注意的是**报告的长度不会成为评分的标准**,希望大家把功课主要放在做开源贡献本身,及对整个过程的总结和思考上,报告简明扼要,能够表达清楚意思即可。
最终提交的报告评分分配如下:
* 遵循要求的报告格式1分
* “开源项目概览”小节3分
* “对开源项目的贡献”小节3分
* “总结与反思”小节3分。
每一小节的评分将根据报告的表达清晰度、思考深度、认真程度等因素综合评判,会根据优秀率的情况进行适当调整。需要特别注意的是,**报告的长度不会成为评分的标准**,希望大家把功课主要放在做开源贡献本身,及对整个过程的总结和思考上,报告简明扼要,能够表达清楚意思即可。
请在截止日期之前(具体时间参见今年的[课程大纲](../Syllabus.md)将期末报告的PDF以邮件形式发送给助教heh@pku.edu.cn文件命名统一为`学号-姓名-期末报告.pdf`(例如`2001111320-何昊-期末报告.pdf`)。

246
Assignments/Report/.gitignore vendored Normal file
View File

@ -0,0 +1,246 @@
## Core latex/pdflatex auxiliary files:
*.aux
*.lof
*.log
*.lot
*.fls
*.out
*.toc
*.fmt
*.fot
*.cb
*.cb2
.*.lb
delete-temp-files.bat
elegantpaper-cn.pdf
elegantpaper-en.pdf
*clean.bat
## Intermediate documents:
*.dvi
*.xdv
*-converted-to.*
# these rules might exclude image files for figures etc.
# *.ps
# *.eps
# *.pdf
## Generated if empty string is given at "Please type another file name for output:"
.pdf
## Bibliography auxiliary files (bibtex/biblatex/biber):
*.bbl
*.bcf
*.blg
*-blx.aux
*-blx.bib
*.run.xml
## Build tool auxiliary files:
*.fdb_latexmk
*.synctex
*.synctex(busy)
*.synctex.gz
*.synctex.gz(busy)
*.pdfsync
## Auxiliary and intermediate files from other packages:
# algorithms
*.alg
*.loa
# achemso
acs-*.bib
# amsthm
*.thm
# beamer
*.nav
*.pre
*.snm
*.vrb
# changes
*.soc
# cprotect
*.cpt
# elsarticle (documentclass of Elsevier journals)
*.spl
# endnotes
*.ent
# fixme
*.lox
# feynmf/feynmp
*.mf
*.mp
*.t[1-9]
*.t[1-9][0-9]
*.tfm
#(r)(e)ledmac/(r)(e)ledpar
*.end
*.?end
*.[1-9]
*.[1-9][0-9]
*.[1-9][0-9][0-9]
*.[1-9]R
*.[1-9][0-9]R
*.[1-9][0-9][0-9]R
*.eledsec[1-9]
*.eledsec[1-9]R
*.eledsec[1-9][0-9]
*.eledsec[1-9][0-9]R
*.eledsec[1-9][0-9][0-9]
*.eledsec[1-9][0-9][0-9]R
# glossaries
*.acn
*.acr
*.glg
*.glo
*.gls
*.glsdefs
# gnuplottex
*-gnuplottex-*
# gregoriotex
*.gaux
*.gtex
# htlatex
*.4ct
*.4tc
*.idv
*.lg
*.trc
*.xref
# hyperref
*.brf
# knitr
*-concordance.tex
# TODO Comment the next line if you want to keep your tikz graphics files
*.tikz
*-tikzDictionary
# listings
*.lol
# makeidx
*.idx
*.ilg
*.ind
*.ist
# minitoc
*.maf
*.mlf
*.mlt
*.mtc[0-9]*
*.slf[0-9]*
*.slt[0-9]*
*.stc[0-9]*
# minted
_minted*
*.pyg
# morewrites
*.mw
# nomencl
*.nlg
*.nlo
*.nls
# pax
*.pax
# pdfpcnotes
*.pdfpc
# sagetex
*.sagetex.sage
*.sagetex.py
*.sagetex.scmd
# scrwfile
*.wrt
# sympy
*.sout
*.sympy
sympy-plots-for-*.tex/
# pdfcomment
*.upa
*.upb
# pythontex
*.pytxcode
pythontex-files-*/
# thmtools
*.loe
# TikZ & PGF
*.dpth
*.md5
*.auxlock
# todonotes
*.tdo
# easy-todo
*.lod
# xmpincl
*.xmpi
# xindy
*.xdy
# xypic precompiled matrices
*.xyc
# endfloat
*.ttt
*.fff
# Latexian
TSWLatexianTemp*
## Editors:
# WinEdt
*.bak
*.sav
# Texpad
.texpadtmp
# Kile
*.backup
# KBibTeX
*~[0-9]*
# auto folder when using emacs and auctex
./auto/*
*.el
# expex forward references with \gathertags
*-tags.tex
# standalone packages
*.sta
# generated if using elsarticle.cls
*.spl

416
Assignments/Report/LICENSE Normal file
View File

@ -0,0 +1,416 @@
The LaTeX Project Public License
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
LPPL Version 1.3c 2008-05-04
Copyright 1999 2002-2008 LaTeX3 Project
Everyone is allowed to distribute verbatim copies of this
license document, but modification of it is not allowed.
PREAMBLE
========
The LaTeX Project Public License (LPPL) is the primary license under
which the LaTeX kernel and the base LaTeX packages are distributed.
You may use this license for any work of which you hold the copyright
and which you wish to distribute. This license may be particularly
suitable if your work is TeX-related (such as a LaTeX package), but
it is written in such a way that you can use it even if your work is
unrelated to TeX.
The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE',
below, gives instructions, examples, and recommendations for authors
who are considering distributing their works under this license.
This license gives conditions under which a work may be distributed
and modified, as well as conditions under which modified versions of
that work may be distributed.
We, the LaTeX3 Project, believe that the conditions below give you
the freedom to make and distribute modified versions of your work
that conform with whatever technical specifications you wish while
maintaining the availability, integrity, and reliability of
that work. If you do not see how to achieve your goal while
meeting these conditions, then read the document `cfgguide.tex'
and `modguide.tex' in the base LaTeX distribution for suggestions.
DEFINITIONS
===========
In this license document the following terms are used:
`Work'
Any work being distributed under this License.
`Derived Work'
Any work that under any applicable law is derived from the Work.
`Modification'
Any procedure that produces a Derived Work under any applicable
law -- for example, the production of a file containing an
original file associated with the Work or a significant portion of
such a file, either verbatim or with modifications and/or
translated into another language.
`Modify'
To apply any procedure that produces a Derived Work under any
applicable law.
`Distribution'
Making copies of the Work available from one person to another, in
whole or in part. Distribution includes (but is not limited to)
making any electronic components of the Work accessible by
file transfer protocols such as FTP or HTTP or by shared file
systems such as Sun's Network File System (NFS).
`Compiled Work'
A version of the Work that has been processed into a form where it
is directly usable on a computer system. This processing may
include using installation facilities provided by the Work,
transformations of the Work, copying of components of the Work, or
other activities. Note that modification of any installation
facilities provided by the Work constitutes modification of the Work.
`Current Maintainer'
A person or persons nominated as such within the Work. If there is
no such explicit nomination then it is the `Copyright Holder' under
any applicable law.
`Base Interpreter'
A program or process that is normally needed for running or
interpreting a part or the whole of the Work.
A Base Interpreter may depend on external components but these
are not considered part of the Base Interpreter provided that each
external component clearly identifies itself whenever it is used
interactively. Unless explicitly specified when applying the
license to the Work, the only applicable Base Interpreter is a
`LaTeX-Format' or in the case of files belonging to the
`LaTeX-format' a program implementing the `TeX language'.
CONDITIONS ON DISTRIBUTION AND MODIFICATION
===========================================
1. Activities other than distribution and/or modification of the Work
are not covered by this license; they are outside its scope. In
particular, the act of running the Work is not restricted and no
requirements are made concerning any offers of support for the Work.
2. You may distribute a complete, unmodified copy of the Work as you
received it. Distribution of only part of the Work is considered
modification of the Work, and no right to distribute such a Derived
Work may be assumed under the terms of this clause.
3. You may distribute a Compiled Work that has been generated from a
complete, unmodified copy of the Work as distributed under Clause 2
above, as long as that Compiled Work is distributed in such a way that
the recipients may install the Compiled Work on their system exactly
as it would have been installed if they generated a Compiled Work
directly from the Work.
4. If you are the Current Maintainer of the Work, you may, without
restriction, modify the Work, thus creating a Derived Work. You may
also distribute the Derived Work without restriction, including
Compiled Works generated from the Derived Work. Derived Works
distributed in this manner by the Current Maintainer are considered to
be updated versions of the Work.
5. If you are not the Current Maintainer of the Work, you may modify
your copy of the Work, thus creating a Derived Work based on the Work,
and compile this Derived Work, thus creating a Compiled Work based on
the Derived Work.
6. If you are not the Current Maintainer of the Work, you may
distribute a Derived Work provided the following conditions are met
for every component of the Work unless that component clearly states
in the copyright notice that it is exempt from that condition. Only
the Current Maintainer is allowed to add such statements of exemption
to a component of the Work.
a. If a component of this Derived Work can be a direct replacement
for a component of the Work when that component is used with the
Base Interpreter, then, wherever this component of the Work
identifies itself to the user when used interactively with that
Base Interpreter, the replacement component of this Derived Work
clearly and unambiguously identifies itself as a modified version
of this component to the user when used interactively with that
Base Interpreter.
b. Every component of the Derived Work contains prominent notices
detailing the nature of the changes to that component, or a
prominent reference to another file that is distributed as part
of the Derived Work and that contains a complete and accurate log
of the changes.
c. No information in the Derived Work implies that any persons,
including (but not limited to) the authors of the original version
of the Work, provide any support, including (but not limited to)
the reporting and handling of errors, to recipients of the
Derived Work unless those persons have stated explicitly that
they do provide such support for the Derived Work.
d. You distribute at least one of the following with the Derived Work:
1. A complete, unmodified copy of the Work;
if your distribution of a modified component is made by
offering access to copy the modified component from a
designated place, then offering equivalent access to copy
the Work from the same or some similar place meets this
condition, even though third parties are not compelled to
copy the Work along with the modified component;
2. Information that is sufficient to obtain a complete,
unmodified copy of the Work.
7. If you are not the Current Maintainer of the Work, you may
distribute a Compiled Work generated from a Derived Work, as long as
the Derived Work is distributed to all recipients of the Compiled
Work, and as long as the conditions of Clause 6, above, are met with
regard to the Derived Work.
8. The conditions above are not intended to prohibit, and hence do not
apply to, the modification, by any method, of any component so that it
becomes identical to an updated version of that component of the Work as
it is distributed by the Current Maintainer under Clause 4, above.
9. Distribution of the Work or any Derived Work in an alternative
format, where the Work or that Derived Work (in whole or in part) is
then produced by applying some process to that format, does not relax or
nullify any sections of this license as they pertain to the results of
applying that process.
10. a. A Derived Work may be distributed under a different license
provided that license itself honors the conditions listed in
Clause 6 above, in regard to the Work, though it does not have
to honor the rest of the conditions in this license.
b. If a Derived Work is distributed under a different license, that
Derived Work must provide sufficient documentation as part of
itself to allow each recipient of that Derived Work to honor the
restrictions in Clause 6 above, concerning changes from the Work.
11. This license places no restrictions on works that are unrelated to
the Work, nor does this license place any restrictions on aggregating
such works with the Work by any means.
12. Nothing in this license is intended to, or may be used to, prevent
complete compliance by all parties with all applicable laws.
NO WARRANTY
===========
There is no warranty for the Work. Except when otherwise stated in
writing, the Copyright Holder provides the Work `as is', without
warranty of any kind, either expressed or implied, including, but not
limited to, the implied warranties of merchantability and fitness for a
particular purpose. The entire risk as to the quality and performance
of the Work is with you. Should the Work prove defective, you assume
the cost of all necessary servicing, repair, or correction.
In no event unless required by applicable law or agreed to in writing
will The Copyright Holder, or any author named in the components of the
Work, or any other party who may distribute and/or modify the Work as
permitted above, be liable to you for damages, including any general,
special, incidental or consequential damages arising out of any use of
the Work or out of inability to use the Work (including, but not limited
to, loss of data, data being rendered inaccurate, or losses sustained by
anyone as a result of any failure of the Work to operate with any other
programs), even if the Copyright Holder or said author or said other
party has been advised of the possibility of such damages.
MAINTENANCE OF THE WORK
=======================
The Work has the status `author-maintained' if the Copyright Holder
explicitly and prominently states near the primary copyright notice in
the Work that the Work can only be maintained by the Copyright Holder
or simply that it is `author-maintained'.
The Work has the status `maintained' if there is a Current Maintainer
who has indicated in the Work that they are willing to receive error
reports for the Work (for example, by supplying a valid e-mail
address). It is not required for the Current Maintainer to acknowledge
or act upon these error reports.
The Work changes from status `maintained' to `unmaintained' if there
is no Current Maintainer, or the person stated to be Current
Maintainer of the work cannot be reached through the indicated means
of communication for a period of six months, and there are no other
significant signs of active maintenance.
You can become the Current Maintainer of the Work by agreement with
any existing Current Maintainer to take over this role.
If the Work is unmaintained, you can become the Current Maintainer of
the Work through the following steps:
1. Make a reasonable attempt to trace the Current Maintainer (and
the Copyright Holder, if the two differ) through the means of
an Internet or similar search.
2. If this search is successful, then enquire whether the Work
is still maintained.
a. If it is being maintained, then ask the Current Maintainer
to update their communication data within one month.
b. If the search is unsuccessful or no action to resume active
maintenance is taken by the Current Maintainer, then announce
within the pertinent community your intention to take over
maintenance. (If the Work is a LaTeX work, this could be
done, for example, by posting to comp.text.tex.)
3a. If the Current Maintainer is reachable and agrees to pass
maintenance of the Work to you, then this takes effect
immediately upon announcement.
b. If the Current Maintainer is not reachable and the Copyright
Holder agrees that maintenance of the Work be passed to you,
then this takes effect immediately upon announcement.
4. If you make an `intention announcement' as described in 2b. above
and after three months your intention is challenged neither by
the Current Maintainer nor by the Copyright Holder nor by other
people, then you may arrange for the Work to be changed so as
to name you as the (new) Current Maintainer.
5. If the previously unreachable Current Maintainer becomes
reachable once more within three months of a change completed
under the terms of 3b) or 4), then that Current Maintainer must
become or remain the Current Maintainer upon request provided
they then update their communication data within one month.
A change in the Current Maintainer does not, of itself, alter the fact
that the Work is distributed under the LPPL license.
If you become the Current Maintainer of the Work, you should
immediately provide, within the Work, a prominent and unambiguous
statement of your status as Current Maintainer. You should also
announce your new status to the same pertinent community as
in 2b) above.
WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE
======================================================
This section contains important instructions, examples, and
recommendations for authors who are considering distributing their
works under this license. These authors are addressed as `you' in
this section.
Choosing This License or Another License
----------------------------------------
If for any part of your work you want or need to use *distribution*
conditions that differ significantly from those in this license, then
do not refer to this license anywhere in your work but, instead,
distribute your work under a different license. You may use the text
of this license as a model for your own license, but your license
should not refer to the LPPL or otherwise give the impression that
your work is distributed under the LPPL.
The document `modguide.tex' in the base LaTeX distribution explains
the motivation behind the conditions of this license. It explains,
for example, why distributing LaTeX under the GNU General Public
License (GPL) was considered inappropriate. Even if your work is
unrelated to LaTeX, the discussion in `modguide.tex' may still be
relevant, and authors intending to distribute their works under any
license are encouraged to read it.
A Recommendation on Modification Without Distribution
-----------------------------------------------------
It is wise never to modify a component of the Work, even for your own
personal use, without also meeting the above conditions for
distributing the modified component. While you might intend that such
modifications will never be distributed, often this will happen by
accident -- you may forget that you have modified that component; or
it may not occur to you when allowing others to access the modified
version that you are thus distributing it and violating the conditions
of this license in ways that could have legal implications and, worse,
cause problems for the community. It is therefore usually in your
best interest to keep your copy of the Work identical with the public
one. Many works provide ways to control the behavior of that work
without altering any of its licensed components.
How to Use This License
-----------------------
To use this license, place in each of the components of your work both
an explicit copyright notice including your name and the year the work
was authored and/or last substantially modified. Include also a
statement that the distribution and/or modification of that
component is constrained by the conditions in this license.
Here is an example of such a notice and statement:
%% pig.dtx
%% Copyright 2005 M. Y. Name
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
% of this license or (at your option) any later version.
% The latest version of this license is in
% http://www.latex-project.org/lppl.txt
% and version 1.3 or later is part of all distributions of LaTeX
% version 2005/12/01 or later.
%
% This work has the LPPL maintenance status `maintained'.
%
% The Current Maintainer of this work is M. Y. Name.
%
% This work consists of the files pig.dtx and pig.ins
% and the derived file pig.sty.
Given such a notice and statement in a file, the conditions
given in this license document would apply, with the `Work' referring
to the three files `pig.dtx', `pig.ins', and `pig.sty' (the last being
generated from `pig.dtx' using `pig.ins'), the `Base Interpreter'
referring to any `LaTeX-Format', and both `Copyright Holder' and
`Current Maintainer' referring to the person `M. Y. Name'.
If you do not want the Maintenance section of LPPL to apply to your
Work, change `maintained' above into `author-maintained'.
However, we recommend that you use `maintained', as the Maintenance
section was added in order to ensure that your Work remains useful to
the community even when you can no longer maintain and support it
yourself.
Derived Works That Are Not Replacements
---------------------------------------
Several clauses of the LPPL specify means to provide reliability and
stability for the user community. They therefore concern themselves
with the case that a Derived Work is intended to be used as a
(compatible or incompatible) replacement of the original Work. If
this is not the case (e.g., if a few lines of code are reused for a
completely different task), then clauses 6b and 6d shall not apply.
Important Recommendations
-------------------------
Defining What Constitutes the Work
The LPPL requires that distributions of the Work contain all the
files of the Work. It is therefore important that you provide a
way for the licensee to determine which files constitute the Work.
This could, for example, be achieved by explicitly listing all the
files of the Work near the copyright notice of each file or by
using a line such as:
% This work consists of all files listed in manifest.txt.
in that place. In the absence of an unequivocal list it might be
impossible for the licensee to determine what is considered by you
to comprise the Work and, in such a case, the licensee would be
entitled to make reasonable conjectures as to which files comprise
the Work.

View File

@ -0,0 +1,348 @@
% Author: Dongsheng Deng
% Homepage: https://ddswhu.me/
% Email: elegantlatex2e@gmail.com
% Lastest Version: https://github.com/ElegantLaTeX/ElegantPaper
% --- Class structure: identification part
\ProvidesClass{elegantpaper}[2020/04/12 v0.09 ElegantLaTeX Paper class]
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{kvoptions}
\RequirePackage{etoolbox}
\RequirePackage{calc}
\SetupKeyvalOptions{family=ELEGANT, prefix=ELEGANT@, setkeys=\kvsetkeys}
\newcommand{\ekv}[1]{\kvsetkeys{ELEGANT}{#1}}
\DeclareStringOption[en]{lang}
\DeclareVoidOption{cn}{\ekv{lang=cn}}
\DeclareVoidOption{en}{\ekv{lang=en}}
\DeclareStringOption[cm]{math}
\DeclareStringOption[numbers]{cite}
\DeclareVoidOption{numbers}{\ekv{cite=numbers}}
\DeclareVoidOption{authoryear}{\ekv{cite=authoryear}}
\DeclareVoidOption{super}{\ekv{cite=super}}
\DeclareStringOption[apalike]{bibstyle}
\DeclareStringOption[ctexfont]{chinesefont}
\DeclareVoidOption{ctexfont}{\ekv{chinesefont=ctexfont}}
\DeclareVoidOption{founder}{\ekv{chinesefont=founder}}
\DeclareVoidOption{nofont}{\ekv{chinesefont=nofont}}
\DeclareVoidOption{newtx}{\ekv{math=newtx}}
\DeclareVoidOption{mtpro2}{\ekv{math=mtpro2}}
\DeclareVoidOption{cm}{\ekv{math=cm}}
\DeclareDefaultOption{\PassOptionsToClass{\CurrentOption}{article}}
\ProcessKeyvalOptions*\relax
\LoadClass{article}
\RequirePackage{hyperref}
\hypersetup{
pdfborder={0 0 0},
colorlinks=true,
linkcolor={winered},
urlcolor={winered},
filecolor={winered},
citecolor={winered},
linktoc=all,
}
% settings for the hyperref and geometry
\RequirePackage[
left=1in,
right=1in,
top=1in,
bottom=1in,
headheight=0pt,
headsep=0pt]{geometry}
\setlength{\headsep}{5pt}
\RequirePackage{amsthm}
\RequirePackage{amsmath}
\RequirePackage{amssymb}
\RequirePackage{indentfirst}
\RequirePackage{booktabs}
\RequirePackage{multicol}
\RequirePackage{multirow}
% \RequirePackage{linegoal}
\RequirePackage{xcolor}
\RequirePackage{graphicx}
\RequirePackage{fancyvrb}
\RequirePackage{abstract}
\RequirePackage{hologo}
\linespread{1.35}
\graphicspath{{image/}{figure/}{fig/}{img/}}
% caption settings
\RequirePackage[font=small,labelfont={bf}]{caption}
\captionsetup[table]{skip=3pt}
\captionsetup[figure]{skip=3pt}
% list/itemize/enumerate setting
\RequirePackage[shortlabels,inline]{enumitem}
\setlist{nolistsep}
% define the hyperref color
\RequirePackage{xcolor}
\definecolor{winered}{rgb}{0.5,0,0}
\definecolor{lightgrey}{rgb}{0.95,0.95,0.95}
\definecolor{commentcolor}{RGB}{0,100,0}
\definecolor{frenchplum}{RGB}{190,20,83}
% add the email cmd
\newcommand\email[1]{\href{mailto:#1}{\nolinkurl{#1}}}
% font settings
\PassOptionsToPackage{no-math}{fontspec}
\ifdefstring{\ELEGANT@lang}{cn}{
\ifXeTeX
\ifdefstring{\ELEGANT@chinesefont}{founder}{
\RequirePackage[UTF8,scheme=plain,fontset=none]{ctex}
\setCJKmainfont[BoldFont={FZHei-B01},ItalicFont={FZKai-Z03}]{FZShuSong-Z01}
\setCJKsansfont[BoldFont={FZHei-B01},ItalicFont={FZHei-B01}]{FZHei-B01}
\setCJKmonofont[BoldFont={FZHei-B01},ItalicFont={FZHei-B01}]{FZFangSong-Z02}
\setCJKfamilyfont{zhsong}{FZShuSong-Z01}
\setCJKfamilyfont{zhhei}{FZHei-B01}
\setCJKfamilyfont{zhkai}{FZKai-Z03}
\setCJKfamilyfont{zhfs}{FZFangSong-Z02}
\newcommand*{\songti}{\CJKfamily{zhsong}}
\newcommand*{\heiti}{\CJKfamily{zhhei}}
\newcommand*{\kaishu}{\CJKfamily{zhkai}}
\newcommand*{\fangsong}{\CJKfamily{zhfs}}}{\relax}
\ifdefstring{\ELEGANT@chinesefont}{nofont}{
\RequirePackage[UTF8,scheme=plain,fontset=none]{ctex}}{\relax}
\ifdefstring{\ELEGANT@chinesefont}{ctexfont}{
\RequirePackage[UTF8,scheme=plain]{ctex}}{\relax}
\else
\ifdefstring{\ELEGANT@chinesefont}{ctexfont}{
\RequirePackage[UTF8,scheme=plain]{ctex}}{\relax}
\fi
\AfterEndPreamble{
% \renewcommand{\itshape}{\kaishu}
\setlength\parindent{2\ccwd}}}{\relax}
\ifcsname kaishu\endcsname
\newcommand{\citshape}{\kaishu}
\else
\newcommand{\citshape}{\itshape}
\fi
\ifcsname kaishu\endcsname
\newcommand{\cnormal}{\kaishu}
\else
\newcommand{\cnormal}{\normalfont}
\fi
\ifcsname fangsong\endcsname
\newcommand{\cfs}{\fangsong}
\else
\newcommand{\cfs}{\normalfont}
\fi
\RequirePackage{newtxtext}
\ifdefstring{\ELEGANT@math}{newtx}{
\RequirePackage{newtxmath}
\let\Bbbk\relax
\RequirePackage{esint}
%%% use yhmath pkg, uncomment following code
% \let\oldwidering\widering
% \let\widering\undefined
% \RequirePackage{yhmath}
% \let\widering\oldwidering
%%% use esvect pkg, uncomment following code
% \RequirePackage{esvect}
\DeclareSymbolFont{CMlargesymbols}{OMX}{cmex}{m}{n}
\let\sumop\relax\let\prodop\relax
\DeclareMathSymbol{\sumop}{\mathop}{CMlargesymbols}{"50}
\DeclareMathSymbol{\prodop}{\mathop}{CMlargesymbols}{"51}
}{\relax}
\RequirePackage{appendix}
\ifdefstring{\ELEGANT@lang}{cn}{
\theoremstyle{plain}% default
\newtheorem{theorem}{}[section] %
\newtheorem{lemma}[theorem]{} %
\newtheorem{proposition}[theorem]{} %
\newtheorem*{corollary}{} %
\theoremstyle{definition} %
\newtheorem{definition}{}[section] %
\newtheorem{conjecture}{}[section] %
\newtheorem{example}{}[section] %
\theoremstyle{remark} %
\newtheorem*{remark}{\normalfont\bfseries } %
\newtheorem*{note}{\normalfont\bfseries } %
\newtheorem{case}{\normalfont\bfseries } %
\renewcommand*{\proofname}{\normalfont\bfseries } %
\renewcommand\contentsname{}
\renewcommand\refname{} %
\renewcommand\figurename{} %
\renewcommand\tablename{}%
\newcommand\versiontext{}%
\newcommand\updatetext{}%
\renewcommand\abstractname{\hspace{2em}}
\setlength\parindent{2\ccwd}
\renewcommand{\abstracttextfont}{\small\citshape\noindent\ignorespaces}
%
\newcommand{\keywords}[1]{\vskip2ex\par\noindent\normalfont{\bfseries : } #1}
\newcommand\figref[1]{{\bfseries ~\ref{#1}}}
\newcommand\tabref[1]{{\bfseries ~\ref{#1}}}
\RequirePackage{gbt7714}
\ifdefstring{\ELEGANT@cite}{authoryear}{
\bibliographystyle{gbt7714-author-year}}{
\bibliographystyle{gbt7714-numerical}}
\ifdefstring{\ELEGANT@cite}{numbers}{
\citestyle{numbers}}{\relax}
\renewcommand{\appendixtocname}{}
\renewcommand{\appendixpagename}{}}{\relax}
\ifdefstring{\ELEGANT@lang}{en}{
\theoremstyle{plain}% default
\newtheorem{theorem}{Theorem}[section] %
\newtheorem{lemma}[theorem]{Lemma} %
\newtheorem{proposition}[theorem]{Proposition} %
\newtheorem*{corollary}{Corollary} %
\theoremstyle{definition} %
\newtheorem{definition}{Definition}[section] %
\newtheorem{conjecture}{Conjecture}[section] %
\newtheorem{example}{Example}[section] %
\theoremstyle{remark} %
\newtheorem*{remark}{Remark} %
\newtheorem*{note}{Note} %
\newtheorem{case}{Case} %
\renewcommand*{\proofname}{\normalfont\bfseries Proof}%
\newcommand\versiontext{\itshape Version: }%
\newcommand\updatetext{\itshape Date: }%
\setlength\parindent{2em}
\renewcommand{\abstracttextfont}{\sffamily\small\noindent\ignorespaces}
% newcommands defined in this template.
\newcommand{\keywords}[1]{\vskip 2ex\par\noindent\normalfont{\bfseries Keywords: } #1}
\newcommand\figref[1]{{\bfseries Figure~\ref{#1}}}
\newcommand\tabref[1]{{\bfseries Table~\ref{#1}}}
\RequirePackage[\ELEGANT@cite,sort&compress]{natbib}
\bibliographystyle{\ELEGANT@bibstyle}}{\relax}
\setlength{\bibsep}{0.0pt}
\def\bibfont{\footnotesize}
\AtBeginEnvironment{verbatim}{\microtypesetup{activate=false}}
\BeforeBeginEnvironment{tabular}{\small}
\AfterEndEnvironment{tabular}{}
\AtBeginDocument{
\setlength{\abovedisplayskip}{3pt}
\setlength{\belowdisplayskip}{3pt}
\RequirePackage[flushmargin]{footmisc}
\setlength{\footnotesep}{12pt}}
\def\IfEmpty#1{%
\edef\1{\the#1}
\ifx\1\empty
}
\newtoks\version
\newtoks\institute
\renewcommand\maketitle{\par
\begingroup
\renewcommand\thefootnote{\@fnsymbol\c@footnote}%
\def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
\long\def\@makefntext##1{\parindent 1em\noindent
\hb@xt@0.1em{%
\hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
\if@twocolumn
\ifnum \col@number=\@ne
\@maketitle
\else
\twocolumn[\@maketitle]%
\fi
\else
\newpage
\global\@topnum\z@ % Prevents figures from going at top of page.
\@maketitle
\fi
\thispagestyle{plain}\@thanks
\endgroup
\setcounter{footnote}{0}%
\global\let\thanks\relax
\global\let\maketitle\relax
\global\let\@maketitle\relax
\global\let\@thanks\@empty
\global\let\@author\@empty
\global\let\@ELEGANT@version\@empty
\global\let\@date\@empty
\global\let\@title\@empty
\global\let\title\relax
\global\let\author\relax
\global\let\date\relax
\global\let\and\relax
\global\let\ELEGANT@version\relax
}
\def\@maketitle{%
\newpage
\null
\vskip 2em%
\begin{center}%
\let \footnote \thanks
{\LARGE\bfseries \@title \par}%
\vskip 1.5em%
{\large
\lineskip .5em%
\begin{tabular}[t]{c}%
\@author\\[1ex]
\end{tabular}\par}
\the\institute%
\vskip 0.5ex%
\IfEmpty\version
\else
{\small\normalfont\citshape\versiontext\the\version}
\fi
\ifx\@date\empty
\else
\vskip 0.1em%
{\small\normalfont\citshape\updatetext\@date}%
\fi
\end{center}%
\par
}
\RequirePackage{listings}
\renewcommand{\ttdefault}{cmtt}
\lstdefinestyle{estyle}{
basicstyle=%
\ttfamily
\lst@ifdisplaystyle\footnotesize\fi
}
\lstset{basicstyle=\scriptsize\ttfamily,style=estyle}
\lstset{language=[LaTeX]TeX,
texcsstyle=*\color{winered},
numbers=none,
breaklines=true,
keywordstyle=\color{winered},
frame=tlbr,framesep=4pt,framerule=0pt,
commentstyle=\color{commentcolor},
% emph={elegantpaper,fontenc,fontspec,xeCJK,FiraMono,xunicode,newtxmath,figure,fig,image,img,table,itemize,enumerate,newtxtext,newtxtt,ctex,microtype,description,times,newtx,booktabs,tabular,PDFLaTeX,XeLaTeX,type1cm,BibTeX,cite,gbt7714,lang},
emphstyle={\color{frenchplum}},
% morekeywords={DeclareSymbolFont,SetSymbolFont,toprule,midrule,bottomrule,institute,version,includegraphics,setmainfont,setsansfont,setmonofont ,setCJKmainfont,setCJKsansfont,setCJKmonofont,RequirePackage,figref,tabref,email,maketitle,keywords,zhdate,zhtoday},
tabsize=2,
backgroundcolor=\color{lightgrey}
}

BIN
Assignments/Report/main.pdf Normal file

Binary file not shown.

View File

@ -0,0 +1,84 @@
\documentclass[lang=cn,11pt,a4paper,cite=authoryear]{elegantpaper}
\usepackage{tcolorbox}
\title{《开源软件技术》课程项目期末报告}
\author{
<姓名>\\<学号>\\\email{xxxxx@pku.edu.cn}
}
\date{}
\begin{document}
\maketitle
\section{开源项目概览}
\begin{tcolorbox}[title=\textbf{请在这一节包含如下内容:},colback=yellow!10!white]
列出你做出贡献的开源项目及其链接;对每一个开源项目:
\begin{enumerate}
\item 请介绍其基本情况(例如,这个项目用于什么目的?是如何产生和发展的?成熟度和活跃度如何?是否存在特定的组织模式和商业模式?等等);
\item 请介绍你决定向该项目做贡献的历程(例如,你是如何得知这个开源项目的?这个项目的什么地方吸引到了你?为什么对这个开源项目产生了贡献的动机?等等)。
\end{enumerate}
\end{tcolorbox}
\section{对开源项目的贡献}
\begin{tcolorbox}[title=\textbf{请在这一节包含如下内容:},colback=yellow!10!white]
用一段话总结你提交的所有贡献,完成表格~\ref{tab:contrib};对每一个贡献,请在对应的小节里:
\begin{enumerate}
\item 描述这是一个什么贡献;
\item 描述这个贡献的定位和解决过程(如何定位确定要做这个贡献?与其他开发者做的沟通?遇到了什么困难?有没有经过多轮修改?等等);
\item 在整个过程中,你的贡献经过了哪些质量检查(如果有)?(例如,添加新的单元测试、由核心开发者进行的代码审查,等等)
\item 这个贡献是否被接受?如果没有,是为什么?
\end{enumerate}
\end{tcolorbox}
\begin{table}[]
\centering
\caption{对开源项目的贡献概览(已有内容仅供格式举例,请替换成你的贡献)}
\begin{tabular}{llp{9cm}}
\toprule
项目 & 贡献 & 相关链接 \\
\midrule
GFI-Bot &\texttt{gfibot.data}模块添加日志 & \url{https://github.com/osslab-pku/gfi-bot/issues/13} \newline \url{https://github.com/osslab-pku/gfi-bot/pull/15}\\
\bottomrule
\end{tabular}
\label{tab:contrib}
\end{table}
\subsection{贡献一XXXXX}
\subsection{贡献二YYYYY}
\subsection{...}
\section{总结与反思}
\subsection{计划外的变化}
\begin{tcolorbox}[title=\textbf{请在这一节包含如下内容(如果有):},colback=yellow!10!white]
\begin{enumerate}
\item 你是否尝试对一些开源项目做贡献,但是最后失败了?为什么会失败?后来你又是如何切换开源项目的?
\item 你是否尝试去解决一些开源项目的Issue但是最后失败了为什么会失败
\item 在开源项目的贡献过程中有哪些你没预期到的困难?你是如何克服这些困难的?
\end{enumerate}
\end{tcolorbox}
\subsection{对开源的体会、理解与思考}
\begin{tcolorbox}[title=\textbf{请在这一节中写下任何你想要表达的内容,下述问题仅供参考:},colback=yellow!10!white]
在完成课程项目的过程中,你对开源模式和开源项目产生了哪些印象和体会?从参与开源中,你学到了什么东西?未来是否会继续参与开源?
\end{tcolorbox}
\subsection{对课程的建议}
\begin{tcolorbox}[colback=yellow!10!white]
请在这里写下任何对课程的意见和建议(可选,不计入报告评分)。
\end{tcolorbox}
\nocite{*}
\bibliography{references}
\end{document}