diff --git a/skills/tsl-syntax-reference/SKILL.md b/skills/tsl-syntax-reference/SKILL.md index 7e1ce09e..59f52360 100644 --- a/skills/tsl-syntax-reference/SKILL.md +++ b/skills/tsl-syntax-reference/SKILL.md @@ -96,13 +96,13 @@ Section ID 抄自 `--section` 输出首部的 `Section ID:` 行。多个要素 `--section` 正文里每个代码围栏前有一行 `代码块身份:`。身份决定这段代码能否进入 你的输出: -| 身份 | 允许的用法 | -| --- | --- | -| `可直接照写示例` | 作为源码外形照写,替换业务内容后使用;依赖的 API 仍按事实边界另行核对 | -| `反例 / 不可照写` | 只用于说明错误边界,不得作为实现出现在输出里 | -| `输出片段` | 只用于说明运行结果,不得当作源码 | -| `配置片段 / 概念骨架` | 只用于表达结构或配置意图,不得当作可运行代码 | -| `仅服务端可执行示例` | 只在对应服务端环境成立,不得当作通用本地示例 | +| 身份 | 允许的用法 | +| --------------------- | --------------------------------------------------------------------- | +| `可直接照写示例` | 作为源码外形照写,替换业务内容后使用;依赖的 API 仍按事实边界另行核对 | +| `反例 / 不可照写` | 只用于说明错误边界,不得作为实现出现在输出里 | +| `输出片段` | 只用于说明运行结果,不得当作源码 | +| `配置片段 / 概念骨架` | 只用于表达结构或配置意图,不得当作可运行代码 | +| `仅服务端可执行示例` | 只在对应服务端环境成立,不得当作通用本地示例 | `--query` 的候选摘要不含身份行,身份只能从 `--section` 正文读取。这是必须走完第 二步的另一个原因。 @@ -150,11 +150,11 @@ python /scripts/lookup.py --map ## 退出码 -| 退出码 | 含义 | 处理方式 | -| --- | --- | --- | -| 0 | 查询或取回成功 | 读取输出并继续两步流程 | -| 1 | `--check` 发现参考页问题,或参考目录内没有可校验的参考页 | 修复参考页,或检查 `--references-dir` 路径与 skill 安装 | -| 2 | 参数不合法、`--query` 无匹配或候选全部为弱命中、`--section` ID 不存在 | 见下 | +| 退出码 | 含义 | 处理方式 | +| ------ | --------------------------------------------------------------------- | ------------------------------------------------------- | +| 0 | 查询或取回成功 | 读取输出并继续两步流程 | +| 1 | `--check` 发现参考页问题,或参考目录内没有可校验的参考页 | 修复参考页,或检查 `--references-dir` 路径与 skill 安装 | +| 2 | 参数不合法、`--query` 无匹配或候选全部为弱命中、`--section` ID 不存在 | 见下 | `--section` ID 不存在时,脚本会在 stderr 打印最接近的若干 Section ID;从中挑选正确 ID 重试,不要凭猜测拼写 ID。一次传入多个 ID 时只要有一个不存在就不返回任何正文,修正后整批重试。 diff --git a/skills/tsl-syntax-reference/references/02_core_model.md b/skills/tsl-syntax-reference/references/02_core_model.md index 0ea983d3..c2491dc7 100644 --- a/skills/tsl-syntax-reference/references/02_core_model.md +++ b/skills/tsl-syntax-reference/references/02_core_model.md @@ -215,14 +215,14 @@ function:__main__:line 9: invalid statement 已经确定任务目标时,按下表选择起手形态: -| 任务 | 起手形态 | 写法 | -| --- | --- | --- | -| 入口流程、脚本任务或一次性执行逻辑 | `.tsl` 脚本语句区 | 直接写会顺序执行的语句 | -| 脚本逻辑需要调用本文件内函数 | `.tsl` 语句区 + 后置函数声明区 | 语句区之后写 `function ... begin ... end;` 或 `procedure ... begin ... end;` | -| 脚本逻辑需要对象状态、字段、方法 | `.tsl` 语句区 + 后置类声明区 | 语句区之后写 `type Name = class ... end;` | -| 沉淀可复用函数或过程 | `.tsf` 顶层函数 / 过程 | 写可部署到 `funcext` 的 `function` / `procedure` 文件 | -| 沉淀可复用类 | `.tsf` 顶层类声明 | 写 `type Name = class ... end;`,只按可复用声明理解;类细节见 [08_objects_and_classes.md](08_objects_and_classes.md) | -| 把接口和实现组织进一个模块 | `.tsf` `unit` | 默认先写 `unit ... interface ... implementation ... end.`;简写形态见 [09_units_and_scope.md](09_units_and_scope.md) | +| 任务 | 起手形态 | 写法 | +| ---------------------------------- | ------------------------------ | -------------------------------------------------------------------------------------------------------------------- | +| 入口流程、脚本任务或一次性执行逻辑 | `.tsl` 脚本语句区 | 直接写会顺序执行的语句 | +| 脚本逻辑需要调用本文件内函数 | `.tsl` 语句区 + 后置函数声明区 | 语句区之后写 `function ... begin ... end;` 或 `procedure ... begin ... end;` | +| 脚本逻辑需要对象状态、字段、方法 | `.tsl` 语句区 + 后置类声明区 | 语句区之后写 `type Name = class ... end;` | +| 沉淀可复用函数或过程 | `.tsf` 顶层函数 / 过程 | 写可部署到 `funcext` 的 `function` / `procedure` 文件 | +| 沉淀可复用类 | `.tsf` 顶层类声明 | 写 `type Name = class ... end;`,只按可复用声明理解;类细节见 [08_objects_and_classes.md](08_objects_and_classes.md) | +| 把接口和实现组织进一个模块 | `.tsf` `unit` | 默认先写 `unit ... interface ... implementation ... end.`;简写形态见 [09_units_and_scope.md](09_units_and_scope.md) | 补充判断: