创建内容
自己的模板需要有一个 github
仓库,在工程目录下,需要有一个 typst.toml
,其内容为:
[package]
name = "example"
version = "0.1.0"
entrypoint = "lib.typ"
authors = ["The Typst Project Developers"]
license = "MIT"
description = "An example package."
其中,name
项需要和仓库名称、typst
的包的名称相同。
如果是一个模板,还需要包括:
[template]
path = "template"
entrypoint = "main.typ"
thumbnail = "thumbnail.png"
并在工程目录下创建 template
文件夹,里面的 main.typ
为入口程序。工程目录下的 thumbnail.png
为模板封面图片,需要高清图片,尽量是模板PDF直接转化出来的图片。
Fork 官方仓库
打开 官方 packages 仓库。
点击 Fork
,一切选项保持默认。
在初始化 git 目录之前,最好设置默认 branch
为 main
:
git config --global init.defaultBranch main
在本地新建一个目录,如 upload
,在此目录下,执行:
git init
再执行:
git remote add origin https://github.com/[username]/packages.git
其中,[username]
需要改成自己的 github
用户名。
执行以下命令启用稀疏检测出:
git config core.sparseCheckout true
执行以下命令将指定目录添加到检出目录:
echo "packages/preview/[package-name]/*" >> .git/info/sparse-checkout
其中,[package-name]
需要和 typst
的包名相同。
执行以下命令进行拉取:
git pull origin main --depth=1
在当前目录下,创建目录:packages/preview/[package-name]/0.1.0/
将包的所有内容复制到 0.1.0
目录下,不要包含 .git
目录和生成的 PDF 文件。只包含源代码。
新建 commit
,commit的内容应该为:[package-name]:0.1.0
执行 git push
到自己的仓库中。
在网页上打开仓库,点击 Contribute
→ Open pull request
,认真阅读并填写模板,提交,等待通过即可。新发布的包可能需要几天的时间才会通过。