用于 Project Graph 的第三方扩展:把一个文本节点中的表格内容,转换为按行列对齐、可独立编辑的普通文本节点。无需修改官方程序。
- 下载 Release 附件
local.table-split.prg,在 Project Graph 中打开,安装后重启程序。 - 把整张表粘贴进一个普通文本节点,结束文字编辑,只选中这个节点。
- 依次按 K → E → T(不是同时按)。
- 在“列分隔符”弹窗中输入分隔符,默认为
\t,即 Tab。 - 在“最大列宽”弹窗中输入宽度上限,默认为
480;长文字自动换行。 - 新节点在原文下方生成并自动选中,按 F 可聚焦。确认后可自行删除原文。
分隔符和最大列宽会记住上次确认的值。取消任意一个弹窗不会转换,也不会保存这次尚未确认完整的参数。
可在“设置 → 扩展 → 表格拆分与对齐 → 快捷键”修改按键。
默认按换行分行,列分隔符自定义,按字面匹配。
| 列分隔符输入 | 用法 |
|---|---|
\t |
Tab,适合直接复制的表格文本 |
\s 或实际按一次空格 |
按一个空格分列 |
|(实际只输入竖线) |
竖线分列 |
, 或 , |
英文或中文逗号分列 |
:: |
多字符分隔符 |
空格不会自动合并,连续两个分隔符会生成一个空单元格。内容本身包含空格时,请选择其他分隔符。分隔符不是正则表达式,普通字母 t 也不会当成 Tab。
例如下面的内容,列分隔符设为 |:
对比项|对称加密|非对称加密
密钥关系|加密和解密使用同一个秘密密钥|使用一对有数学关联的公钥和私钥
常见例子|AES、SM4|
可生成 3 行 × 3 列,最后一格为空。
- 保留末尾和中间的空单元格;短行补空,不猜测丢失的内容。
- 支持双引号包裹的单元格;其中的分隔符和换行属于单元格内容,连续两个双引号表示一个双引号。
- 不解析 Markdown 表格的表头分隔线;从此类文本复制时,应先移除装饰性的外侧竖线和分隔线。
- 至少两行,一次最多 1000 个单元格、200000 个字符。
每列按内容统一宽度,超过最大列宽的内容自动换行;每行按最高的单元格统一高度。原始节点、连线、详细信息和分组关系保留,新节点生成在工程根层级。
“设置 → 扩展 → 表格拆分与对齐 → 设置”还可调整:
| 设置键 | 默认值 | 说明 |
|---|---|---|
| columnSeparator | \t |
下次弹窗默认的列分隔符 |
| maxColumnWidth | 480 | 最大列宽,范围 100–2000,以画布坐标为单位 |
| columnGap | 8 | 列间距,范围 0–200,设为 0 可紧贴 |
| rowGap | 8 | 行间距,范围 0–200,设为 0 可紧贴 |
生成的是普通文本节点,保存后无需扩展也能查看。后续手动修改内容可能改变节点高度,扩展不会持续联动调整整张表。
本机核对的 Project Graph 应用版本为 4.2.5。使用官方扩展的快捷键、对话框、独立设置及项目代理接口;未来官方调整接口时可能需要适配。
自动测试包含自定义分隔符、空单元格、换行与引号、记忆参数、取消、列宽限制和失败回滚。Comlink 测试使用真实通信库及独立的宿主协议测试替身;文字测量和节点对象由测试替身提供。官方程序内安装、撤销、保存和重开仍待人工验收,自动测试不代表这些操作已通过。
扩展保存在应用数据目录中,通常更新应用可以保留。请保留安装包。
本目录可以单独作为 GitHub 仓库,不需要 Project Graph 源码、系统 zip 或 Python。需要 Node.js 22+:
npm ci
npm run check
npm test
npm run package打包使用官方工具链同样采用的 MessagePack 和 ZIP 库,按直接开发扩展格式生成根目录元数据及安装包:
metadata.msgpack:保留在仓库根目录并提交,供扩展市场识别。dist/local.table-split.prg:安装用,文件名与扩展 ID 相同。dist/local.table-split-v1.1.0.prg:带版本号的归档副本。dist/project-graph-table-split-v1.1.0-source.zip:可直接解压为独立仓库的源码包,不包含依赖和本地工程数据。
公开发布步骤见 PUBLISHING.md。本目录是独立扩展工程,不是官方软件的分支。
MIT。本扩展由 XbuLee 维护,不代表 Project Graph 官方。