题目编辑界面增加评测配置
允许在界面配置如下四个域
defaultRunner
defaultRunnerOptions
judge
judgeOptions
初步需要:
-
不需要配置 defaultRunner
和judge
,统一使用默认 -
允许配置三个 judge 选项: CODE_BEFORE_B64
,CODE_AFTER_B64
,IGNORE_WHITESPACE_CHANGE
-
允许配置两个 runner 选项: CODE_BEFORE_B64
,CODE_AFTER_B64
-
前端实现:类似 codeSnippet
等的实现,可针对每个语言配置:前置代码、后置代码、忽略空白差异,将三个项的输入分别整理成类似如下格式:
judgeOptions: [
{
lang: 'PYTHON',
options: [
{ key: 'CODE_BEFORE_B64', value: '...' }, // 将用户输入编码为base64字符串
{ key: 'CODE_AFTER_B64', value: '...' }, // 将用户输入编码为base64字符串
{ key: 'IGNORE_WHITESPACE_CHANGE', value: 'y' }, // 非空为真、空为假,可默认为真
]
},
...
]
后续应当完成如下功能:
-
defaultRunner
和judge
允许分不同语言指定 -
defaultRunnerOptions
和judgeOptions
根据 judge/runner 配置, 获取可用变量列表 -
以 _B64
结尾的变量, 提交时自动将输入转成 base64 字符串