This repository has been archived on 2024-06-23. You can view files and clone it, but cannot push or open issues or pull requests.
mathdeptv2/文档/使用指南/使用指南2024.md

7.1 KiB

控江数学组题库

题库使用指南2024版

在overleaf上协作编辑

我们自己部署的本地overleaf服务器的地址是overleaf kongjiang(kjwangweiye.top:40388)或overleaf kongjiang mirror(wwylss.synology.me:40388)

如果还未注册过, 请联系管理员, 提供一个邮箱(可以是真实的邮箱, 也可以不是)以新建账号(之后首次登录会要求设置密码, 请不要忘记邮箱和密码)

万一忘记了邮箱和密码就只能删除账号重新再开了, 服务器上属于该账号的所有工作就一并被删除了.

知道对方的邮箱的话, 可以在overleaf上邀请对方参加协作, 一起编辑同一个项目. overleaf邀请

在gitlab上提交issue

我们自己部署的本地gitlab服务器的地址是gitlab(wwylss.synology.me:30000)

gitlab主界面

如果还未注册过, 请在上述界面中注册, 并联系管理员以通过注册.

一个较大的项目的协作者之间的工作联系通常不是通过微信、电话这种追溯历史不太方便的方式实现的. gitlab提供了一个比较有效的方式: 提交issue(问题/事件)

提交issue的按钮

上图就是提交issue的按钮, 点击后选择新建议题, 会显示下面的界面

新建议题界面

  1. 用简略的文字描述issue
  2. 详细描述issue的内容(可以使用markdown语法, 如果会markdown的话)
  3. 按这个按钮可以添加附件(在提供一些文件例如metadata.txt等的时候十分有用)
  4. 指派哪些人来跟进这个议题, 一般有同备课组的负责人和管理员等
  5. 前四项全填完之后, 点击Create议题以生成这个新的issue

之后就可以在这个issue中进行对话沟通, 完成后(或者完不成但是也不想留置)有权限的成员(提出者, 指派人, 管理员等)可以关闭议题.

收录新题

对于需要合并到主题库的题目, 在收录之前请务必和管理员协商确定起始题号, 避免不同使用者的题号出现冲突

测试的时候请先拉取远程的tutorial分支, 在此基础上新建分支, 之后进行收录新题操作

添加关联题

导入metadata(各种数据与信息, 如答案, 解答, 备注, 使用记录, 标签等)

工具v2/文本文件目录中有一个名为metadata.txt的文件, 其一般结构如下:

ans

10235
$1$

2235
真命题

usages

021146
20231222	2025届高二11班	1.000

021147
20231222	2025届高二11班	0.952

其中ans表示答案, usages表示使用记录.

这个metadata.txt文件如果导入题库, 会

  • 把第10235题的答案用$1$覆盖,
  • 把第2235题的答案用真命题覆盖,
  • 21146usages字段中添加20231222 2025届高二11班 1.000,
  • 021147usages字段中添加20231222 2025届高二11班 0.952.

每一个字段(如ansusages等)及每一条记录之间都用多于一个换行符分隔(很多情况下换行之类的格式都是自动生成的), 其他metadata.txt可以接受的字段有:

  • content: 题目内容(str类型), 导入时将覆盖原内容
  • objs: 课时目标(目标代码, list类型), 导入时将新增项目
  • tags: 题目标签(list类型), 导入时将新增项目
  • genre: 题目类型(填空题/选择题/解答题), 导入时将覆盖原内容
  • ans: 答案(str类型), 导入时将覆盖原内容
  • solution: 解答或提示(str类型), 导入时将覆盖原内容
  • duration: 所需时间(单位为分钟, 暂时均赋值-1, int类型), 导入时将覆盖原内容
  • usages: 使用记录(yyyymmdd<tab>班级代号<tab>得分率), 导入时将和之前的记录作比对, 如果确认是新的则新增项目
  • edit: 编辑记录(list类型), 导入时将新增项目
  • same: 相同题号(指内容和类型均相同的题目, list类型), 导入时将双向新增项目(a与b相同当且仅当b与a相同, 导入时会在两道题的记录中同时添加题号)
  • related: 相关题号(指题目和做法都基本一致或者某一题是另一题的一部分, list类型), 导入时将双向新增项目(a与b相关当且仅当b与a相关, 导入时会在两道题的记录中同时添加题号)
  • unrelated: 无关题号(指字符串意义上相近, 容易被自动找出, 但实际上无关的题目, list类型), 导入时将双向新增项目(a与b无关当且仅当b与a无关, 导入时会在两道题的记录中同时添加题号)
  • remark: 备注(str类型), 导入时将新增字符串
  • space: 题后的空间(单位一般为em, 大部分解答题默认为4em, str类型), 导入时将覆盖原内容

准备好metadata.txt文件之后, 在工具面板上按维护-批量添加字段数据

批量添加字段数据

vscode界面会打开文本文件/metadata.txt, 编辑完成后保存关闭(重要, 不关闭的话面板会处于假死状态), 面板会生成一个绿色的运行按钮, 按动按钮, 系统会自动导入数据到题库0.3/Problems.json.

运行按钮

随后如果有必要, 可保存Problems.json至暂存区, 之后可以commit到本地的repository, 乃至push到远程的服务器.

两种编辑题库中已有题目的方式

$\LaTeX$方式(可编辑题目, 答案, 解答)

json方式(可编辑任何信息)

从$\LaTeX$源文件中提取答案

题目和单元挂钩

生成"未挂钩单元题目"的LaTeX源文件、pdf文件与数据文件(临时文件/单元对应.txt)

根据数据文件(临时文件/单元对应.txt)生成metadata.txt

小闲平台使用数据导入

根据特定特征筛选题号

根据题号表达式(可含:或,的字符串)生成讲义

录入讲义结构与内容

讲义首字母的通用规则

  • E: 正式测验卷与考试卷
  • I: 非正式的小测验
  • W: 周末卷
  • G: 高一高二的学案
  • J: 高三的复习讲义
  • F: 高三的赋能卷
  • V: 假期作业

录入新的讲义种类的结构(备课组之前未使用过的首字母)

录入新的讲义的题号ID等内容

对小闲平台的答题纸与数据库进行对应

对应的目的是能更方便地收录使用信息

系列讲义生成

添加基础知识梳理

因可能有冲突, 故建议该项工作完全由管理员进行, 备课组负责人整理完成后在gitlab上提issue