QSH 是通过 macOS 终端玩测验的交互式 shell。
它基于 SwiftQuiz 构建,SwiftQuiz 提供了在 Swift 中制作和玩测验的核心功能。QSH 提供了使用 macOS 终端访问所有这些功能的 UI。
在达到 1.0.0 版本之前,此软件包被认为是正在进行中的工作。
目录
qsh --url https://github.com/rwbutler/QSH/raw/master/examples/example-playable-quiz.quiz --key A%D*F-JaNdRgUkXp2s5v8y/B?E(H+KbP
或
qsh --url https://github.com/rwbutler/QSH/raw/master/examples/example-playable-quiz2.quiz --key A%D*F-JaNdRgUkXp2s5v8y/B?E(H+KbP
注意:接受 HTTP 和文件 URL,文件 URL 必须以 file://
开头,例如 qsh --url file:///Users/username/Documents/example-playable-quiz.quiz
。
qsh package-quiz --input "https://raw.githubusercontent.com/rwbutler/QSH/master/examples/example-quiz-input.json" --encrypt-package --key "A%D*F-JaNdRgUkXp2s5v8y/B?E(H+KbP" --output "file://<output path>"
注意:接受 HTTP 和文件 URL,文件 URL 必须以 file://
开头,例如 qsh package-quiz --url file:///Users/username/Documents/quiz-input.json
。
要通过 Homebrew 安装,请从终端运行以下命令
brew install rwbutler/tools/qsh
要使用 Mint 安装,请运行以下命令
mint install rwbutler/qsh
使用 Swift Package Manager 构建,如下所示
swift build -c release --disable-sandbox
然后使用以下命令运行
swift run qsh --help
qsh package-quiz --input file://<path to quiz JSON> --encrypt-package --key <encryption key> --output file://<path to quiz package>
注意:要生成 AES-256 加密密钥,请使用类似 这样的网站。
QSH 允许加密测验,以便测验包中包含的答案不易被访问,从而防止作弊。 此功能是可选的,因为测验包可以是加密的或未加密的。 为了在打包期间加密测验,请使用 --key
参数提供使用类似 此处 的网站生成的 AES-256 密钥。 如果省略 --key
参数,则将生成未加密的测验包。
要将图片轮次包含在测验中,请在简答题、多选题或单选题中包含参数 image
。 image
参数的值应该是图像文件的 URL(文件 URL 或 HTTP URL)。 打包测验时,图像数据将包含在测验包中,以便图像无需在运行时单独下载。
为了启用测验的自动评分,请将以下内容添加到您的测验 JSON 文件中
"marking-occurs": "at-end",
请点击此处查看示例。
或者,如果您想以传统方式通过交换答案进行评分,只需将 marking-occurs
属性设置为 never
"marking-occurs": "never",
qsh play-quiz --url <quiz package URL> --key <encryption key>
注意:key
参数仅在加密包中是必需的。
qsh --help
或获取关于特定子命令的帮助
qsh package-quiz --help
qsh play-quiz --help
打包和玩测验的核心功能由 Swift Quiz 包实现,QSH 为 macOS 终端提供 UI。 如果您希望构建自己的客户端来玩测验,例如使用 Linux,理论上您可以使用 Swift Quiz 来做到这一点。
AnimatedGradientView |
---|
![]() |
Cheats | Connectivity | FeatureFlags | Hyperconnectivity | Skylark | TypographyKit | Updates |
---|---|---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
cdd
即可快速清除 DerivedData 目录的实用工具。Config Validator | IPA Uploader | Palette |
---|---|---|
![]() |
![]() |
![]() |