Chroma 2.16.0 发布:语法高亮库的重大更新
2025-06-12 14:30:52作者:毕习沙Eudora
Chroma 是一个用 Go 语言编写的高性能语法高亮库,它支持超过 200 种编程语言和标记语言的语法高亮显示。作为一个轻量级但功能强大的库,Chroma 被广泛应用于各种需要代码高亮的场景,如文档生成器、博客平台和代码编辑器等。
核心改进与功能增强
最新发布的 Chroma 2.16.0 版本带来了多项重要改进和功能增强:
-
新增语言支持:
- 添加了对 Janet 语言的支持,这是一种现代的命令式、函数式编程语言
- 增加了 Mojo 语言的词法分析器,Mojo 是专为 AI 开发者设计的新兴编程语言
- 为 Lua 语言添加了 Luau 文件扩展名和别名支持,Luau 是 Roblox 使用的 Lua 方言
-
现有语言改进:
- 修复了 Terraform 语言中字符串内包含点号时的高亮问题
- 改进了 Solidity 语言对内联汇编的处理方式
- 更新了 Odin 语言的构建标签特性支持
- 增强了 OCaml 对多行字符串的支持
-
API 增强:
- 新增了
lexers.Aliases()方法,可以方便地获取词法分析器的别名列表 - 添加了
Iterator.Stdlib()方法,用于标准库迭代
- 新增了
性能与稳定性优化
2.16.0 版本在性能和稳定性方面也做了多项改进:
-
依赖更新:
- 升级了所有非主要依赖项,确保使用最新的稳定版本
- 将 Go 模块版本升级至 Go 1.22,利用最新语言特性
-
CDN 切换:
- 由于 unpkg 出现 CORS 错误,已切换至 jsdelivr 作为替代方案
-
构建系统改进:
- 清理了 Makefile,简化构建流程
- 更新了 svu 依赖至 v3 版本
跨平台支持
Chroma 2.16.0 提供了全面的跨平台支持,发布了针对以下平台的预编译二进制包:
- macOS (amd64 和 arm64 架构)
- Linux (386、amd64 和 arm64 架构)
- Windows (386、amd64 和 arm64 架构)
这些预编译包使得在各种操作系统和架构上部署 Chroma 变得更加简单快捷。
开发者体验提升
2.16.0 版本特别关注了开发者体验的改进:
-
错误修复:
- 修复了 Nginx 配置中 IP 地址作为名称的检测问题
- 解决了多种语言特定场景下的高亮问题
-
工具链更新:
- 保持与最新 Go 工具链的兼容性
- 优化了开发工作流程
总结
Chroma 2.16.0 是一个功能丰富且稳定的版本,它不仅增加了对新语言的支持,还改进了现有语言的处理能力,同时提升了整体性能和开发者体验。对于需要高质量语法高亮功能的项目来说,升级到这个版本将带来更好的效果和更稳定的表现。
无论是构建文档系统、代码展示平台,还是开发集成开发环境,Chroma 2.16.0 都提供了一个强大而灵活的基础,能够满足各种复杂的语法高亮需求。
登录后查看全文
项目优选
收起
deepin linux kernel
C
27
11
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
512
3.68 K
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
873
515
Ascend Extension for PyTorch
Python
311
353
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
331
144
暂无简介
Dart
752
180
React Native鸿蒙化仓库
JavaScript
298
347
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
11
1
华为昇腾面向大规模分布式训练的多模态大模型套件,支撑多模态生成、多模态理解。
Python
110
124
仓颉编译器源码及 cjdb 调试工具。
C++
152
883