Commit Graph
40 Commits
Author SHA1 Message Date
cruldra 6dac457ed1 ✨ feat(vscode): 代码阅读预览把注释、说明、问 AI 回答里的 mermaid 代码块画成图
- markdown.ts:mermaid 代码块出占位(源码转义后记在 data-source,里面先放原样的代码块);带增删的说明、逐字生成中的回答仍是普通代码块
- useMermaidDiagrams:页面上有占位才按需加载 mermaid(strict、跟 VS Code 字体),按源码 + 配色缓存 SVG,一次只画一张,换主题重画;画不出来留代码块、下面一行原因
- 打包:Vite 的按需加载辅助函数单独成块,加构建检查禁止别的块 import 入口(入口带 ?v= 加载,被 import 会整页再跑一遍、第二次拿 VS Code API 报错)
- 主题明暗判断抽到 lib/vscodeTheme,看板的改动面板共用
2026-10-13 18:51:05 +11:00
cruldra 266dc42bc5 ⚡ perf(vscode): 代码阅读预览发给页面的块带内容指纹:扩展端按卡片内容、在源码里占的地方连同子块的指纹算摘要,页面按指纹认出没变的块沿用原来的对象,不再逐块深比内容,5126 行的文档到了比对 10.6ms → 0.4ms 2026-10-13 16:39:59 +11:00
cruldra ad5f559e92 ⚡ perf(vscode): 代码阅读预览发给页面的块只记相对位置:块在源码里占的地方记成离前一块多远、自己多长,块里名字的下标从块的开头算,页面从文件开头累加回文件里的位置、和扩展端打交道的地方都在一处换算;靠前改了代码,后面内容没变的块发过去一模一样,扩展端自己的块和发给页面的块分成两种类型 2026-10-13 16:32:18 +11:00
cruldra ffb0f147e1 ⚡ perf(vscode): 代码阅读预览的卡片位置量过就记着,内容或大小变了才重量:粘性标题、记滚动位置、上报可见行、跳转按顶层块二分找,滚动时不再每帧量全部卡片,滚动回调里也不读会逼排版的位置 2026-10-13 14:58:03 +11:00
cruldra 0ad4748cc6 ⚡ perf(vscode): 代码阅读预览按卡片订阅状态:中文名、调用树棵数、单击高亮、问答一条消息只重画受影响的卡片和文字,新文档里内容没变的块沿用原来的对象不重画,没展开又没说过的块不画问答区 2026-10-13 14:40:53 +11:00
cruldra dff38ee0c5 ✨ feat(vscode): 预览里代码的上色和卡片种类色跟着当前颜色主题走 2026-10-13 11:27:24 +11:00
cruldra 32018e71f1 🐛 fix(vscode): 切走标签再回来,调用树棵数不用重算,开着的弹框和选中的入口照旧 2026-10-13 11:00:06 +11:00
cruldra b83c445dd0 ✨ feat(vscode): 问 AI 和重写注释各用各的 profile,设置里加重写注释默认模型 2026-10-12 16:30:41 +11:00
cruldra 3c7513b7cd ✨ feat(vscode): 只有从「未提交的更改」点开的预览才对比上一次提交 2026-10-12 15:52:35 +11:00
cruldra 880bf7fc57 ✨ feat(vscode): 新增「了解一块代码」:AI 找功能代码占一栏,对话里接着改
主栏标题栏的放大镜问要了解哪一块,占一个栏位建一栏(和收藏共用 30 个栏位,视图改名 slot1..30,按 slotKindN 分收藏 / 功能挂标题栏按钮),同时开对话页让 Claude 只读地在全部工作区文件夹里找,按 --json-schema 交回环节 → 文件 + 符号 + 一句话。
对话复用预览顶部的聊天(CodeQa.askTop:会话续接、进行中的一轮、记录存 workspaceState);结构不合格算这一轮没答成、留着能再画出来。
条目每次画、点时按眼下的代码找:有语言插件的解析成代码块按「类名.方法名」找,没有的问 VS Code 文档符号;找不到画成灰的。
2026-10-12 15:48:54 +11:00
cruldra b40ddb5e3a ✨ feat(vscode): 代码阅读侧栏拆成多栏:常驻未提交的更改、收藏目录各占一栏 2026-10-12 14:29:48 +11:00
cruldra c9f60f5b30 ✨ feat(vscode): 重写注释留会话记录、能接着说,允许画原型图
每块的重写记录存进 .spx/comment-rewrites.json(和问答分开,改名、删文件跟着走),块下面同问答区:灰字历史、当前这一轮、输入框;输入框里的话接着这块最近一次重写的会话说,交回新正文照样写回,写回失败也记下原因。
重写跑在 claude --restricted 下:只放开读搜、OpenPencil 的 op、建 prototypes 目录、改草稿目录,写注释的插件单独加载;超时 15 分钟。
进行中的、出错被叫停留着的那一轮记在扩展端,切走标签页再切回来照样接上(问 AI 同一套)。
2026-10-12 13:45:37 +11:00
cruldra 29cedcb751 ✨ feat(vscode): FastAPI 接口卡片的调用树带上前端调用它的地方 2026-10-12 12:22:51 +11:00
cruldra 645542eb5c ✨ feat(vscode): 代码阅读的函数和类可以看调用树 2026-10-11 00:37:24 -04:00
cruldra a1fbefd3aa 🐛 fix(vscode): 代码阅读的钉住卡片改成每张卡片都算一层,折叠着、没有子块的高卡片滚到一半也钉在顶上 2026-10-08 07:17:26 +08:00
cruldra eb3d1b90cd ✨ feat(vscode): 代码阅读滚进卡片的子块时把外层卡片钉在顶上,同 VS Code 的 Sticky Scroll 2026-10-08 07:17:26 +08:00
cruldra a48b016d73 ✨ feat(vscode): 代码阅读鼠标停在名字和注释链接上弹出定义所在那块的卡片,别的文件的也行 2026-10-08 07:17:26 +08:00
cruldra 6ce4ef7ee2 ✨ feat(vscode): React 文件照源码一块一张卡片,组件卡片只留名称、说明、构造参数
- 组件体的语句不再并进组件卡片,照源码顺序是它的子块;状态、引用、数据源、派生值、副作用、事件处理函数、渲染输出各成一张卡片,回调和函数里的语句是这些卡片下面的子卡片
- 普通变量、提前返回的 if、注释照语言默认的卡片;表格格子里只写名字和位置,去掉「改它的」「来自」格子里单独打开源码的那条路
- 用词改成书面叫法(更新位置、使用位置、计算表达式、依赖项、触发时机、清理函数、绑定事件、样式取决于……),新增 toggle-right、anchor、download、sigma、layout-template 五个种类图标
- 夹具加上 luffy 的 QueuedBubble.tsx、PlanChecklist.tsx,规格的 React 一节照新样子改写
2026-10-08 07:17:25 +08:00
cruldra e8ae19d084 ✨ feat(vscode): 构造参数区,改它的和来自能单独打开源码 2026-10-04 15:34:44 +08:00
cruldra 2c10acf9c4 ✨ feat(vscode): 文件和文件夹在预览顶部问
侧栏「问 AI」打开代码阅读预览。文件夹是没有代码块的一页,源码文件在整页顶部聊,代码块下面的问答不动。历史按工作区文件夹和相对路径记在窗口状态里,不写进按块存的记录。
2026-10-03 03:22:20 +08:00
cruldra 9faf9cde9e ✨ feat(vscode): 注释里的仓库图片按比例显示 2026-10-03 03:22:20 +08:00
cruldra c4113748e1 ✨ feat(vscode): 注释里的仓库路径链接能点开并跳到符号 2026-10-03 03:22:20 +08:00
cruldra 5e8e7b65ee ✨ feat(vscode): 重写注释时在卡片下展示模型过程 2026-10-03 03:22:20 +08:00
cruldra 299acb979f ✨ feat(vscode): 注释卡片可按规范重写注释 2026-10-03 03:22:20 +08:00
cruldra b16cc6409e 🐛 fix(vscode): 代码阅读按 ⌘↓ 跳高亮不再来回闪,筛选栏加上上一处、下一处 2026-10-03 03:11:46 +08:00
cruldra ee807ec7a4 ✨ feat(vscode): 代码阅读 React 组件卡片按钩子分区:状态 / 引用 / 读取的数据 / 派生值 / 副作用 / 事件处理;副作用、处理函数成子卡片放进卡片那一行下面(库规则新增把子块放进属性表某一行的机制,事件处理表点名称展开) 2026-10-03 03:11:46 +08:00
cruldra 6120c85bc0 ✨ feat(vscode): 代码阅读差异加「只看改动」(连着没变的块折成一条、按工作区记住)、上一处 / 下一处改动、右边缘总览条 2026-09-30 08:54:23 +08:00
cruldra 3b7ce69842 ✨ feat(vscode): 代码阅读预览标出新增 / 修改 / 删除的卡片(左侧改动色条、新增淡绿底挂小标、删掉的块原位收成一行可展开),筛选栏第二行写对比基准和改动统计,新文件顶部横幅 2026-09-30 08:41:55 +08:00
cruldra 44c221ea2b ✨ feat(vscode): 代码阅读认出代码里起的中文名(Annotated[…, Comment("…")]、@Comment 装饰器、行尾 # @Comment、docstring / JSDoc 的参数说明),预览里定义和用到它的各处都写中文名,悬停看原名,定义处后面淡淡写原名 2026-09-27 00:56:39 +08:00
cruldra 49f253b80f ✨ feat(vscode): 代码阅读的名字高亮更显眼(当前那处描框、别处画细线),⌘↓ / ⌘↑ 在各处之间跳,跳到折叠处自动展开,筛选栏写第几处 2026-09-26 23:47:43 +08:00
cruldra f0a3ad80e1 ✨ feat(vscode): 问 AI 收起再展开、重启后接着这块最近的会话问;代码改了对不上的问答不再显示 2026-09-26 21:25:22 +08:00
cruldra fb53bb727c ✨ feat(vscode): 代码阅读加「问 AI」,块下面问 Claude Code,问答存进 .spx 挂在块下 2026-09-26 21:12:47 +08:00
cruldra 2251e67ef8 ✨ feat(vscode): 代码阅读库规则卡片不再吞掉字段中间的方法,编辑时收起子块 2026-09-26 19:58:43 +08:00
cruldra 9c0f05362c ✨ feat(vscode): 代码阅读预览单击名字高亮它在文件里的各处出现 2026-09-26 15:51:52 +08:00
cruldra 1c7e31c51a ✨ feat(vscode): 代码阅读预览顶部加块筛选栏
语言插件按和语言无关的 id 报块属性(通用的由宿主从 facts 推),翻译插件起名,webview 只按 id 筛;
筛选整个工作区共用、记在 workspaceState;JavaScript 不再显示「抽象:否」「仅类型:否」
2026-09-25 21:31:19 +08:00
cruldra 4930dc0d42 ✨ feat(vscode): 代码阅读把字典、对象字面量的值展开成键值树 2026-09-25 20:57:27 +08:00
cruldra 9b32d4b5a8 ✨ feat(vscode): 代码阅读函数块默认折叠,函数说明进属性表「说明」行 2026-09-25 13:09:53 +08:00
cruldra 4e146eb48f ✨ feat(vscode): 代码阅读预览按住 ⌘ / Ctrl 点名字跳到定义 2026-09-25 12:54:45 +08:00
cruldra 37306bd23e 🐛 fix(vscode): 代码阅读预览记住浏览位置,编辑 / 预览互切位置对齐 2026-09-25 03:21:14 +08:00
cruldra af56985d9a ✨ feat(vscode): 代码阅读预览界面
Vite 加 code-reader.html 第二入口;代码块树(层级竖线、折叠、种类标签配色)、译文 / 源码按词性着色、块内直接编辑(防抖回写整行、Esc 回预览)、翻译下拉、解析失败提示;看板与代码阅读共用带类型的 acquireVsCodeApi 包装和 ErrorBoundary。
2026-09-24 21:01:34 +08:00