Skip to content

[Feature] 完善ChatUI中markdown中C/C++/Rust等语言代码的高亮支持与字体自定义默认大小 #173

Description

@atqiyu

Problem to solve / 要解决的问题

在当前的 AstrBot 桌面版 ChatUI 中,部分常用编程语言的代码块渲染存在明显的体验痛点:

  1. 部分语言高亮缺失:经过测试,HTML、CSS、JS、Python 等语言可以正常进行语法高亮,但 C、C++、Rust 等常用语言的高亮不生效,代码框内均为单一颜色。
  2. 可读性极差:代码块默认字号偏小(约 12px)

初步在本地排查推测:可能是前端打包的 Shiki/Monaco 精简版中缺失了 c/cpp/rust 的 grammar 注册

Proposed solution / 期望方案

期望能在后续版本中优化 Markdown 代码块的渲染逻辑:

  1. 完善语法支持:在 Markdown 代码渲染器中补充 C、C++、Rust 等主流语言的语法包;如果为了控制体积,也可以考虑在识别失败时,提供一个基础的多色映射(例如暂时 fallback 到 JavaScript 的高亮规则)。
  2. 可自定义ttf字体
  3. 优化代码字号:建议可以自定义代码块的默认 font-size ,提升整体阅读体验。

Alternatives considered / 备选方案

No response

Additional context / 补充信息

截图 Image

Willing to submit a PR? / 是否愿意提交 PR?

  • Yes, I am willing to submit a PR. / 是,我愿意提交 PR。

Code of Conduct

  • I agree to follow the project's Code of Conduct. / 我同意遵守项目行为准则。

Metadata

Metadata

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions