Skip to content

Latest commit

 

History

History
118 lines (81 loc) · 4.84 KB

File metadata and controls

118 lines (81 loc) · 4.84 KB

YewIndex — 开发路线图(Development Path)

这份路线图只盯着 Features.md 里「## 🌱 可扩展方向」那一串点子,把它们按投入产出比、依赖关系、风险,重新排成一条能一直走下去的开发主线。

目标不变:把 "我这台机器上到底有哪些 repo / workspace" 这事,从文件管理器地狱里拎出来,做成一个安静、耐久的总控台。


0. 前置共识(别跑偏)

  • 边界:不做 Git 客户端(commit/diff/branch/status 面板都不做),不做 repo 内文件浏览。
  • 约束:TypeScript + Extension Host;unbundled;UI 以 TreeView + 虚拟文档预览为主;依赖克制。
  • 体验原则:少弹窗、少打断;能失败但别崩;遇到坏数据要容错。

1. 现状标记(已经吃掉的坑)

这些在 Features.md 里标了 done,就当作当前基线:

  • 乐观刷新:先展示缓存,后台扫描更新(done)
  • Workspace 预览:md 高亮;允许在主窗口打开而不是右侧分半屏(done)
  • 刷新按钮更直观(done)

2. 路线图总览(按阶段走,别一锅端)

下面每个阶段都尽量做到:做完就能用,而且不会把后面路堵死。

Phase 1:体验打磨(低风险高收益)

把 "每天都会碰到的小烦" 先清掉。

  • 预览文件改为预览模式(Preview tab)

    • 目标:预览不占 tab,不污染工作区;用户点开第二个预览会自动替换。
  • 单击/双击打开行为可配置

    • 目标:让操作手感贴合个人习惯(有的人就爱单击,有的人怕误触)。
  • 最近打开的 repo/workspace

    • 目标:不用再翻目录,1-2 次点击回到刚才的项目。
  • 新窗口打开/当前窗口打开可配置

    • 目标:自定义行为,可修饰键切换
    • 结果:VSCode 不支持修饰键,回退为右键菜单 验收标准(DoD):
  • 不改任何用户项目文件(只存扩展自己的状态)

  • 不需要用户理解新概念,开箱就会用

  • 最常用动作(打开、切换、预览)点击数明显下降

Phase 2:配置变得友好(让更多机器能用)

把 "能配" 变成 "想配就能配"。

  • 友善的路径配置页
    • 在VSCode设置页支持唤起原生文件夹选择器(Explorer/Picker)
    • 也支持手动输入路径(键盘党别被劝退)
  • 多语言支持(i18n)
    • 优先把用户可见文案收拢到一处,后续再接真正的翻译

验收标准(DoD):

  • 路径相关配置不需要记 key 名,不需要手写 JSON
  • 配置变更立即生效(刷新即可见)

Phase 3:稳定性与可观测性(出问题也能查)

这个阶段不追求炫技,追求 "用一年不烦"。

  • DEBUG 日志与错误处理
    • 输出到 OutputChannel:扫描开始/结束、耗时、命中数量、错误摘要
    • 失败策略:记录 + 轻提示;不让扩展功能全体失效
  • 常态输出增加:
    • 总感觉现在有点少?或者实际上也足够了?
  • 扫描错误时警告弹窗
  • 扫描性能守门
    • 目录大也不能卡死 UI;能取消/节流就做(别让用户感觉 VS Code 卡了)

验收标准(DoD):

  • 扫描异常不会导致 TreeView 空白到需要重启
  • 用户能用日志定位问题(至少能知道是哪个目录/哪个 workspace 文件坏了)

Phase 4:编辑与关联(从“看见”到“组织”)

这阶段开始引入复杂功能,但仍然保持不侵入。

  • 搜索功能
    • 最快速,不必多言
  • TreeView 展开状态缓存
    • 目标:记忆用户的展开状态,避免都使用这个扩展了却只是换一个地方继续点点点
  • Repo metadata
    • 用各个语言的图标显示 Repo,供用户快速确认项目类型
  • Repo <-> Workspace 关联提示
    • 考虑在 Workspace 预览中提示
    • 例如:某个 repo 出现在哪些 workspace 里;某个 workspace 里哪些 folder 是 repo

验收标准(DoD):

  • 编辑行为可撤销/可预览(别一按钮把 workspace 写坏)
  • 关联提示不要求 100% 准确,但要稳定、可解释

3. 排序理由(我为什么这么排)

  • Phase 1 先做:纯体验提升,风险低,回报立刻可见。
  • Phase 2 再做:配置友好化会带来更多边界输入(路径乱、权限问题),需要 Phase 3 的日志兜底。
  • Phase 3 放中间:可观测性越早越好,但做太早又容易过度工程,所以卡在 "功能稳定后" 刚刚好。
  • Phase 4 最后:编辑/关联属于高价值但也更容易踩坑(数据一致性、容错、性能),放到基础稳了再做。

4. 一句话版本节奏(可当作 tag 计划)

  • v0.x.1:Phase 1(预览模式 + 单双击配置 + 最近打开)
  • v0.x.2:Phase 2(配置页 + 可选初始化引导 + 文案收拢/i18n 基建)
  • v0.x.3:Phase 3(日志 + 错误处理 + 扫描可取消/节流)
  • v0.x.4:Phase 4(workspace 轻编辑 + metadata + 关联提示)