目录结构

每门课程是 courses/ 下的一个目录,目录名必须等于课程 id。

CoursePack 目录结构

三层清单

文件作用顺序由谁决定
course.yaml课程信息、许可证、Section 或 Chapter 列表列表位置
chapter.yaml章标题和 Lesson 列表列表位置
lesson.yamlLesson 标题和可选的代码、视频等元数据—

章和课时的目录名只是存储位置,可以随时重命名;对外身份一律使用清单里的 id。课程目录名是例外,必须等于课程 id。

路径规则

  • 清单里列出的章、课时目录必须是单层名称(字母、数字、. _ -),不能写成 a/b 或 ..。
  • cover、许可证文件等路径必须是课程目录内的相对路径。
  • 课程内不允许符号链接。
  • 课程首页导读放在课程根目录的 intro.<语言>.md,不需要在 course.yaml 中声明。

资源放在哪里

课程共享的图片放在 assets/,只属于某个 Lesson 的图片可以放在该 Lesson 目录下的 assets/。正文里一律使用相对路径引用,这样在 GitHub 上直接预览也能看到图片。

下一步:清单字段。