跳转至

如何使用工程

如果你获得了一个 tuack 的工程,在安装好 tuack 之后,可以用下面的方式使用它。

导出

一个造好的工程可以用 tuack.dump 导出成其他某种格式,格式如下

1
python -m tuack.dump 类型1,类型2,...

目前支持的类型有:lemonarbiter(=arbiter-down+arbiter-main)(这两个暂时不支持 special judge),tsinsen-ojloj

例如,导出 tsinsen-oj 格式后,你会在目录下看到一个 tsinsen-oj.txt 文件。在清橙 OJ→我的清橙→我来出题→新建→上传,选择该文件即可将这道题发布到清橙。

loj 格式需要“登录”,且仅支持有管理题目权限的人传题,因此需要到 tuack 配置目录(对 Windows 是 tuack 的安装目录,对其他是 ~/.tuack)下的 conf.json加入下列内容:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
{
  ...
  "loj": {
    "default": {
      "cookies": {
        "connect.sid": "在浏览器中找到cookie的相应字段",
        "login": "在浏览器中找到cookie的相应字段"
      },
      "main": "http://loj.ac"
    }
  }
}

成功上传以后,本地题目目录的 conf.yaml 文件会记录题号,因此如果任何东西有改动只需要再次 dump 即可。目前导出 loj 格式还不支持将配置文件解析为 data.yml,题面也没有分栏(将会把所有内容都塞到“题目描述”一栏),但 chk 已经可以使用了。

因为 loj 已经有较大改版,这个功能目前只能支持自己部署的 syzoj 的自动上传。

渲染题面

在比赛工程、比赛日工程或题目工程下运行下列命令渲染对应的题面:

1
python -m tuack.ren tuoj

表示生成 tuoj 风格的题面。

题面除了可以渲染成 tuoj 格式,目前支持四类格式:

  • tex:最终会生成成 PDF 格式。需要安装 pandocxelatex。其中 pandoc Windows 下直接到官网下载,Ubuntu 下 apt install pandocxelatex 的安装方式见相关工具-安装和配置XeLaTeX。具体的风格有:tuoitupcnoiccpcccc-tex
  • md:会生成带 html 标签的 markdown。不需要特别安装东西。具体的风格有:tuojccc-mdlojuoj(似乎这个现在有 bug)。
  • html:会生成带$括起来的 MathJAX 公式的 html,需要安装 pandoc。具体的风格有:tsinsen-oj
  • doku:会生成带$括起来的 MathJAX 公式的 DokuWiki,需要安装 pandoc。具体的风格有:thuoj