三阶生长语文 v6
> v6 是什么:不是又加了几条规则,而是把七课(草原/丁香结/狼牙山/圆明园/桥/穷人/少年闰土)逐课被何老师纠偏的过程,
> 重排成一条能照着干的生产线。旧版《三阶生长语文全学段套装》的二十二节是"某天改了什么"的流水账;
> v6 按"动手顺序"组织:判学段 → 核教材口径 → 定单元分寸 → 排页面蓝图 → 写数据 → 过四关 → 配详案 → 对齐归档。
>
> 一条底线:v6 里凡与旧版冲突的,以 v6 为准。旧版留着当备份,别两边混着看。
一、什么时候用
用:做一课「三阶生长语文」的课件或逐字稿详案;说"三阶""五四三""一阶五步/二阶四步/三阶三步""扎根·生长·丰实""配套课件和教案""拿来即用版"。
不用:高中及以上;非统编版语文;只评课不给课(那用 effective-teaching-observation);纯排版润色。
二、★ 一票否决的十二条(违反任何一条,整份重做)
这十二条是七课里被纠正次数最多的,排最前面。写代码前先念一遍,过完自查再念一遍。
| # | 铁律 | 为什么(都是原话) | 违反的表现 |
|---|---|---|---|
| 1 | 正文 32—36pt,不缩字;版面不够靠删重复/拆页/卡片自适应 | 「一体机后排看不清」 | 出现 24pt 正文 |
| 2 | 一页只做一件事;能一页说完绝不拆两页 | 「老师看见太多页码,觉得很多任务」 | 半页空白、标题可互换 |
| 3 | 每阶首页=本阶教学目标(条件+行为+可数程度),不另做"学完能做到三件事" | 「上课老师很少看教案,拿着课件就上了」 | 目标页与阶扉页重复 |
| 4 | 练习只在每阶最后一步:一阶⑤/二阶④/三阶③ | 「每一阶的练习,都放在每一阶教学的最后环节」 | 任务后插"练一练" |
| 5 | 答案写进原题括号里,不另做答案页;单击才出现 | 「参考答案放到原题目中……选择题就放到选择题的括号」 | 答案条、答案页 |
| 6 | 问题先出,答案后出(任务卡、梳理表、说发现都算答案) | 「提出问题后需要学生独立思考……」 | 活动卡一上来就把"怎么做"给了 |
| 7 | 三阶三步是同一个任务,第三步是"把方法用在同一件事上" | 「三步走出来的是同一个任务就行,不要有两个任务」 | ①写解说词→③练"石柱会说话" |
| 8 | 三阶极简:三步=最多 4 页(台阶+三步各一页) | 「三阶我感觉你还是重复啰嗦了一点」 | 任务/三招/星级/范例/自查各一页 |
| 9 | 任务布置页不动画(p_task(walk=False));同任务续页整页摆出 |
「课堂上老师多点一次遥控,就多浪费老师的时间」 | 每页都配单击 |
| 10 | 只做学生手里那本练习册(《新课程学习与测评》主册),网上无纸质的全删 | 「王朝霞的页数太多」「分不清哪份要交」 | 两本混着上 |
| 11 | 凡呈现课文原段,一律标自然段序号①②③,与课本逐段对得上 | 「师生随时对上课本」 | 原段没段号 |
| 12 | 骨架=单元整体,教学评只是导向 | 「我还是想立足单元整体写,只是以教学评为导向而已」 | 写成"教学评模板填好了" |
第十二条最容易被误解,展开一句:先回答"这一课在单元里排第几、单元要素落到哪一层",再回答"目标怎么写、评价怎么嵌"。
第一课就教成第三课的深度,单元就散了。落地动作:课件加一页"本课在单元里的位置",详案第一栏写"0. 单元整体分析"(编号在课标分析之前),并写出本课的分寸("初步体会"还是"抓住……体会")。
三、生产线(七步,按序走)
步骤 0 · 判学段、判版本(两分钟)
判学段(决定骨架):教材有没有明确的「语文要素」栏?
- 一/二年级没有 → 低年级:识字写字优先,田字格字理卡逐字示范(新笔画自动补红色笔画符号),原文带注音,二阶直接用课后题,没有多音字就不出该页。
产出走 sj_engine.build(DATA)(老引擎仍保留、仍可用),数据包范本:scripts/samples/data_qiutian.py('lowgrade': True)。
- 三~六年级有 → 中高年级:一阶五步+按本单元语文要素定二阶+三阶读写结合。
产出走 nb_big 页型库(本技能主线),范本:scripts/samples/sample_courseware_runtu.py。
> 两条线不是二选一:sj_engine 是 2026-09 的老管线(整页版式、一页多块),nb_big 是 2026-10 起的大字号手绘管线(一页一件事、逐块动画)。新课一律用 nb_big;sj_engine 只在改低年级老课件、或要现成的田字格字理卡时用。拼音课(a o e / b p m f 等)也是 sj_engine 线,配 pinyin_kit.py + pinyin_letters.py(需要 numpy)。
判版本(决定规格):
| 精雕版(标杆·培训素材) | 拿来即用版(推全县) | |
|---|---|---|
| 对象 | 冲参赛的骨干、教研员 | 课件做不动的普通老师 |
| 页数 | 60—70(两课时) | 45—55 |
| 每页页脚 | 8pt「教师操作」提示 | 16pt「老师话术条」:说|做|卡住 |
| 课文原段 | 逐段全出 | 只留 3—5 页 |
| 三阶 | 4—6 页 | 4 页 |
理由:何老师要把模式推给"大部分普通老师"。话术条是拿来即用版的成品本体——9pt 灰字在投影上看不清,而那行字是普通老师唯一的依靠。开话术条必须 set_big_script(True),且在建页之前调用(正文底界 6.86 → 6.14)。
步骤 1 · 核教材口径(不许凭记忆)
先问一句"你手上是第几课"(2026-11-06 加,代价最大的一次)。
2025 修订版起,部分课文课号变了、字词表整份换掉、单元位置也变了。已确认的例子:
| 课文 | 旧版 | 2025 修订版(2026 春在用的) |
|---|---|---|
| 《火烧云》 | 24 课·第七单元第 3 篇;会写 12 字、会认 6—7 字、词语 8 | 22 课·第七单元第 1 篇;会写 10 字(烧盈乘寿彤颜钟武镇偏)、会认 9 字(檀猪盈彤跪庙镇揉偏)、词语 16;第 ④ 段"尾巴却不见了" |
课号一错,一阶字词页整套报废、单元"分寸"也会写反(首篇该做"初步",不是"深化")。
问不清就按"学生课本"为准,并在数据包开头写一行:★ 教材口径(YYYY-MM-DD 核,来源:…)。
必核六项,写进数据包开头并加日期注释:会写字几个、会认字几个、词语几个、自然段几段、课后几题、课文里有没有版本特殊用字。
七课踩过四次(都是"凭记忆"造成的):
- 会写字数量记错(《少年闰土》12 个,写成 8 个);
- 自然段数记错(17 段 vs 教辅的 19 段);
- 把教材原文当错字("项带银圈"是原文,不是"戴");
- 课号与练习册编号不同(教材 25 课,主册 23 课)。
做法:知识库有电子课本就取原文;没有就联网核现行统编版;两者冲突以现行教材为准,并在数据包里写一行注释说明。
若用户已上传主册课件/题目,逐题核答案口径——自拟答案常与主册不一致(《桥》"人们停住脚,望着老汉"自拟判神态,主册答案是动作 B),一切以主册为准。
步骤 2 · 定单元骨架,写出"本课的分寸"
读本单元所有课文的教材要求原文,列一张四行表(课文|课型|教材原文要求|在单元里的位置),然后用一句话写出本课的分寸。
《桥》那课的范例:教材写"初步体会环境描写对表现人物形象的作用"——"初步"两个字就是分寸,不能讲到"抓住心理活动"(那是《穷人》的活)。
这一步做对了,后面所有取舍都有依据;做错了,一课比一课教得深,单元就散了。抓框架时还会抓出错(《桥》的三把钥匙页原写"照这三把钥匙读《穷人》《在柏林》",而本单元略读是《金色的鱼钩》——单课看看不出来)。
步骤 3 · 排页面蓝图(先写清单,再写代码)
这一步不能省。 直接写 Python 的后果是:页型乱、动画乱、练习位置错,改一次动全身。
蓝图=一张表,一行一页:页号|环节|页型函数|一句话内容|是否给动画。按阶写完再核对三件事:
- 练习是否只在每阶最后一步;
- 三阶是否只有 4 页;
- 有没有两页的标题可以互换(能互换=有废话)。
三阶的定型四页(2026-11-02 定,此后不再变):
| 页 | 页型 | 承担什么 |
|---|---|---|
| 1 | p_stage 三条目标 |
学什么 |
| 2 | p_table 情境+三招合一页 |
在什么场合、要写成什么样 |
| 3 | p_table 三句填空支架 |
怎么写 |
| 4 | p_eval 读评(三星+流程) |
怎么评 |
连起来念:学什么 → 写成什么样 → 怎么写 → 怎么评。多一页就说明同一件事讲了两遍。
步骤 4 · 写数据包/构建脚本
照抄样例,不要手搓坐标:
- 课件:scripts/samples/sample_courseware_runtu.py(57 页,《少年闰土》,大字号、三阶四页、答案进括号)
- 详案:scripts/samples/qiao_plan.py(62 段逐页稿,《桥》,只写内容不写排版)
页型库在 scripts/nb_big.py,速查见第五节。三条习惯:
- 段号用 B.P(list(range(1, n+1))) 一次传入全部,让 p_read 自己均衡分页;分组调用等于绕开分页(17 段会被拆成 12 页);
- 高度一律用 th()/nlines()/tw() 实测,不自己估;
- 每条 note 写"这里为什么这么排"给老师看,不写"本页设计意图"给学生看。
★ 一页到底装多少(拿来即用版 BOT=6.14 实测,2026-11-06)
先算再写,能省掉一半返工。1 行 32pt = 0.596 英寸;1 个汉字宽 0.4625 英寸(不是 0.444,按 0.444 排必折行)。
| 页型 | 上限(不含话术条) | 备注 |
|---|---|---|
表格 p_table |
表头 + 3 行(每行 1 行字) | 4 行必「超 x」;带 foot 再少 1 行 |
练习 p_quiz |
1 卡 5 行题干 | 第 6 行必溢出;题号行也算一行 |
说发现 p_say |
问题 1 行 + 句式 1 行 + 词卡 | 有 foot 就放不下词卡 |
原文 p_read |
每页 ≈ 5 行(约 120 字) | 超了自动续页,但会把一段腰斩,标题带(续) |
三招 p_three |
3 条,每条 1 行 | 第三列 4.86 英寸 ≈ 10 字 |
词卡 p_words |
8 个 / 页(4 列 2 行) | 16 个词必须拆两页,4 行会压到话术条 |
听写 p_tingxie |
列数自动取能整除的(8→4 列) | 不能整除时才会留空位 |
会认 p_erlei |
9 个 / 页,nrow=2 | nrow=3 卡片高度不够,构建时就报警 |
写法上的三条硬规矩(都是这次踩出来的):
1. p_table 的单元格不能放 \n——不换行,只把行高算高,版面上留一道假空白;要换行就拆成多行。
2. p_quiz 的答案必须紧贴左括号:(【tán】 chán) ✓ (chán 【tán】) ✗(会整体错到下一个括号)。
3. 话术条每段≤ 40 字(16pt,宽 11.16 英寸),超了换行压字,三行会叠在一起。
步骤 5 · 过四关(不通过不许交付)
一条命令(2026-11-06 起,四关合成一屏,约 1—2 s;原来跑四遍要 4 s 还要看四份输出):
cd <技能>/scripts
python qc.py "<课件>.pptx" --plan plan_xxx.py # 版面/字号/动画/详案 一次说完
python qc.py "<课件>.pptx" --render out/preview --pages 12,15-18 # 只出改过的那几页
输出形如(全通过退回 0,有失败退回 1,文件读不到退回 2):
✅ 版面 重叠 0 | 溢出 0 | 越界 0 | 45 页
✅ 字号 正文 <32pt:0 处 | 装饰 359 处
✅ 动画 81 击(上限 90)|零动画 26 页(下限 15)
✅ 详案 45 段稿 | 缺号 0 | 越界 0 | 页序OK
动画一项超了只记 ⚠️(提醒,不判失败),想要硬判加 --strict。
理由:那是内容取向(该减就减),不是版面硬伤;官方样例《少年闰土》57 页 131 击也略超 114。
要单跑某一关仍然可以:
python samples/sample_courseware_runtu.py # ① 构建:看有没有 "!! 版面告警"
python check_all.py "<课件>.pptx" # ② 重叠 / 溢出 / 越界 必须全 0
python check_fonts.py "<课件>.pptx" 32 # ③ 正文 <32pt 必须是 0
python render2.py "<课件>.pptx" <目录> --pages 5 # ④ 只出第 5 页
构建阶段就会报的六类错(2026-11-06 加,都是"看渲染图才发现"的坑,现在不用看图):
| 告警 | 说明 |
|---|---|
| 单元格含换行符 | p_table 的 \n 不生效,只会把行高算高 → 拆成多行 |
| 答案没紧贴左括号 | 必须 (【答】 干扰项),写成 (干扰项 【答】) 会整体错一格 |
p_erlei nrow≥3 |
6.14 底界下卡片高度不够,只能 nrow=2 |
| 话术条单段过长 | 16pt 下每段只有一行,>11.16 英寸就换行压字 |
| 表格「超 x」 | 一页放不下这么多行,删行或拆页(不是缩字号) |
| 课件被占用 | 保存前探测;占用时另存 _v2 并说明是哪个文件 |
第四关必做:render2.py 会真折行,能看出"文字顶出卡片""半页死白";render_demo 不折行会把长行截断成"看起来没问题"。
看图只做两件事:扫一遍有没有压边、扫一遍哪页下半是空的(余量 > 0.85 英寸就该合并或撑满)。
省时间的三条:① 一次改一批(同类问题一起改),不要一页一改;② 只渲改动页(--pages),45 页全渲是 0.8 s、挑 4 页是 0.2 s,但看图的时间才是大头;③ 构建脚本用 B.save(prs, out),别用 prs.save(out)。
步骤 6 · 配逐字稿详案
两个硬要求:① 页码一一对应,老师翻到 P几读 P几;② 按教学评一体化写(课标/教材/学情/目标/评价任务五栏在前面),但骨架是单元整体(第一栏是"0. 单元整体分析")。
只写内容,排版交给 build_plan.py:
import build_plan, plan_xxx
build_plan.build(plan_xxx.PLAN, '/workspace/out/XX_三阶生长语文详案(逐字稿).docx')
逐字稿必须能照着念:【方括号】是动作提示(点鼠标、停几秒),不是要念的话——「二、逐页逐字稿」标题下那行固定提示写明了这条,否则老师会把"【单击】"念出来。
步骤 7 · 对齐校验 + 归档
python3 check_plan.py "<课件>.pptx" plan_xxx # 页号缺/越界/乱序
这一关专治"课件改版后详案没跟着改":《桥》课件后来从 62 页压到 60 页,详案 62 段就整体错了 2 页——老师翻到 P20 会读到别的内容。样例 qiao_plan.py 保留的是 62 页版,跑 check_plan 会如实报"越界 P61/P62",这正是它该抓的。
归档命名:课件 <序号>-第X单元-<课号> <课题>.pptx,详案 <课题>_三阶生长语文详案(逐字稿).docx,同一课的课件与详案放在同一文件夹。
四、四关的判据(不要靠"看着还行")
| 关 | 判据 | 常见假通过 |
|---|---|---|
| 构建告警 | nb_big.WARN 一条都不许留 |
不看 stdout 直接 save |
| 重叠/溢出/越界 | 三项全 0 | 只看"重叠 0",溢出几十处不管 |
| 字号 | 正文 <32pt = 0;豁免只有段号 24、胶囊 26、出处 28、页脚 11、角标 18、话术条 16 | 把正文塞进 28pt 当"注释" |
| 渲染 | 无压边、无半页死白 | 看缩略图,长行被截断看不出来 |
检测器比真实排版保守:check_all 按每字全宽、每行 0.42 英寸估;真实排版(nlines)约 0.596/行但一行装得更多。两者冲突时取大,代码里叫"双尺子":
def _h_seg(no_, txt, s_):
h1 = nlines(full, 11.52, s_) * s_ * TXT_LH / 72.0 # 真实排版
_n = 0 # 检测器口径
for _seg in full.split('\n'):
_wch = sum(_per if ord(_c) > 0x2E80 else _per * 0.55 for _c in _seg)
_n += max(1, int(-(-_wch * 100 // max(1, int((11.58 - 0.10) * 100)))))
return max(h1, _n * 0.42)
只按真实排版算,长段必被判溢出;只按检测器算,卡片会虚高一半。
五、页型库速查(scripts/nb_big.py)
| 函数 | 用途 | 关键点 |
|---|---|---|
p_cover |
封面 | 课题 66pt |
p_nav |
使用说明(不展示给学生) | 页码表 |
p_table |
表格(含梳理表、"本课在单元里的位置"三行表) | ans={列} 让答案逐行亮;autofit 撑满;note 高度会预留 |
p_stage |
阶扉页(=本阶三条目标) | 逐条单击 |
p_task |
任务布置(≤3 条活动) | walk=False;acts_after=True 时先出问题后出做法 |
p_read |
课文原段 | 段号;自动均衡分页;字号 36/34/32 自适应;续页标题带实际段号 |
p_say |
说发现 | delay=True 词卡后出 |
p_cmp |
两栏对比 | 左"一句"右"三句",foot 必须一行 |
p_three/p_route/p_words3/p_write/p_illus |
三招/路线/词串/写话支架/插图 | — |
p_goal |
目标回看打钩 | check=True,只用于写前自查 |
p_quiz |
练习(答案进括号) | (【答案】);单击出现;长答案多留 1 格 |
p_quizx |
练习页的变体(无答案占位,整段题干) | 用于长题干、一页只放一大题 |
p_exam/p_assign |
练习布置/做题 | 题目整页出,答案单独一击 |
p_sync |
同步练习整页(题目原文) | 分栏短行时用 |
p_eval/p_rubric/p_mission/p_discover |
三阶评价/量规/任务/发现 | — |
p_source/p_photocmp |
史料引文/双图对比 | 历史、名胜、文物类课文 |
p_zi/p_zi_nopy/p_erlei/p_words/p_duoyin/p_zili/p_zixie/p_tingxie |
一阶字词书写听写 | 字 44—72pt,词 32pt;13 字按 5/4/4 均衡分列 |
p_bang |
今日上榜+作业 | — |
动画分级(_anim(walk) 自动分配,不要逐页手工设):
- walk(跟着走):字词一卡一击、原文逐段、表格逐行、阶扉页目标逐条、练习答案;
- hold(摆出来):说发现、练习布置、写话、三阶全部(除答案)、封面说明、三招页、对比页、任务布置页。
验收:零动画页 ≥ 全课 1/3;单页 ≤3 击(逐行表格除外);总击数 ≤ 页数×2。
六、脚本索引(scripts/)
| 脚本 | 干什么 |
|---|---|
nb_big.py |
大字号页型库(主力,见第五节);B.save() 防文件占用 |
qc.py <pptx> [--plan p.py] [--render 目录] [--pages 1,5-8] |
一键盘查:四关合成一屏,约 1—2 s(2026-11-06 加) |
tpld.py |
版式基元 + 动画对象层(mark/unmark/finalize/normalize_fonts) |
sj_engine.py |
new_slide / head / step_pill 等底层 |
check_all.py |
重叠/溢出/越界(三关之二) |
check_fonts.py <pptx> 32 |
正文字号把关 |
render2.py <pptx> <dir>/q%03d.png [--pages 1,5-8] |
会真折行的近似渲染(--pages 只出改动页) |
anim_report.py <pptx> [起] [止] |
动画对象清单(验"问题先出答案后出") |
dump_titles2.py / dump_pages.py |
页标题/页内容导出(核对页序与详案环节是否对得上) |
build_plan.py + plan_doc.py |
逐字稿详案装配器(内容只写 PLAN) |
check_plan.py <pptx> <plan模块> |
详案页号 缺/越界/乱序 |
docx_preview.py <docx> <dir> |
docx → PNG 预览(补 mammoth 丢列宽的坑)。仅 Linux 沙箱可用:需 mammoth + weasyprint,Windows 上 weasyprint 还要 GTK,故未内置 |
samples/sample_courseware_runtu.py |
课件内容范本(57 页,《少年闰土》) |
samples/qiao_plan.py |
详案内容范本(62 段,《桥》) |
dump_titles2.py 输出到当前目录的 titles_out.txt。核对方法:把详案的"环节"与课件标题逐行并排念——念不通就是页序错了。
七、环境
沙箱/服务器(Linux):系统已装 python-pptx、python-docx、Pillow、lxml,直接跑。
老师电脑(Windows 离线):libs.zip 已内置 python-pptx / python-docx / Pillow / lxml,不用 pip install。
v6.2.2 起依赖打成一个 libs.zip(331 文件 → 1),整包 147 个文件,可过「上传文件数 ≤200」的平台限制;
首次运行自动解到 %TEMP%\sj_hsy_libs_v621(冷启动 +0.9 s,之后跳过),技能目录不落地。
引导顺序不能反——lxml 里是 cp313-win_amd64.pyd,在 Linux 上优先加载会报 cannot import name 'etree'。所以一律 import _boot(系统包优先,缺失才 append 解包目录)。
为什么解压而不是把 zip 挂到 sys.path:PIL / lxml 带 C 扩展(.pyd),zipimport 加载不了。
libs.zip 里是 cp313-win_amd64,对应 Python 3.13;WorkBuddy 自带解释器在
C:\Users\<用户名>\.workbuddy\binaries\python\envs\default\Scripts\python.exe。
字体(2026-11-05 修):字宽测量统一走 scripts/_fonts.py,按
① 思源黑体 NotoSansCJK-Regular.ttc → ② 微软雅黑 msyh.ttc → ③ 思源 SC 可变字体 / 黑体 / 苹方
依次找第一款能加载的;找不到会明确报错,不静默降级。可用 SJ_FONT / SJ_FONT_BOLD 强制指定。
v6 原版这里硬编码 Linux 路径且无回退,Windows 上直接 OSError: cannot open resource——已修。
换字体会改字宽,改完必须重跑四关。NotoSansSC-VF.ttf 是可变字体,实测会让「对比栏过硬」
从 0 变 1、多出 1 处重叠,故排在微软雅黑之后。成片字体仍统一写"微软雅黑"(normalize_fonts(prs) 收尾)。
产物位置:默认 <技能>/out/,可用 SJ_OUT 改。
唯一没内置的依赖:拼音课要 numpy(pip install numpy,约 30 MB)。
八、references 索引(按需读,不要一次全读)
| 文件 | 什么时候读 |
|---|---|
references/ref_courseware.md |
排三阶蓝图、定每阶页数、练习归属、动画与答案细节 |
references/ref_layout.md |
动版面、调页型、改 nb_big 前后(含九个真 bug 的成因) |
references/ref_plan.md |
写逐字稿详案(五列结构、Word 三件套、写法三条) |
references/ref_lesson.md |
备课定线:国平台/名师课例淘金、因文施教、精读略读分寸、史料自补、配图 |
references/ref_taojin.md |
淘金来源清单与范例(哪类库命中率高、怎么判断"淘够了") |
references/ref_textbook.md |
教材口径库(已核过的课:六上四单元、八单元、段数口径) |
references/ref_pitfalls.md |
动手前先扫一眼:8 个"只有渲图才看得见"的坑,各带判据与改法 |
references/ref_changelog.md |
想知道"这条规矩是哪次纠偏来的",或怀疑某条已作废 |
改规矩的唯一入口:新纠偏先写进 ref_changelog.md(带日期、原话、判据),确认稳定后再提到本文件第二节。不要直接改第二节又把来由丢掉——丢了来由,下次就会有人把它改回去。
九、交付清单(每课必刷一遍)
课件
- [ ] nb_big.WARN 为空(含新增六类:单元格 \n/答案没贴括号/p_erlei nrow≥3/话术条超宽/表格超行/文件被占用)
- [ ] qc.py <课件> --plan … 一屏全绿;出图只渲改动页(--pages)
- [ ] 构建脚本用 B.save(prs, out),不用 prs.save(文件被预览占用时会另存 _v2)
- [ ] check_all 重叠/溢出/越界全 0;check_fonts 32 正文小字 0
- [ ] render2 逐页扫过:无压边、无半页死白(余量 >0.85 的都处理过)
- [ ] 零动画页 ≥ 1/3;任务布置页 0 击;练习答案每答 1 击
- [ ] 每阶首页是本阶三条目标;三阶 ≤4 页;练习只在每阶最后一步
- [ ] 原段都有段号;续页标题带段号范围
- [ ] 有"本课在单元里的位置"一页,写清本课的分寸
详案
- [ ] check_plan 四行都干净(缺号/越界/顺序)
- [ ] 逐页稿的"环节"与课件标题逐行并排念得通
- [ ] 前置 0—5 栏齐;目标按"条件+行为+可数程度";每阶有可观察的达标表现
- [ ] 整份 A4 纵向(不切横向节);五列压进 17.4cm,逐字稿列 8.0cm
- [ ] 封面之后直接进备课表,不插「使用说明」段
对话收尾(给老师的回复里要有)
- 一句话说清"这一课教到哪一层"(本课的分寸),不要只报页数;
- 报三关数字,不报"已完成";
- 有做不到的地方直接说(比如主册没上传、教材段数两种说法),不要含糊过去。