write-talk-script
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseWrite Talk Script
生成演讲脚本
Produce a speaker script that fits an exact talk slot: every slide gets a
word budget at the speaker's real pace, a cumulative timing mark, a
written-out transition, and a marked cut list so running long on stage has a
pre-planned answer. Slides tell the audience what to look at; this script is
what the speaker actually says. It is the post-acceptance companion to
.
make-slides生成适配精确演讲时段的演讲脚本:每张幻灯片会根据演讲者的真实语速分配字数预算、累计计时标记、书面过渡语,以及标记好的删减清单,这样即使在台上演讲时长超标也有预先规划的应对方案。幻灯片负责展示内容,而本脚本则是演讲者实际要说的内容。它是工具在论文录用后的配套工具。
make-slidesWhen to use
使用场景
- "Write the script for my 12-minute SIGSPATIAL talk" / "15-minute slot including 3 minutes of Q&A — what do I say?"
- "Turn my deck into speaker notes I can rehearse from"
- "My talk is running long — what do I cut?"
- "I have a 5-minute lightning talk / spotlight"
- After , before the first timed rehearsal.
make-slides
- “为我12分钟的SIGSPATIAL演讲写脚本” / “15分钟时段包含3分钟问答——我该说什么?”
- “把我的幻灯片组转换成可用于排练的演讲者笔记”
- “我的演讲时长超标——该删减哪些内容?”
- “我需要做5分钟的闪电演讲/重点演讲”
- 在运行之后,首次计时排练之前。
make-slides
Inputs
输入信息
- The exact slot: total minutes, and whether Q&A is inside the slot or handled separately. Ground truth is the presenter instructions and the acceptance email, not memory and not venue profiles.
- The deck or an outline (slide titles in order). No deck yet? Run
first.
make-slides - The paper (camera-ready preferred) — the only legitimate source for every number and claim spoken.
- Optional: for venue context, and the speaker's measured pace in words per minute.
venues/conferences/<venue>-<year>.yml
- 精确的时段信息:总时长,以及问答环节是否包含在时段内。真实依据为演讲者须知和录用邮件,而非记忆或会场概况。
- 幻灯片组或大纲(按顺序排列的幻灯片标题)。还没有幻灯片组?先运行工具。
make-slides - 论文(优先使用终稿)——所有提及的数字和陈述的唯一合法来源。
- 可选:会场配置文件,以及演讲者实测的语速(词/分钟)。
venues/conferences/<venue>-<year>.yml
Process
流程步骤
-
Pin down the slot facts. Ask for: total minutes, Q&A inside or outside, session language, and whether the chair uses timecards. If a venue profile exists, use it for context only and re-verify against the live/ venue website — profiles do not encode talk slots, and slots change year to year. Typical shapes (verify, never assume): full papers 12–20 min including Q&A; CHI historically ~10 min + 5 Q&A; lightning/spotlight 1–7 min. Details in references/timing-and-cuts.md.
cfp_url -
Calibrate the pace. Default to 130 wpm — a deliberate conference pace. If the speaker can do the 1-minute read-aloud calibration (timing-and-cuts.md §2), use their measured number; suggest 110–120 wpm for non-native speakers or dense technical material. Never exceed 150.
-
Build the outline file. One line per slide (abullet or
-heading), in deck order. Pin slides that need fixed time with a trailing##(e.g.| <minutes>). Title and takeaway slides typically pin at 0.5.- Key idea | 2 -
Compute the word budget. Run:
python3 scripts/word_budget.py --minutes 15 --qa 3 --outline outline.md \ [--wpm 120] [--venue-profile venues/conferences/<venue>.yml]Also save the machine-readable form for step 6:. The script reserves a safety buffer (default 0.5 min) so the talk lands early, never at the bell. No outline yet?python3 scripts/word_budget.py ... --json > budget.jsonsplits evenly.--slides N -
Draft the script slide by slide, inside each slide's word budget, in spoken register — short sentences, contractions, signposts, numbers written the way they are said. Follow references/script-craft.md for the file format (oneheading per slide,
##stage directions and timing marks, written-out transitions as the last sentence of each slide), opening and closing patterns, and figure walkthroughs. Every factual claim must trace to the paper — quote the paper's numbers, then render them speakable.[bracketed] -
Time the draft. Run:
python3 scripts/script_timer.py talk-script.md --budget budget.json(orwithout a budget file). Fix--minutes 15 --qa 3slides by cutting words, not by planning to speak faster; re-run until the verdict isOVER. Exit codes: 0 within budget, 1 over, 2 bad input.WITHIN BUDGET -
Build the cut list. Mark 2–3 cuttable passages totaling 10–15% of the talk with…
<!-- CUT: label -->(each marker on its own line, no nesting, no crossing slide boundaries). What to cut first and what must never be cut: timing-and-cuts.md §6. Re-run<!-- END CUT -->— it reports each cut's seconds saved and whether applying all cuts rescues an overrun.script_timer.py -
Finalize the rehearsal package. Insert the budget's timing mark at the top of each slide section (e.g.), add the Q&A handoff line, and append the rehearsal protocol and the on-stage running-long protocol (timing-and-cuts.md §8–9). Tell the user the timing holds only after at least one full out-loud rehearsal with a timer.
[4:30]
-
确认时段细节。询问以下信息:总时长、问答环节是否包含在内、会议语言、是否有计时牌。如果存在会场配置文件,仅将其作为参考,并通过/会场官网重新核实——配置文件不包含演讲时段信息,且时段每年可能变化。典型时段(务必核实,切勿假设):全论文演讲12–20分钟(含问答);CHI会议历史上约为10分钟演讲+5分钟问答;闪电/重点演讲1–7分钟。详情见references/timing-and-cuts.md。
cfp_url -
校准语速。默认语速为130词/分钟——这是会议演讲的标准语速。如果演讲者能完成1分钟朗读校准(timing-and-cuts.md §2),则使用其实测数值;对于非母语演讲者或内容密集的技术演讲,建议语速为110–120词/分钟。语速绝不超过150词/分钟。
-
创建大纲文件。每张幻灯片占一行(使用项目符号或
-标题),按幻灯片组顺序排列。需要固定时长的幻灯片可在末尾添加##(例如| <minutes>)。标题页和总结页通常固定为0.5分钟。- 核心观点 | 2 -
计算字数预算。运行:
python3 scripts/word_budget.py --minutes 15 --qa 3 --outline outline.md \ [--wpm 120] [--venue-profile venues/conferences/<venue>.yml]同时保存机器可读格式用于步骤6:. 脚本会预留一个安全缓冲时间(默认0.5分钟),确保演讲提前结束,而非刚好卡在计时结束点。还没有大纲?使用python3 scripts/word_budget.py ... --json > budget.json平均分配时长。--slides N -
逐页撰写脚本草稿,控制在每张幻灯片的字数预算内,采用口语化风格——短句、缩略语、提示语,数字按口语表达写法。遵循references/script-craft.md中的文件格式(每页幻灯片对应一个标题,
##内为舞台提示和计时标记,每页最后一句为书面过渡语)、开场和结尾模式,以及图表讲解方式。所有事实性陈述必须能追溯到论文——引用论文中的数字,再转换为口语化表达。[方括号] -
为草稿计时。运行:
python3 scripts/script_timer.py talk-script.md --budget budget.json(或不使用预算文件,直接用)。通过删减内容修正时长超标的幻灯片,而非计划加快语速;重新运行直到判定结果为--minutes 15 --qa 3。退出代码:0表示符合预算,1表示超时,2表示输入错误。WITHIN BUDGET -
创建删减清单。标记2–3处可删减的段落,总时长占演讲的10–15%,使用…
<!-- CUT: label -->标记(每个标记单独占一行,不嵌套,不跨幻灯片)。优先删减内容和绝不能删减的内容:见timing-and-cuts.md §6。重新运行<!-- END CUT -->——它会报告每处删减节省的时长,以及应用所有删减是否能解决超时问题。script_timer.py -
整理最终排练包。在每张幻灯片部分的顶部插入预算中的计时标记(例如),添加问答环节衔接语,并附上排练流程和台上超时应对流程(timing-and-cuts.md §8–9)。告知用户只有经过至少一次完整的出声计时排练后,时长估算才有效。
[4:30]
Output
输出内容
- — one
talk-script.mdsection per slide: timing mark, word count, spoken prose with stage directions, transition sentence, cut blocks; ends with the Q&A handoff and a rehearsal checklist.## - — the per-slide budget, reusable on every re-timing pass.
budget.json - A timing report (from ) showing the talk fits, with the cut list and seconds saved per cut.
script_timer.py
- ——每页幻灯片对应一个
talk-script.md章节:计时标记、字数统计、带舞台提示的口语化文本、过渡句、删减块;结尾包含问答环节衔接语和排练清单。## - ——每页幻灯片的预算,可在每次重新计时时复用。
budget.json - 计时报告(来自),显示演讲符合时长要求,包含删减清单及每处删减节省的时长。
script_timer.py
Adapt to your discipline
适配不同学科
The defaults target CS conference talks (12–20 min, slide-driven, English).
For other fields, adjust the section shares in your outline (e.g. methods-
heavy medical talks), the pace (), and the venue norms in
timing-and-cuts.md — the scripts are field-agnostic.
--wpm默认设置针对计算机科学会议演讲(12–20分钟,幻灯片驱动,英文)。对于其他学科,可调整大纲中的章节占比(例如方法导向的医学演讲)、语速(),以及timing-and-cuts.md中的会场规范——脚本工具与学科无关。
--wpmGuardrails
约束规则
- Never invent results, numbers, quotes, or citations for the script —
every claim spoken must come from the user's paper. New references go
through first.
verify-citations - Timing is an estimate, not a guarantee: never tell the user the talk "fits" without a real timed rehearsal; word-rate math ignores nerves, laser-pointer detours, and clicker failures (that is what the buffer and cut list are for).
- Venue profiles never override presenter instructions or the acceptance
email for slot length; re-verify against the live before scripting.
cfp_url - Preserve the speaker's voice and precise technical claims — spoken register is a rewrite for the ear, not a simplification of the science, and not a read-aloud of paper paragraphs.
- Never upload the script or slides to any speaker portal, or submit anything on the user's behalf.
- 绝不编造脚本中的结果、数字、引用或参考文献——所有演讲中的陈述必须来自用户的论文。新增参考文献需先通过工具验证。
verify-citations - 时长仅为估算,非绝对保证:未经过真实计时排练,绝不告知用户演讲“符合时长”;词速计算未考虑紧张情绪、激光笔操作失误和翻页器故障(这正是缓冲时间和删减清单的作用)。
- 会场配置文件绝不替代演讲者须知和录用邮件中的时段时长;在撰写脚本前,需通过重新核实。
cfp_url - 保留演讲者的风格和精确的技术陈述——口语化改写是为了适合听觉接收,而非简化科学内容,也不是直接朗读论文段落。
- 绝不将脚本或幻灯片上传至任何演讲者平台,也绝不代表用户提交任何内容。