关于 ppw:caption
ppw:caption 帮助学术作者生成或修改 LaTeX 图表标题。它会按空间数据类型收集信息,并可根据指定期刊模板调整内容,随后将标题写入目标 `.tex` 文件。
主要功能
- 01生成或修改插图与表格标题
- 02按需纳入空间元数据
- 03适配指定期刊模板风格
- 04将标题写入 LaTeX 文件指定位置
- 05缺少元数据时不插入占位符
适用场景
- 01为地图或 GIS 图件撰写标题
- 02改进论文中的表格标题
- 03为 `.tex` 文件添加期刊风格标题
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ lylll9436/ paper-polish-workflow-skill --skill ppw:caption安装后在 Claude Code 中输入/ppw:caption确认已加载。
详细介绍
用途
此 Skill 用于生成或优化学术论文中的 LaTeX 图题和表题。对于空间图件(地图、GIS 输出、航拍照片),此 Skill 会主动通过地理信息感知型提问策略收集研究区域、数据源和 CRS 元数据。对于非空间图件和表格,则完全跳过地理问题。输出会通过先读取再写入模式,直接写入用户 .tex 文件中正确的 \caption{} 位置。指定目标期刊后,会根据期刊模板调整图题长度和风格。
核心提示词
来源:awesome-ai-research-writing — 生成图的标题 + 生成表的标题
图标题 Prompt:
# Role
你是一位经验丰富的学术编辑,擅长撰写精准、规范的论文插图标题。
# Task
请将我提供的【中文描述】转化为符合顶级会议规范的【英文图标题】。
# Constraints
1. 格式规范:
- 如果翻译结果是名词性短语:请使用 Title Case 格式,即所有实词的首字母大写,末尾不加句号。
- 如果翻译结果是完整句子:请使用 Sentence case 格式,即仅第一个单词的首字母大写,其余小写(专有名词除外),末尾必须加句号。
2. 写作风格:
- 极简原则:去除 The figure shows 或 This diagram illustrates 这类冗余开头,直接描述图表内容(例如直接以 Architecture, Performance comparison, Visualization 开头)。
- 去 AI 味:尽量避免使用复杂的生僻词,保持用词平实准确。
3. 输出格式:
- 只输出翻译后的英文标题文本。
- 不要包含 Figure 1: 这样的前缀,只输出内容本身。
- 必须对特殊字符进行转义(例如:`%`、`_`、`&`)。
- 保持数学公式原样(保留 `$` 符号)。
表标题 Prompt:
# Role
你是一位经验丰富的学术编辑,擅长撰写精准、规范的论文表格标题。
# Task
请将我提供的【中文描述】转化为符合顶级会议规范的【英文表标题】。
# Constraints
1. 格式规范:
- 如果翻译结果是名词性短语:请使用 Title Case 格式,即所有实词的首字母大写,末尾不加句号。
- 如果翻译结果是完整句子:请使用 Sentence case 格式,即仅第一个单词的首字母大写,其余小写(专有名词除外),末尾必须加句号。
2. 写作风格:
- 常用句式:对于表格,推荐使用 Comparison with, Ablation study on, Results on 等标准学术表达。
- 去 AI 味:尽量避免使用 showcase, depict 等词,直接使用 show, compare, present。
3. 输出格式:
- 只输出翻译后的英文标题文本。
- 不要包含 Table 1: 这样的前缀,只输出内容本身。
- 必须对特殊字符进行转义(例如:`%`、`_`、`&`)。
- 保持数学公式原样(保留 `$` 符号)。
触发条件
在用户提出以下请求时激活:
- 为图或表撰写、生成或创建图题
- 优化、改进或改写现有的较弱图题
- 写图题、生成图表说明、优化标题、改写图表描述
调用示例:
- “为我的图撰写图题” / “帮我写图表标题”
- “优化这个表格的图题” / “优化我的图表说明”
- “生成符合 CEUS 要求的图题” / “帮我生成符合期刊要求的图题”
- “改进地图图件的图题”
- “帮我生成符合 CEUS 要求的图题”
模式
| 模式 | 默认 | 行为 |
|---|---|---|
direct | 是 | 提问策略结束后,通过单轮生成图题 |
batch | 不支持——每个图题都需要单独的图/表背景信息 |
默认模式: direct。用户提供图/表背景信息后,即可通过单轮生成获得完整的 LaTeX 图题。
路径选择(在 direct 模式中):
- 用户提供现有图题并希望改进 → 优化路径
- 用户仅提供内容描述 → 生成路径
- 意图不明确 → 询问:“您有需要改进的现有图题,还是希望我根据您的描述生成一个?”
参考资料
必需(始终加载)
| 文件 | 用途 |
|---|---|
references/expression-patterns.md | 学术表达模式概览——始终作为入口加载 |
叶节点提示(按需加载)
| 文件 | 加载时机 |
|---|---|
references/expression-patterns/geography-domain.md | 图件类型为空间图件(地图、照片、GIS 输出)时;提供研究区域表述、空间描述模式和规划用语 |
期刊模板(按需加载)
- 用户指定目标期刊时,加载
references/journals/[journal].md。 - 如果缺少模板,拒绝处理:“未找到 [X] 的期刊模板。可用模板:CEUS。”
- 如果未指定期刊,询问一次;若用户拒绝,则使用通用学术风格。
提问策略
开始前,收集以下信息:
-
图或表的类型(始终必需——用于判断是否需要询问空间信息): 地图 / 图表 / 示意图 / 照片 / 数据表?
-
目标期刊(如未指定则询问一次;若用户拒绝,则使用通用学术风格)
-
如果图件类型为空间图件(地图、照片、GIS 输出):
- 研究区域 / 城市名称(例如,“北京市朝阳区”)
- 数据源简介(例如,“OpenStreetMap 2023”、“Landsat-8 影像”)
- CRS(仅在用户知道时询问;若不确定则跳过,不要追问)
- 关键图例项目(仅在地图或图表有可见图例时询问)
-
如果图件类型为非空间图件(柱状图、折线图、示意图、数据表): 跳过所有地理问题。仅在未提及数据源时询问数据源。
规则:
- 继续处理前,最多询问 3 个问题
- 缺少空间元数据(CRS、图例)时,优雅地省略相应从句——不要在图题中插入
[MISSING: ...]占位内容 - 如果
.tex文件中有多个\caption{}命令,写入前询问目标\label{}(例如,\label{fig:study_area}) - 在
direct模式下,如果已提供足够背景信息,则无需预先提问,直接继续处理
工作流
步骤 0:工作流记忆检查
- 读取
.planning/workflow-memory.json。如果文件不存在或为空,则跳到步骤 1。 - 检查最近 1–2 条日志记录是否构成带有
ppw:caption的已识别模式,且该模式在日志中出现次数 >= 阈值。完整算法请参阅skill-conventions.md > Workflow Memory > Pattern Detection。 - 如果找到模式,则通过 AskUserQuestion 提出建议:
- 问题:"检测到常用流程:[pattern](已出现 N 次)。是否直接以 direct 模式运行 ppw:caption?"
- 选项:"Yes, proceed" / "No, continue normally"
- 如果用户接受:将模式设为
direct,跳过 Ask Strategy 问题。 - 如果用户拒绝或 AskUserQuestion 不可用:继续使用常规模式。
步骤 1:收集上下文
- 加载
references/expression-patterns.md概览。 - 如果指定了期刊,则加载
references/journals/[journal].md。如果文件不存在,则拒绝:"Journal template for [X] not found. Available: CEUS." - 读取用户输入:如果提供了文件,则使用 Read 工具;否则接受粘贴的文本描述。
- 运行 Ask Strategy 问题,补全输入中未回答的信息。
- 确定路径:如果用户提供了要改进的现有图注 → 优化路径;如果用户仅提供了内容描述 → 生成路径;如有歧义,则询问用户。
- 记录工作流: 将
{"skill": "ppw:caption", "ts": "<ISO timestamp>"}追加到.planning/workflow-memory.json。如果文件不存在,则创建文件并写入[]。如果日志长度 >= 50,则删除最早的一条记录。
步骤 2a:生成路径(根据内容描述生成新图注)
-
遵循上文的 Core Prompt 约束(视情况适用图或表的提示词),将其作为生成图注的主要指令集。
-
如果图的类型为空间类:加载
references/expression-patterns/geography-domain.md。 -
应用图与表的分支逻辑:
| 类型 | 图注重点 |
|---|---|
| 地图 | 空间范围、CRS(如已提供)、数据来源、比例尺说明 |
| 图表 / 示意图 | 描述的变量、趋势或比较目的、数据来源 |
| 照片 | 主体、地点(如已提供)、数据来源或摄影者署名 |
| 表格 | 行 / 列含义、统计背景、单位、数据来源 |
- 使用固定的三部分 LaTeX 格式撰写图注:
\caption{[Subject / study area]. [Key content description]. [Data source statement].} - 如果已加载期刊模板,则根据模板调整长度和风格。
步骤 2b:优化路径(改进现有的薄弱图注)
- 如果图的类型为空间类:加载
references/expression-patterns/geography-domain.md。 - 检查现有图注是否具备完整信息(主体 / 内容 / 来源)、是否缺少空间元数据、术语是否精准,以及长度是否符合期刊要求。
- 使用与生成路径相同的分支逻辑和三部分格式重写。
- 不要引入
[MISSING: ...]占位符;根据现有内容生成图注。
步骤 3:写入文件
- 读取目标
.tex文件(写入前必须读取——定位\caption{}或\caption[]{}的插入位置)。 - 如果文件中存在多个
\caption{}命令:根据 Ask Strategy 规则确认目标\label{}后再写入。 - 在已确定的位置替换现有的
\caption{}内容(或在内容为空时插入图注)。 - 写入更新后的文件。
- 如果 Write 工具失败:在对话中提供最终图注,并说明应将其粘贴到
\caption{}位置。
输出约定
| 输出 | 格式 | 条件 |
|---|---|---|
caption_latex | 写入 .tex 文件的 LaTeX \caption{...} 字符串 | 始终——文件输入且 Write 成功 |
caption_latex | 对话中的 LaTeX \caption{...} 字符串 | 回退情形——Write 失败,或输入为粘贴的文本 |
LaTeX 图注格式示例:
图(空间类):
\caption{Distribution of urban green space in Shenzhen Nanshan District. Data derived from OpenStreetMap 2023. Projected in WGS 84 / UTM Zone 50N.}
图(非空间类):
\caption{Comparison of model accuracy across three benchmark datasets. All values are F1 scores. Data from the COCO 2017 validation set.}
表格:
\caption{Descriptive statistics of land use change by category, 2010--2020. All areas reported in km\textsuperscript{2}. Data from the Third National Land Survey.}
边缘情况
| 情况 | 处理方式 |
|---|---|
| 已指定期刊,但未找到模板 | 拒绝:“未找到 [X] 的期刊模板。可用模板:CEUS。” |
| 图件类型为空间类,但未提供研究区域或数据源 | 根据现有内容生成;跳过缺失的分句;不要使用 [MISSING: ...] |
.tex 文件包含多个 \caption{} 命令 | 写入前询问哪个 \label{} 是目标 |
| 用户同时提供现有图注和内容描述 | 默认采用优化路径;如有歧义则确认 |
| 图件类型不明确(“我的图”) | 在进行任何分支判断前询问图件类型 |
| 输入仅包含文件路径,没有描述 | 读取文件;如果内容不明确,则请求澄清 |
| 期刊模板中的图注格式不标准 | 期刊模板优先于默认的三段式格式规则 |
| 用户不愿提供 CRS | 完全跳过 CRS 分句;不要留下占位符 |
回退方案
| 场景 | 回退方案 |
|---|---|
| 结构化交互不可用 | 以纯文本提出 1-3 个问题(图件类型、期刊、空间类图件的研究区域) |
缺少 geography-domain.md 叶节点 | 使用通用空间描述继续处理;提醒用户质量会有所降低 |
| 缺少期刊模板(未指定期刊) | 询问一次;如果用户拒绝,则使用通用学术风格 |
| 写入工具失败 | 在对话中提供图注;建议用户粘贴到 \caption{} 位置 |
.tex 文件未找到或无法读取 | 在对话中提供图注 |
示例
调用:“为我的地图图件撰写图注,展示广州的城市热岛分布。”
询问策略对话:
- 类型:地图(空间类 → 适用地理问题)
- 研究区域:广州
- 数据源:Landsat-8 影像,2022 年
- CRS:用户不清楚 → 跳过
- 期刊:CEUS
生成的图注(加载 CEUS 模板和 geography-domain.md 后):
\caption{Spatial distribution of urban heat island intensity in Guangzhou. Land surface temperature derived from Landsat-8 imagery (2022). City boundary data from the National Geomatics Center of China.}
**写入步骤:**技能读取 paper.tex,定位到 \label{fig:uhi} 处的 \caption{},替换内容并写入文件。
技能:caption-skill 约定:references/skill-conventions.md