Typst-基础使用

呆呆的猪胖胖 Lv4

前言

文档生成的工具有很多,之前作者就写过很多篇,包括Markdown基础语法
Latex基础语法,而与这两者不同Typst出现的非常的晚,2023年5月才由Martin Haug
Laurenz Mädje开发完成并上线。

正是由于Typst非常新,因此具有非常多的有别于Latex和Markdown的新特性,让人在写作的时候有种非常新奇的体验,但也正是因为Typst非常新,
很多使用方式在网上找起来很麻烦,或者找到后非常的长,为了方便以后能够更好的使用Typst,作者决定阅读文档写一篇属于自己的文档。

和Latex和Markdown不同,Typst支持脚本,仅仅只是这一点就给Typst提供了接近无限的可能性,不过受限于篇幅原因,这里仅介绍一些较为简单基础的用法以作入门。

使用

可以直接打开Typst官网在官网通过在线的编辑器进行使用。

或者可以通过Vscode的插件Tinymist Typst,在拓展商店搜索安装即可。
之后创建后缀为.typ的文件即可使用预览、导出为PDF文件即可。

此外,还可以下载二进制文件解压后配置环境变量使用,这里不再赘述。

语法

Typst的中文相对较为完整的教程详见:Typst 教程及其参考

此外Typst的中文导航页见:Typst 中文社区导航

注:该教程所在位置未开启ssl加密,为了保证安全问题,本博客会自动转到https://开头的链接,但该链接无法正确的访问,请手动改为http://链接。

Typst的语法可以比较简单的分为脚本语言和标记语言两种,在本文会更多的介绍标记部分,脚本部分仅介绍相对常用的,或者说可以理解为一种标记的内容。

注释

Typst的注释和C语言的注释非常的相似,都是用下面的方式:

1
//这是typ的行内注释,仅注释掉一行
1
2
3
/*
这是Latex的行间注释,会注释掉多行内容
*/

标题

和Markdown的标题有些差别,Typst的标题使用=引导:

1
2
3
= 一级标题
== 二级标题
=== 三级标题

注:如果没有导入其他模板或者库,Typst的标题层次仅支持到三级标题

正文

和Markdown十分相似,正文使用空行作为段落的分割,\符号用来换行,强调和斜体略微有一些差别,但仍然十分的相似,Typst的标记具体如下:

1
2
3
4
5
6
7
这是一段正文  \ //普通正文,空行用来分段,\用来换行
_这是一段斜体_ \ //斜体使用下划线来区分
*这是一段粗体* \ //粗体使用星号来区分

//和Markdown不同Typst没有独自的粗斜体语法,但可以给粗体加斜或斜体加粗完成,以下两种方式都是合理的:
*_这是一段粗斜体_* \
_*这是一段粗斜体*_ \

列表

Typst的列表语法也相对比较简单,和Markdown有类似的地方,但是又有差别:

1
2
3
4
//有序列表
+ 有序列表1
+ 有序列表2
+ 有序列表3
1
2
3
4
//无序列表
- 无序列表1
- 无序列表2
- 无序列表3

这两种列表和Markdown一样,也是支持相互嵌套的,因此熟悉Markdown语法的读者可以放心大胆的使用。

链接

链接在Typst中非常的简易,只需要把链接输入,Typst的编辑器会自动的将https://
开头或者http:// 开头文本自动转换为链接样式。

Tip

Markdown中可以将链接显示的文本指定出来,Typst自然也是支持的,但是需要使用脚本模式:

1
2
3
#link("https://example.com")[
示例链接
]

这里会把链接的样式自动替换,事实上,使用脚本模式可以实现非常多的功能,在后续的内容中会一一补充。

数学公式

Typst的数学公式和Markdown的十分相似,不同点在于Typst使用单个$引导数学公式,使用空格来标识是
行间公式还是行内公式——行内公式两端无空格而行间公式两端有空格:

1
2
$math$ //这是行内公式
$ math $

需要特别注意的是Typst的公式并不完全与Latex的公式语法相同,但是作者可以确定地说,Typst的数学公式语法做了
一定的简化,因此会更加的简便,例如下面的Latex公式:

1
2
3
$$
\frac{1}{x}
$$

在Typst下只需要写为:

1
$ 1/x $

代码

事实上这里称作代码并不是非常的合适,在Typst中似乎把这个功能称为raw,作者的拙劣翻译以下似乎是原始文本的含义,但是绝大多是的Typst教程都称这一部分为代码,尽管Typst的代码看上去在没有高亮的情况下非常的难看,不过幸好我们可以通过导入库来进行优化。

导入代码的方式十分的简单,和Markdown几乎完全一样使用`符号包围起来即可,单个的`符号包围起来就是行内代码,三个则是行间代码,和Markdown不同,Typst支持四个`符号引导的行间代码。

速记

Typst标记语言还有一项非常特殊的能力,速记,也就是使用一些符号快速的表示一些内容,常见的速记符号为:

1
2
3
~ //~是空格的速记符号会在Typst文本中增加一个空格
--//--是连接号的速记符号会渲染一个——符号
...//...是省略号的速记符号会渲染一个……号

后记

今天主要介绍了Typst的标记部分语言,但是Typst的强大之处并不在标记部分,其强大的脚本语言提供了近乎无限的可能性,在后续部分会增加对Typst的脚本部分的介绍的。


同系列:

Markdown基础语法
Latex基础语法
Typst-基础使用

  • Title: Typst-基础使用
  • Author: 呆呆的猪胖胖
  • Created at : 2025-05-12 14:30:00
  • Updated at : 2025-05-13 15:34:47
  • Link: https://blog.cflmy.cn/2025/05/12/Technology/Typst/Typst-基础使用/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments