TinyMist 0.13.12-rc3版本发布:全面提升Typst文档处理能力
TinyMist是一个专注于Typst文档处理的工具链项目,它为Typst语言提供了强大的编辑器支持、编译优化和代码分析功能。在最新发布的0.13.12-rc3版本中,TinyMist带来了多项重要改进,特别是在文档格式化、代码分析和性能优化方面。
文档格式化能力全面升级
本次版本最显著的改进之一是文档格式化能力的全面提升。通过将typstyle从v0.13.1升级到v0.13.3,TinyMist现在能够完整处理各种复杂的文档元素:
-
混合内容格式化:现在可以正确处理包含方程或代码的标记行,解决了之前会跳过这些复杂结构的问题。
-
数学表达式支持:增强了对包含注释的方程处理能力,特别是能够正确处理数学表达式中包含"#"符号的情况。
-
导入项处理:改进了对导入项的处理逻辑,使得代码格式化更加智能和准确。
这些改进使得TinyMist成为处理复杂Typst文档的更可靠工具,特别是对于学术论文和技术文档等包含大量数学表达式和代码的文档类型。
性能优化与稳定性提升
在性能方面,0.13.12-rc3版本进行了多项重要优化:
-
根目录变更检测:改进了根目录变更的检测逻辑,避免了不必要的虚拟文件系统(VFS)缓存失效,显著提升了处理大型项目时的性能。
-
焦点切换延迟:优化了Typst文档间的焦点切换逻辑,减少了在"跳转到定义"等操作时的VFS缓存失效频率。
-
系统时间依赖移除:移除了对系统时间的依赖,使TinyMist能够构建为wasm32-unknown-unknown目标,为未来作为Typst插件使用奠定了基础。
编辑器体验改进
编辑器方面也有一系列用户体验提升:
-
数学引号标记修正:将数学引号的token类型从"string"改为"other",解决了在数学模式下自动补全引号的问题。
-
状态栏格式支持:新增了对{pageCount}变量的支持,可以在状态栏显示文档页数信息。
-
AST视图:新增了抽象语法树(AST)查看功能,帮助开发者更好地理解和调试Typst代码结构。
-
格式化模式默认值变更:将tinymist.formatterMode配置项的默认值从never改为typstyle,使更多用户能直接受益于自动格式化功能。
代码分析与Linting增强
代码分析能力在本版本中得到了显著增强:
-
相对路径解析:修复了子文件夹中相对路径解析的问题,确保了文档链接的正确性。
-
重命名功能修正:解决了Unix平台上相对导入(如#import "../foo.typ")的重命名问题。
-
插件函数处理:改进了对无参数插件函数的处理,避免了代码补全时的面板问题。
-
字面量字段检查:增强了对字面量方法的代码补全支持。
新增的Linting功能包括:
-
潜在错误检测:对可能出错的show/set规则进行检查。
-
无效语句检测:识别在break/continue/return前可能被隐式丢弃的语句。
-
类型比较警告:对字符串类型比较发出警告,避免未来Typst版本中的兼容问题。
-
可变字体使用检测:识别不支持的变量字体使用情况。
用户可以通过tinymist.lint.enabled和tinymist.lint.when配置项灵活控制Linting行为。
预览与导出改进
预览功能方面:
-
水平拖动支持:现在可以水平拖动预览面板。
-
点击空白区域清除选择:提升了交互体验。
-
浏览器预览:新增了将预览面板弹出到浏览器的功能。
导出功能改进:
- 原子写入:实现了编译产物的原子写入,特别是PDF文件,避免了查看器读取到半完成内容的问题。
其他改进
-
配置热更新:支持tinymist.compileStatus配置项的热更新。
-
参数支持:在typstExtraArgs中新增了对--feature和--pdf-standard参数的支持。
-
包根解析:增强了对Typst包根目录的解析能力。
-
文档渲染:使用Typst的HTML导出功能渲染TinyMist的在线文档。
-
跨平台支持:VS Code扩展现在使用cargo-dist构建的二进制文件,确保各平台一致性。
TinyMist 0.13.12-rc3版本通过这些全面改进,为Typst用户提供了更强大、更稳定的文档处理体验,特别是在处理复杂学术文档和技术文档方面表现尤为突出。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0191
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0114
Step-3.7-FlashStep-3.7-Flash是一个拥有 1980 亿参数的稀疏混合专家(MoE)视觉语言模型,由 1960 亿参数的语言主干网络和 18 亿参数的视觉编码器组合而成,具备原生图像理解能力。Python00
JoyAI-EchoJoyAI-Echo,这是一个独立的、仅用于推理的版本,旨在实现分钟级多镜头音视频生成。它采用了经过蒸馏的DMD生成器、配对的跨模态记忆以及故事级别的一致性。其性能的核心在于,一个跨模态视听记忆库能够在长达五分钟的视频中保持角色外观和语音音色的一致性。同时,一个训练后处理流程将基于记忆的强化学习与分布匹配蒸馏相结合,实现了7.5倍的速度提升,显著增强了视觉质量和对齐效果。00
omega-aiOmega-AI:基于java打造的深度学习框架,帮助你快速搭建神经网络,实现模型推理与训练,引擎支持自动求导,多线程与GPU运算,GPU支持CUDA,CUDNN。Java04
llm-universe本项目是一个面向小白开发者的大模型应用开发教程,在线阅读地址:https://datawhalechina.github.io/llm-universe/Jupyter Notebook08