Skip to content

Commit

Permalink
Rename package paddling-tongji-thesis (#4)
Browse files Browse the repository at this point in the history
* add typst.toml

* add cover image

* update: typst.toml and thumbnail.webp

* update: fit typst package requirements

* fix: wrong imports

* change: make variable to meet typst standard

* change : rename package to paddling tongji thesis

* Update CITATION.cff

---------

Co-authored-by: Rizhong Lin <[email protected]>
Co-authored-by: 张尧 <[email protected]>
  • Loading branch information
3 people authored Jun 9, 2024
1 parent 4f42f26 commit 32285d3
Show file tree
Hide file tree
Showing 12 changed files with 276 additions and 311 deletions.
10 changes: 3 additions & 7 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,7 @@ cff-version: 1.2.0
message: "If you use this software, please cite it as below."
title: "Tongji University Undergraduate Thesis Template (STEM) Typst"
authors:
- family-names: Lin
given-names: Rizhong
orcid: https://orcid.org/0009-0000-1468-6734
- family-names: Liu
given-names: Kongyang
- family-names: "TJ-CSCCG"
url: https://github.com/TJ-CSCCG/tongji-undergrad-thesis-typst
date-released: 2023-12-19
version: 0.1.0
date-released: 2024-06-09
version: 0.1.1
158 changes: 67 additions & 91 deletions init-files/sections/01_intro.typ
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#import "../../tongji-undergrad-thesis/elements.typ": *
#import "../../paddling-tongji-thesis/elements.typ": *

= 基本功能介绍 <introduction>

Expand All @@ -8,46 +8,44 @@ Typst是被广泛认为是#LaTeX 的 “进化版”,它保留了#LaTeX 的强
“所见即所得(WYSIWYG,What You See Is What You Get)” 的实现。
Typst的设计理念是让文档的制作过程更加高效和愉快,同时保持专业级的输出质量。然而,由于Typst仍处于开发阶段,它的功能远没有#LaTeX 和基于#LaTeX 的C#TeX 那么丰富,因此在使用Typst时,我们可能需要一些额外的工作来完成一些特殊的排版需求。

在本节(@introduction)中,我们将介绍 Typst 的简单使用方法,尤其是中文排版的相关内容,并提供一些常用的排版示例。如果你对 Typst
的使用方法还不太熟悉,可以参考#link("https://typst.app/docs")[#emph[Typst的官方文档]]。
在本节(@introduction)中,我们将介绍 Typst
的简单使用方法,尤其是中文排版的相关内容,并提供一些常用的排版示例。如果你对
Typst 的使用方法还不太熟悉,可以参考#link("https://typst.app/docs")[#emph[Typst的官方文档]]。

== 标题

Typst 用 `=` 来表示标题,其后紧跟标题内容。标题的级别由 `=` 的个数决定,`=` 的个数越多,标题级别越低。本模板支持的标题级别最高为 5,即
Typst 用 `=` 来表示标题,其后紧跟标题内容。标题的级别由 `=` 的个数决定,`=` 的个数越多,标题级别越低。本模板支持的标题级别最高为
5,即
`=====`

除了 `=`,Typst 还支持使用 #raw("#heading()", lang: "typ") 函数来表示标题,还可以自定义标题的样式。

下面是一个标题的例子:

#table(
columns: (1fr, 1fr),
[
columns: (1fr, 1fr), [
#set align(center)
#strong[代码]
],
[
], [
#set align(center)
#strong[渲染结果]
],
```typ
#heading(level: 2, outlined: false, "二级标题")
], ```typ
#heading(level: 2, outlined: false, "二级标题")
二级标题是一种较为重要的标题级别,一般用于表示文章中的主要章节或主题。通常,它们会在上面添加分割线或加粗等效果,以突出其重要性。
二级标题是一种较为重要的标题级别,一般用于表示文章中的主要章节或主题。通常,它们会在上面添加分割线或加粗等效果,以突出其重要性。
#heading(level: 3, outlined: false, "三级标题")
#heading(level: 3, outlined: false, "三级标题")
相对于二级标题而言,三级标题是更加具体的标题级别,通常用于表示二级标题下的具体内容描述。它们的长度通常比二级标题短,与二级标题之间应有一定的间距。
相对于二级标题而言,三级标题是更加具体的标题级别,通常用于表示二级标题下的具体内容描述。它们的长度通常比二级标题短,与二级标题之间应有一定的间距。
#heading(level: 4, outlined: false, "段落标题")
#heading(level: 4, outlined: false, "段落标题")
段落标题是文章中比正文稍微具有一些重要性和突出性的内容,通常用加粗或斜体等方式来区别于正文。
段落标题是文章中比正文稍微具有一些重要性和突出性的内容,通常用加粗或斜体等方式来区别于正文。
#heading(level: 5, outlined: false, "子段落标题")
#heading(level: 5, outlined: false, "子段落标题")
子段落标题是相对于段落标题更加细节化的内容,用于突出一段文字中的重点内容。通常采用斜体或加粗的方式表示。在一些正式的文献中,子段落标题的使用较少。
```,
[
子段落标题是相对于段落标题更加细节化的内容,用于突出一段文字中的重点内容。通常采用斜体或加粗的方式表示。在一些正式的文献中,子段落标题的使用较少。
```, [
#h(2em)
#heading(level: 2, outlined: false, "二级标题")

Expand All @@ -67,7 +65,8 @@ Typst 用 `=` 来表示标题,其后紧跟标题内容。标题的级别由 `=
],
)

值得注意的是,本模板中的标题样式已经根据同济大学的毕业论文要求进行了调整,因而可能与 Typst 的默认样式有所不同。
值得注意的是,本模板中的标题样式已经根据同济大学的毕业论文要求进行了调整,因而可能与
Typst 的默认样式有所不同。

== 字体

Expand All @@ -82,143 +81,120 @@ Typst 用 `=` 来表示标题,其后紧跟标题内容。标题的级别由 `=
], ```typ
In Typst, *bold*, _italic_ and `monospace` are supported.
```, [
In Typst, *bold*, _italic_ and `monospace` are supported.
In Typst, *bold*, _italic_ and `monospace` are supported.
])
在本模板中,我们将中文的粗体、斜体和等宽字体分别预设为 “#strong[黑体]”、“#emph[楷体]” 和 “#raw("仿宋")”。
在本模板中,我们将中文的粗体、斜体和等宽字体分别预设为 “#strong[黑体]”、“#emph[楷体]”
和 “#raw("仿宋")”。
请注意,因为语法解析的限制, `*...*`、`_..._` 和 #raw("`...`") 的前后有时需要空格分隔;而由于中文字体的特殊性,这样会导致额外的空格出现。因此,为了避免这种情况,我们可以使用 #raw("#emph[...]", lang: "typ") 函数来表示斜体,#raw("#strong[...]", lang: "typ") 函数来表示加粗,#raw("#raw(\"...\")", lang: "typ") 函数来表示等宽字体。例如:
#table(
columns: (1fr, 1fr),
[
columns: (1fr, 1fr), [
#set align(center)
#strong[代码]
],
[
], [
#set align(center)
#strong[渲染结果]
],
```typ
在中文环境中, *粗体*_斜体_`等宽字体` 可能会导致额外的空格出现。而#strong[粗体]、#emph[斜体]和#raw("等宽字体")则不会。
```,
[
在中文环境中, *粗体*、_斜体_ 和 `等宽字体` 可能会导致额外的空格出现。而#strong[粗体]、#emph[斜体]和#raw("等宽字体")则不会。
], ```typ
在中文环境中, *粗体*_斜体_`等宽字体` 可能会导致额外的空格出现。而#strong[粗体]、#emph[斜体]和#raw("等宽字体")则不会。
```, [
在中文环境中, *粗体*、_斜体_ 和 `等宽字体` 可能会导致额外的空格出现。而#strong[粗体]、#emph[斜体]和#raw("等宽字体")则不会。
],
)
此外,Typst 还支持使用 #raw("#[#set text(font: <some_font>); <some_text>]", lang: "typ") 命令来自定义字体。在本模板中,我们预置了方正字库中的以下字体,并设置了相应的别名供使用。
#table(
columns: (auto, auto, 1fr),
[
columns: (auto, auto, 1fr), [
#set align(center)
#strong[字体]
],
[
], [
#set align(center)
#strong[别名]
],
[
], [
#set align(center)
#strong[渲染结果]
],
[
], [
#set align(center)
#set text(font: font-family.song)
宋体
],
[
], [
#set align(center)
#raw("font-family.song", lang: "typ")\
或\
或\
#raw("songti", lang: "typ")
],
[
], [
#set text(font: font-family.song)
#h(2em)1900年前后,由埃里希 · 宝隆创办的 “同济医院” 正式挂牌。埃里希 ·
宝隆医生看到医院里的医疗力量不足,计划在院内设立一所德文医学堂,招收中国学生,以培养施诊医生。
],
[
], [
#set align(center)
#set text(font: font-family.hei)
黑体
],
[
], [
#set align(center)
#raw("font-family.hei", lang: "typ")\
或\
#raw("font-family.hei", lang: "typ")\
或\
#raw("heiti", lang: "typ")
],
[
], [
#set text(font: font-family.hei)
#h(2em)这个计划得到德国驻沪总领事以及德国政府高等教育司的支持。1906年,他们设立了一个支持医学堂开办的基金会,得到了德国
“促进德国与外国思想交流的科佩尔基金会” 的协助,筹集到一批医科书刊及新式的外科手术电动器械等物品。
],
[
“促进德国与外国思想交流的科佩尔基金会”
的协助,筹集到一批医科书刊及新式的外科手术电动器械等物品。
], [
#set align(center)
#set text(font: font-family.kai)
楷体
],
[
], [
#set align(center)
#raw("font-family.kai", lang: "typ")\
或\
#raw("font-family.kai", lang: "typ")\
或\
#raw("kaiti", lang: "typ")
],
[
], [
#set text(font: font-family.kai)
#h(2em)1907年6月医学堂开学前,德国驻沪总领事克纳佩在上海不仅号召德国商人捐款,而且要求德国洋行向中国商人募捐。同时,费舍尔还要求中国官方的资助和支持,克纳佩利用在中德两国募来的捐款,成立了
“为中国人办的德国医学堂基金会”。
],
[
], [
#set align(center)
#set text(font: font-family.fangsong)
仿宋
],
[
], [
#set align(center)
#raw("font-family.fangsong", lang: "typ")\
或\
#raw("font-family.fangsong", lang: "typ")\
或\
#raw("fangsong", lang: "typ")
],
[
], [
#set text(font: font-family.fangsong)
#h(2em)董事会由18人组成,主要成员有:三个德医公会元老:宝隆、福沙伯(第二任校长)、福尔克尔;三名德国商人:莱姆克、米歇劳和赖纳;两名中国绅商:朱葆三(沪军都督府财政部长及上海商务会会长,大买办)、虞洽卿(荷兰银行买办);总领事馆的副领事弗赖海尔
· 冯 · 吕特等。
],
[
], [
#set align(center)
#set text(font: font-family.xiaobiaosong)
小标宋
],
[
], [
#set align(center)
#raw("font-family.xiaobiaosong", lang: "typ")\
或\
#raw("font-family.xiaobiaosong", lang: "typ")\
或\
#raw("xiaobiaosong", lang: "typ")
],
[
], [
#set text(font: font-family.xiaobiaosong)
#h(2em)埃里希 ·
宝隆医生被正式推选为董事会总监督(董事长)兼学堂首任总理(校长),负责学堂的管理。医学堂的校址设在同济医院对面的白克路(今凤阳路415号上海长征医院内)。1907年10月1日德文医学堂举行了开学典礼。
],
[
], [
#set align(center)
#set text(font: font-family.xihei)
细黑
],
[
], [
#set align(center)
#raw("font-family.xihei", lang: "typ")\
或\
#raw("font-family.xihei", lang: "typ")\
或\
#raw("xihei", lang: "typ")
],
[
], [
#set text(font: font-family.xihei)
#h(2em)1923年3月17日北洋政府教育部下达第108号训令,批准同济工科 “改为大学”。学校随即召开董事会议,将学校定名为
同济大学”。1923年3月26日,学校以 “同济大学董事会” 名义呈文北洋政府教育部,称
“经校董会议定名称为同济大学”。
#h(2em)1923年3月17日北洋政府教育部下达第108号训令,批准同济工科
改为大学”。学校随即召开董事会议,将学校定名为 “同济大学”。1923年3月26日,学校以
同济大学董事会” 名义呈文北洋政府教育部,称 “经校董会议定名称为同济大学”。
],
)
Expand All @@ -238,4 +214,4 @@ In Typst, *bold*, _italic_ and `monospace` are supported.
=== 生僻字支持
由于本模板使用的是方正字库GBK字体,一般情况下,我们可以直接使用生僻字#footnote[此处的生僻字指:GBK编码中有,但GB2312编码中没有的字。]。例如:丂丄丅丆丏丒丗丟丠両丣並丩丮丯丱丳丵丷丼乀乁乂乄乆乊乑乕乗乚乛乢乣乤乥乧乨乪乫乬乭乮乯。
由于本模板使用的是方正字库GBK字体,一般情况下,我们可以直接使用生僻字#footnote[此处的生僻字指:GBK编码中有,但GB2312编码中没有的字。]。例如:丂丄丅丆丏丒丗丟丠両丣並丩丮丯丱丳丵丷丼乀乁乂乄乆乊乑乕乗乚乛乢乣乤乥乧乨乪乫乬乭乮乯。
22 changes: 13 additions & 9 deletions init-files/sections/02_math.typ
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#import "../../tongji-undergrad-thesis/elements.typ": *
#import "../../paddling-tongji-thesis/elements.typ": *

= 数学 <math>

Expand All @@ -12,7 +12,9 @@ Typst 具有特殊的语法和库函数来排版数学公式,与#LaTeX 相似

== 变量

在Typst的数学模式中,单个字母总是按原样显示。而多个字母则被解释为变量和函数。要逐字显示多个字母,可以将它们放在引号中;要访问单字母变量,可以使用#link("https://typst.app/docs/reference/scripting/#expressions")[#emph[`#`语法]]。
在Typst的数学模式中,单个字母总是按原样显示。而多个字母则被解释为变量和函数。要逐字显示多个字母,可以将它们放在引号中;要访问单字母变量,可以使用#link(
"https://typst.app/docs/reference/scripting/#expressions",
)[#emph[`#`语法]]。

#table(columns: (1fr, 1fr), [
#set align(center)
Expand Down Expand Up @@ -71,15 +73,17 @@ $ sum_(k=0)^n k
&= (n(n+1)) / 2 $
```, [
$ sum_(k=0)^n k
&= 1 + ... + n \
&= (n(n+1)) / 2 $
&= 1 + ... + n \
&= (n(n+1)) / 2 $
])

== 函数调用

数学模式支持特殊的函数调用,无需使用 `#` 号前缀。在这些 “数学调用” 中,参数列表的工作方式与代码中略有不同:
数学模式支持特殊的函数调用,无需使用 `#` 号前缀。在这些 “数学调用”
中,参数列表的工作方式与代码中略有不同:

- 在其中,Typst 仍然处于 “数学模式”。因此,你可以直接在其中编写数学公式,但需要使用 `#` 语法来传递代码表达式(字符串除外,字符串在数学语法中可用)。
- 在其中,Typst 仍然处于
“数学模式”。因此,你可以直接在其中编写数学公式,但需要使用 `#` 语法来传递代码表达式(字符串除外,字符串在数学语法中可用)。
- Typst支持位置参数和命名参数,但不支持尾随内容块和参数扩展。
- Typst还提供了二维参数列表的额外语法。分号(`;`)用于分隔行,逗号(`,`)用于分隔列。

Expand Down Expand Up @@ -122,8 +126,8 @@ $ (3x + y) / 7 &= 9 && "given" \
3x + y &= 63 & "multiply by 7" \
3x &= 63 - y && "subtract y" $
```, [
$ (3x + y) / 7 &= 9 && "given" \
3x + y &= 63 & "multiply by 7" \
3x &= 63 - y && "subtract y" $
$ (3x + y) / 7 &= 9 && "given" \
3x + y &= 63 & "multiply by 7" \
3x &= 63 - y && "subtract y" $
])

Loading

0 comments on commit 32285d3

Please sign in to comment.