链氪巴士
  1. 首页
  2. 站点导航
  3. 文章
  4. 快讯
  5. 软件
  6. 书刊
  7. 关于

Tinymist:为Typst提供的集成语言服务

Tinymist是一个针对Typst的集成语言服务,它包含Typst的分析库、命令行界面、语言服务器、预览服务器以及VSCode扩展等。它具有众多功能,如语言服务(LSP)功能,包括语义高亮、代码动作、格式化等,还有保存时编译为多种格式、编辑器工具等特色功能,版本和发布周期遵循...

访问官网 →

Tinymist:为Typst提供的集成语言服务

一、项目简介

Tinymist是一个针对Typst的集成语言服务,也可称为”微霭”(中文)。它包含Typst的分析库(tinymist-query)、Typst的命令行界面(tinymist)、为Typst提供语言服务器(Language Features)、提供预览服务器(Preview Feature)以及Typst的VSCode扩展(Tinymist VSCode Extension)等内容。

二、项目功能

  1. 语言服务(LSP)功能

    • 语义高亮:对语法高亮进行补充。
    • 代码动作:也被称为“快速修复”或“重构”。
    • 格式化:支持使用typstfmt或typstyle对整个文档进行格式化。
    • 文档高亮:在循环上下文中突出显示所有断点等(部分待完成)。
    • 文档链接:渲染文档中的路径或链接引用。
    • 文档符号:也被称为Typst中的“文档大纲”或“目录”。
    • 折叠范围:可以折叠代码/内容块和标题。
    • 跳转到定义:右键单击符号并选择“GotoDefinition”或使用快捷键。
    • 引用:右键单击符号可选择查找引用相关操作。
    • 悬停提示:按照tidy风格渲染文档。
    • 内联提示:在编辑器中提供有关代码的额外信息。
    • 颜色提供器:查看文档中颜色字面量的内联彩色标签。
    • 代码镜头:在代码旁边给出上下文按钮,例如文档开头的导出按钮。
  2. 其他功能

    • 保存时编译为PDF(可配置为即时编译或其他选项)。
    • 通过命令、vscode任务或代码镜头编译为SVG、PNG、HTML、Markdown、Text等其他格式。
    • 提供用于导出为PDF/SVG/PNG等格式的代码镜头。
    • 提供状态栏项目以显示当前文档的编译状态和字数统计。
    • 编辑器工具:查看模板库中的模板列表、通过模板初始化新项目、跟踪当前文档执行情况等。

三、版本和发布周期

Tinymist的版本遵循语义版本控制方案(MAJOR.MINOR.PATCH)。如果版本后缀为-rcN,表示是发布候选版本,用于测试发布脚本和端到端功能,不会发布到市场;如果PATCH编号为奇数,表示是夜间发布版本,使用tinymist和typst的主分支并作为预发布版本发布到市场;如果PATCH编号为偶数,表示是常规发布版本,使用tinymist和typst的稳定版本。Typst版本更新时会立即发布新的主版本或次版本,如果本周至少添加了一个错误修复或功能,则会发布新的补丁版本。

四、项目总结

Tinymist为Typst提供了丰富的功能,涵盖语言服务、多种编译格式以及方便的编辑器工具等,并且有着清晰的版本和发布周期规则。欢迎大家留言讨论关于Tinymist的任何问题或者使用心得。

项目地址

GitHub链接直达