Skip to content

feat(ui): 训练页参数 Accordion + TOML 高亮与联动定位 #223

Description

@wochenlong

背景

Vue3 训练页(dev 内测线)参数区很长,左侧模块全部展开时浏览成本高;右侧 TOML 预览缺少语法高亮与分区间距,且与左侧编辑无联动,查找对应配置不便。

暗色主题已向 GitHub Dark 靠拢,本 Issue 聚焦训练页信息架构与 TOML 可读性,不重做右侧面板布局。

目标合入

需求

1. 左侧参数支持折叠(Accordion)

  • 按现有 Schema Section 分组,每组可展开/收起
  • 默认只展开「训练用模型」(或产品确认的同名模块);其余默认收起
  • 模块标题右侧显示参数数量(如 7 项10 项
  • 折叠后仅保留标题行,减少长页滚动

2. 右侧 TOML 保持现有布局

  • 保持当前 TOML 预览区域布局、工具按钮位置与交互
  • 不做右侧面板大改版 / 重排主操作按钮

3. 优化 TOML 可读性

  • TOML 语法高亮(参考 GitHub Dark / VS Code:key / string / number / boolean / comment)
  • 代码字体:JetBrains Mono(或等宽回退栈),约 13px,行高适中
  • 增加逻辑 Section 间距(如 [model][optimizer][dataset] 或等价分组),避免全表一坨

4. 参数联动高亮

  • 左侧聚焦/编辑某参数时,右侧 TOML 自动滚动到对应键
  • 当前对应行使用浅蓝色背景高亮
  • 用户无需手动在预览里搜索

验收

  • Accordion:默认仅「训练用模型」展开;数量角标正确;收起后只留标题
  • 右侧布局/按钮与现网一致(无大改)
  • TOML:有语法高亮、等宽字体约 13px、分组间有可见间距
  • 左侧改某字段 → 右侧定位并高亮对应行;切换字段时高亮跟随
  • 浅色 / 深色主题下均可读(深色对比度足够)

实现提示(给合作者)

  • 左侧:SchemaForm / schema-sectionfrontend/src
  • 右侧:TrainingPagepreview-panel + outputText
  • 高亮可用轻量库或自研 tokenizer;联动需维护 表单字段 key → TOML 行 的映射(注意嵌套表 / 数组)
  • frontend/src 后若验 :28000,需 npm run build 写回 frontend/dist

相关

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions