Universe

Create project in app

Typst Package GitHub Repo stars License Typst

This is an unofficial undergraduate thesis Typst template for Renmin University of China (RUC). It aims to help students efficiently and elegantly complete their thesis typesetting using modern tools.

这是一个非官方的中国人民大学(RUC)本科生毕业论文 Typst 模板。旨在帮助同学们用现代化的工具,高效、优雅地完成论文排版。

✨ 特性

  • 开箱即用:预置了符合学校要求的页边距、字体、行距等格式。
  • 自动化:自动生成目录、图表索引,自动处理参考文献引用。
  • 模块化:章节分离,结构清晰,易于维护。

📦 安装

在 VSCode 中本地编辑(推荐)

  1. 安装 VS Code
  2. 在 VS Code 扩展商店中搜索并安装 Tinymist 插件。
    • 该插件提供了语法高亮、实时预览、自动补全等功能。
    • 安装后,打开 .typ 文件即可自动激活,点击右上角的 “Preview” 按钮即可查看实时预览。
  3. 你可以通过下面 3 种方式来获取模板:
    • Typst Cli
      • 先从官方 Typst 下载并安装 Typst CLI
      • 然后在命令行输入:
        typst init @preview/modern-ruc-thesis
        
    • Tinymist
      • 按下 Cmd / Ctrl + Shift + P 打开命令界面
      • 输入 Typst: Show available Typst templates (gallery) for picking up a template 打开 Tinymist 提供的 Template Gallery
      • 在列表中搜索 modern-ruc-thesis,点击 按钮收藏,点击 + 来创建论文模板 search-result
    • git:由于 Typst Universe 上的文件更新可能有延迟,你可以 clone 本仓库或者下载 ZIP 压缩包解压到任意位置来保证使用最新的模板文件:
      • GitHub:
        git clone https://github.com/ruc-thesis/modern-ruc-thesis.git
        
      • Gitee(国内镜像仓库):
        git clone https://gitee.com/ruc-thesis/modern-ruc-thesis.git
        
  4. 获取模板后,用 VS Code 打开生成的目录,打开 main.typ (template/main.typ) 文件,按下 Ctrl / Cmd + K V 或者是点击文档顶部的 Preview 来实时预览。

在线编辑

Typst Web App 中选择 Start from template,随后搜索 modern-ruc-thesis 即可开始使用。

typst-app

为了在 Web 编辑器中正确显示字体,你需要找到电脑字体文件夹(Windows 下是 C:\Windows\Fonts,macOS 下是 /Library/Fonts),将模板所需要的字体文件全部上传到 Typst Web App 任意位置:

  • 黑体
  • 宋体
  • 楷体
  • Times New Roman
  • Consolas

🛠️ 写作

本模板的主要文件结构如下,请在对应文件中填写内容:

  • template/main.typ: 主控文件
    • 在这里填写论文的基本信息(标题、作者、学院、摘要等)。
    • 在这里引用章节(如 #include "chapters/chapter1.typ")。
    • 在这里配置参考文献附录
  • template/chapters/: 章节目录
    • 在这里创建并编写你的正文章节(如 chapter1.typ, chapter2.typ)。
  • template/refs.bib: 参考文献数据
    • 使用 BibTeX 格式存储你的参考文献条目。
  • template/acknowledgement.typ: 致谢
    • 书写致谢内容。
  • template/appendix.typ: 附录
    • 书写附录内容。

✍️ Typst 基本语法简述

Typst 的语法简洁直观,以下是一些常用语法:

标题与层级

使用 = 表示标题,数量表示层级:

= 一级标题
== 二级标题
=== 三级标题

文本格式

  • 加粗*加粗内容*
  • 斜体_斜体内容_
  • 代码`行内代码`

列表

  • 无序列表:使用 -
    - 项目 1
    - 项目 2
    
  • 有序列表:使用 +
    + 第一步
    + 第二步
    

数学公式

  • 行内公式:使用 $ 包裹,如 $E = mc^2$
  • 独行公式:使用 $ 包裹(加空格)。
    • 默认:不编号,居中显示。
      $ a^2 + b^2 = c^2 $
      
    • 编号:在公式后添加标签 <label>,公式将自动编号并左对齐
      $ a^2 + b^2 = c^2 $ <eq:pythagoras>
      

图片与表格

  • 图片
    #figure(
      image("path/to/image.png", width: 80%),
      caption: [图片标题],
    )
    
  • 表格
    #figure(
      table(
        columns: 2,
        [表头1], [表头2],
        [内容1], [内容2],
      ),
      caption: [表格标题],
    )
    

引用

  • 引用文献:使用 @key,如 @wang2001
  • 引用图表:在图表后添加标签 <label>,然后使用 @label 引用。

更多语法请参考 Typst 官方文档

⭐ 效果预览

cover page1 page2

🛠️ 开发者

如果你是开发者,或者想为本项目贡献代码,请阅读 开发者指南

📄 许可证

本项目基于 MIT 许可证 开源。

⚠️ 免责声明

该模板中使用的“RUC”和“中国人民大学”标志来源于 官方大学网站

这些标志为中国人民大学所有。此处的展示仅用于学术格式化,并不意味着获得该校的官方认可。

模板作者不拥有这些标志的版权,也不主张对其拥有任何权利。

如需官方使用或转发标志,请直接联系中国人民大学。