Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/chosertech/HIT-Thesis-Typst
哈尔滨工业大学 Typst 论文模板
https://github.com/chosertech/HIT-Thesis-Typst
Last synced: about 2 months ago
JSON representation
哈尔滨工业大学 Typst 论文模板
- Host: GitHub
- URL: https://github.com/chosertech/HIT-Thesis-Typst
- Owner: hitszosa
- License: mit
- Created: 2023-05-14T14:49:31.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-25T12:19:07.000Z (5 months ago)
- Last Synced: 2024-08-04T10:01:31.933Z (5 months ago)
- Language: Typst
- Homepage: https://typst.app/universe/package/universal-hit-thesis
- Size: 606 KB
- Stars: 27
- Watchers: 5
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- latex-templates - chosertech/<br>HIT-Thesis-Typst - Thesis-Typst?style=flat-square)<br/>![0](https://img.shields.io/github/forks/chosertech/HIT-Thesis-Typst?style=flat-square)<br/>![2024-06-21](https://img.shields.io/github/last-commit/chosertech/HIT-Thesis-Typst?style=flat-square) | 哈尔滨工业大学 Typst 论文模板 <br>| 本仓库是 universal-hit-thesis 的镜像,为维护模板早期版本在 Typst Universe 上的链接而设置,请移步至 HITSZ OSA 的仓库 | (Popular & New Non-LaTeX Templates / Thesis/Dissertation)
- awesome-typst-cn - HIT-Thesis-Typst
README
# 哈尔滨工业大学论文模板
适用于哈尔滨工业大学学位论文的 Typst 模板
![hit-thesis-typst-cover](https://vonbrank-images.oss-cn-hangzhou.aliyuncs.com/20240426-HIT-Thesis-Typst/hit-thesis-typst-development-cover-01.jpg)
> [!WARNING]
> 本模板正处于积极开发阶段,存在一些格式问题,适合尝鲜 Typst 特性
>
> 本模板是民间模板,**可能不被学校认可**,正式使用过程中请做好随时将内容迁移至 Word 或 LaTeX 的准备## 关于本项目
[Typst](https://typst.app/) 是使用 Rust 语言开发的全新文档排版系统,有望以 Markdown 级别的简洁语法和编译速度实现 LaTeX 级别的排版能力,即通过编写遵循 Typst 语法规则的文本文档、执行编译命令,来可生成目标格式的 PDF 文档。
**universal-hit-thesis** 是一套简单易用的哈尔滨工业大学学位论文 Typst 模板,受 [hithesis](https://github.com/hithesis/hithesis) 启发,计划囊括一校三区本科、硕士、博士的学位论文格式。
**预览效果**
- 本科通用:[universal-bachelor.pdf](https://github.com/hitszosa/universal-hit-thesis/blob/build/universal-bachelor.pdf)
## 使用
### 本地编辑 Ⅰ (推荐)
这种方式适合大多数用户。
首先安装 Typst,您可以在 Typst Github 仓库的 [Release 页面](https://github.com/typst/typst/releases/) 下载最新的安装包直接安装,并将 `typst` 可执行程序添加到 `PATH` 环境变量;如果您使用 Scoop 包管理器,则可以直接通过 `scoop install typst` 命令安装。
安装好 Typst 之后,您只需要选择一个您喜欢的目录,并在此目录下执行以下命令:
```sh
typst init @preview/universal-hit-thesis:0.2.1
```Typst 将会创建一个名为 `universal-hit-thesis` 的文件夹,进入该目录后,您可以直接修改目录下的 `universal-bachelor.typ` ,然后执行以下命令进行编译生成 `.pdf` 文档:
```sh
typst compile universal-bachelor.typ
```或者使用以下命令进行实时预览:
```sh
typst watch universal-bachelor.typ
```当您要实时预览时,我们更推荐使用 Visual Studio Code 进行编辑,配合 [Tinymist Typst](https://marketplace.visualstudio.com/items?itemName=nvarner.typst-lsp), [Typst Preview](https://marketplace.visualstudio.com/items?itemName=mgt19937.typst-preview) 等插件可以大幅提升您的编辑体验。
### 本地编辑 Ⅱ
这种方法适合 Typst 开发者。
首先使用 `git clone` 命令 clone 本项目,或者直接在 Release 页面下载特定版本的源码。在 `templates/` 目录下选择您需要的模板,直接修改或复制一份,在根目录运行以下命令进行编译:
```sh
typst compile ./templates/.typ --root ./
```或者使用如下命令进行实时预览:
```sh
typst watch ./templates/.typ --root ./
```> [!TIP]
> 本模板正处于积极开发阶段,更新较为频繁,虽然已经上传至 Typst Universe,但是您依然可以借助 Typst local packages 来实现在 Typst Universe 同步本模板的最新版本前,在本地体验本模板的最新版本,具体做法为:
> - 在 Release 页面下载对应版本的源码压缩包,并将其解压到 `{data-dir}/typst/packages/local/universal-hit-thesis/{version}`,`{data-dir}` 在不同操作系统下的值为:
> - `$XDG_DATA_HOME` or `~/.local/share` on Linux
> - `~/Library/Application` Support on macOS
> - `%LOCALAPPDATA%` on Windows
>
> `{version}` 的值为 `typst.toml` 中 `version` 项的值.
>
> 解压完成后 `typst.toml` 文件应该出现在 `{data-dir}/typst/packages/local/universal-hit-thesis/{version}` 目录下.
>
> - 接着您需要在您的论文中将 `#import "@preview/universal-hit-thesis:0.2.1"` 修改为 `#import "@local/universal-hit-thesis:{version}"`,即可更新模板.### 在线编辑
本模板已上传 Typst Universe,您可以使用 Typst 的官方 Web App 进行编辑。
具体来说,在 Typst Web App 登录后,点击 `Start from template`,在弹出的窗口中选择 `universal-hit-thesis`,即可从模板创建项目。
![hit-thesis-web-app-create](https://vonbrank-images.oss-cn-hangzhou.aliyuncs.com/20240426-HIT-Thesis-Typst/hit-thesis-web-app-create.jpg)
![hit-thesis-web-app-demo](https://vonbrank-images.oss-cn-hangzhou.aliyuncs.com/20240426-HIT-Thesis-Typst/hit-thesis-web-app-demo.jpg)
> [!NOTE]
>
> Typst Web App 的排版渲染在浏览器本地执行,所以实时预览体验几乎与在本地编辑无异。
>
> 默认情况下,Web App 中的模板字体显示与预期可能存在差异,这是因为 Web App 默认不提供 `SimSun`, `Times New Roman` 等中文排版常用字体。为了解决这个问题,您可以在搜索引擎搜索以下字体文件:
>
> - `TimesNewRoman.ttf` (包括 `Bold`, `Italic` `Bold-Italic` 等版本)
> - `SimSun.ttf`
> - `SimHei.ttf`
> - `Kaiti.ttf`
> - `Consolas.ttf`
> - `Courier New.ttf`
>
> 并将这些文件手动上传至 Web App 项目根目录中,或为了目录整洁,可以创建一个 `fonts` 文件夹并将字体置于其中,Typst Web App 将自动加载这些字体,并正确渲染到预览窗口中.
>
> 由于每次在 Typst Web App 中打开项目时都需要重新下载字体,而中文字体体积普遍较大,加载时间较长,因此我们更推荐**本地编辑**。---
> [!NOTE]
> 注意到,官方提供的本科毕业设计 Microsoft Word 论文模板 `本科毕业论文(设计)书写范例(理工类).doc` 在一校三区是通用的,意味着本 Typst 模板的本科论文部分理论上也是在一校三区通用的,因此我们提供适用于各校区的本科毕业论文模板模块导出,即以下四种导入模块的方式效果相同:
> ```typ
> #import "@preview/universal-hit-thesis:0.2.1": harbin-bachelor
> #import harbin-bachelor: * // 哈尔滨校区本科
> ```
> ```typ
> #import "@preview/universal-hit-thesis:0.2.1": weihai-bachelor
> #import weihai-bachelor: * // 威海校区本科
> ```
> ```typ
> #import "@preview/universal-hit-thesis:0.2.1": shenzhen-bachelor
> #import shenzhen-bachelor: * // 深圳校区本科
> ```
> ```typ
> #import "@preview/universal-hit-thesis:0.2.1": universal-bachelor
> #import universal-bachelor: * // 一校三区本科通用
> ```## 依赖
### 可选依赖
若要书写和引用伪代码,您可以使用 `algorithm-figure`,为此,您需要导入 `algorithmic` 或 `lovelace` 包。
```typ
#import "@preview/algorithmic:0.1.0"
#import algorithmic: algorithm#import "@preview/lovelace:0.2.0": *
```使用方式详见[模板](https://github.com/chosertech/HIT-Thesis-Typst/blob/main/templates/universal-bachelor.typ)中的`伪代码`节
## 已知问题
### 排版
尽管本 Typst 模板各部分字体、字号等设置均与原 Word 模板一致,但段落排版视觉上仍与 Word 模板有一些差别,这与字符间距、行距、段落间距有一定肉眼排版成分有关.
### 参考文献
- 学校对参考文献格式的要求与标准的 `GB/T 7714-2015 numeric` 格式存在差异,我们已修改相关 CSL 文件并形成 `gb-t-7714-2015-numeric-hit.csl` 以修复作者名字大小写等问题,但仍有以下已知特性尚未支持:
- 仅纯电子资源(如网页、软件)显示引用日期和 URL
- 无 DOI
- 引用其他学校的学位论文时参考文献页对应条目存在格式问题,因为 Typst 尚不支持 CSL 文件中的 `school` 等字段.
- 目前版本的 Typst 对 CSL 支持程度成谜,更多问题可参考 [SEU-Typst-Template 参考文献已知问题](https://github.com/csimide/SEU-Typst-Template/?tab=readme-ov-file#%E5%8F%82%E8%80%83%E6%96%87%E7%8C%AE).## 致谢
+ 感谢 [HUST-typst-template](https://github.com/werifu/HUST-typst-template) 为本模板早期版本的框架提供思路.
+ 感谢 [@csimide](https://gist.github.com/csimide) 和 [@OrangeX4](https://github.com/OrangeX4) 提供的中英双语参考文献实现.
+ 感谢 [modern-nju-thesis](https://github.com/nju-lug/modern-nju-thesis) 为本模板的一些特性提供实现思路.